精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

OpenAI開源多智能體編排框架Swarm!

原創(chuàng) 精選
人工智能
如果開發(fā)者想要尋求完全托管的線程以及內(nèi)置的內(nèi)存管理和檢索,那么 Assistants API 就已經(jīng)是很好的選擇了。但如果開發(fā)者想要完全的透明度,并且能夠細粒度地控制上下文、步驟和工具調(diào)用,那么 Swarm 才是最佳選擇。

編輯 | 星璇

出品 | 51CTO技術(shù)棧(微信號:blog51cto)

OpenAI 終于又Open了一回!這次開源的對象,竟然輪到了多智能體框架!

圖片圖片

圖片

Swarm 開源后,X上立馬引來開發(fā)者的的討論,有網(wǎng)友表示這能幫助簡化許多潛在的多智能體用例的工作流程。

圖片圖片

下面我們就來簡單介紹一下這個開源項目。

一、Swarm是什么?

據(jù)github文當(dāng)介紹,Swarm 是一個實驗性質(zhì)的多智能體框架,并不是為生產(chǎn)目的開發(fā)的,因此團隊表示不會提供任何官方支持。

其中,Swarm 關(guān)注的重點是讓智能體協(xié)作和執(zhí)行變得輕量、高度可控且易于測試。

為此,它使用了兩種原語抽象:智能體(agent)和交接(handoff)。其中,智能體包含指令和工具,并且在任何時間都可以選擇將對話交接給另一個智能體。

該團隊表示,這些原語很強大,「足以表達工具和智能體網(wǎng)絡(luò)之間的豐富動態(tài),讓你可以針對真實世界問題構(gòu)建可擴展的解決方案,同時避免陡峭的學(xué)習(xí)曲線。」

另外,該團隊指出,請注意 Swarm 智能體與 Assistants API 中的 Assistants 無關(guān)。之所以名字相似,只是為了方便。Swarm 完全由 Chat Completions API 提供支持,因此在調(diào)用之間是無狀態(tài)的。

二、為什么要使用 Swarm?

在設(shè)計上,Swarm 是輕量級、可擴展且高度可定制的。它最適合處理存在大量獨立功能和指令的情況——這些功能和指令很難編碼成單個提示詞。

如果開發(fā)者想要尋求完全托管的線程以及內(nèi)置的內(nèi)存管理和檢索,那么 Assistants API 就已經(jīng)是很好的選擇了。但如果開發(fā)者想要完全的透明度,并且能夠細粒度地控制上下文、步驟和工具調(diào)用,那么 Swarm 才是最佳選擇。Swarm (幾乎)完全運行在客戶端,與 Chat Completions API 非常相似,不會在調(diào)用之間存儲狀態(tài)。

該團隊還展示了一個應(yīng)用示例,包括天氣查詢智能體、用于在航空公司環(huán)境中處理不同客戶服務(wù)請求的多智能體設(shè)置、客服機器人、可以幫助銷售和退款的個人智能體等。具體示例請訪問 Swarm 代碼庫。

圖片圖片

簡單的天氣查詢智能體示例,問題先經(jīng)過篩選智能體處理,再轉(zhuǎn)交給天氣智能體解答

我們先來看一個例子。首先安裝 Swarm,很簡單:

pip install git+ssh://git@github.com/openai/swarm.git

裝好這個框架之后,用起來也很方便。以下代碼定義了 2 個智能體,而用戶的指令是與智能體 B 交談:

from swarm import Swarm, Agent

client = Swarm()

def transfer_to_agent_b():
return agent_b

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

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

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

print(response.messages[-1]["content"])

輸出消息:

Hope glimmers brightly,
New paths converge gracefully,
What can I assist?

三、Swarm 的核心組件

Swarm 的核心組件包括 client(客戶端)、Agent(智能體)、Function(函數(shù))。

運行 Swarm 就是從實例化一個 client 開始的(其就是在內(nèi)部實例化一個 OpenAI 客戶端)。

from swarm import Swarm
client = Swarm()

1. client.run()

