你的项目采用单 Agent 还是多 Agent,分别承担什么职责?

考查重点:Agent 分工与任务交接。单 Agent 可统一决策和工具调用;多 Agent 按任务或数据源分工,讲清谁路由、怎样交接和汇总结果

本题目录

参考答案

深度研搜Python

基于 deepsearch-agents

核心回答

下面以一个整合公开资料、企业数据库和内部知识库的研搜助手为参考示例。

项目采用主从式多 Agent:一个主智能体统一面对用户,配置三个自定义业务专家子智能体,按信息来源分工。后端使用 Python 和 FastAPI,DeepAgents 负责主从调度,底层由 LangGraph 承接执行状态;大模型负责理解问题、选择调用和整理结果,Tavily、MySQL、RAGFlow 分别提供真实信息。

  • 主智能体:理解目标、拆分任务、选择专家,拿到结果后判断是否还缺信息,最后汇总回答。读取上传文件、生成 Markdown 和转换 PDF 由它调用文件工具完成。
  • 网络搜索子智能体:通过 Tavily 搜索公开网页,补充最新公开信息。
  • 数据库查询子智能体:先确认表和字段,再生成、执行 SQL,获取结构化业务数据。
  • RAGFlow 子智能体:选择合适的知识库助手,查询企业内部的非结构化文档。

例如新能源团队研究某类电池的技术路线与量产进展,主智能体把政策和竞品公告查询交给网络助手,把相关业务统计交给数据库助手,把内部产品资料查询交给 RAGFlow 助手;结果回来后统一解释,再按要求生成文件。拆开的主要原因是三类数据源的工具、查询步骤和上下文不同,能把各领域的细节留在子任务里;代价是多了调度、信息交接和模型调用开销。若需求只有单一知识库问答,一个 Agent 配检索工具通常就足够。

展开说明

选型的依据是任务边界,而不是模型数量

这个例子按信息来源拆分,因为“查公开网页”“查业务表”“查内部文档”的处理过程不同。数据库助手需要表结构和查询结果,网络助手需要网页与搜索记录,把这些原始材料都放进主智能体会挤占上下文,也容易让它混淆工具用途。

子智能体在自己的上下文中选择工具、读取反馈并完成局部任务,主智能体主要接收结果。它和“一个 Agent 挂很多工具”的区别,在于存在独立的任务执行边界;给几次模型调用换上角色名称,并不能体现这种分工。

多 Agent 也不要求多种模型。这个参考实现通过统一配置创建模型,三个业务子智能体没有覆盖 model,因此沿用主智能体的模型。职责差异来自提示词、工具集合和任务上下文。需要进一步控制成本时,可以评估给不同角色配置不同模型,但要比较工具调用、结果质量、延迟和费用,而不是默认小模型一定适合 Worker。

一次调用如何完成交接

主智能体根据子智能体的能力描述,利用框架的 task 工具下发子目标和必要背景。例如给数据库助手的任务应包含统计对象、时间范围和指标口径;给知识库助手的任务应说明要核实哪项产品或制度信息。子智能体执行后把结果交回主智能体,由主智能体决定补查还是汇总,子智能体不分别给用户输出三份最终答案。

数据库查询与文档查询只有在输入已经齐备、互不依赖时才适合并行。如果要先查出产品型号,再检索对应内部资料,就必须先完成前一步。接口采用异步执行、流式推送进度,也不代表每个子任务都会自动并行。

角色分工与权限控制要分别落实

配置不同工具集合可以缩小角色的业务范围,但实际权限仍由工具和数据源执行。例如数据库场景应使用只读账号、查询校验、行数和执行时间限制,不能把“只查询”的提示词当作数据库权限。该参考代码的自定义 SQL 工具直接执行传入语句,进一步加固属于后续工程工作。

示例使用 thread_id 关联会话,用 InMemorySaver 保存进程内状态。它有助于同一会话持续执行;若要在服务重启后恢复任务,还需要持久化检查点和产物记录。WebSocket 用于推送进度,不承担这些状态的持久化。

常见追问

为什么不用一个 Agent,把三个数据源都做成工具?

完全可以作为简单版本。若请求主要落在同一领域,工具选择稳定,单 Agent 的成本和排障负担更小。拆分的理由应是领域上下文、工具选择或独立执行已有明确需求;用相同任务比较成功率、来源准确性、延迟和 Token 消耗,才能判断拆分是否值得。

主智能体和子智能体用相同模型,为什么还算多 Agent?

模型是能力底座,Agent 是围绕目标、指令、上下文和工具组织起来的执行单元。同一个模型可以驱动多个独立子任务;反过来,先后调用两个不同模型,也不自动构成多 Agent 协作。

子智能体返回的结果互相矛盾怎么办?

先比较数据来源、时间范围和统计口径,判断是否确实在回答同一件事。例如数据库返回实际销售记录,内部文档描述计划销量,两者不能直接互相覆盖。主智能体应保留各自依据,补查能验证分歧的证据,仍无法确认时在最终结果中说明缺口。

对应教程

参考资料

相关面经

34 篇

快手

Agent 开发工程师
二面
查看原面经 →
设计一个多 Agent 系统时,你会怎样划分角色和协作边界?它相比单一 Workflow,适合解决哪些问题?

蚂蚁集团

面经合集
查看原面经 →
项目是多 Agent 架构吗?

百度

