LangGraph多智能体系统设计模式:主管架构与分层架构实战指南
本文详细介绍了LangGraph多智能体系统的两种核心架构模式:主管架构通过中央主管智能体管理多个专业智能体,适合结构化任务;分层架构引入团队层级概念,由顶层主管协调团队主管,有效解决了主管架构的扩展性问题。文章通过代码实例展示了两种架构的实现方式,帮助开发者构建更灵活、强大的多智能体应用,以应对复杂业务场景。
本文详细介绍了LangGraph多智能体系统的两种核心架构模式:主管架构通过中央主管智能体管理多个专业智能体,适合结构化任务;分层架构引入团队层级概念,由顶层主管协调团队主管,有效解决了主管架构的扩展性问题。文章通过代码实例展示了两种架构的实现方式,帮助开发者构建更灵活、强大的多智能体应用,以应对复杂业务场景。
前排提示,文末有大模型AGI-CSDN独家资料包哦!
前言
元旦休整一过,“大模型真好玩”如期开启2026年的百篇AI文章计划。首先推出的,仍是承接去年脉络的 LangGraph智能体开发设计模式系列。
- 提示链模式
- 路由模式
- 并行模式
- 协调器-工作者模式
- 评估器-优化器模式
随着构建智能体技术的不断进步,大家需要解决的任务复杂性已逐渐超越了单一的智能体设计,在面对多维度、跨领域的复杂问题时,即便是基于强大模型构建的单智能体也常显得笨重且不堪重负,过长的上下文、大规模工具(笔者实测单智能体单个模型挂超过20个工具就会不知道该调用哪个工具了)的糟糕决策都注定了要用更加先进的模式。 这些局限性催生了更先进的架构思路——多智能体系统。我们不再依赖单一智能体处理所有任务,而是将AI应用拆解为一组更小、更专注的智能体,每个智能体具备特定的职责与专业能力。然而,这也引入了新的挑战:如何有效协调多个智能体之间的交互与协作,以达成系统整体目标?
这正是多智能体设计模式所要回答的核心问题。从本期开始笔者将系统介绍LangGraph中的多智能体设计模式,涵盖主管架构、分层架构、网络架构三种典型范式,帮助大家构建更灵活、更强大的多智能体应用。

本系列将涵盖常见的工作流模式与多智能体架构模式,预计通过五篇文章展开。
2026年笔者的另一大重心还会放在大模型训练专栏分享上,当然,谈论训练无法绕过算力这道现实的门槛。昂贵的GPU曾是许多人梦想的拦路石。正因如此笔者今年特意与一些可靠的算力平台展开了合作,希望能为大家解决算力瓶颈。大家可以通过
https://www.lab4ai.cn/register?agentID=user-XorgKKc56U 注册Lab4ai算力平台,提供了包括英伟达H系列在内的多种选择,更有 5小时的免费体验额度。
PS:鉴于后台私信越来越多,我建了一些大模型交流群,大家在日常学习生活工作中遇到的大模型知识和问题都可以在群中分享出来大家一起解决!如果大家想交流大模型知识,可以关注我并回复加群
一、LangGraph多智能体设计模式
1.1 多智能体设计模式概述
多智能体系统的核心在于通过模块化、专业化与受控的通信机制,来构建能够处理复杂业务逻辑的大模型应用。相较于单一的“全能型”智能体,多智能体架构将复杂任务分解为多个更小、更独立的专业智能体,从而显著提升系统的可管理性、灵活性与执行效率。
其核心优势主要体现在以下三个方面:
-
模块化
将复杂的单体智能体拆解为多个功能独立的子智能体,每个子智能体可以独立开发、测试、迭代与维护。这不仅降低了单个组件的复杂度,也使得整个系统的开发流程更为清晰和高效。
-
专业化
每个智能体可以针对特定领域的任务进行深度优化,成为该领域的“专家”,例如专精于信息检索的研究智能体、擅长逻辑与计算的数学智能体,或负责任务拆解与规划的规划智能体。这种分工协作避免了让单个通用模型在所有领域“平均用力”而导致的性能平庸,从而从整体上构建出更强大、更精准的系统。
-
受控的通信与协作
与单纯依赖大模型自发进行对话交互不同,多智能体系统允许开发者显式地设计和编排智能体之间的交互协议、信息交换格式与协同流程。这种受控的协作机制确保了任务执行的可预测性、稳定性和可追溯性,是实现复杂、多步骤工作流的关键。