Swarm 的 run() 函數(shù)類似于 Chat Completions API 中的 chat.completions.create() 函數(shù)——接收消息并返回消息,并且在調(diào)用之間不保存任何狀態(tài)。但重點在于,它還處理 Agent 函數(shù)執(zhí)行、交接、上下文變量引用,并且可以在返回給用戶之前進行多輪執(zhí)行。

究其核心,Swarm 的 client.run() 是實現(xiàn)以下循環(huán):

  • 先讓當(dāng)前智能體完成一個結(jié)果
  • 執(zhí)行工具調(diào)用并附加結(jié)果
  • 如有必要,切換智能體
  • 如有必要,更新上下文變量
  • 如果沒有新的函數(shù)調(diào)用,則返回

參數(shù)

client.run() 的參數(shù)包括:

圖片圖片

client.run() 完成后(可能進行過多次智能體和工具調(diào)用),會返回一個響應(yīng),其中包含所有相關(guān)的已更新狀態(tài)。具體來說,即包含新消息、最后調(diào)用的智能體、最新的上下文變量。你可以將這些值(加上新的用戶消息)傳遞給 client.run() 的下一次執(zhí)行,以繼續(xù)上次的交互——就像是 chat.completions.create()

響應(yīng)字段

圖片圖片

2. Agent

Agent 就是將一組指令與一組函數(shù)封裝在一起(再加上一些額外的設(shè)置),并且其有能力將執(zhí)行過程交接給另一個 Agent。Agent 字段如下:

圖片圖片

指令(instructions)

Agent instructions 會直接轉(zhuǎn)換成對話的系統(tǒng)提示詞(作為第一條消息)。只有當(dāng)前活動的 Agent 的指令會被使用(當(dāng)發(fā)生智能體交接時,系統(tǒng)提示詞會變化,但聊天歷史不會)。

agent = Agent(
instructinotallow="You are a helpful agent."
)

instructions 可以是常規(guī)字符串,也可以是返回字符串的函數(shù)。該函數(shù)可以選擇性地接收 context_variables 參數(shù),該參數(shù)將由傳入 client.run() 的 context_variables 填充。

def instructions(context_variables):
user_name = context_variables["user_name"]
return f"Help the user, {user_name}, do whatever they want."

agent = Agent(
instructinotallow=instructions
)
response = client.run(
agent=agent,
messages=[{"role":"user", "content": "Hi!"}],
context_variables={"user_name":"John"}
)
print(response.messages[-1]["content"])

輸出消息:

Hi John, how can I assist you today?

3. Function

  • Swarm Agent 可以直接調(diào)用 Python 函數(shù)。
  • 函數(shù)通常應(yīng)返回一個字符串(數(shù)值會被轉(zhuǎn)換為字符串)。
  • 如果一個函數(shù)返回了一個 Agent,則執(zhí)行過程將轉(zhuǎn)交給該 Agent。
  • 如果函數(shù)定義了 context_variables 參數(shù),則它將由傳遞到 client.run() 的 context_variables 填充。
def greet(context_variables, language):
user_name = context_variables["user_name"]
greeting = "Hola" if language.lower() == "spanish" else "Hello"
print(f"{greeting}, {user_name}!")
return "Done"

agent = Agent(
functions=[print_hello]
)

client.run(
agent=agent,
messages=[{"role": "user", "content": "Usa greet() por favor."}],
context_variables={"user_name": "John"}
)

輸出:

Hola, John!

如果某個 Agent 函數(shù)調(diào)用出錯(缺少函數(shù)、參數(shù)錯誤等),則會在聊天之中附加一條報錯響應(yīng),以便 Agent 恢復(fù)正常。

如果 Ageny 調(diào)用多個函數(shù),則按順序執(zhí)行它們。

交接和更新上下文變量

通過在返回的函數(shù)中包含一個 Agent,可將執(zhí)行過程交接給這個 Agent。

sales_agent = Agent(name="Sales Agent")

def transfer_to_sales():
return sales_agent

agent = Agent(functions=[transfer_to_sales])

response = client.run(agent, [{"role":"user", "content":"Transfer me to sales."}])
print(response.agent.name)

輸出:

Sales Agent

它還可以通過返回更完整的 Result 對象來更新 context_variables。如果你希望用單個函數(shù)返回一個值、更新智能體并更新上下文變量(或三者中的任何組合),它還可以包含一個 value 和一個 agent。

