最新Agent框架,读这一篇就够了

作者 | 哈喽WoW君 编辑 | 大模型之心Tech

原文链接:https://zhuanlan.zhihu.com/p/1939744959143086058

点击下方卡片,关注“大模型之心Tech”公众号

戳我-> 领取大模型巨卷干货

>>点击进入→大模型没那么大Tech技术交流群

本文只做学术分享,如有侵权,联系删文,自动驾驶课程学习与技术交流群事宜,也欢迎添加小助理微信AIDriver004做进一步咨询

一、主流AI AGENT框架

当前主流的AI Agent框架种类繁多,各有侧重,适用于不同的应用场景。目前收集了几个主流并且典型Agent框架,先给出本文描述的有哪些框架图表。


框架

描述

适用场景

LangGraph

基于LangChain搭建的状态驱动的多步骤 Agent

复杂状态机、审批流

AutoGen

多 Agent 协作、对话式

研究报告生成、任务拆解

CrewAI

轻量级“角色扮演”多 Agent

内容团队、市场分析

Smolagents

Hugging Face 系、专注小模型

私有化、小模型场景

RagFlow

专注 RAG 的端到端流程

新增多模态文档解析节点

二、CrewAI

crewAI 是一个开源多智能体协调框架。这个基于 Python 的框架通过协调角色扮演的自主 AI 智能体,利用人工智能 (AI) 协作,作为一个内聚的集合体或“团队”共同完成任务。

CrewAI 是一款专注于多智能体自动化的先进框架,其核心特点可总结如下:

独立架构
完全自主研发,不依赖LangChain或其他现有框架,提供原生解决方案。
高性能设计
强调速度和资源效率优化,实现快速任务执行与低消耗。
深度可定制化
支持从宏观工作流到微观行为的全栈定制:
可调整系统架构与整体流程
能精细控制单个Agent的决策逻辑、内部提示词等底层细节
全场景适用
既适合简单任务,也能支撑企业级复杂自动化需求,通过两种模式实现:智能协作团队(Crews模式)、事件工作流(Flows模式)

CrewAI功能对比图

CrewAI 功能介绍

CrewsAI支持两个功能,分别为Crews与Flows,具体如下

Crews(智能协作团队)

由具备真实自主性与决策权的AI智能体组成的团队,通过角色化协作完成复杂任务。其核心特点包括:自主决策:智能体之间可自然、自主地做出决策

动态协作:支持任务灵活分配与实时协同

角色专精:每个智能体有明确目标、专业领域和职能

弹性问题解决:能自适应调整解决路径

Flows(事件工作流)

面向生产环境的自动化流程引擎,提供精准控制能力:精细化执行控制:满足现实场景的多路径执行需求

可靠状态管理:跨任务的安全、一致性数据维护

无缝代码集成:AI智能体与生产级Python代码的清洁对接

条件分支逻辑:支持复杂业务规则的动态路由

两者共同构成「自主协作+精准流程」的AI自动化体系,兼顾灵活性与生产可靠性。

活跃生态支持

拥有超过10万认证开发者组成的社区,提供强大的技术支持和资源库。

该框架通过平衡易用性、灵活性与性能,帮助开发者和企业高效构建智能自动化系统,尤其擅长处理需要多智能体协作的复杂场景。

Crews 智能协作模式示例

步骤1:创建CrewAI项目

首先,使用CLI创建一个新的CrewAI项目。该命令生成完整的项目结构及所需文件。

crewai create crew research_crew  
cd research_crew

步骤2:生成的项目结构

research_crew/  
├── .gitignore  
├── pyproject.toml  
├── README.md  
├── .env  
└── src/  
    └── research_crew/  
        ├── __init__.py  
        ├── main.py  
        ├── crew.py  
        ├── tools/  
        │   ├── custom_tool.py  
        │   └── __init__.py  
        └── config/  
            ├── agents.yaml  
            └── tasks.yaml

了解CLI生成的项目结构。CrewAI遵循Python项目最佳实践,便于维护和扩展:

crewAI会生成完成的项目结构,我们只需要在对应内容做修改调整,大大降低了操作的门槛。

配置文件(YAML)与实现代码(Python)分离,便于调整行为而无需修改底层代码。

步骤3:AI agent配置

定义具有特定角色、目标和背景的AI agent。例如:

研究员:擅长查找和组织信息

分析师:解读研究结果并生成报告

