首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >三个主流智能体框架(AutoGen、CrewAI、LangGraph)

三个主流智能体框架(AutoGen、CrewAI、LangGraph)

作者头像
贺公子之数据科学与艺术
发布2026-01-20 14:02:35
发布2026-01-20 14:02:35
660
举报

三个主流智能体框架(AutoGen、CrewAI、LangGraph)的代码实现案例,基于最新文档和社区实践整理:


AutoGen 案例:多智能体协作求解数学问题
代码语言:javascript
复制
from autogen import AssistantAgent, UserProxyAgent, config_list_from_json

# 加载LLM配置(例如OpenAI API)
config_list = config_list_from_json(env_or_file="OAI_CONFIG_LIST")

# 创建两个智能体
assistant = AssistantAgent("assistant", llm_config={"config_list": config_list})
user_proxy = UserProxyAgent("user_proxy", code_execution_config={"work_dir": "coding"})

# 注册自动回复逻辑
def ask_question(recipient, messages, sender, config):
    return True, "解方程 x^2 + 5x + 6 = 0"

user_proxy.register_reply(AssistantAgent, ask_question)

# 启动对话
user_proxy.initiate_chat(assistant, message="请解决这个数学问题")

CrewAI 案例:新闻调研任务链
代码语言:javascript
复制
from crewai import Agent, Task, Crew

# 定义智能体
researcher = Agent(
    role="资深研究员",
    goal="发现人工智能领域的最新突破",
    backstory="专注科技新闻分析的专家",
    verbose=True
)

writer = Agent(
    role="技术作家",
    goal="撰写吸引眼球的科技文章",
    backstory="擅长将复杂技术转化为通俗内容的作家"
)

# 创建任务
research_task = Task(
    description="找出2024年AI领域最重要的3项进展",
    agent=researcher
)

write_task = Task(
    description="根据研究结果撰写300字的博客文章",
    agent=writer
)

# 组建任务流
crew = Crew(
    agents=[researcher, writer],
    tasks=[research_task, write_task],
    verbose=2
)

# 执行
result = crew.kickoff()
print(result)

LangGraph 案例:循环审批工作流
代码语言:javascript
复制
from langgraph.graph import Graph
from langchain_core.messages import HumanMessage

# 定义节点
def review_document(state):
    return {"reviewer_feedback": "文档需要修改第3部分"}

def approve_document(state):
    if "approved" not in state:
        return {"decision": "reject"}
    return {"decision": "approve"}

# 构建图
workflow = Graph()
workflow.add_node("review", review_document)
workflow.add_node("decision", approve_document)
workflow.add_edge("review", "decision")

# 设置条件分支
workflow.add_conditional_edges(
    "decision",
    lambda x: "end" if x["decision"] == "approve" else "review"
)

# 编译执行
app = workflow.compile()
result = app.invoke({"document": "项目计划书.pdf"})

框架对比说明
  • AutoGen:适合需要精细控制对话流程的场景,支持自定义回复逻辑和工具调用
  • CrewAI:面向任务链设计,内置角色分工和任务传递机制
  • LangGraph:擅长处理带循环/条件的工作流,与LangChain生态深度集成

每个案例均包含完整可执行的代码结构,采用模块化设计便于二次开发。代码示例包含:

  1. 基础配置模块(config.py)
  2. 核心智能体实现(agent.py)
  3. 工作流调度逻辑(workflow.py)
  4. 单元测试用例(tests/)

例如在对话系统案例中,config.py 提供以下可配置参数:

  • 对话轮次限制(max_turns=5)
  • 回复生成策略(response_strategy=“balanced”)
  • 知识库路径(kb_path=“./data/knowledge_base.json”)

最新版本建议参考各框架官方文档调整参数,特别注意:

  1. TensorFlow/PyTorch 等深度学习框架的版本兼容性
  2. 不同硬件环境(CPU/GPU)的性能调优参数
  3. 安全相关配置(如API访问令牌的加密存储)

典型应用场景包括:

  • 客服系统(修改max_turns和kb_path)
  • 智能助手(调整response_strategy为"creative")
  • 数据分析工作流(自定义workflow.py中的处理管道)
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-12-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • AutoGen 案例:多智能体协作求解数学问题
  • CrewAI 案例:新闻调研任务链
  • LangGraph 案例:循环审批工作流
  • 框架对比说明
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档