使用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

相关推荐
X.Cristiano6 分钟前
OpenAI新论文:Why Language Models Hallucinate
llm·openai·幻觉
吾鳴2 小时前
国产文本大模型百花齐放,六强鼎立如何选?
llm
迦蓝叶3 小时前
JAiRouter 配置文件重构纪实 ——基于单一职责原则的模块化拆分与内聚性提升
java·网关·ai·重构·openai·prometheus·单一职责原则
潘锦13 小时前
Agent 核心策略:Manus、Gemini CLI 和 Claude Code 的上下文压缩策略和细节
agent
CodeCraft Studio17 小时前
Aspose.Words for .NET 25.7:支持自建大语言模型(LLM),实现更安全灵活的AI文档处理功能
人工智能·ai·语言模型·llm·.net·智能文档处理·aspose.word
ZHOU_WUYI17 小时前
FastVLM-0.5B 模型解析
人工智能·llm
Wilber的技术分享18 小时前
【大模型实战笔记 1】Prompt-Tuning方法
人工智能·笔记·机器学习·大模型·llm·prompt
AI Echoes19 小时前
别再手工缝合API了!开源LLMOps神器LMForge,让你像搭积木一样玩转AI智能体!
人工智能·python·langchain·开源·agent
AI Echoes19 小时前
从零构建企业级LLMOps平台:LMForge——支持多模型、可视化编排、知识库与安全审核的全栈解决方案
人工智能·python·langchain·开源·agent
蛋先生DX1 天前
零压力了解 LoRA 微调原理
人工智能·llm