修改agents.yaml文件:

researcher:  
  role: "{topic}高级研究专家"  
  goal: "查找关于{topic}的全面准确信息,重点关注近期进展和关键见解"  
  backstory: "您是一位经验丰富的研究专家,擅长从多来源获取信息并清晰组织内容。"  
  llm: "model-id"   # e.g. openai/gpt-4o, google/gemini-2.0-flash, anthropic/claude

analyst:  
  role: "{topic}数据分析师兼报告撰写人"  
  goal: "分析研究发现并撰写结构清晰的综合报告"  
  backstory: "您是一位擅长数据解读和技术写作的分析师,能有效提炼见解并形成专业报告。"  
  llm: "model-id"   # e.g. openai/gpt-4o, google/gemini-2.0-flash, anthropic/claude

步骤4:个性化定义任务

为agent分配具体工作。

示例任务:

研究任务:收集信息

分析任务:生成报告

修改tasks.yaml文件:

research_task:  
  description: "深入研究{topic},涵盖关键概念、趋势、挑战、案例和未来展望。"  
  expected_output: "结构化的研究文档,包含事实数据和案例。"  
  agent: researcher  

analysis_task:  
  description: "分析研究结果并生成专业报告,需包含摘要、趋势分析和建议。"  
  expected_output: "格式规范、易于阅读的最终报告。"  
  agent: analyst  
  context: [research_task]  # 分析师可访问研究员输出  
  output_file: "output/report.md"

步骤5:配置Crew

在crew.py中整合代理和任务,设置协作流程:

@CrewBase  
class ResearchCrew():  
    @agent  
    def researcher(self) -> Agent:  
        return Agent(config=self.agents_config['researcher'], tools=[SerperDevTool()])  

    @agent  
    def analyst(self) -> Agent:  
        return Agent(config=self.agents_config['analyst'])  

    @crew  
    def crew(self) -> Crew:  
        return Crew(agents=self.agents, tasks=self.tasks, process=Process.sequential)

通过几行代码实现agent的协同工作流程。

步骤6:设置main脚本

在main.py中指定研究主题并启动Crew:

inputs = {'topic': '医疗领域的人工智能'}  
result = ResearchCrew().crew().kickoff(inputs=inputs)  
print(result.raw)  # 打印报告

步骤7:配置环境变量

在项目根目录的.env文件中添加API密钥:

SERPER_API_KEY=您的密钥  
LLM_API_KEY=您的密钥

步骤8:安装依赖

运行以下命令自动安装依赖:

crewai install

步骤9:运行Crew

启动协作流程:

crewai run

实时观察代理的思考、行动和输出。

步骤10:查看输出

最终报告将保存至output/report.md,包含:执行摘要、详细分析、建议与展望

三、LangChain

LangGraph 由LangChain创建,是一个开源 AI 代理框架,旨在构建、部署和管理复杂的生成式 AI 代理工作流。其核心是利用基于图的架构的强大功能来建模和管理AI 代理工作流中各个组件之间的复杂关系。

LangChain 功能介绍

LangChain基于图的架构视为一个强大的可配置的“超级地图”。用户可以将AI 工作流程想象成这张“超级地图”的“导航员”。最后,在这个例子中,用户是“制图员”。从这个意义上讲,导航员绘制出“超级地图”上各点之间的最佳路线,而所有这些路线都是由“制图员”创建的。基于图的架构(“超级地图”)中的最佳路线是通过 AI 工作流(“导航器”)绘制和探索的。

LangChain 功能

LangGraph 阐明了 AI 工作流程中的流程,使代理的状态完全透明。在 LangGraph 中,“状态”功能充当存储库,记录并追踪 AI 系统处理的所有有价值的信息。它类似于一个数字笔记本,系统在工作流程或图形分析的各个阶段中捕获并更新数据。

LangGraph使用示例

前置条件

在开始本教程前,请确保满足以下条件:

拥有Anthropic API密钥

1.安装依赖
如果尚未安装,请先安装LangGraph和LangChain:

pip install -U langgraph "langchain[anthropic]"

2.创建agent
使用create_react_agent创建智能体:

from langgraph.prebuilt import create_react_agent
def get_weather(city: str) -> str:  
    """获取指定城市的天气"""
    return f"{city}的天气永远晴朗!"