1.2 多智能体设计模式架构简介
LangGraph为构建和编排多智能体系统提供了强大的框架,其基于图的架构本身就非常适合表示和管理多个智能体间的交互。在 LangGraph 中,连接和编排多个智能体有多种成熟的架构模式,每种模式都针对不同的协作场景和系统目标,拥有其独特的优势与适用领域。
在本系列文章中,笔者将深入探讨 LangGraph 中三种主流的多智能体架构模式:
- 主管架构 (Supervisor Architecture)
- 分层架构 (Hierarchical Architecture)
- 网络架构 (Networked Architecture)
笔者将通过具体的代码实例,逐一解析它们的设计思想、实现方式以及典型应用场景。

二、主管架构
2.1 主管架构概念
主管架构是多智能体系统的核心模式之一,适用于需要明确的中心控制点来管理与指导协作流程的场景。在该架构中,一个指定的主管智能体(Supervisor) 扮演着中央协调员的角色,负责监督、决策并指挥多个专业智能体(Specialist Agents) 的活动。

主管架构模式与我们日常的工作组织方式高度相似:想象一位项目经理(主管智能体),他接收任务请求,将其拆解并委派给最合适的专业成员(专业智能体),最后汇总和管理所有成员的输出以形成最终成果。在主管架构中,专业智能体与外部环境(包括用户)的通信,大多数情况下都通过主管智能体进行路由。这种集中式的控制机制使得整个系统具备高度的可预测性与可管理性,非常适合需要结构化、多步骤协调的复杂任务。
这时大家可能会问,协调器-工作者工作流也是先规划编排,然后分发给不同大模型去执行呀,它和主管架构有什么区别呢?
确实,主管架构与协调器-工作者工作流在表面上看都涉及一个“中央协调实体”,但它们在抽象层次和设计目的上存在本质不同:
| 维度 | 主管架构 (Supervisor Architecture) | 协调器-工作者工作流 (Coordinator-Worker Workflow) |
|---|---|---|
| 抽象层级 | 高级系统架构 模式。它定义了如何组织多个智能体并构建它们之间的交互关系。 | 低级任务执行 模式。它描述了如何处理一个单一复杂任务的分解与执行流程。 |
| 核心关注点 | 智能体管理 与系统协调。主管智能体决定在给定上下文下,应该调用哪个专业智能体来参与工作。 | 任务分解 与执行效率。协调器负责将一个任务拆分为子任务,并分发给工作者高效完成。 |
| 组件性质 | 核心组件是具备决策能力和专门角色的自主智能体。 | 核心组件通常是执行预定义操作的大模型调用或函数。 |
为了更好地理解,笔者这里使用一个比喻:
-
主管架构
像一家公司的整体组织结构。CEO(主管智能体)管理着不同的部门(专业智能体),如市场部、工程部。他决定哪些部门参与某个项目,并协调部门间的合作。
-
协调器-工作者工作流
像是某个部门(如工程部)内部使用的项目管理方法。工程经理(协调器)使用敏捷开发等方法,将大型软件项目(任务)拆分为小任务,分发给各位开发者(工作者)完成。
简言之,协调器-工作者工作流是某个部门(或智能体)内部用于完成工作的“工具”或“方法”;而主管架构是整个多智能体“组织”赖以运行和管理的“顶层设计”。
2.2 主管架构代码实战
理论描述或许不够直观,接下来笔者将通过一个完整的代码实例,演示如何在 LangGraph 中实现主管架构。笔者将构建一个由主管智能体管理两个专业智能体(数学智能体、研究智能体)的简易系统。
在 LangGraph 中,实现主管架构的核心在于:在图中设置特定节点作为专业智能体,并引入一个中央主管节点来决策下一个激活的智能体节点。控制该流程的关键机制是 LangGraph 的 Command 对象。然而,从零开始搭建涉及状态流转和控制逻辑,过程较为复杂。
为了简化开发,LangChain 团队推出了 langgraph-supervisor 类库。下面,我们将使用这个类库,通过一个具体案例来演示主管架构的实现。
1. 环境配置:首先需要安装langgraph-supervisor 类库。在激活的anaconda langchain虚拟环境中执行以下命令:pip install langgraph-supervisor:

