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 的执行追踪支持。