agent = create_react_agent(
    model="anthropic:claude-3-7-sonnet-latest",  
    tools=[get_weather],  
    prompt="你是一个乐于助人的助手"  
)

# 运行智能体
agent.invoke(
    {"messages": [{"role": "user", "content": "旧金山的天气怎么样"}]}
)

3.配置大语言模型(LLM)
配置LLM参数(如模型、温度参数),使用init_chat_model:

from langchain.chat_models import init_chat_model
from langgraph.prebuilt import create_react_agent

model = init_chat_model(
    "anthropic:claude-3-7-sonnet-latest",
    temperature=0  # 控制随机性
)

agent = create_react_agent(
    model=model,
    tools=[get_weather],
)

4.添加自定义提示
提示词用于指导LLM的行为。可选择以下两种提示类型:
静态提示: 字符串形式,作为系统消息。
动态提示: 根据运行时输入或配置生成的消息列表。
4.1  静态提示
定义一个固定的prompt

from langgraph.prebuilt import create_react_agent

agent = create_react_agent(
    model="anthropic:claude-3-7-sonnet-latest",
    tools=[get_weather],
    # A static prompt that never changes
    prompt="Never answer questions about the weather."
)

agent.invoke(
    {"messages": [{"role": "user", "content": "what is the weather in sf"}]}
)

4.2  动态提示
定义函数,根据智能体状态和配置返回消息列表:

from langchain_core.messages import AnyMessage
from langchain_core.runnables import RunnableConfig
from langgraph.prebuilt.chat_agent_executor import AgentState
from langgraph.prebuilt import create_react_agent

def prompt(state: AgentState, config: RunnableConfig) -> list[AnyMessage]:  
    user_name = config["configurable"].get("user_name")
    system_msg = f"你是一个乐于助人的助手。请称呼用户为{user_name}。"
    return [{"role": "system", "content": system_msg}] + state["messages"]

agent = create_react_agent(
    model="anthropic:claude-3-7-sonnet-latest",
    tools=[get_weather],
    prompt=prompt
)

agent.invoke(
    {"messages": [{"role": "user", "content": "旧金山的天气怎么样"}]},
    config={"configurable": {"user_name": "张三"}}
)

5.添加记忆功能
为实现历史多轮对话记忆功能,需通过检查点(checkpointer)启用持久化。运行时需提供包含thread_id(会话唯一标识)的配置:

from langgraph.prebuilt import create_react_agent
from langgraph.checkpoint.memory import InMemorySaver

checkpointer = InMemorySaver()

agent = create_react_agent(
    model="anthropic:claude-3-7-sonnet-latest",
    tools=[get_weather],
    checkpointer=checkpointer  # 启用记忆存储
)

# 运行智能体
config = {"configurable": {"thread_id": "1"}}
sf_response = agent.invoke(
    {"messages": [{"role": "user", "content": "旧金山的天气怎么样"}]},
    config  
)
ny_response = agent.invoke(
    {"messages": [{"role": "user", "content": "纽约呢?"}]},
    config
)

启用检查点后,智能体的状态会存储到指定的数据库(若使用InMemorySaver则存储在内存中)。

6.配置结构化输出

如需生成符合模式的结构化响应,使用response_format参数。模式可通过Pydantic模型或TypedDict定义,结果将通过structured_response字段访问。

from pydantic import BaseModel
from langgraph.prebuilt import create_react_agent

class WeatherResponse(BaseModel):
    conditions: str  # 天气状况字段

agent = create_react_agent(
    model="anthropic:claude-3-7-sonnet-latest",
    tools=[get_weather],
    response_format=WeatherResponse  # 指定响应格式
)

response = agent.invoke(
    {"messages": [{"role": "user", "content": "旧金山的天气怎么样"}]}
)

response["structured_response"]  # 获取结构化响应

LangGraph 还推出了 LangGraph Studio,一个用于工作流开发的可视化界面。使用 LangGraph Studio,用户可以通过图形界面设计和构建工作流,而无需编写代码。可下载的桌面应用程序使 LangGraph Studio 更适合初学者使用。

四、AutoGen

AutoGen 是微软推出的一款开源框架,用于构建能够通过对话模式协作完成任务的代理。AutoGen 简化了 AI 开发和研究,支持使用多种大型语言模型 (LLM)、集成工具和高级多代理设计模式。