2. 引入相关依赖:在项目文件夹下新建.env 文件,填入你的 DEEPSEEK_API_KEY。随后引入必要的依赖。
from langchain_core.messages import HumanMessage, SystemMessage
from langchain_core.tools import tool
from langchain_deepseek import ChatDeepSeek
from langchain.agents import create_agent
from langgraph_supervisor import create_supervisor
from dotenv import load_dotenv
load_dotenv()
llm = ChatDeepSeek(
model="deepseek-chat",
)

3. 定义专业智能体:利用 LangChain 的create_agent API 定义两个专业智能体:数学智能体和研究智能体,并分别为它们配备专用工具。
@tool
def add(a: float, b: float) -> float:
"""将两个数字相加"""
return a + b
@tool
def multiply(a: float, b: float) -> float:
"""将两个数字相乘"""
return a * b
@tool
def web_search(query: str) -> str:
"""
模拟网络搜索功能,返回2025年谷歌和Facebook的员工数
"""
if "谷歌" in query or "google" in query.lower():
return "2025年谷歌的员工数是182545人"
elif "facebook" in query.lower() or "meta" in query.lower():
return "2025年Facebook(Meta)的员工数是67043人"
else:
return "未找到相关信息"
math_agent = create_agent(
model=llm,
tools=[add, multiply],
system_prompt="你是一个数学智能体,负责处理数字计算任务。",
name='math_agent'
)
research_agent = create_agent(
model=llm,
tools=[web_search],
system_prompt="你是一个研究智能体,负责处理信息搜索任务。",
name='research_agent'
)
4. 创建主管工作流:利用create_supervisor 函数创建主管工作流,并通过 compile 方法将其编译为可执行的 LangGraph 应用程序。这里笔者为核心的主管智能体编写了详细的调度提示词。
supervisor_prompt = """你是主管智能体,负责协调和管理两个专业智能体:
- math_agent(数学智能体):负责数字计算,包括加法和乘法
- research_agent(研究智能体):负责信息搜索,特别是网络搜索
根据用户的问题,决定调用哪个智能体:
- 如果需要搜索信息(如公司数据、统计数据等),调用research_agent
- 如果需要进行数学计算(如数字相加、相乘等),调用math_agent
- 如果任务完成,返回FINISH
请确保按照合理的顺序调用智能体。例如,如果需要计算总数,先调用research_agent获取数据,再调用math_agent进行计算。"""
workflow = create_supervisor(
[math_agent, research_agent],
model=llm,
prompt=supervisor_prompt,
)
app = workflow.compile()
5. 编译并运行工作流:向编译好的应用程序输入一个问题,观察主管架构如何协调两个专业智能体完成任务。运行结果如下图所示,主管智能体成功协调了整个流程:首先调用****研究智能体获取两家公司的员工数据,随后调用数学智能体对这两个数字进行求和计算,最终返回了正确的结果。
result = app.invoke({
"messages": [HumanMessage(content="2025年谷歌和Facebook的员工数总数是多少?")]
})
print(result['messages'][-1].content)

