AI Agent目前我见到的最多的翻译是“智能体”,但是直译过来是“智能代理”。
它是一种能够感知环境、自主决策并执行任务以实现特定目标的智能系统。它以大型语言模型(LLM)为核心,赋予机器自主性、适应性和交互性,使其能在复杂多变的环境中独立运作。简单来说,AI Agent 就像是一个拥有独立思考和行动能力的智能助手,能够理解你的需求,并通过调用各种工具和资源,为你完成一系列复杂的任务。
就像一位能干的私人助理,它不仅能执行指令,更重要的是能够理解任务背景、制定执行计划,并在遇到问题时灵活调整策略。
AI Agent 的核心在于其自主学习和决策能力,它能够通过不断积累经验来优化自己的行为模式。
AI Agent智能体,通常具备以下特点:
在当今数字化时代,AI Agent 正逐渐成为推动各行业发展的重要力量。它广泛应用于客户服务、医疗诊断、股市交易、智能交通、教育辅导等多个领域,为我们的生活和工作带来了极大的便利和效率提升。而 AI Agent 框架,则是构建和开发这些智能代理的关键工具,它为 AI Agent 的创建、部署和管理提供了全方位的支持。接下来,让我们一起深入了解 2025 年值得入坑的五大 AI Agent 框架。
AutoGen
是微软发布的一个智能体协作框架,由微软与宾夕法尼亚州立大学和华盛顿大学团队合作,于 2023 年 10 月发布 。其设计旨在帮助开发者创建基于大语言模型(LLM)的复杂应用程序,通过多个智能体之间的协作与交互,实现更加智能和灵活的任务处理。
AutoGen支持Python和.NET,开发人员可以配置代理,在执行特定任务之前请求人类用户的指导或批准。代理通过异步消息进行通信,支持事件驱动和请求/响应交互模式。
1、以Python为例,使用 pip 安装pyautogen库,命令如下:
pip install pyautogen
2、核心组件使用 ConversableAgent:用于管理每个角色的行为,是会话的基类。一般不直接使用,而是作为其他类的父类。它能保持对话状态、历史记录,并调用其他工具。例如创建一个 AssistantAgent(继承自 ConversableAgent):
from autogen import AssistantAgent
# 创建一个AssistantAgent,设置系统消息
assistant = AssistantAgent(
name="assistant",
system_message="你是一个乐于助人的AI助手"
)
3、UserProxyAgent:用于模拟用户输入和执行代码等,充当用户角色。比如:
from autogen import UserProxyAgent
# 创建一个UserProxyAgent,设置代码执行配置
user_proxy = UserProxyAgent(
name="user_proxy",
code_execution_config={"work_dir": "coding", "use_docker": False}
)
4、GroupChat:用于管理多个智能体的协作,所有智能体参与到一个对话线程中并共享相同的上下文。示例如下:
from autogen import GroupChat, GroupChatManager
# 创建多个智能体
agent1 = AssistantAgent("agent1", system_message="智能体1的任务描述")
agent2 = AssistantAgent("agent2", system_message="智能体2的任务描述")
# 创建GroupChat,添加智能体
groupchat = GroupChat(agents=[agent1, agent2], messages=[])
# 创建GroupChatManager管理GroupChat
manager = GroupChatManager(groupchat=groupchat)
5、发起对话:通过initiate_chat方法发起智能体之间的对话,示例如下:
# 发起用户代理与助手代理之间的对话
user_proxy.initiate_chat(assistant, message="请帮我写一篇关于人工智能发展的文章大纲")
上述代码中,首先创建了一个助手代理assistant和一个用户代理user_proxy,然后通过user_proxy发起与assistant的对话,请求生成一篇关于人工智能发展的文章大纲。在实际应用中,你可以根据具体需求,调整智能体的配置、数量和对话内容,以实现各种复杂的任务。
AutoGen 的应用场景广泛,在多个领域都能发挥重要作用:
LangGraph是一个专注于自然语言处理的框架,它通过循环控制、状态管理和人机交互等技术,帮助开发者构建复杂的AI Agent。适用于多种应用场景,如智能客服、智能投资顾问等。
使用LangGraph时,你需要首先安装LangGraph框架,使用 pip 安装langgraph库,命令如下:
pip install -U langgraph
安装时可能还需要安装其他相关依赖,如langchain等,具体可根据实际情况和报错信息进行安装。
2、然后,定义Agent的名称、功能和语言模型等。通过设置循环控制和状态管理,可以创建能够处理复杂任务的Agent。在开发过程中,你可以利用LangGraph提供的工具和接口来测试和优化Agent的性能。
LangGraph 的应用场景广泛,能够在多个领域发挥重要作用:
Phidata是一个基于Python的框架,能够将大型语言模型(LLM)转化为AI产品中的Agent。
它支持多种主流的大厂闭源和开源LLM,如OpenAI、Anthropic、Cohere、Ollama和Together AI等。通过其对数据库和向量存储的支持,我们可以轻松地将AI系统连接到Postgres、PgVector、Pinecone、LanceDb等。
要使用Phidata,首先需要安装Phidata及其工具,使用Phidata时,开发人员可以构建基础Agent,也可以通过函数调用、结构化输出和微调来创建高级Agent。Phidata与AWS无缝集成,可以在AWS账户上运行完整的应用程序。
pip install -U phidata
安装完成后,可以运行命令创建一个新的Phidata项目。在项目中,你可以定义Agent的名称、功能和语言模型等,然后通过函数调用、结构化输出和微调来创建高级Agent。
Swarm是OpenAI发布的一个实验性多智能体编排框架,旨在简化多智能体系统的构建、编排和管理。用于创建和管理多个AI Agent。
1、使用 pip 命令安装 Swarm 框架,命令如下:
pip install git+ssh://git@github.com/openai/swarm.git
2、使用OpenAI Swarm时,需要创建一个客户端实例。首先导入 Swarm 类,并实例化一个 Swarm 客户端,示例如下:
from swarm import Swarm
# 实例化Swarm客户端
client = Swarm()
2、定义智能体,例如创建两个智能体,智能体 A 负责接收用户消息并转接给智能体 B,智能体 B 以特定格式回复:
from swarm import Agent
# 定义一个函数,用于将对话交接给智能体B
def transfer_to_agent_b():
return agent_b
# 定义智能体A
agent_a = Agent(name="Agent A", instructions="你是一个乐于助人的智能体,负责将用户消息转交给智能体B", functions=[transfer_to_agent_b])
# 定义智能体B
agent_b = Agent(name="Agent B", instructions="请用三句话回答用户问题,每句话不超过10个字")
3、使用 Swarm 客户端的run函数,传入智能体和用户消息,接收并处理消息,示例如下:
# 运行Swarm,并传入用户消息
response = client.run(agent=agent_a, messages=[{"role": "user", "content": "请给我推荐一本好书"}])
print(response.messages[-1]["content"])
上述代码中,首先实例化了 Swarm 客户端client。然后定义了两个智能体agent_a和agent_b,agent_a通过函数transfer_to_agent_b将对话交接给agent_b。最后,使用client.run方法运行 Swarm,传入智能体agent_a和用户消息,获取智能体agent_b的回复并打印。在实际应用中,你可以根据具体需求,增加智能体的数量,定义更复杂的指令和函数,实现各种复杂的多智能体协作任务。
CrewAI是最受欢迎的基于Agent的AI框架之一,能够快速构建AI Agent并将其集成到最新的LLM和代码库中。
由 OpenAI 于 2023 年 8 月发布。它允许开发者创建由 AI Agent 组成的 “Crew”,每个 Agent 都有特定的角色和职责,共同完成复杂的任务。该框架尤其适用于构建协作式人工智能系统,以解决需要不同专业知识和协调工作的问题。
1、使用 pip 安装crewai库,命令如下:
pip install crewai
若要安装带工具的完整版,包括额外的代理辅助工具,执行:pip install 'crewai[tools]'
2、定义具有角色和目标的代理。例如创建一个负责市场分析的代理:
from crewai import Agent
# 创建一个市场分析师代理
market_analyst = Agent(
role='市场分析师',
goal='分析市场趋势,提供有价值的市场洞察',
backstory='一位经验丰富的市场分析师,拥有多年的行业经验',
tools=[], # 可根据需求添加工具
verbose=True
)
3、为代理创建任务。例如为上述市场分析师代理创建一个分析市场趋势的任务:
from crewai import Task
# 创建一个市场趋势分析任务
market_task = Task(
description='对当前市场的主要趋势进行深入分析,包括市场规模、增长趋势、竞争格局等方面',
agent=market_analyst
)
4、实例化团队并采用顺序处理。例如创建一个包含市场分析师和策略制定者的团队,并分配任务:
from crewai import Crew
# 创建一个策略制定者代理
strategy_maker = Agent(
role='策略制定者',
goal='根据市场分析结果制定相应的市场策略',
backstory='擅长根据市场情况制定有效的策略',
tools=[],
verbose=True
)
# 创建一个任务,要求根据市场分析结果制定策略
strategy_task = Task(
description='根据市场分析师提供的市场分析报告,制定一套切实可行的市场策略',
agent=strategy_maker
)
# 实例化团队,设置代理和任务,并指定顺序处理
crew = Crew(
agents=[market_analyst, strategy_maker],
tasks=[market_task, strategy_task],
verbose=2 # 可设置为1或2以获得不同的日志记录级别
)
5、让团队开始工作,执行任务:
# 启动团队任务
result = crew.kickoff()
print(result)
上述代码中,首先创建了市场分析师和策略制定者两个代理,分别设置了它们的角色、目标、背景故事等。然后为每个代理创建了相应的任务。接着,通过Crew实例化了团队,将代理和任务添加到团队中,并设置了日志记录级别。最后,使用kickoff方法启动团队任务,执行任务并输出结果。在实际应用中,你可以根据具体需求,进一步扩展和优化代码,例如添加更多的代理和任务,调整任务的分配和执行顺序等,以实现各种复杂的协作任务 。
CrewAI 的应用场景丰富多样,尤其适用于以下场景:
以上就是2025年值得入坑的五大AI Agent框架。每个框架都有其独特的特点和优势,适用于不同的开发场景和需求。无论你是初学者还是资深开发者,都可以根据自己的项目需求选择合适的框架,快速构建出高效、智能的AI Agent。希望这篇文章能帮助大家在新的一年里更好地了解和应用AI Agent技术,共同推动人工智能行业的发展。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有