AutoGen 可作为通用基础架构,用于构建各种复杂程度和 LLM 功能的应用程序。实证研究证明了该框架在许多示例应用程序中的有效性,这些应用程序涵盖数学、编程、问答、运筹学、在线决策、娱乐等领域。您可以将此应用程序视为ChatGPT + 代码解释器 + 插件 + 完全可定制。

AutoGen 的设计模式采用统一的界面,展现了用于座席交互的标准化接口。它还具有自动回复机制,可实现持续的对话流程。此外,它还支持动态对话,支持静态和动态流程。它为自适应对话提供了可自定义的回复功能。

AutoGen 是一个开源的编程框架,用于构建AI智能体并促进多智能体协作完成任务。它旨在提供一个易用且灵活的开发框架,加速智能体AI(如PyTorch之于深度学习)的研发进程。其核心功能包括: 支持智能体间对话、大语言模型(LLM)与工具调用、自主工作流与人机协同流程,以及多智能体会话模式 。

AutoGen概览

核心特性

下一代LLM应用构建:通过多智能体对话轻松构建复杂LLM应用,简化工作流的编排、自动化与优化,最大化模型性能并弥补其缺陷。

多样化会话模式:支持自定义可对话智能体,开发者能构建不同自主性、智能体数量和拓扑结构的会话流程。

开箱即用案例系统:提供涵盖多领域、多复杂度的现成系统,展示框架对各种会话模式的广泛支持。

AutoGen使用方法

1.安装命令:

pip install autogen-agentchat~=0.2

2.执行模式:

2.1无代码执行

import os
from autogen import AssistantAgent, UserProxyAgent

llm_config = { "config_list": [{ "model": "gpt-4", "api_key": os.environ.get("OPENAI_API_KEY") }] }
assistant = AssistantAgent("assistant", llm_config=llm_config)
user_proxy = UserProxyAgent("user_proxy", code_execution_config=False)

# 发起对话
user_proxy.initiate_chat(
    assistant,
    message="给我讲个关于英伟达和特斯拉股价的笑话。",
)

2.2本地代码执行

在 AutoGen 中,代码执行器是一个组件,它接收输入消息,然后执行并输出包含结果的消息。命令行代码执行器,它在命令行环境(例如 UNIX shell)中运行代码。

下图显示了本地命令行代码执行器的架构

autogen.coding.LocalCommandLineCodeExecutor

当本地命令行代码执行器收到包含代码块的消息时,首先将代码块写入代码文件,然后启动一个新的子进程来执行该代码文件。执行器读取代码执行的控制台输出,并将其作为回复消息发送回去。

以下是使用代码执行器运行 Python 代码块并打印随机数的示例。

首先,我们使用代码执行器创建一个代理,该代理使用临时目录来存储代码文件。

import tempfile
from autogen import ConversableAgent
from autogen.coding import LocalCommandLineCodeExecutor

# Create a temporary directory to store the code files.
temp_dir = tempfile.TemporaryDirectory()

# Create a local command line code executor.
executor = LocalCommandLineCodeExecutor(
    timeout=10,  # Timeout for each code execution in seconds.
    work_dir=temp_dir.name,  # Use the temporary directory to store the code files.
)

# Create an agent with code executor configuration.
code_executor_agent = ConversableAgent(
    "code_executor_agent",
    llm_config=False,  # Turn off LLM for this agent.
    code_execution_config={"executor": executor},  # Use the local command line code executor.
    human_input_mode="ALWAYS",  # Always take human input for this agent for safety.
)

现在我们让代理根据带有 Python 代码块的消息生成回复。

message_with_code_block = """This is a message with code block.
The code block is below:
```python
import numpy as np
import matplotlib.pyplot as plt
x = np.random.randint(0, 100, 100)
y = np.random.randint(0, 100, 100)
plt.scatter(x, y)
plt.savefig('scatter.png')
print('Scatter plot saved to scatter.png')
```
This is the end of the message.
"""

# Generate a reply for the given code.
reply = code_executor_agent.generate_reply(messages=[{"role": "user", "content": message_with_code_block}])
print(reply)

agent执行之后,生成的内容如下

>>>>>>>> NO HUMAN INPUT RECEIVED.

>>>>>>>> USING AUTO REPLY...

>>>>>>>> EXECUTING CODE BLOCK (inferred language is python)...
exitcode: 0 (execution succeeded)
Code output: 
Scatter plot saved to scatter.png