三、分层架构
3.1 分层架构概念
主管架构虽然相比单智能体系统在管理复杂性上有显著提升,但在处理大量专业智能体或超高复杂度任务时,其设计瓶颈依然会显现。试想,随着主管智能体直接管理的下属智能体数量增长,其决策路径将变得异常复杂,需要维护的上下文信息也会过于庞大,最终可能导致决策效率降低、响应迟缓。为了解决单层主管架构的可扩展性问题,LangGraph引入了分层架构。
分层架构的核心思想是将组织结构扁平化。它不再让单个主管智能体直接管理所有专业智能体,而是先将专业智能体按功能或领域划分成不同的团队。每个团队由一个团队级主管智能体(或称为“中层主管”)管理。随后,再引入一个顶层主管智能体来监督和协调这些团队主管的活动。
这种结构与企业的组织层级高度相似。例如,我们可以设置一个 “研究团队” 主管,负责管理研究智能体和数学智能体;同时设置一个 “写作团队” 主管,管理写作智能体和发布智能体。当用户提出一个综合性请求时(如“研究并发布一份报告”),顶层主管会首先判断任务性质,决定是调用“研究团队”还是“写作团队”,或者决定它们的执行顺序。随后,被选中的团队主管再在其内部,将具体任务分派给对应的专业智能体执行。

