啥是AI Agent!2025年值得推荐入坑AI Agent的五大工具框架!

在AI技术飞速发展的今天,AI Agent已经成为了一个热门的研究和应用领域。 无论是企业还是个人开发者,都希望能够借助AI Agent来提升工作效率、优化业务流程或创造全新的用户体验。 然而,从零开始构建一个AI Agent并非易事,幸运的是,市面上有许多优秀的框架可以帮助我们快速入坑。

在AI技术飞速发展的今天,AI Agent已经成为了一个热门的研究和应用领域。无论是企业还是个人开发者,都希望能够借助AI Agent来提升工作效率、优化业务流程或创造全新的用户体验。然而,从零开始构建一个AI Agent并非易事,幸运的是,市面上有许多优秀的框架可以帮助我们快速入坑。今天,就让我们一起来看看2025年值得入坑的五大AI Agent框架吧!

一、先来理解AI Agent是个啥?

AI Agent目前我见到的最多的翻译是“智能体”,但是直译过来是“智能代理”。

它是一种能够感知环境、自主决策并执行任务以实现特定目标的智能系统。它以大型语言模型(LLM)为核心,赋予机器自主性、适应性和交互性,使其能在复杂多变的环境中独立运作。简单来说,AI Agent 就像是一个拥有独立思考和行动能力的智能助手,能够理解你的需求,并通过调用各种工具和资源,为你完成一系列复杂的任务。

就像一位能干的私人助理,它不仅能执行指令,更重要的是能够理解任务背景、制定执行计划,并在遇到问题时灵活调整策略。

AI Agent 的核心在于其自主学习和决策能力,它能够通过不断积累经验来优化自己的行为模式。

图片图片

AI Agent智能体,通常具备以下特点:

  • 自主性: AI Agent能够自主决策和执行任务,无需人类干预。
  • 适应性: 能够根据环境变化调整自己的行为。
  • 交互性: 能够与人类或其他AI Agent进行交流与合作。
  • 学习能力: 通过学习不断优化自己的行为和决策。

在当今数字化时代,AI Agent 正逐渐成为推动各行业发展的重要力量。它广泛应用于客户服务、医疗诊断、股市交易、智能交通、教育辅导等多个领域,为我们的生活和工作带来了极大的便利和效率提升。而 AI Agent 框架,则是构建和开发这些智能代理的关键工具,它为 AI Agent 的创建、部署和管理提供了全方位的支持。接下来,让我们一起深入了解 2025 年值得入坑的五大 AI Agent 框架。

二、框架一:AutoGen

AutoGen是微软发布的一个智能体协作框架,由微软与宾夕法尼亚州立大学和华盛顿大学团队合作,于 2023 年 10 月发布 。其设计旨在帮助开发者创建基于大语言模型(LLM)的复杂应用程序,通过多个智能体之间的协作与交互,实现更加智能和灵活的任务处理。

图片图片

2.1 主要特点

  • 多智能体协作:支持整合不同的大语言模型,AutoGen允许创建代理网络,每个代理都可以独立工作或与其他代理协作。
  • 代码自动生成与执行:代理可以自动生成、执行和调试代码,对软件工程和数据分析任务非常有用。
  • 外部工具集成:代理可以与外部工具、服务和API交互,显著扩展其功能。
  • 可插拔组件:系统支持通过可插拔组件进行自定义,包括自定义代理、工具、内存和模型。

2.2 基本使用

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的对话,请求生成一篇关于人工智能发展的文章大纲。在实际应用中,你可以根据具体需求,调整智能体的配置、数量和对话内容,以实现各种复杂的任务。

2.3 应用场景