在生成响应的过程中,需要人工输入,以便有机会拦截代码执行。在这种情况下,我们选择继续执行,代理的回复包含代码执行的输出。

import os
print(os.listdir(temp_dir.name))
# We can see the output scatter.png and the code file generated by the agent.

输出的结果,我们可以在临时目录中查看生成的图

['scatter.png', '6507ea07b63b45aabb027ade4e213de6.py']

五、Smolagents

Smolagents项目介绍

smolagents是HuggingFace官方推出的Agent开发库,HF出品的库,往往的设计理念是“低门槛,高天花板,可拓展”,所以知道HF出了Agent相关的框架后,也是很快体验了一下。smolagents是一个开源 Python 库,旨在仅使用几行代码即可极其轻松地构建和运行代理。

主要特点smolagents包括:

简洁:代理逻辑只需约千行代码即可实现。我们将抽象保持在原始代码之上,使其保持最小形式!

一流的代码代理支持:CodeAgent将其操作写入代码(而不是“使用代理编写代码”)以调用工具或执行计算,从而实现自然的可组合性(函数嵌套、循环、条件)。为了确保安全,我们支持通过E2B或 Docker在沙盒环境中执行。

通用工具调用代理支持:除了 CodeAgents 之外,ToolCallingAgent还支持通常的基于 JSON / 文本的工具调用,适用于优先使用这种范式的场景。

Hub 集成:无缝地与 Hub 共享和加载代理和工具,就像 Gradio Spaces 一样。

模型无关:轻松集成任何大型语言模型 (LLM),无论它是通过推理提供程序托管在 Hub 上,还是通过 OpenAI、Anthropic 等 API 或 LiteLLM 集成访问,亦或使用 Transformers 或 Ollama 在本地运行。使用您首选的 LLM 为代理提供支持既简单又灵活。

支持多种模态:除了文本,代理还可以处理视觉、视频和音频输入,从而拓展其应用范围。查看视觉相关教程。

支持工具:您可以使用来自任何MCP 服务器、来自LangChain的工具,甚至可以使用Hub Space作为工具。

smolagents示例

安装pip包

pip install smolagents[toolkit]

定义agent,并执行结果

from smolagents import CodeAgent, WebSearchTool, InferenceClientModel

model = InferenceClientModel()
agent = CodeAgent(tools=[WebSearchTool()], model=model, stream_outputs=True)

agent.run("How many seconds would it take for a leopard at full speed to run through Pont des Arts?")

六、RAGFlow

RAGFlow作为一款端到端的RAG解决方案,RAGFlow 旨在通过深度文档理解技术,解决现有RAG技术在数据处理和生成答案方面的挑战 。它不仅能够处理多种格式的文档,还能够智能地识别文档中的结构和内容,从而确保数据的高质量输入。

RAGFLow框架图

深度文档理解 :"Quality in, quality out",RAGFlow 基于深度文档理解,能够从各类复杂格式的非结构化数据中提取真知灼见。真正在无限上下文(token)的场景下快速完成大海捞针测试。对于用户上传的文档,它需要自动识别文档的布局,包括标题、段落、换行等,还包含难度很大的图片和表格。对于表格来说,不仅仅要识别出文档中存在表格,还会针对表格的布局做进一步识别,包括内部每一个单元格,多行文字是否需要合并成一个单元格等。并且表格的内容还会结合表头信息处理,确保以合适的形式送到数据库,从而完成 RAG 针对这些细节数字的“大海捞针”。

可控文本切片 :RAGFlow 提供多种文本模板,用户可以根据需求选择合适的模板,确保结果的可控性和可解释性。因此 RAGFlow 在处理文档时,给了不少的选择:Q&A,Resume,Paper,Manual,Table,Book,Law,通用... 。当然,这些分类还在不断继续扩展中,处理过程还有待完善。后续还会抽象出更多共通的东西,使各种定制化的处理更加容易。

支持各类异构数据源 :RAGFlow 支持 支持丰富的文件类型,包括 Word 文档、PPT、excel 表格、txt 文件、图片、PDF、影印件、复印件、结构化数据, 网页等。对于无序文本数据,RAGFlow 可以自动提取其中的关键信息并转化为结构化表示;而对于结构化数据,它则能灵活切入,挖掘内在的语义联系。最终将这两种不同来源的数据统一进行索引和检索,为用户提供一站式的数据处理和问答体验。

七、总结

