bosun-ai/swiftide

Fast, streaming indexing, query, and agentic LLM applications in Rust

What it solves

Swiftide 是一個用於在 Rust 中構建 LLM 應用的框架,提供了一種結構化的方式來管理自治代理、複雜編排工作流以及檢索增強生成(RAG)管道的複雜性。

How it works

它提供了三種核心原語,以適配不同的 AI 交互模型:

  • Agent Harness:管理 LLM 呼叫、工具執行和生命週期鉤子的迴圈。支援人機交互批准、串流回應以及與模型上下文協議(MCP)伺服器的整合。
  • Typed Task Graphs:一個編排層,工作流被定義為型別化節點的圖。這使得輸入輸出在建構時擁有強型別檢查,支援平行執行(fan‑out)和結果合併。
  • RAG Pipelines:可組合的串流管道,用於索引和查詢。這些管道處理從載入器(檔案、爬取)經轉換器(分塊、嵌入)到儲存後端(向量資料庫)的資料流。

Who it’s for

面向希望在 Rust 中構建高效能、型別安全的 LLM 應用的開發者,尤其是需要複雜代理工作流或可擴展 RAG 索引管道的情境。

Highlights

  • Type-Safe Orchestration:使用型別化任務圖確保複雜 AI 工作流中的資料一致性。
  • Flexible Tooling:支援本地 Rust 函式、自訂工具實作以及 MCP 伺服器。
  • Human-in-the-Loop:內建對任務或代理暫停、恢復以供人工批准的支援。
  • Extensive Integrations:相容眾多 LLM 提供商(OpenAI、Anthropic、Gemini 等)與向量資料庫(Qdrant、Redis、LanceDB 等)。
  • Observability:整合對 tracing、指標以及 Langfuse 的執行追蹤支援。