AutoGen 的应用场景广泛,在多个领域都能发挥重要作用:

  • 软件开发: 可以自动生成代码,帮助开发人员快速实现各种功能。通过智能体之间的协作,能够完成从需求分析到代码编写、测试等一系列软件开发任务,提高开发效率,减少开发周期。
  • 数据分析: 协助用户自动生成数据分析模型和算法。通过多个智能体的分工协作,能够快速完成数据预处理、特征选择、模型训练和评估等工作,为数据分析提供有力支持。
  • 智能客服: 多个智能体可以协同工作,更好地理解用户问题,提供准确、快速的回答。能够处理复杂的客户咨询,提供个性化的服务,提升客户满意度。
  • 教育领域: 用于创建智能辅导系统,根据学生的学习情况和问题,智能体之间相互协作,提供针对性的辅导和解答,帮助学生更好地学习和掌握知识。

三、框架二:LangGraph

LangGraph是一个专注于自然语言处理的框架,它通过循环控制、状态管理和人机交互等技术,帮助开发者构建复杂的AI Agent。适用于多种应用场景,如智能客服、智能投资顾问等。

3.1 主要特点

  • 循环控制:能够处理复杂的循环任务,确保Agent在多轮对话中保持连贯性和一致性。
  • 状态管理:有效管理Agent的状态,使其能够根据不同的上下文和用户输入做出合理的响应。
  • 人机交互:提供了丰富的人机交互功能,使得Agent能够更好地理解和满足用户的需求。
  • 多Agent通信和协作:支持多智能体之间的通信和协作,共同完成复杂任务。
  • 高度可定制:可以根据具体需求进行定制化开发,满足个性化功能要求,拥有丰富的插件、工具和第三方服务支持,方便功能扩展和优化。

3.2 基本使用

使用LangGraph时,你需要首先安装LangGraph框架,使用 pip 安装langgraph库,命令如下:

复制
pip install -U langgraph

安装时可能还需要安装其他相关依赖,如langchain等,具体可根据实际情况和报错信息进行安装。

2、然后,定义Agent的名称、功能和语言模型等。通过设置循环控制和状态管理,可以创建能够处理复杂任务的Agent。在开发过程中,你可以利用LangGraph提供的工具和接口来测试和优化Agent的性能。

图片图片

3.3 应用场景

LangGraph 的应用场景广泛,能够在多个领域发挥重要作用:

  • 交互式叙事: 用于创建具有丰富情节和多分支剧情的交互式故事、游戏等。通过循环和分支能力,根据用户的选择动态生成不同的故事发展,提供个性化的叙事体验。
  • 智能客服与售后支持: 在处理复杂的客户问题时,能够根据客户的反馈和问题状态,灵活调整对话流程,提供更加精准和贴心的服务。例如通过循环询问获取更多信息,以解决客户的疑难问题。
  • 自动化任务流程优化: 对于需要多次迭代和反馈的自动化任务,如数据分析流程中的数据清洗、模型训练与优化等环节,可利用 LangGraph 的循环计算和状态管理能力,实现流程的自动化和优化。
  • 多智能体协作系统: 支持多智能体之间的复杂协作,通过图模型清晰地定义智能体之间的交互关系和协作流程。例如在一个智能城市管理系统中,多个智能体分别负责交通、环境、能源等不同领域,LangGraph 可协调它们之间的工作 。

4、框架三:Phidata

Phidata是一个基于Python的框架,能够将大型语言模型(LLM)转化为AI产品中的Agent。

图片图片

它支持多种主流的大厂闭源和开源LLM,如OpenAI、Anthropic、Cohere、Ollama和Together AI等。通过其对数据库和向量存储的支持,我们可以轻松地将AI系统连接到Postgres、PgVector、Pinecone、LanceDb等。

4.1 主要特点

  • 多LLM支持:支持主流大厂的闭源和开源LLM,如OpenAI、Anthropic等。
  • 数据库支持:通过其对数据库和向量存储的支持,可以轻松地将AI系统连接到Postgres、PgVector等。
  • 监控关键指标:提供会话快照、API调用、token使用情况,并支持设置调整和Agent改进。
  • 内置Agent UI:Phidata提供了一个现成的用户界面,用于本地或云端运行Agent项目,并在后台管理会话。
  • 模板支持:通过预配置的代码库模板,加速AI代理的开发和生产过程。
  • 部署灵活:你可以将Agent发布到GitHub或任何云服务,也可以连接AWS账户将其部署到生产环境。