Agent Harness 研发工程师
秋招一面
查看原面经 →
项目里面除了修复agent以外还有其他的agent吗,这是一个多agent架构的项目吗?

传音

AI 测试开发工程师
实习
查看原面经 →
项目追问
你负责的是单Agent开发还是多Agent编排?

字节跳动

后端开发工程师
秋招一面
查看原面经 →
#秋招面试记录#1.聊项目,为什么这么设计双agent,怎么优化
展开剩余 29 篇面经

阿里巴巴

AI 应用开发工程师
秋招二面
查看原面经 →
Planner、Executor 和 Critic 分别负责什么?
为什么要拆成三个角色?

懂车帝

全栈开发工程师
社招二面
查看原面经 →
这套系统现在拆了几个 Agent?

百度

Go 后端开发工程师(Agent)
实习一面
查看原面经 →
你们这个系统是单 Agent 还是多 Agent?

懂车帝

Agent 开发
社招一面
查看原面经 →
multi-agent承担哪些工作?

字节跳动

Agent 开发
二面
查看原面经 →
是单Agent还是多Agent?各个子Agent的核心任务和分工是怎么划分的?

字节跳动

Agent 开发
一面
查看原面经 →
架构选型:单Agent还是多Agent?子Agent具体怎么分工?

阿里巴巴

Agent 开发工程师
实习一面
查看原面经 →
简历里agent项目为什么要用Multi agent,单agent不可以吗

阿里巴巴

Agent 应用开发工程师
一面
查看原面经 →
多Agent项目是不是主子架构。某个功能单次会话的token大概有多少,有没有超过模型限制。用的Qwen具体是哪个版本。

禅游科技

全栈开发工程师
实习一面
查看原面经 →
每个agent用的什么模型?为什么要用多个agent?

腾讯

AI 应用开发工程师
暑期三面
查看原面经 →
详细说明该多Agent系统的整体架构:Supervisor和Worker各自承担什么角色?每个Worker是否对应一个独立的Agent?各Agent背后使用的模型是什么?Agent之间通过何种机制进行通信和数据传递?

腾讯

后端开发工程师
一面
查看原面经 →
项目追问
看到你的这个项目分成了5个Agent,你设计怎么编排他们的?另外你是怎么去考虑这五个Agent的分工,使用一个Agent不可以吗?

腾讯音乐

后端开发
实习一面
查看原面经 →
用的什么ai框架开发?一共设计了几个agent?用了几种大模型?

哆咔互娱

Agent 开发工程师
实习一面、二面
查看原面经 →
工作流、单智能体、多智能体系统之间的区别是什么?

阿里巴巴

Java 开发工程师
一面
查看原面经 →
两个 AI agent 的主要分工是什么?介绍一下对话 agent 和运维 agent 的核心能力?

阿里巴巴

AI 应用开发工程师
二面
查看原面经 →
项目里用的是multi-agent吗,整体工作流是什么样的,为什么这么选型

阿里巴巴

AI 应用开发工程师
二面
查看原面经 →
多agent问题,优势是什么

字节跳动

大模型算法工程师
实习一面
查看原面经 →
单agent多能力和多agent相比的优劣势

阿里巴巴

Agent 应用开发工程师
暑期实习一面
查看原面经 →
3.2 multi agent和single agent的区别,优缺点,适用场景

蚂蚁集团

Agent 开发工程师
实习一面
查看原面经 →
你怎么确保AI写的代码没问题?用的是单agent吗?
单agent和多agent相比,多agent的优势在哪里?

蚂蚁国际

AI 应用 / Agent 开发
暑期实习一面
查看原面经 →
你怎么确保AI写的代码没问题?用的是单agent吗?

阿里巴巴

AI 应用开发工程师
暑期实习二面
查看原面经 →
第二段实习你做过多Agent的设计是吗?讲一下单Agent和多Agent的差异
单Agent和多Agent的使用场景

腾讯

后端开发工程师(AI 应用)
实习
查看原面经 →
2- 多agent怎么编排?具体流程?

阿里巴巴

Agent 算法工程师
暑期一面
查看原面经 →
多agent的设计是怎么样的

蚂蚁集团

AI Agent
暑期实习一面
查看原面经 →
项目追问
对着之前的一个agent项目详细的深挖,问了agent的架构,多个agent之间如何交互,skill怎么生成,检索机制,和单智能体比好在哪里等等

小红书

AI Agent
实习一面
查看原面经 →
问我多agent的设计

小红书

Agent 算法工程师
一面
查看原面经 →
现在的Agent是多Agent吗?具体是怎么设计的?

字节跳动

Agent 开发
暑期实习一面
查看原面经 →
单Agent还是多Agent的?子Agent任务是什么?

字节跳动

后端开发工程师(AI / Agent 方向)
四面
查看原面经 →
mult-agent和单agent区别

凯越集团

AI 应用开发工程师
查看原面经 →
多智能体协作方面,有没有具体做过多智能体,哪个项目用到了

收录题集

2 个来源,共3 份题集

多智能体协作:角色分工、通信机制与冲突仲裁

Onefly · zero2Agent · 1 条原题

查看题集 →

Agent与工具调用

阿东玩 AI · AgentGuide · 1 条原题

查看题集 →

项目论文与经历

阿东玩 AI · AgentGuide · 1 条原题

查看题集 →

相关题目

4 题

相关关键词:多 Agent、Multi-agent、多智能体