人工智能大模型AI 应用AI AgentRAG后端前端【免费下载链接】AgentChatAgentChat 是一个基于 LLM 的智能体交流平台内置默认 Agent 并支持用户自定义 Agent。通过多轮对话和任务协作Agent 可以理解并协助完成复杂任务。项目集成 LangChain、Function Call、MCP 协议、RAG、Memory、HITL、Skill、Milvus 和 ElasticSearch 等技术实现高效的知识检索与工具调用使用 FastAPI 构建高性能后端服务。项目地址https://gitcode.com/gh_mirrors/age/AgentChat点击查看免费下载AgentChat 是一个基于 LLM 的智能体交流平台其多智能体架构内置了 ReAct、Plan-Execute、CodeAct、Text2SQL、MCP、Skill 等 8 类 Agent通过推理-行动循环与规划-执行两种核心范式配合工具调用、知识检索与沙箱执行让 AI 能够自主完成复杂任务。本文用通俗语言拆解这 8 类 Agent 的实现原理与适用场景帮助新手快速理解多智能体系统的运作机制。如上图所示AgentChat 采用分层架构最上层是应用交互层中间是智能体编排层ReAct 推理与行动、规划与执行、HITL 人机协同底层则是能力模型层、知识记忆层和数据基础设施。所有 Agent 都运行在智能体编排层这一核心位置。一、8类Agent总览一张表看懂分工AgentChat 的智能体代码集中在 src/backend/agentchat/core/agents/ 目录下每个 Agent 对应一个独立模块官方参考文档见 docs/reference/core.md。Agent核心范式一句话原理典型场景ReactAgentReAct 循环思考→选工具→看结果→再思考循环直到出答案通用对话、实时工具调用GeneralAgentReAct 中间件把工具/MCP/Skill/知识库统一组装成一个智能体用户自建 Agent 的默认引擎PlanExecuteAgent规划-执行先让 LLM 生成完整 JSON 计划再逐步执行多步骤复杂任务CodeActAgent代码即行动让模型直接写 Python 代码丢进沙箱执行数据分析、计算类任务MCPAgent协议接入把 MCP 服务作为子 Agent动态加载外部工具调用高德、搜索等外部服务SkillAgent文档驱动以 SKILL.md 为技能手册按需读取参考文件固定工作流写报告、审代码StructuredResponseAgent结构化输出强制模型输出符合 Pydantic 定义的 JSON计划生成等需要机器可读结果的环节Text2SQLAgent生成-执行-自纠自然语言→SQL→执行报错就带着错误信息重试数据库自然语言查询用户在智能体页面看到的每一个 Agent 卡片背后都由上表中的引擎驱动。二、ReAct Agent最经典的思考-行动循环ReActReasoning Acting是当前最主流的智能体范式react_agent.py 基于 LangGraph 实现核心是两张状态图节点call_tool_node推理节点把用户消息和可用工具一起交给模型模型要么发起tool_calls要调哪个工具、传什么参数要么直接给出最终回答execute_tool_node执行节点真正调用工具把结果作为ToolMessage塞回上下文再跳回推理节点。条件边_should_continue负责判断循环是否继续只要模型还在发起工具调用就继续转圈一旦模型不再调用工具流程走向END。这个设计有两个新手友好的细节全程流式事件每次选工具/执行工具都会通过stream_writer发出 START/END/ERROR 事件前端因此能实时展示正在调用插件工具 xxx的过程兜底容错工具执行失败时错误信息会作为ToolMessage回传给模型让它有机会换一条路。会话界面底部的工具过程提示正是 ReAct 循环中这些流式事件驱动的。三、GeneralAgent把一切能力组装成一个Agent如果说 ReactAgent 是发动机那么 general_agent.py 中的 GeneralAgent 就是整车——它是用户自定义 Agent 的实际执行引擎职责是把各种能力拼装起来插件工具从数据库按tool_ids加载用户自定义的 OpenAPI 工具会自动适配成标准 ToolMCP 子 Agent每个绑定的 MCP 服务被封装成一个工具由 MCPAgent 负责执行Skill 子 Agent每个 Skill 也被包装成工具由 SkillAgent 执行知识库绑定了知识库后会自动多出一个检索知识库工具RAG 检索智能工具搜索当工具数量超过阈值MAX_TOOLS_SIZE 10时会先只暴露一个search_available_tools搜索工具先搜出相关工具再激活避免大量工具描述撑爆上下文。它通过create_agent 中间件Middleware机制实现事件上报和工具名美化展示例如把mcp_filesystem展示成执行MCP文件系统。四、Plan-Execute Agent先画地图再开车plan_execute_agent.py 实现了规划-执行范式分两个阶段阶段一规划。借助 StructuredResponseAgent 让模型输出一个结构化 JSON 计划PlanToolFlow内容以 step_1、step_2 组织每一步声明要调用的工具、参数来源和推理依据。规划提示词completion.py 中的PLAN_CALL_TOOL_PROMPT特别约定了三类情况串行调用工具 B 依赖工具 A 的输出 → 分步执行并行调用多个工具互不影响 → 放在同一个 step参数缺失主动调用call_user向用户追问缺失参数。阶段二执行。按计划逐步调用工具每步执行结果累积进上下文供后续步骤引用。如果模型输出的 JSON 格式坏了还会触发一个JSON 自动修复流程把原 JSON 和报错信息交给模型重新修复后再解析。适合查天气→对比→给建议这种长链条任务简单问题则直接输出空计划跳过工具调用。五、CodeAct Agent让模型直接写代码codeact_agent.py 采用CodeActCode as Action思路与其让模型一个一个调工具不如让它直接写 Python 代码然后在Pyodide 沙箱WebAssembly 版 CPython中执行。工作流程模型输出要么是一段代码块要么是最终文字回答代码被提取后注入沙箱可引用上一步定义的变量和所有工具函数执行结果stdout / 报错回传给模型继续迭代。代码在浏览器端的沙箱里跑天然隔离了风险适合数据分析、批量计算等用代码比用工具调用更高效的任务。六、MCP Agent把外部服务接入智能体MCPAgent 是 MCPModel Context Protocol协议的智能体封装。它通过MCPManager动态连接 SSE / HTTP 类型的 MCP 服务拉取远端工具列表后挂载到 ReAct 循环上。两个值得新手注意的设计中间件注入用户配置像高德地图、邮箱这类需要鉴权的 MCP 服务会通过中间件在每次工具调用前自动把该用户的个人配置如 API Key合并进参数用户无感知终止协议MCP 子 Agent 使用专门的CALL_END_PROMPT要求它在完成任务后只输出固定终止语防止子 Agent 抢戏替主 Agent 回答用户。七、Skill Agent用一份文档定义一种能力SkillAgent 的灵感来自技能文件夹每个 Skill 是一个目录核心是SKILL.md技能说明文档旁边可附带参考资料。它的工作方式很朴素但有效把SKILL.md内容作为系统提示词告诉模型你现在的职责和标准作业流程只给模型两个工具list_skill_files列出技能文件和get_file_content按需读取文件模型在回答时缺什么资料就查什么文件实现渐进式加载避免一次性把所有资料塞进上下文。内置的研究报告、代码审查、邮件写作等 Skill见 src/backend/agentchat/config/skills/都是这种结构。八、StructuredResponse 与 Text2SQL两个专科医生StructuredResponseAgentstructured_response_agent.py用 Pydantic 模型作为模具强制模型输出合法的结构化 JSON。它本身就是 Plan-Execute 规划阶段的幕后功臣——计划能不能稳定生成靠的就是它。Text2SQLAgenttext2sql_agent.py实现自然语言查数据库内置了一个自我修正循环自动读取数据库 Schema表结构注入提示词让模型生成 SQL并只允许 SELECT语句执行防止误操作执行报错时把错误信息连同原 SQL 回传给模型修正最多重试 3 次查询成功后再让模型把结果翻译成自然语言回答。九、多智能体如何协作Agent as ToolAgentChat 多智能体架构最巧妙的地方是Agent as Tool模式GeneralAgent 并不把所有 MCP 工具、Skill 工具平铺到同一个上下文里而是把每个子能力封装成一个子 Agent再把这个子 Agent 当作工具挂到主 Agent 上。好处很直观上下文隔离MCP 子 Agent 和 Skill 子 Agent 各自有独立的提示词与消息历史互不污染按需深入主 Agent 只看到高德地图 MCP、研究报告 Skill这样的入口决定需要时才下钻调用统一事件流所有子 Agent 的执行事件都通过流式通道上报用户能看到完整的任务推进过程。在工作台发起的复杂任务如深度调研就是由这套主 Agent 子 Agent 工具的编排体系在后台协作完成的。十、新手选型指南该用哪种Agent你的需求推荐 Agent原因日常问答 少量工具ReactAgent / GeneralAgent循环轻量、响应快工具、MCP 服务很多GeneralAgent内置智能工具搜索省 Token多步骤长任务调研、规划PlanExecuteAgent先规划后执行步骤可控数据计算、批量处理CodeActAgent代码比多次工具调用更高效接入外部 API 服务MCPAgent标准协议动态加载工具固定工作流写报告等SkillAgent文档即流程稳定可复用查数据库Text2SQLAgent自动 Schema 感知 自纠错总结AgentChat 的多智能体架构可以概括为一句话用 ReAct 循环解决怎么调工具用 Plan-Execute 解决先想后做用 Agent-as-Tool 解决谁来协调谁。8 类 Agent 各司其职共享同一套模型管理ModelManager、流式事件和 Token 统计回调既保证了扩展性也让新手无需理解全部细节就能在界面上组合出符合自己场景的智能体。想深入代码细节建议按这个顺序阅读react_agent.py → general_agent.py → plan_execute_agent.py再配合 docs/reference/core.md 的架构说明基本就能掌握整个多智能体体系。赞分享人工智能大模型AI 应用AI AgentRAG后端前端【免费下载链接】AgentChatAgentChat 是一个基于 LLM 的智能体交流平台内置默认 Agent 并支持用户自定义 Agent。通过多轮对话和任务协作Agent 可以理解并协助完成复杂任务。项目集成 LangChain、Function Call、MCP 协议、RAG、Memory、HITL、Skill、Milvus 和 ElasticSearch 等技术实现高效的知识检索与工具调用使用 FastAPI 构建高性能后端服务。项目地址https://gitcode.com/gh_mirrors/age/AgentChat点击查看免费下载相关推荐AutoGen AgentChat实战指南快速构建多智能体对话系统AutoGen AgentChat实战指南快速构建多智能体对话系统 还在为构建复杂的多智能体应用而头疼AutoGen AgentChat框架为你提供了一套完人工智能AI AgentAgent 框架多智能体工具调用TradingAgents-CN多智能体系统架构与实现原理TradingAgents CN是一个基于多智能体LLM的中文金融交易框架通过先进的多智能体系统架构实现智能化的投资决策和风险管理。这个多智能体交易系统将市场人工智能大模型AI Agent多智能体金融科技后端前端Qwen-Agent 的 Agent 类完全指南从 Assistant 单智能体、GroupChat 多智能体到自定义 Agent 开发实战Qwen Agent 的 Agent 类完全指南从 Assistant 单智能体、GroupChat 多智能体到自定义 Agent 开发实战 Qwen Age人工智能大模型AI AgentAgent 框架工具调用RAGAgent 评测MCP Clients创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考