4.2 基本使用

要使用Phidata,首先需要安装Phidata及其工具,使用Phidata时,开发人员可以构建基础Agent,也可以通过函数调用、结构化输出和微调来创建高级Agent。Phidata与AWS无缝集成,可以在AWS账户上运行完整的应用程序。

复制
pip install -U phidata

安装完成后,可以运行命令创建一个新的Phidata项目。在项目中,你可以定义Agent的名称、功能和语言模型等,然后通过函数调用、结构化输出和微调来创建高级Agent。

5、框架四:OpenAI Swarm

Swarm是OpenAI发布的一个实验性多智能体编排框架,旨在简化多智能体系统的构建、编排和管理。用于创建和管理多个AI Agent。

5.1 主要特点

  • 轻量级设计:框架结构简洁高效,易于理解和使用。
  • 高度可控:提供了精确的代理协调和执行控制,开发者可以轻松地管理Agent的行为和任务分配。
  • 客户端运行:几乎完全在客户端执行,减少了服务器端的负担,提高了响应速度。
  • 无状态设计:类似Chat Completions API的无状态特性,使得Agent之间的交互更加灵活和高效。

5.2 基本使用

1、使用 pip 命令安装 Swarm 框架,命令如下:

复制
pip install git+ssh://[email protected]/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", instructinotallow="你是一个乐于助人的智能体,负责将用户消息转交给智能体B", functions=[transfer_to_agent_b])

