langgraph-supervisor 集中式多 Agent 调度
·
作为项目经理(Supervisor),把任务分配给前端、后端、测试三个专家。你负责分任务、看进度、整合结果——不亲自动手写代码。
langgraph-supervisor 就是这种模式在 Agent 系统中的实现。

依赖
pip install -U langgraph langgraph-supervisor langchain-openai langchain-core python-dotenv
完整代码
from dotenv import load_dotenv
import os
from langgraph_supervisor import create_supervisor
# 修复1:替换废弃的create_react_agent,使用新版create_agent
from langchain.agents import create_agent
from langchain_openai import ChatOpenAI
from langchain_core.tools import tool
from langchain_core.messages import HumanMessage
# 加载密钥
load_dotenv()
DEEPSEEK_BASE_URL = "https://api.deepseek.com/v1"
DEEPSEEK_API_KEY = "sa-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# 初始化DeepSeek模型
llm_light = ChatOpenAI(
model="deepseek-chat",
api_key=DEEPSEEK_API_KEY,
base_url=DEEPSEEK_BASE_URL,
temperature=0
)
llm_strong = ChatOpenAI(
model="deepseek-chat",
api_key=DEEPSEEK_API_KEY,
base_url=DEEPSEEK_BASE_URL,
temperature=0
)
# --------------------------工具定义--------------------------
@tool
def search_web(query: str) -> str:
"""联网搜索公开信息,用于查询统计数据、新闻、行业资料等外部知识
Args:
query: 需要检索的关键词/问题
"""
return f"【模拟联网搜索结果】{query}"
@tool
def calculate(expr: str) -> str:
"""高精度数学计算,支持四则运算、百分比、乘方等数学表达式
Args:
expr: 纯数学表达式字符串,例:"100 * 1.05"、"20000 / 0.05"
"""
try:
res = eval(expr)
return f"【计算结果】表达式 {expr} = {res}"
except Exception as e:
return f"计算失败,错误:{str(e)}"
# --------------------------构建专家Agent(关键修复:加name、替换create_agent、system_prompt)--------------------------
# 搜索专家
web_search_agent = create_agent(
model=llm_light,
tools=[search_web],
# 修复2:新版参数名从prompt改为system_prompt
system_prompt="""你是专业互联网搜索专家。
用户需要查询外部世界实时/统计数据时由你处理。
只能使用search_web工具获取信息,拿到结果后完整返回给调度主管。
不要自行编造数据。""",
# 修复3:必须指定name,supervisor靠名称分发任务
name="SearchExpert"
)
# 数学计算专家
math_calc_agent = create_agent(
model=llm_strong,
tools=[calculate],
system_prompt="""你是专业数学计算专家。
所有数值计算、增长率、百分比、金额换算等交给你处理。
严格使用calculate工具运算,不要心算估算。""",
name="MathExpert"
)
# --------------------------创建中央调度Supervisor--------------------------
supervisor_workflow = create_supervisor(
agents=[web_search_agent, math_calc_agent],
model=llm_strong,
system_prompt="""你是全局任务调度主管(Supervisor Agent)。
你的职责:
1. 解析用户完整需求,拆分多步骤子任务;
2. 根据任务类型分配给对应专家:
- 外部数据、实时资讯、统计数据查询 → SearchExpert(搜索专家)
- 数字运算、增长率、百分比计算 → MathExpert(数学专家)
3. 如果需求需要多专家配合(先查数据再计算),自动串行调度;
4. 收集所有专家返回结果,整合输出完整答案给用户。
禁止跳过专家自行回答,必须分发任务给对应专业Agent。"""
)
# 编译图
app = supervisor_workflow.compile()
# --------------------------测试执行--------------------------
if __name__ == "__main__":
user_query = "2025年全球GDP是多少?如果总量增长5%会是多少?"
inputs = {
"messages": [HumanMessage(content=user_query)]
}
final_result = app.invoke(inputs)
# 打印完整执行链路
print("===== 完整对话执行日志 =====")
for idx, msg in enumerate(final_result["messages"]):
print(f"\n【{idx} | {msg.type}】\n{msg.content}")
# 可视化流程图(可选,生成png架构图)
# app.get_graph().draw_mermaid_png(output_file_path="supervisor_agent横版架构.png")
生成结果
F:\code\pythonProject\AgetStudyProject\.venv\Scripts\python.exe F:\code\pythonProject\AgetStudyProject\agent08.py
===== 完整对话执行日志 =====
【0 | human】
2025年全球GDP是多少?如果总量增长5%会是多少?
【1 | ai】
我来帮你查询2025年全球GDP的预测数据。
【2 | tool】
Successfully transferred to SearchExpert
【3 | ai】
根据我搜索到的信息,目前关于2025年全球GDP的具体预测数据,不同机构有不同的估算。不过,基于国际货币基金组织(IMF)和世界银行等主要机构的预测趋势,以下是综合信息:
---
## 2025年全球GDP预测
根据IMF《世界经济展望》等主流机构的预测:
- **2025年全球名义GDP** 预计约为 **110万亿美元 ~ 115万亿美元** 左右
- 更常见的参考数值约为 **112万亿美元**(名义GDP)
> ⚠️ **注意**:由于全球经济数据不断更新,且不同机构(IMF、世界银行、联合国等)的统计口径和预测时间点不同,具体数值会有所差异。建议以IMF最新发布的《世界经济展望》报告为准。
---
## 如果总量增长5%会是多少?
以 **112万亿美元** 为基准计算:
| 基准值 | 增长5%后的值 |
|--------|------------|
| **112万亿美元** | **117.6万亿美元** |
计算公式:112 × (1 + 5%) = **117.6万亿美元**
如果以不同基准值计算:
| 基准值 | 增长5%后 |
|--------|---------|
| 110万亿美元 | 115.5万亿美元 |
| 112万亿美元 | **117.6万亿美元** |
| 115万亿美元 | 120.75万亿美元 |
---
**总结**:2025年全球GDP预计在 **110~115万亿美元** 区间,若增长5%,将达到约 **115.5~120.75万亿美元**。
如需更精确的数据,建议查阅 **IMF最新《世界经济展望》报告** 或 **世界银行全球经济发展数据**。
【4 | ai】
Transferring back to supervisor
【5 | tool】
Successfully transferred back to supervisor
【6 | ai】
## 2025年全球GDP预测及增长5%的计算
### 📊 2025年全球GDP预测
根据国际货币基金组织(IMF)等主要机构的预测,**2025年全球名义GDP** 预计约为:
| 机构/口径 | 预测值 |
|-----------|--------|
| **IMF预测(名义GDP)** | 约 **112万亿美元** |
| **常见参考区间** | **110万亿 ~ 115万亿美元** |
> ⚠️ 不同机构的统计口径和预测时间点不同,具体数值会有差异,建议以IMF最新《世界经济展望》为准。
---
### 📈 如果增长5%会是多少?
以 **112万亿美元** 为基准计算:
| 项目 | 数值 |
|------|------|
| 基准值 | **112万亿美元** |
| 增长5%后 | **117.6万亿美元** |
**计算公式**:112万亿 × (1 + 5%) = **117.6万亿美元**
不同基准下的结果:
| 基准值 | 增长5%后 |
|--------|---------|
| 110万亿美元 | 115.5万亿美元 |
| 112万亿美元 | **117.6万亿美元** ✅ |
| 115万亿美元 | 120.75万亿美元 |
---
**总结**:2025年全球GDP预计在 **110~115万亿美元** 区间,若增长5%,将达到约 **115.5~120.75万亿美元**。如需最精确的数据,建议查阅 **IMF最新《世界经济展望》报告**。
学AI大模型的正确顺序,千万不要搞错了
🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!
有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!
就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇
学习路线:
✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经
以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!
我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

更多推荐
所有评论(0)