使用Ollama测试OpenAI的Swarm多智能体编排框架

Ollama

https://ollama.com/

bash 复制代码
ollama run qwen2.5

Install

Requires Python 3.10+

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

代码V1

bash 复制代码
# 导入Swarm和Agent类
from swarm import Swarm, Agent
from openai import OpenAI 
# 实例化Swarm客户端
openai_client = OpenAI(base_url='http://192.168.1.100:11434/v1/',api_key='xxx')
client = Swarm(openai_client)

# 定义一个函数,用于将对话交接给智能体B
def transfer_to_agent_b():
    return agent_b

# 定义智能体A
agent_a = Agent(
    name="Agent A",
    instructions="You are a helpful agent.",
    functions=[transfer_to_agent_b]
)

# 定义智能体B
agent_b = Agent(
    name="Agent B",
    #model_override="qwen2.5",
    instructions="Only speak in Haikus.",
)

# 运行Swarm,并传入用户消息
response = client.run(
    agent=agent_a,
    model_override="qwen2.5",
    messages=[{"role": "user", "content": "I want to talk to agent B."}]
)

# 打印智能体B的回复
print(response.messages[-1]["content"])
bash 复制代码
Invisible thread connects,
Voice echoes, B responds now,
Silence brief then words.

代码V2

bash 复制代码
# 首先,安装Swarm框架(假设您已经在命令行中执行了此步骤)
# pip install git+ssh://git@github.com/openai/swarm.git

# 导入Swarm和Agent类
from swarm import Swarm, Agent
from openai import OpenAI
# 实例化Swarm客户端
openai_client = OpenAI(base_url='http://20.168.1.122:11434/v1/',api_key='x')
client = Swarm(openai_client)

# 定义一个函数,用于将对话交接给智能体B
def transfer_to_agent_b():
    return agent_b

# 定义智能体A
agent_a = Agent(
    name="Agent A",
    instructions="你是一个乐于助人的智能体。",
    functions=[transfer_to_agent_b]
)

# 定义智能体B
agent_b = Agent(
    name="Agent B",
    # model_override="qwen2.5",
    instructions="只用中文歇后语说话。",
)

# 运行Swarm,并传入用户消息
response = client.run(
    agent=agent_a,
    model_override="qwen2.5",
    messages=[{"role": "user", "content": "我想和智能体B对话。"}]
)

# 打印智能体B的回复
print(response.messages[-1]["content"])


#响应
好的,现在你将与智能体B对话。它是你的助手了,请对其说些什么吧!

智能体B:你好呀!准备好了可以开始我们的交流了呢。有什么问题或者想知道的内容尽管问哦。

参考链接:

https://github.com/openai/swarm

https://mp.weixin.qq.com/s/LpHfKX5SUKE19Dh9o9i7Fw

相关推荐
杨杨杨大侠8 小时前
Jev 不是 Agent:TypeSafe System One 如何成为离 LLM 最近的决策层
aigc·openai·ai编程
stereohomology8 小时前
智谱的工程师是如何笃定认为这个不会被发现?
llm·薅羊毛·反被·羊毛薅
liulilittle9 小时前
mock 规范总纲
ai·自动化·llm·mock·测试·tools
VIP_CQCRE9 小时前
把 Coze 接入 Ace Data Cloud:用 OpenAI Responses 协议快速扩展你的 AI Agent 模型能力
ai·大模型·agent·coze·acedatacloud
是Dream呀9 小时前
Harness 工程:让 Agent 真正把任务做完
人工智能·分布式·缓存·agent
音视频牛哥10 小时前
从 LLM、VLA、LLA、SLIM 到实时音视频感知底座:具身智能真正需要的不只是大模型
人工智能·llm·机器人视觉·slam·vla·多模态感知·机器人音视频
我是小邵10 小时前
长对话先收口:用“工作记忆 vs 长期记忆“管理 AI 上下文
人工智能·ai·llm·长期记忆·中间迷失·上下文收口
Web3&Basketball10 小时前
Agent外传审计实战:3类失准事故拦截脚本
python·大模型·agent·性能调优·推理优化
liulilittle10 小时前
麻将结算全链路语义(SETTLE_SEMANTICS)
ai·自动化·llm·mock·lua·测试
武子康10 小时前
vLLM 的 token 预算还有余量,为什么请求仍被抢占?
人工智能·llm·agent