sales_agent = Agent(name="Sales Agent")

def talk_to_sales():
print("Hello, World!")
return Result(
value="Done",
agent=sales_agent,c
ontext_variables={"department": "sales"}
)

agent = Agent(functions=[talk_to_sales])

response = client.run(a
gent=agent,
messages=[{"role": "user", "content": "Transfer me to sales"}],
context_variables={"user_name": "John"}
)
print(response.agent.name)
print(response.context_variables)

輸出:

Sales Agent
{'department': 'sales', 'user_name': 'John'}

注意:如果一個 Agent 調(diào)用了多個交接 Agent 的函數(shù),則僅使用最后一個交接函數(shù)。

四、函數(shù)模式

Swarm 會自動將函數(shù)轉(zhuǎn)換為 JSON 模式,然后將其傳遞給聊天補全工具。

  • 文檔字符串會轉(zhuǎn)換為函數(shù) description。
  • 沒有默認值的參數(shù)會設(shè)置為 required。
  • 類型提示會映射到參數(shù)的 type(默認為 string)。
  • 不明確支持對每個參數(shù)進行描述,但如果只是在文檔字符串中添加,應(yīng)該能以相似的方式工作。
def greet(name, age: int, location: str = "New York"):
"""Greets the user. Make sure to get their name and age before calling.
Args:
name: Name of the user.
age: Age of the user.
location: Best place on earth.
"""
print(f"Hello {name}, glad you are {age} in {location}!")
{"type": "function",
"function": {
"name": "greet",
"description": "Greets the user. Make sure to get their name and age before calling.\n\nArgs:\n name: Name of the user.\n age: Age of the user.\n location: Best place on earth.",
"parameters": {
"type": "object",
"properties": {
"name": {"type": "string"},
"age": {"type": "integer"},
"location": {"type": "string"}},
"required": ["name", "age"]
}
}
}

五、流式處理

Swarm 也支持流式處理。

stream = client.run(agent, messages, stream=True)
for chunk in stream:
print(chunk)

使用了與 Chat Completions API streaming 一樣的事件,但添加了兩個事件類型:

  • {"delim":"start"} 和 {"delim":"start"},用于在 Agent 每次處理單個消息(響應(yīng)或函數(shù)調(diào)用)時發(fā)出信號。這有助于識別 Agent 之間的切換。
  • 為方便起見,{"response": Response} 將在流的末尾返回帶有已聚合的(完整)響應(yīng)的 Response 對象。

六、核心貢獻者

Swarm 的核心貢獻者均就職于 OpenAI,他們分別是(右側(cè)為對應(yīng)的 GitHub 用戶名):

  • Ilan Bigio - ibigio
  • James Hills - jhills20
  • Shyamal Anadkat - shyamal-anadkat
  • Charu Jaiswal - charuj
  • Colin Jarvis - colin-openai

想了解更多AIGC的內(nèi)容,請訪問:

51CTO AI.x社區(qū)

http://m.jxzklqfsx.com/aigc/

責(zé)任編輯:武曉燕 來源: 51CTO技術(shù)棧
相關(guān)推薦

2024-10-12 12:30:18

2024-10-18 15:20:00

2025-07-28 01:33:00

2024-10-14 10:00:00

OpenAI代碼

2025-06-10 09:28:31

智能體開發(fā)工具

2025-06-30 05:30:00

2025-03-12 11:34:35

2025-06-20 14:38:43

OpenAI客服智能體人工智能

2025-11-10 08:45:00

智能體AI開源

2024-10-22 20:00:00

2024-03-25 00:30:00

AI框架

2021-12-02 16:20:17

開源微服務(wù)框架

2025-05-12 08:19:13

2023-05-04 15:53:34

強化學(xué)習(xí)開發(fā)

2023-09-22 07:23:50

Alice模型任務(wù)

2024-11-29 08:26:37

2021-07-22 15:25:14

開源技術(shù) 框架

2025-02-05 08:30:00

開源模型實踐

2024-10-15 13:45:36

2025-11-19 09:27:32

點贊
收藏

51CTO技術(shù)棧公眾號

