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 호출, 도구 실행, 라이프사이클 훅의 루프를 관리합니다. 인간이 개입하는 승인, 스트리밍 응답, Model Context Protocol(MCP) 서버와의 통합을 지원합니다.
  • Typed Task Graphs: 워크플로를 타입이 지정된 노드 그래프로 정의하는 오케스트레이션 레이어입니다. 입력과 출력에 대한 강력한 빌드 타임 타입을 제공하며, 병렬 실행(팬아웃)과 결과 결합을 지원합니다.
  • RAG Pipelines: 인덱싱 및 질의를 위한 구성 가능하고 스트리밍 가능한 파이프라인입니다. 로더(파일, 스크래핑)에서 변환기(청크화, 임베딩)를 거쳐 스토리지 백엔드(벡터 데이터베이스)로 데이터 흐름을 처리합니다.

Who it’s for

Rust에서 고성능, 타입 안전한 LLM 애플리케이션을 구축하고자 하는 개발자를 위한 것입니다. 특히 복잡한 에이전트 워크플로나 확장 가능한 RAG 인덱싱 파이프라인이 필요한 경우에 적합합니다.

Highlights

  • Type-Safe Orchestration: 타입이 지정된 태스크 그래프를 사용해 복잡한 AI 워크플로 전반에 걸쳐 데이터 일관성을 보장합니다.
  • Flexible Tooling: 로컬 Rust 함수, 커스텀 도구 구현, MCP 서버를 지원합니다.
  • Human-in-the-Loop: 작업이나 에이전트를 일시 중지·재개하고 인간 승인을 받을 수 있는 내장 지원이 있습니다.
  • Extensive Integrations: OpenAI, Anthropic, Gemini 등 다양한 LLM 제공자와 Qdrant, Redis, LanceDB 등 벡터 데이터베이스와 호환됩니다.
  • Observability: tracing, 메트릭, Langfuse를 통한 실행 추적을 통합 지원합니다.