christopherkarani/Swarm
🐦🔥 LangGraph for Swift — build stateful AI agent workflows natively on Apple/Linux platforms.
解決的問題
Swarm 是一個旨在簡化 AI Agent 和多 Agent 工作流創建的 Swift 框架。它解決了 Apple 生態系統缺乏原生、類型安全且並發安全的 Agent 框架的問題,提供了一種結構化的方式來構建可以在裝置端或透過自定義後端運行的複雜 AI 流水線。
工作原理
Swarm 使用基於圖的執行模型,開發者可以在其中定義 Agent 和工具。它利用 Swift 6.2 的嚴格並發特性來確保數據競態安全。該框架提供 @Tool 宏,可以在編譯時從 Swift 結構體生成 JSON Schema,從而確保類型安全的工具調用。工作流被編譯為有向無環圖 (DAG),並支援持久化檢查點,允許在崩潰後從特定狀態恢復進程。
適用對象
主要面向為 iOS、macOS、tvOS 和 Linux 構建 AI 應用程式的 Swift 開發者,特別是那些希望利用 Apple 裝置端 Foundation Models 進行隱私本地推理而無需 API 金鑰的開發者。
亮點
- 裝置端優先:內建對 Apple Foundation Models 的支援,用於本地推理。
- 類型安全工具:使用 Swift 宏來確保工具的類型安全,並在編譯時生成 Schema。
- 持久化工作流:支援檢查點和崩潰恢復,以恢復長時間運行的 Agent 任務。
- 原生並發:與 Swift 6.2 的
StrictConcurrency和用於串流輸出的AsyncThrowingStream完全整合。 - 靈活的編排:支援順序、並行、路由和 repeat-until 工作流模式。
- 全面的記憶體管理:包含多種記憶體策略,如向量、滑動窗口和摘要記憶體。