久草免费资源站| 亚洲肉体裸体xxxx137| 成人直播大秀| 亚洲一区视频在线观看视频| 亚洲精品一区久久久久久| 成年人黄色在线观看| 国产精品视频久久久久久久| 国产精品一区二区美女视频免费看| 久久久久久久久久久久久久久99 | 欧美人与禽猛交乱配| 自拍偷拍一区| 欧美一区二区三区四区在线观看| 日本免费一区二区三区| 日本中文字幕在线免费观看| 涩爱av色老久久精品偷偷鲁 | 精品一二三四区| 中文欧美日本在线资源| 国产精品亚洲αv天堂无码| 人妻一区二区三区免费| 精品成人一区| 亚洲国产欧美久久| 欧美成人三级在线视频| 黑人精品一区二区三区| 韩日欧美一区| 精品999在线播放| 久久精品无码中文字幕| 欧美熟妇交换久久久久久分类| 日韩福利视频网| 在线看日韩欧美| 亚洲免费黄色录像| av毛片在线播放| 国产精品亚洲午夜一区二区三区 | 成人直播视频| www久久精品| 国产成人a亚洲精品| 一级肉体全黄裸片| 欧美日韩伦理一区二区| 亚洲三级在线免费观看| 91精品国产综合久久久久久丝袜| 成人免费视频网站入口::| 精品国产不卡一区二区| 亚洲国产精品人人做人人爽| 久久精品日产第一区二区三区| 亚洲精品中文字幕乱码三区91| 久久99国内| 欧美丝袜丝nylons| 日本三日本三级少妇三级66| 亚洲免费不卡视频| 韩国v欧美v亚洲v日本v| 国产日韩欧美视频在线| 久久久精品99| 天海翼精品一区二区三区| 在线免费不卡视频| 国产免费内射又粗又爽密桃视频| 无码国产精品96久久久久| 老司机久久99久久精品播放免费| 日韩一区二区精品视频| 乱码一区二区三区| 欧美电影免费观看| 亚洲欧洲综合另类| 在线观看视频黄色| 含羞草www国产在线视频| 粉嫩aⅴ一区二区三区四区 | 宅男噜噜99国产精品观看免费| jlzzjlzzjlzz亚洲人| 亚洲综合国产| 久久亚洲精品一区| 一级国产黄色片| 欧美电影在线观看网站| 精品视频在线看| 欧美啪啪免费视频| 性爽视频在线| 亚洲精品乱码久久久久久久久 | 国产视频网站在线| 国产成+人+日韩+欧美+亚洲| 成人羞羞视频免费| 中文字幕自拍偷拍| 亚洲一区网站| 国产97人人超碰caoprom| 欧美成欧美va| 国产精品中文字幕亚洲欧美| 欧美va亚洲va香蕉在线| 欧美三级午夜理伦三级富婆| 色网在线免费观看| 亚洲综合久久久久| 自拍偷拍视频在线| 黄色成人在线网| 亚洲精品欧美二区三区中文字幕| 久久综合九色欧美狠狠| 丁香花免费高清完整在线播放| 9人人澡人人爽人人精品| 91色p视频在线| 欧美性受xxx黑人xyx性爽| 亚洲一区二区毛片| 久久免费视频网站| 美女毛片在线观看| 自由日本语亚洲人高潮| 一区二区av在线| 欧美成人精品欧美一级| 亚洲一区二区成人| 亚洲www在线| 国产农村老头老太视频| 免费久久精品视频| 国产精品免费网站| 中文天堂在线播放| 风流少妇一区二区| 一本一生久久a久久精品综合蜜| 撸视在线观看免费视频| 91看片淫黄大片一级在线观看| 亚洲韩国在线| 视频三区在线| 亚洲欧洲av在线| 中文字幕在线观看一区二区三区| 精品精品导航| 欧美另类久久久品| 日韩在线第三页| 日韩欧美一区二区三区在线观看| 色妞www精品视频| 91激情视频在线| 日本欧美韩国| 欧美精品一二三| 手机av免费看| 国产欧美日韩| 久久久之久亚州精品露出| 亚洲永久精品视频| 国产资源精品在线观看| 91成人免费观看| eeuss影院在线播放| 国产精品久久午夜| 亚洲av综合色区| 欧美黄色视屏| 91精品国产91热久久久做人人| 一级肉体全黄裸片| 视频一区在线视频| 麻豆成人小视频| 国内精彩免费自拍视频在线观看网址 | 亚洲999一在线观看www| 一本一道波多野毛片中文在线| 欧美性生交大片免网| 成人免费在线观看视频网站| 亚洲国产91视频| 精品国产污网站| 欧美日韩在线视频免费播放| 国产一区二区三区观看| 中国成人亚色综合网站| 国产亚洲人成a在线v网站| 亚洲欧美制服第一页| 老司机深夜福利网站| 国产精品v亚洲精品v日韩精品 | 中文字幕一区二区三区精华液| 亚洲免费视频播放| 亚洲精品三区| 亚洲精品国产精品久久清纯直播| 青青草原在线免费观看视频| 国产精品一区二区三区99| 亚洲国产一二三精品无码| 精品伊人久久| 欧美国产亚洲视频| 精品人妻一区二区三区潮喷在线 | 欧美精三区欧美精三区| 亚洲综合色视频| 亚洲综合久久av| 在线区一区二视频| 日韩免费在线看| 欧美一级性视频| 亚洲不卡在线观看| 第九区2中文字幕| 欧美一区一区| 欧美黑人国产人伦爽爽爽| 精品国产亚洲av麻豆| 久久久三级国产网站| 久草综合在线观看| 色999日韩| 2025国产精品视频| 国产欧美一级片| 一区二区三区精品视频在线| www男人天堂| 久久香蕉精品| 天堂av免费看| 国产欧美啪啪| 欧美日韩福利视频| 中文字幕一区2区3区| 亚洲人精品午夜| 日韩精品人妻中文字幕有码| 亚洲电影影音先锋| 国产精品狠色婷| 天天摸天天干天天操| 亚洲激情男女视频| 色噜噜在线观看| 亚洲第一在线| 日韩wuma| 26uuu亚洲电影| 日韩中文字幕精品| 国产成人自拍一区| 欧美性xxxxx极品少妇| www日韩在线| 麻豆精品在线播放| 亚洲高清视频在线观看| 日韩08精品| 国产999精品| 新版中文在线官网| 日韩一级高清毛片| 国产色无码精品视频国产| 成人av在线一区二区三区| 久久亚洲a v| 北条麻妃一区二区三区在线| 欧美高清无遮挡| 邻居大乳一区二区三区| 日韩免费视频一区二区| 免费中文字幕视频| 欧美国产一区在线| 天堂av在线网站| 亚洲黄色av| 精品视频一区二区| 亚洲天堂手机| 欧美美女18p| 香蕉视频网站在线观看| 亚洲精品中文字幕有码专区| 亚洲AV无码乱码国产精品牛牛| 一区二区三区精品| 99久久99久久精品免费看小说.| 日韩电影免费在线观看网站| 韩日视频在线观看| 偷拍欧美精品| ts人妖另类在线| 一区二区视频免费| 精品电影一区| 男同互操gay射视频在线看| 久久不见久久见中文字幕免费| 国产精品区一区二区三在线播放| 91中文在线| 国产亚洲福利一区| 亚洲综合精品视频| 色婷婷综合中文久久一本| 伊人影院综合网| 久久66热偷产精品| 亚洲国产一二三精品无码| 四季av在线一区二区三区| 97人人干人人| 色综合久久久| 91久久嫩草影院一区二区| 久久精品国产福利| 国产精品中文字幕在线| 超鹏97在线| 日韩久久午夜影院| 少妇人妻精品一区二区三区| 精品国产免费一区二区三区四区 | 免费亚洲一区| 18禁免费无码无遮挡不卡网站| 精品国产一区二区三区噜噜噜| 国产情人节一区| 六九午夜精品视频| 91精品久久久久久久久久入口| 手机av免费在线| 成年无码av片在线| 午夜激情在线| 久久久亚洲国产| 深夜av在线| 热99精品里视频精品| 超碰在线caoporn| 九九热这里只有精品6| heyzo高清在线| 久久国产一区二区三区| 无码精品视频一区二区三区| 亚洲电影免费观看高清完整版在线观看| 无码人妻av免费一区二区三区| 日韩欧美国产骚| 欧美成人精品网站| 欧美喷水一区二区| 91丝袜一区二区三区| 在线观看成人免费视频| 一本久道久久综合无码中文| 欧美一三区三区四区免费在线看| 亚洲不卡免费视频| 亚洲精品在线视频| 尤物网在线观看| 色综合久久天天综线观看| 绿色成人影院| 成人午夜短视频| 国产亚洲一区二区三区在线观看| 欧美性一区二区| 国产精品区免费视频| www黄色在线| 青青草原av在线| 日韩最新中文字幕电影免费看| 成码无人av片在线观看网站| 久久人人爽国产| 高清成人在线| 91成人免费观看| 精品淫伦v久久水蜜桃| 亚洲图片欧美激情| 久久精品色妇熟妇丰满人妻| 一区二区三区91| 伊人中文字幕在线观看 | 五十路熟女丰满大屁股| 奇米一区二区三区av| 91成人在线观看喷潮教学| 久久免费高清| 色婷婷狠狠18禁久久| 久久久激情视频| 免费看一级一片| 欧美艳星brazzers| 天堂在线视频网站| 久久视频在线免费观看| 人人草在线视频| 亚洲综合日韩在线| 欧美精品久久久久久| 国产天堂视频在线观看| 麻豆成人久久精品二区三区红 | 三级做a全过程在线观看| 日韩精品中午字幕| xxxxx日韩| 91po在线观看91精品国产性色| 国产美女高潮在线| 91免费高清视频| 精品福利久久久| 免费av手机在线观看| 国内精品在线播放| 欧美一区二区三区粗大| 欧美性猛交xxxx黑人猛交| www.国产麻豆| 美女精品视频一区| 波多野结衣中文在线| 成人激情视频网| re久久精品视频| 哪个网站能看毛片| 972aa.com艺术欧美| 波多野结衣av在线观看| 国产精品久久久久天堂| 日本高清不卡码| 亚洲韩国欧洲国产日产av| 欧美亚洲系列| 成人三级在线| 黄色在线成人| 女同性αv亚洲女同志| 亚洲免费在线播放| av av片在线看| 欧美成在线观看| 国产精品成人**免费视频| 一区二区三区的久久的视频| 日韩精品电影一区亚洲| 色欲AV无码精品一区二区久久| 黑人欧美xxxx| 国产精品久久久久毛片| 精品国产99国产精品| 天堂成人av| 成人动漫视频在线观看免费| 综合久久十次| 潘金莲一级淫片aaaaa| 亚洲老司机在线| 丰满人妻一区二区三区免费视频 | 国产成人无码av| 亚洲欧美国产另类| 成人在线网址| 91久久国产精品91久久性色| 国产精品毛片久久| 欧美色图校园春色| 国产欧美中文在线| 中文字幕一区二区免费| 久久亚洲国产精品| 日本在线成人| 午夜精品久久久久久久无码| 精品综合久久久久久8888| 欧美爱爱免费视频| 日韩欧美国产三级| 国产黄大片在线观看| 免费99视频| 久久国产精品一区二区| 日韩成人毛片视频| 亚洲国产精品大全| 经典三级一区二区| 中文字幕日韩一区二区三区不卡| 国产一区二区三区不卡在线观看| 青青草激情视频| 日韩精品日韩在线观看| 污污网站在线观看| 国产一区二区三区四区五区在线 | 亚洲欧美激情国产综合久久久| 久久人人爽人人| 日韩黄色大片| 一级黄色大片免费看| 日韩欧美在线视频| 黄网站在线播放| 精品视频第一区| 国内精品免费**视频| 国产手机在线视频| 少妇精69xxtheporn| 欧美××××黑人××性爽 | 国产精选一区二区| 日韩精品成人一区二区三区| 国产午夜手机精彩视频| 日韩精品免费在线观看| 国产美女亚洲精品7777| 国产伦精品一区二区三区四区视频_| 国产三级一区二区三区| 超碰在线观看av| 国产精品久久电影观看| 影音先锋久久| av片在线免费看| 国产视频在线一区二区|