Swarm 简介:轻量级多智能体协调框架

Swarm 是一个实验性、教育性的框架,用于轻量级多智能体协调和执行。它已被 OpenAI Agents SDK 取代,后者是 Swarm 的生产就绪版本。以下是 Swarm 的基本概念和使用方法。

Swarm 基础概念

  • 智能体(Agent):Swarm 中的基本单位,包含一组指令和工具。智能体可以在任何时候将对话转交给另一个智能体。
  • 转交(Handoffs):智能体之间的对话转交,可以通过函数返回另一个智能体来实现。

Swarm 安装和使用

安装 Swarm

Swarm 需要 Python 3.10+,可以通过以下命令安装:

bash 复制代码
pip install git+ssh://git@github.com/openai/swarm.git

或使用 HTTPS 安装:

bash 复制代码
pip install git+https://github.com/openai/swarm.git

使用 Swarm

以下是一个基本的 Swarm 使用示例:

python 复制代码
from swarm import Swarm, Agent

# 创建 Swarm 客户端
client = Swarm()

# 定义 Agent A 和 Agent B
def transfer_to_agent_b():
    return agent_b

agent_a = Agent(
    name="Agent A",
    instructions="You are a helpful agent.",
    functions=[transfer_to_agent_b],
)

agent_b = Agent(
    name="Agent B",
    instructions="Only speak in Haikus.",
)

# 运行 Swarm
response = client.run(
    agent=agent_a,
    messages=[{"role": "user", "content": "I want to talk to agent B."}],
)

# 打印最后一条消息
print(response.messages[-1]["content"])

Swarm 的主要特点

  • 轻量级和可扩展性:Swarm 适合处理大量独立能力和指令,尤其是难以编码到单一提示的情形。
  • 无状态:Swarm 在调用之间不存储状态,与 Chat Completions API 类似。
  • 多智能体协调:Swarm 允许开发者通过 Agent 之间的转交来构建复杂的工作流。

Swarm 的应用示例

  • 基本示例:展示设置、函数调用、转交和上下文变量的基本用法。
  • 航空公司示例:多智能体设置,用于处理不同客户服务请求。
  • 支持机器人:包含用户界面智能体和帮助中心智能体,具有多种工具。

Swarm 的未来

Swarm 已被 OpenAI Agents SDK 取代,后者提供了更好的性能和维护支持。建议所有生产环境使用 OpenAI Agents SDK。

相关推荐
pe7er29 分钟前
引子
前端·后端·架构
SimonKing31 分钟前
阅后即焚的加密便签:Cryptgeon,你口袋里的秘密信使
java·后端·程序员
灯澜忆梦31 分钟前
【Redis中间件】#2 | 基础数据类型语法
redis·后端
孙启超35 分钟前
【AI开发之Rust】第 6 课:结构体、枚举与方法 —— 开始定义自己的类型
开发语言·人工智能·后端·ai·rust
小蒜学长39 分钟前
基于Python的微博热搜话题可视化分析系统的设计与实现(代码+数据库+LW)
后端·python·django·数据可视化·情感分析·微博热搜
BingoGo42 分钟前
Whim 是什么?一门把 PHP 被否决的设想真跑起来的实验语言
后端·php
IT_陈寒1 小时前
Java序列化坑了我三天,原来问题出在这个默认方法
前端·人工智能·后端
一条泥憨鱼1 小时前
苍穹外卖【day10| 来电提醒和客户催单】
java·后端·websocket·苍穹外卖
ly76891 小时前
Spring Boot 3.2 虚拟线程在 Web 层与 JDBC 池的实践边界
前端·spring boot·后端·tomcat·jdbc·虚拟线程
盖伦发发1 小时前
SpringCloud Alibaba Sentinel 教学:限流、熔断、降级、线程/信号量隔离、活动过载保护
后端·软件工程