跳过正文

·107 字·1 分钟
Chuck Chan
作者
Chuck Chan
分享技术、思考与生活

1. 主流Agent框架
#

框架 优势 适用场景
LangChain+LangGraph 全能型框架,管道式编排与丰富生态 企业级复杂应用、RAG + 工具混合
AutoGen 对话式多 Agent 科研、代码生成、多角色辩论
Qwen-Agent 针对中文场景优化,对长文本友好 私有化部署、对接通义千问 / 阿里云生态
Coze/Dify 低代码可视化 业务人员快速搭建应用

这里仅仅列举了几个不同类型的框架,另外还有CrewAI、Semantic Kernel等一系列框架,不再一一列举。

2. Agent框架功能
#

一个Agent框架需要有哪些功能,解决哪些核心问题?

1.1 LLM层适配
#

LLM是Agent框架的大脑,一个Agent框架首先要具有LLM适配功能。一般来说,框架都具有以下特性:

  1. 统一调用方式
  2. 统一了参数配置(如 temperature)
  3. 输出格式(统一转为 Message 对象)

具体例子可以查看上一篇,这里不再赘述如何调用LLM。简单来说,就是各家LLM都定义了自己的一套API接口,如果要开发者自己去集成这些API,会花费很多功夫,所以这些框架都会在API层的基础上再包装一层,以适配不同的LLM。当开发者需要修改模型时,只需要修改对应的参数即可。

LangChain demo

1.2 工具注册与调度
#

当LLM需要使用外部功能时,就需要使用工具。工具是Agent框架的双手,目前市面流行的MCP、RAG、Skills,都可以抽象为工具调用。从框架设计的角度出发,一个工具应该尽可能高内聚低耦合,即开发者只关心工具的逻辑,而不用去关心工具的定义、使用等。

LangChain demo

如上,在LangChain框架中,用户只需要使用@tool装饰器,就可以完成一个工具的开发。

1.3 Context管理
#

一个用户的问题通常需要多轮对话才能解决,但LLM本身是无记忆性的,这就要求框架本身能附带上下文记忆的功能。关于上下文管理,框架通常需要提供以下能力:

  • 对话历史截断
  • 滑动窗口策略
  • 避免Token爆炸

LangChain demo

1.4 控制流编排
#

复杂的任务通常不能一次性完成,通常需要用ReAct的方式拆解多个流程步骤来完成,可以说控制流是框架的中枢。当然,Agent框架支持你以什么样的流程来完成任务。

模式 说明 适用场景
管道模式 (Pipeline) 类似LangChain 的 prompt | llm 链式调用 线性处理流程
单人模式 (Loop) 经典 ReAct 循环:思考 -> 行动 -> 观察 单 Agent 完成任务
多人模式 (DAG) 接力赛:明确的执行顺序 流程化任务 (如投资决策)
多人模式 (Chat) 圆桌会议:自由讨论 开放式协作

3. LlamaIndex
#

4. AutoGen
#

5. 实战:多文件智能问答agent
#

6. 测评框架
#