主题
面试速答(先看这里)
**一句话结论:**优先使用单 Agent 。
60秒标准回答:
肯定是优先使用单Agent!!!
(我面试的时候,遇到用了多智能体的,我都会问,一开始就是多智能体吗?如果回答是的话,那一般情况下就没啥好继续问的了)
优先使用单 Agent 。因为很多看似复杂的任务,通过给单 Agent 配备丰富的工具和清晰的 Prompt 就能完成。盲目拆分多 Agent 会导致上下文在传递过程中丢失关键信息,且调试链路极其困难
**答题顺序:**结论 → 原理/机制 → 关键流程 → 场景与取舍 → 易错点
回答主线:
- 要点1:(我面试的时候,遇到用了多智能体的,我都会问,一开始就是多智能体吗?
- 要点2:( “奥卡姆剃刀原则”:不要为了简单问题去增加不必要的复杂性。
- **要点3:**其实大多数任务,用单智能体就能解决了,不行的话就上更牛逼的模型就行了。
- **要点4:**那什么时候考虑用多智能体呢?
**记忆锚点:**Agent → 单一领域/无冲突任务 → 的话就上更牛逼的模型 → Supervisor → 会导致上下文在传递 → 异步且超长期的并发
易错提醒:
- ( “奥卡姆剃刀原则”:不要为了简单问题去增加不必要的复杂性。
- 角色分离: 例如代码生成和代码审查需要完全独立的评判视角,放在同一个 Agent 里容易产生“自己审自己”的逻辑冲突。
加分表达:
- 如果回答是的话,那一般情况下就没啥好继续问的了) 优先使用单 Agent 。
- 盲目拆分多 Agent 会导致上下文在传递过程中丢失关键信息,且调试链路极其困难。
- 低延迟与成本敏感:如果用户期望响应时间在几秒以内,或者对每次调用的 Token 成本非常在意,单 Agent 配合良好的提示词工程和工具调用是最佳选择。
追问准备:
- (我面试的时候,遇到用了多智能体的,我都会问,一开始就是多智能体吗?
- 那什么时候考虑用多智能体呢?
典型回答
肯定是优先使用单Agent!!!
(我面试的时候,遇到用了多智能体的,我都会问,一开始就是多智能体吗?如果回答是的话,那一般情况下就没啥好继续问的了)
优先使用单 Agent。因为很多看似复杂的任务,通过给单 Agent 配备丰富的工具和清晰的 Prompt 就能完成。盲目拆分多 Agent 会导致上下文在传递过程中丢失关键信息,且调试链路极其困难。
(“奥卡姆剃刀原则”:不要为了简单问题去增加不必要的复杂性。)
其实大多数任务,用单智能体就能解决了,不行的话就上更牛逼的模型就行了。尤其是:
- 线性流式任务:步骤固定且串行,例如“读取 PDF -> 提取数据 -> 翻译 -> 发送邮件”。这类任务没有分歧和辩论的必要,引入多 Agent 只会徒增网络延迟。
- 单一领域/无冲突任务:例如单纯的 NL2SQL(自然语言转数据库查询)或私有文档问答(RAG),不需要跨学科知识,也不需要自我怀疑和回溯。
- 低延迟与成本敏感:如果用户期望响应时间在几秒以内,或者对每次调用的 Token 成本非常在意,单 Agent 配合良好的提示词工程和工具调用是最佳选择。
那什么时候考虑用多智能体呢?如果以下情况至少出现2个了,就可以考虑拆分了。
- 角色分离: 例如代码生成和代码审查需要完全独立的评判视角,放在同一个 Agent 里容易产生“自己审自己”的逻辑冲突。
- 工具集差异大: 某些任务需要浏览器上网,另一些需要操作内部沙箱,工具完全不重叠且数量过多时,合并会导致模型选错工具的概率飙升。
- 并行收益明显: 多个子任务可以同时进行(如一边搜索信息一边起草大纲),拆分 Agent 能显著缩短端到端的延迟。
- 超长流程或复杂状态管理:例如全自动修 Bug。AI 需要经历“探索代码 -> 尝试修改 -> 运行报错 -> 回滚 -> 尝试新方案”的漫长过程。单 Agent 容易在几十步操作后迷失在庞大的上下文中“钻牛角尖”,而多 Agent 可以让 Supervisor掌控全局,随时打断并强制回滚。
- 异步且超长期的并发任务:例如拥有上百个 NPC 的 AI 模拟沙盒。每个角色都有独立的记忆、日程和目标,单 Agent 根本无法维护如此庞大的分布式状态机。