当前主流的AI Agent框架各具特色,适用于不同的应用场景和技术需求。以下是各框架的核心特点及适用场景的总结:

CrewAI

  • 特点 :专注于多智能体协作,提供独立架构、高性能设计和深度可定制化。支持智能协作团队(Crews模式)和事件工作流(Flows模式),适合复杂任务和企业级自动化需求。

  • 适用场景 :内容团队协作、市场分析、复杂任务自动化。

LangGraph

  • 特点 :基于图的架构,用于构建和管理复杂的生成式AI代理工作流。

  • 适用场景 :复杂状态机、审批流、多步骤任务编排。

AutoGen

  • 特点 :微软开源框架,强调多智能体对话协作,支持多种LLM和工具调用。提供动态对话和自适应工作流,适合研究型任务和交互式应用。

  • 适用场景 :研究报告生成、任务拆解、数学和编程问题求解。

Smolagents

  • 特点 :Hugging Face推出的轻量级库,设计简洁,支持代码代理和工具调用,模型无关且易于扩展。适合快速开发和私有化部署。

  • 适用场景 :小模型场景、私有化部署、快速原型开发。

RAGFlow

  • 特点 :端到端RAG解决方案,专注于深度文档理解和可控文本切片,支持多模态数据源和高质量信息检索。

  • 适用场景 :文档解析、知识问答、多模态数据处理。

框架对比与选择建议

  • 协作需求 :选择CrewAI(多智能体协作)或AutoGen(对话式协作)。

  • 复杂流程 :LangGraph适合状态驱动的多步骤任务,AutoGen适合动态对话流程。

  • 轻量级开发 :Smolagents适合快速构建和扩展。

  • 文档处理 :RAGFlow是处理多模态文档和高质量检索的首选。

这些框架共同推动了AI Agent技术的发展,开发者可根据具体需求选择最合适的工具。

大模型之心Tech知识星球交流社区

我们创建了一个全新的学习社区 —— “大模型之心Tech”知识星球,希望能够帮你把复杂的东西拆开,揉碎,整合,帮你快速打通从0到1的技术路径。 

星球内容包含:每日大模型相关论文/技术报告更新、分类汇总(开源repo、大模型预训练、后训练、知识蒸馏、量化、推理模型、MoE、强化学习、RAG、提示工程等多个版块)、科研/办公助手、AI创作工具/产品测评、升学&求职&岗位推荐,等等。

星球成员平均每天花费不到0.3元,加入后3天内不满意可随时退款,欢迎扫码加入一起学习一起卷!

### AI Agent框架介绍及比较 #### 大规模模型驱动下的AI Agent架构特点 大规模模型的引入赋予了AI Agent更为智能化的能力,使其能更好地处理复杂的任务和场景。当前基于大模型构建的AI Agent通常围绕四个核心组成部分展开设计:规划(Planning),记忆(Memory),工具(Tools),以及执行(Action)[^1]。 #### 开源框架概览 对于希望深入了解或应用这些先进理念的人来说,市场上存在多个优秀的开源项目可供探索。例如,在优快云博客上分享的一篇文章列举了九种备受关注的开源大型语言模型代理框架[^3]。这类资源不仅有助于快速入门,还能提供实际案例供研究参考。 #### 核心功能对比分析 当评估不同类型的AI Agent框架时,以下几个方面值得特别注意: - **灵活性与可扩展性** - 部分框架允许开发者轻松集成第三方API和服务,从而增强系统的适应性和功能性。 - **易用程度** - 对于初学者而言,文档质量和支持社区活跃度至关重要;某些平台可能因为其简洁直观的设计而更受欢迎。 - **性能表现** - 关键考量因素还包括响应速度、并发处理能力等方面的表现差异。 - **安全性保障措施** - 数据隐私保护机制也是挑选过程中不可忽视的一个重要维度。 ```python # 示例代码展示如何调用一个假设性的AI Agent库来创建简单的对话机器人 from ai_agent import create_chatbot, add_tool chatbot = create_chatbot() add_tool(chatbot, 'weather_forecast') response = chatbot.get_response('What is the weather like today?') print(response) ``` 通过以上几个角度出发去考察各个候选方案的具体特性,可以帮助找到最适合具体应用场景的理想选择。值得注意的是,随着技术的发展进步,新的解决方案不断涌现,因此保持持续的学习态度总是有益无害的。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值