教程9:多智能体编排


文档摘要

教程 9:多智能体编排 掌握复杂的多智能体工作流!本教程将教你如何利用并行执行、智能体即工具模式以及高级编排技术,协调多个智能体,构建功能强大的 AI 系统。 你将学到的内容 并行执行:使用 同时运行多个智能体 智能体即工具:将智能体用作函数工具进行复杂编排 工作流协调:顺序与并行的智能体处理模式 结果合成:智能地整合多个智能体的输出 核心概念:什么是多智能体编排? 多智能体编排实现了协调的 AI 工作流,其中多个专业化的智能体协同合作,共同解决复杂问题。可以把编排想象成一位指挥家带领交响乐团: 不同的智能体拥有专门的角色和专长 智能体可根据工作流需求并行或顺序工作 多个智能体的结果被智能地整合 复杂任务被分解为多个 AI 能力协作完成 教程概览 本教程将演示三种关键的编排模式: 1.

教程 9:多智能体编排

掌握复杂的多智能体工作流!本教程将教你如何利用并行执行、智能体即工具模式以及高级编排技术,协调多个智能体,构建功能强大的 AI 系统。

你将学到的内容

  • 并行执行:使用 asyncio.gather() 同时运行多个智能体
  • 智能体即工具:将智能体用作函数工具进行复杂编排
  • 工作流协调:顺序与并行的智能体处理模式
  • 结果合成:智能地整合多个智能体的输出

核心概念:什么是多智能体编排?

多智能体编排实现了协调的 AI 工作流,其中多个专业化的智能体协同合作,共同解决复杂问题。可以把编排想象成一位指挥家带领交响乐团

  • 不同的智能体拥有专门的角色和专长
  • 智能体可根据工作流需求并行或顺序工作
  • 多个智能体的结果被智能地整合
  • 复杂任务被分解为多个 AI 能力协作完成
┌─────────────────────────────────────────────────────────────-┐ │ MULTI-AGENT ORCHESTRATION │ ├─────────────────────────────────────────────────────────────-┤ │ │ │ COMPLEX TASK │ │ │ │ │ ▼ │ │ ┌─────────────┐ 1. TASK DECOMPOSITION │ │ │ORCHESTRATOR │ │ │ │ AGENT │ 2. AGENT COORDINATION │ │ └─────────────┘ │ │ │ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────────┐ │ │ │ PARALLEL EXECUTION │ │ │ │ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ │ | │ │ │RESEARCH │ │WRITING │ │ANALYSIS │ │REVIEW │ │ │ | │ │ │ AGENT │ │ AGENT │ │ AGENT │ │ AGENT │ │ │ | │ │ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │ │ | │ └─────────────────────────────────────────────────────────┘ │ │ │ │ │ │ │ │ ▼ ▼ ▼ ▼ │ │ ┌─────────────────────────────────────────────────────────┐ │ │ │ RESULT SYNTHESIS │ │ │ │ • Combine outputs intelligently │ │ │ │ • Quality assessment and selection │ │ │ │ • Final coordinated response │ │ │ └─────────────────────────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────────-┘

教程概览

本教程将演示三种关键的编排模式

1. 并行智能体执行 (parallel_execution.py)

  • 使用 asyncio.gather() 同时运行多个智能体
  • 质量评估与最佳结果选择
  • 多次尝试的翻译示例

2. 智能体即工具编排 (agents_as_tools.py)

  • Using specialized agents as function tools
  • Content creation workflow with research and writing agents
  • Custom agent tool configuration and coordination

3. Complex Workflow Orchestration (complex_orchestration.py)

  • 结合并行与顺序执行的多阶段工作流
  • 包含研究、写作、审校与优化的内容流水线
  • 高级结果合成与质量控制

项目结构

9_multi_agent_orchestration/ ├── README.md # This file - concept explanation ├── requirements.txt # Dependencies ├── parallel_execution.py # Parallel agent patterns (45 lines) ├── agents_as_tools.py # Agents as tools orchestration (55 lines) ├── complex_orchestration.py # Advanced workflow patterns (70 lines) ├── app.py # Streamlit orchestration demo (optional) └── env.example # Environment variables template