3.2 分层架构代码实战
langgraph-supervisor 类库的优势在于其良好的可组合性,能够自然地扩展以支持分层系统。可以先为每个团队创建独立的团队级主管工作流,然后将这些团队工作流作为“子智能体”,组合到一个顶层主管工作流之下。
接下来笔者将在前文主管架构例子的基础上进行扩展,构建一个包含 “研究团队” 和 “写作团队” 的两层系统,并由一个 “顶层主管” 进行统一协调。
1. 引入相关依赖: 此部分与主管架构示例相同,用于配置环境和基础模型。
from langchain_core.messages import HumanMessage, SystemMessage
from langchain_core.tools import tool
from langchain_deepseek import ChatDeepSeek
from langchain.agents import create_agent
from langgraph_supervisor import create_supervisor
from dotenv import load_dotenv
load_dotenv()
llm = ChatDeepSeek(
model="deepseek-chat",
)
2. 定义工具函数:新增了用于写作和发布的工具函数,并为所有工具添加了print 语句,以便在运行时清晰地观察调用链。
@tool
def add(a: float, b: float) -> float:
"""将两个数字相加"""
print('调用相加函数')
return a + b
@tool
def multiply(a: float, b: float) -> float:
"""将两个数字相乘"""
print('调用相乘函数')
return a * b
@tool
def web_search(query: str) -> str:
"""
模拟网络搜索功能,返回2025年谷歌和Facebook的员工数
"""
print('调用搜索函数')
if "谷歌" in query or "google" in query.lower():
return "2025年谷歌的员工数是182545人"
elif "facebook" in query.lower() or "meta" in query.lower():
return "2025年Facebook(Meta)的员工数是67043人"
else:
return "未找到相关信息"
@tool
def write_report(content: str) -> str:
"""
模拟写作功能,将内容整理成报告格式
"""
print('调用写报告函数')
return f"报告内容:\n{content}\n\n报告生成完毕。"
@tool
def publish_report(report: str) -> str:
"""
模拟发布功能,将报告发布到平台
"""
print('调用发布函数')
return f"报告已成功发布:\n{report}"
3. 定义智能体:创建四个专业智能体,分别隶属于后续的研究团队和写作团队。
math_agent = create_agent(
model=llm,
tools=[add, multiply],
system_prompt="你是一个数学智能体,负责处理数字计算任务。",
name='math_agent'
)
research_agent = create_agent(
model=llm,
tools=[web_search],
system_prompt="你是一个研究智能体,负责处理信息搜索任务。",
name='research_agent'
)
writing_agent = create_agent(
model=llm,
tools=[write_report],
system_prompt="你是一个写作智能体,负责调用wirte_report函数撰写报告。",
name='writing_agent'
)
publishing_agent = create_agent(
model=llm,
tools=[publish_report],
system_prompt="你是一个发布智能体,负责调用publish_report函数发布报告。",
name='publishing_agent'
)
4. 定义并编译团队级主管工作流: 将数学和研究智能体打包成**“研究团队”** ,将写作和发布智能体打包成 “写作团队” ,并分别为它们创建团队主管,该步骤是实现分层的关键。
research_team_prompt = """你是研究团队的主管,负责协调以下智能体:
- math_agent(数学智能体):负责数字计算,包括加法和乘法,涉及数学计算必须使用该智能体
- research_agent(研究智能体):负责信息搜索,信息搜索必须使用该智能体
根据任务需求,决定调用哪个智能体:
- 如果需要搜索信息(如公司数据、统计数据等),调用research_agent
- 如果需要进行数学计算(如数字相加、相乘等),调用math_agent
- 如果研究任务完成,返回FINISH
请确保按照合理的顺序调用智能体。例如,如果需要计算总数,先调用research_agent获取数据,再调用math_agent进行计算。"""
research_team_supervisor = create_supervisor(
[math_agent, research_agent],
model=llm,
prompt=research_team_prompt,
)
research_team = research_team_supervisor.compile(name='research_team')
writing_team_prompt = """你是写作团队的主管,负责协调以下智能体:
- writing_agent(写作智能体):负责将研究结果整理成报告
- publishing_agent(发布智能体):负责将报告发布到平台
根据任务需求,决定调用哪个智能体:
- 如果需要将内容整理成报告,调用writing_agent
- 如果需要将报告发布到平台,调用publishing_agent
- 如果写作和发布任务完成,返回FINISH
请确保按照合理的顺序调用智能体:先调用writing_agent生成报告,再调用publishing_agent发布报告。"""
writing_team_supervisor = create_supervisor(
[writing_agent, publishing_agent],
model=llm,
prompt=writing_team_prompt
)
writing_team = writing_team_supervisor.compile(name='writing_team')
5. 定义并编译顶层主管工作流:将已编译好的research_team 和 writing_team 工作流(它们本身也是可调用的智能体单元)作为成员,交给 顶层主管 进行协调。
supervisor_prompt = """你是最高主管智能体,负责协调和管理两个专业团队:
- research_team(研究团队):负责研究和数据分析,包括数学计算和信息搜索
- writing_team(写作团队):负责报告撰写和发布
根据用户的问题,决定调用哪个团队:
- 如果需要研究数据、搜索信息或进行数学计算,调用research_team
- 如果需要撰写报告或发布内容,调用writing_team
- 如果任务完成,返回FINISH
请确保按照合理的顺序调用团队。例如,如果需要生成并发布一份报告,先调用research_team获取数据,再调用writing_team撰写和发布报告。"""
workflow = create_supervisor(
[research_team, writing_team],
model=llm,
prompt=supervisor_prompt,
)
app = workflow.compile()
6. 运行测试:向这个分层系统提出一个综合性请求。从运行结果和控制台输出可以清晰看到整个分层协作流程
result = app.invoke({
"messages": [HumanMessage(content="请帮我研究2025年谷歌和Facebook的员工数总数,然后生成一份报告并发布。")]
})
print(result['messages'][-1].content)

四、总结
本篇分享了LangGraph多智能体系统的两种核心架构。主管架构通过主管智能体管理多个专业智能体,适合结构化任务。为解决其扩展性问题,分层架构引入了团队与层级概念,由顶层主管协调团队主管,从而分担决策压力,提升系统处理复杂任务的能力。除了主管价格和分层价格,另一种更平等的智能体网络价格也是LangGraph多智能体开发的重要设计模式之一,下篇内容笔者将分享LangGraph多智能体的网络架构,大家敬请期待~
读者福利:倘若大家对大模型感兴趣,那么这套大模型学习资料一定对你有用。
针对0基础小白:
如果你是零基础小白,快速入门大模型是可行的。
大模型学习流程较短,学习内容全面,需要理论与实践结合
学习计划和方向能根据资料进行归纳总结
包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓


👉AI大模型学习路线汇总👈
大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
👉大模型实战案例👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

👉大模型视频和PDF合集👈
这里我们能提供零基础学习书籍和视频。作为最快捷也是最有效的方式之一,跟着老师的思路,由浅入深,从理论到实操,其实大模型并不难。

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓
更多推荐


所有评论(0)