AI图鉴

AI图鉴首页 › AI 资讯 › 你以为是大模型在执行命令?真相是它只会“说“

你以为是大模型在执行命令?真相是它只会“说“

来源:掘金 · 发布时间:10-22 · 由 AI图鉴每小时自动聚合

Sub-agent(子智能体/多智能体协作)完全是 AI 客户端或 Agent 框架(Client / Framework)层面的工程能力 大模型本身只负责"根据输入的 Token 预测下一个 Tok

Sub-agent(子智能体/多智能体协作)完全是 AI 客户端或 Agent 框架(Client / Framework)层面的工程能力

大模型本身只负责"根据输入的 Token 预测下一个 Token",它没有"分身乏术"去自己开辟一个独立的运行环境并指挥另一个自己的能力。Sub-agent 的架构,全靠工程代码在幕后进行任务拆解、上下文隔离与状态调度。

一、 什么是 Sub-agent 架构?

在处理复杂任务时(例如:"帮我重构整个项目的代码,顺便写单元测试并跑通"),如果把所有事情都塞给一个主 Agent,它往往会因为注意力分散、工具太多或上下文过载而导致任务失败。

Sub-agent 架构(主从分工模式 / Coordinator-Worker Pattern) 的核心思想是:

- 主 Agent(Coordinator / Master): 负责宏观规划、任务拆解和统筹调度。它自己不一定亲自写每一行代码,而是当起"项目经理"。

- 子 Agent(Sub-agent / Worker): 负责某个垂直领域的专精任务(例如一个专门写测试的 Agent、一个专门查数据库的 Agent)。它们拥有独立的系统提示词(Persona)和专属的工具集。

二、 Sub-agent 是具体是如何实现的?

在工程实现上,主流框架(如 LangGraph、CrewAI、AutoGen 或自定义客户端)主要通过以下四大核心机制来实现 Sub-agent:

1. "Agent 即工具"(Agent-as-a-Tool)模式

这是最经典也是最容易理解的实现方式:

- 框架把一个 Sub-agent 封装成一个标准的 Tool(工具) 注册给主 Agent。

- 主 Agent 看大纲时,会看到一个名为 call_testing_specialist_agent(task_description: str) 的工具。

- 幕后原理: 当主 Agent 决定调用这个工具时,它实际上并不是在调用一个简单的函数,而是触发了一段框架代码。

2. 独立的上下文隔离(Context Isolation)

这是 Sub-agent 最核心的工程价值:

- 如果子 Agent 和主 Agent 共用同一个 Context Window,随着对话深入,主 Agent 的上下文会迅速被子 Agent 复杂的中间推理过程(比如大量的临时报错和调试日志)污染。

- 实现方式:

- 当主 Agent 唤起 Sub-agent 时,客户端框架会新开辟一个干净的、独立的对话上下文(Fresh Context Session)。

- 框架只把主 Agent 传过来的"任务目标"和必要的初始化参数喂给子 Agent。

- 子 Agent 在自己的独立沙箱循环(ReAct Loop)里反复思考、调用工具、调试、直到得出结论。

3. 专属工具与权限裁剪(Scoped Toolsets)

- 主 Agent 可能拥有高危的全局工具(如 delete_database、deploy_to_production)。

- 实现方式: 框架在初始化 Sub-agent 时,会对其进行权限裁剪。例如:编写文档的 Sub-agent 只被允许挂载 read_file 和 write_markdown 工具,它根本"看"不到也无法调用危险工具,从而保证系统的安全性。

4. 结果提炼与回传(Result Aggregation)

- Sub-agent 在自己的独立循环中运行结束后,往往会产生一大堆中间调试信息。

- 实现方式: 客户端框架会拦截子 Agent 的输出,通过代码逻辑(或者让子 Agent 做最后一次总结)将其浓缩为结构化的精简结论(例如:"测试已全部通过,发现 2 处潜在边界漏洞:……"),然后作为这个 Tool Call 的 tool_result 返回给主 Agent。主 Agent 拿到结果后继续往下执行。

三、 简易的代码逻辑示意

如果用伪代码来描述一个 Sub-agent 的底层实现,它长这样:

# 1. 定义一个专门的子智能体处理函数(被包装成 Tool)

def call_code_reviewer_subagent(task: str) -> str:

# 核心:开辟独立的上下文和独立的 ReAct 循环

sub_agent_context = [

{"role": "system", "content": "你是一个资深代码评审专家,请严格检查安全漏洞。"}

]

sub_agent_context.append({"role": "user", "content": task})

for step in range(5): # 最多循环 5 步

response = call_llm(sub_agent_context, tools=[git_diff_tool, linter_tool])

if response.is_final_answer:

return response.text # 将精简结果返回给主 Agent

elif response.is_tool_call:

# 子 Agent 自己调用工具并观察结果

tool_result = execute_tool(response.tool_name, response.args)

sub_agent_context.append(tool_result)

# 2. 将其注册为主 Agent 的一个工具

main_agent_tools = [

# ... 其他普通工具 ...

Tool(

name="call_code_reviewer_subagent",

func=call_code_reviewer_subagent,

description="当你需要对代码进行深度安全评审时调用此工具"

)

]

总结

Sub-agent 并不是大模型"长出来的分身",而是 AI 客户端或框架通过代码设计出的"套娃式"状态机与上下文隔离机制。它通过"把子任务打包成工具、隔离上下文、裁剪权限",完美解决了大模型处理复杂大任务时的注意力涣散和 Token 污染问题。

本文由 AI图鉴自动抓取并翻译,版权归原作者所有;如需查看原文请点下方链接。

相关 AI 工具

OJO

全球首个 AI 设计 Agent 团队工作台,多智能体协作完成设计任务。

腾讯混元大模型

腾讯研发的大语言模型,具备强大的中文创作能力,复杂语境下的逻辑推理能力,以及可靠的任务执行能力

Chatbox AI

开源的AI客户端助手,支持多种主流AI模型

DeepSeek

幻方量化推出的AI智能助手和开源大模型

相关免费羊毛

Kiro

AWS 智能体 IDE 免费档:每月 50 积分

商汤 SenseNova

Token Plan 公测完全免费,每模型 1500 次/5 小时

火山方舟豆包

豆包大模型新用户免费额度

DeepSeek

新用户免费试用额度

同源资讯

如何用AI帮我写出实用的插件

掘金 · 10-22

问得出、搜得准、信得过:ContextSearch 重构销售检索体验

掘金 · 10-22

PHP爆出10年来最严重漏洞,AI只花了2天就挖出来了

掘金 · 10-22

从零到实战:AI全栈学习进阶路线

掘金 · 10-22

Claude Duet 抢的不是活,是你每天早上那半小时

掘金 · 10-22

热点解读:【AI智能体】Codex 开发聚合搜索应用项目实战操作详解

掘金 · 10-22

阅读原文(juejin.cn)

标题、摘要与正文均来自该信源的公开页面,版权归原作者所有;本站自动聚合与翻译,仅作出处跳转。

← 返回 AI 资讯列表AI工具图鉴首页

返回 AI图鉴首页 · 提交工具 · 商务合作 · 关于本站 · 586 款 AI 工具分类导航 · 每日 AI 热门项目与动态