学习目标

完成本教程后,你将理解:

  • ✅ 如何并行运行多个智能体以提升性能
  • ✅ 将智能体用作函数工具进行复杂编排
  • ✅ 组合顺序与并行执行模式
  • ✅ 智能地合成多个智能体的结果
  • ✅ 在不同场景下何时选用不同的编排模式

开始使用

  1. 安装 OpenAI Agents SDK

    pip install openai-agents
  2. 安装依赖

    pip install -r requirements.txt
  3. 设置环境变量

    cp env.example .env # Edit .env and add your OpenAI API key
  4. 测试并行执行

    python parallel_execution.py
  5. 尝试智能体即工具

    python agents_as_tools.py
  6. 探索复杂工作流

    python complex_orchestration.py

示例用例

并行执行

  • 多次翻译尝试并进行质量选择
  • 内容生成时提供多样性和选项
  • 同时从多个视角开展研究

智能体即工具

  • 内容创作:研究 → 写作 → 编辑流水线
  • 分析工作流:数据处理 → 洞察 → 建议
  • 客户服务:分流 → 专家处理 → 质量保证

复杂编排

  • 多阶段内容生产并加入反馈循环
  • 研发工作流并加入验证机制
  • 教育内容创作并经历多个审校阶段

关键编排模式

1. 并行执行与质量选择

import asyncio from agents import Agent, Runner, trace # Run multiple agents in parallel with trace("Parallel translation"): results = await asyncio.gather( Runner.run(translator_agent, message), Runner.run(translator_agent, message), Runner.run(translator_agent, message) ) # Select best result best = await Runner.run(selector_agent, combined_results)

2. 智能体即函数工具

from agents import Agent, function_tool @function_tool async def research_tool(topic: str) -> str: result = await Runner.run(research_agent, f"Research: {topic}") return str(result.final_output) orchestrator = Agent( name="Content Orchestrator", tools=[research_tool, writing_tool] )

3. 顺序 + 并行混合模式

# Sequential stages with parallel execution within stages with trace("Content Creation Pipeline"): # Stage 1: Parallel research research_results = await asyncio.gather( research_agent_1.run(topic), research_agent_2.run(topic) ) # Stage 2: Sequential writing content = await writing_agent.run(combined_research) # Stage 3: Parallel review reviews = await asyncio.gather( quality_agent.run(content), style_agent.run(content) )

编排设计最佳实践

  1. 任务分解:将复杂任务拆分为适合智能体处理的小块
  2. 并行优化:在智能体独立的情况下使用并行执行
  3. 质量控制:加入审校与选择机制
  4. 错误处理:规划智能体失败时的应对措施并提供备用方案
  5. 结果合成:设计智能地整合多个输出的方法

重要提示

  • 追踪集成:使用 trace() 对多智能体工作流进行分组
  • 资源管理:并行执行时需考虑 API 的速率限制
  • 质量与速度:平衡并行化与结果质量
  • 错误传播:在复杂工作流中优雅处理失败情况

下一步

完成本教程后,你将准备好:

故障排除

  • 性能问题:检查是否存在不必要的顺序执行
  • 质量问题:改进结果合成与选择逻辑
  • 速率限制:为并行调用实现退避与重试机制
  • 内存使用:监控大量并行智能体的资源消耗

专业小贴士

  • 从简单开始:先从基本并行执行入手,逐步增加复杂度
  • 衡量性能:比较并行与顺序执行的耗时
  • 质量指标:制定标准以从多个智能体中选出最佳结果
  • 工作流可视化:利用追踪功能了解复杂执行流程
  • 智能体专业化:设计职责明确、专注的智能体

免责声明
本文档采用基于机器的 AI 翻译服务进行翻译。尽管我们力求准确,但请注意,自动翻译可能存在错误或不准确之处。应以原文语言版本的文档作为权威依据。如需获取关键信息,建议使用专业的人工翻译。对于因使用本翻译而产生的任何误解或误读,我们概不负责。


发布者: 作者: 转发
评论区 (0)
U