# 定义智能体B
agent_b = Agent(name="Agent B", instructinotallow="请用三句话回答用户问题,每句话不超过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的回复并打印。在实际应用中,你可以根据具体需求,增加智能体的数量,定义更复杂的指令和函数,实现各种复杂的多智能体协作任务。

5.3 应用场景

  • 快速搭建演示项目: 由于其简化智能体创建和轻量级的特点,非常适合快速搭建一些演示项目,用于展示多智能体系统的概念和功能,帮助开发者快速验证想法 。
  • 教育领域: 可以用于创建教学案例和实验项目,帮助学生更好地理解多智能体系统的原理和应用,提升学生的实践能力和创新思维 。
  • 客户服务场景: 构建多智能体系统,如接待员 AI 负责初步接待客户,技术支持 AI 解答技术问题,售后 AI 处理售后相关事宜等,这些智能体通过 Swarm 框架无缝配合,为客户提供全方位、高效的服务体验 。
  • 内容创作: 在内容创作方面,不同的智能体可以分别负责创意构思、素材收集、内容撰写、编辑审核等工作,通过智能体之间的协作,实现文章、视频脚本等内容的自动生成,提高创作效率和质量 。
  • 数据分析: 能够处理大量独立的功能和指令,这些功能和指令难以编码到单个提示中。Swarm 可以帮助开发者构建多智能体系统,实现数据的自动化处理和分析,例如数据清洗、特征提取、模型训练等任务可以由不同的智能体协同完成 。

6、框架五:CrewAI

CrewAI是最受欢迎的基于Agent的AI框架之一,能够快速构建AI Agent并将其集成到最新的LLM和代码库中。

由 OpenAI 于 2023 年 8 月发布。它允许开发者创建由 AI Agent 组成的 “Crew”,每个 Agent 都有特定的角色和职责,共同完成复杂的任务。该框架尤其适用于构建协作式人工智能系统,以解决需要不同专业知识和协调工作的问题。

6.1 主要特点

  • 支持多种模型:支持与多种大型语言模型(LLMs)集成,包括 OpenAI 以及像 Ollama 等本地开源模型,为开发者提供了更多选择,能够根据项目需求和预算挑选最适合的模型。
  • 可扩展性强:支持集成700多种应用程序,包括Notion、Zoom、Stripe、Mailchimp、Airtable等。
  • 角色专业化:采用基于角色的代理设计,开发者可以为每个代理自定义具体的角色、目标和工具。
  • 自主委派与协作:代理可以自主地委派任务并相互询问,提高解决问题的效率。当一个代理遇到无法独自解决的问题时,能够主动寻求其他具有相关专业知识的代理的帮助,实现高效的协作。
  • 灵活的任务管理:使用可自定义的工具定义任务,并动态地分配给代理。开发者可以根据任务的需求和代理的能力,灵活调整任务的分配,确保任务能够得到最合适的处理。
  • 流程驱动:目前主要支持顺序任务执行和层级流程,例如在一个项目管理场景中,任务可以按照先后顺序依次由不同的代理完成,前一个任务的输出作为后一个任务的输入 。

6.2 基本使用

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(
    descriptinotallow='对当前市场的主要趋势进行深入分析,包括市场规模、增长趋势、竞争格局等方面',
    agent=market_analyst
)

4、实例化团队并采用顺序处理。例如创建一个包含市场分析师和策略制定者的团队,并分配任务:

复制
from crewai import Crew
# 创建一个策略制定者代理
strategy_maker = Agent(
    role='策略制定者',
    goal='根据市场分析结果制定相应的市场策略',
    backstory='擅长根据市场情况制定有效的策略',
    tools=[],
    verbose=True
)
# 创建一个任务,要求根据市场分析结果制定策略
strategy_task = Task(
    descriptinotallow='根据市场分析师提供的市场分析报告,制定一套切实可行的市场策略',
    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方法启动团队任务,执行任务并输出结果。在实际应用中,你可以根据具体需求,进一步扩展和优化代码,例如添加更多的代理和任务,调整任务的分配和执行顺序等,以实现各种复杂的协作任务 。

6.3 应用场景

CrewAI 的应用场景丰富多样,尤其适用于以下场景:

  • 构建协作式 AI 系统: 如智能客服团队,不同的代理可以分别负责不同领域的问题解答,协同合作以提供全方位的服务;多智能体研究团队,模拟和优化研究团队的协作过程,提高研究效率 。
  • 项目管理: 模拟项目管理团队,不同的代理可以处理调度、资源分配和风险评估等任务,实现项目的高效管理。
  • 内容创作: 多个代理共同合作进行内容创作,包括研究员收集资料、撰稿人撰写内容、编辑进行审核和优化等,提高内容创作的质量和效率。
  • 数据分析: 在数据分析场景中,不同的代理可以分别负责数据收集、清洗、分析和可视化等任务,通过协作完成复杂的数据分析工作。

7、小结

以上就是2025年值得入坑的五大AI Agent框架。每个框架都有其独特的特点和优势,适用于不同的开发场景和需求。无论你是初学者还是资深开发者,都可以根据自己的项目需求选择合适的框架,快速构建出高效、智能的AI Agent。希望这篇文章能帮助大家在新的一年里更好地了解和应用AI Agent技术,共同推动人工智能行业的发展。

相关资讯

【LLM&Agent】PPTAgent:PPT自动生成Agent框架

来看一个PPT生成思路:PPTAgent。 传统的PPT生成方法通常使用端到端的文本生成范式,这种方法仅关注文本内容,忽略了布局设计和PPT结构。 PPTAgent 采用了一种基于编辑的生成范式,解决处理空间关系和设计风格方面的挑战。

ChatGPT背后的开源AI框架Ray,现在值10亿美元

最近一段时间,文本生成的人工智能在互联网上掀起了一阵风暴:ChatGPT 因为可以对人们能想到的几乎任何问题提供非常详细、近乎逼真的回答而受到追捧。大模型应用的出现让人们对于 AI 技术突破充满了信心,不过很少有人知道在其背后,一个分布式机器学习框架正为这场生成式 AI 革命提供动力。

飞桨超越TensorFlow,中国开源框架市场格局迎来变化

百度稳居中国深度学习平台市场综合份额第一。