swiftide  by bosun-ai

Rust library for building LLM applications

Created 1 year ago
558 stars

Top 57.5% on SourcePulse

GitHubView on GitHub
Project Summary

Swiftide is a Rust library for building fast, streaming indexing and querying pipelines for LLM applications, targeting developers who need efficient Retrieval Augmented Generation (RAG) capabilities. It offers modular building blocks for creating agents and data processing workflows, enabling rapid development from concept to production.

How It Works

Swiftide employs a pipeline-based architecture, allowing users to chain together various components for data ingestion, transformation, and storage. It leverages Rust's performance and async capabilities for efficient, streaming data processing. The design emphasizes modularity and extensibility, with clear traits for loaders, transformers, chunkers, embedders, and storage backends, enabling custom logic and integrations.

Quick Start & Requirements

  • Install via cargo add swiftide.
  • Requires Rust toolchain (rustup recommended).
  • OpenAI API key is needed for OpenAI integrations. Other integrations may have their own requirements.
  • See examples and documentation for detailed setup and usage.

Highlighted Details

  • Supports multiple LLM providers including OpenAI, Anthropic, Groq, and Ollama.
  • Integrates with storage solutions like Qdrant, Redis, and LanceDB.
  • Features include code-aware chunking with Tree-sitter, metadata generation, and RAGAS evaluation.
  • Offers experimental agent framework and query pipeline with hybrid search capabilities.

Maintenance & Community

  • Project is under heavy development with potential breaking changes.
  • Active development with frequent releases noted on the blog.
  • Community engagement encouraged via Discord.

Licensing & Compatibility

  • Distributed under the MIT License.
  • Permissive license suitable for commercial use and integration into closed-source projects.

Limitations & Caveats

Swiftide is in heavy development, meaning documentation may lag behind features and breaking changes are possible. Users should monitor GitHub activity and API documentation closely. Chunking before metadata enrichment can lead to OpenAI rate limit errors with faster models.

Health Check
Last Commit

1 day ago

Responsiveness

1 day

Pull Requests (30d)
24
Issues (30d)
1
Star History
21 stars in the last 30 days

Explore Similar Projects

Starred by Andrej Karpathy Andrej Karpathy(Founder of Eureka Labs; Formerly at Tesla, OpenAI; Author of CS 231n), Anton Troynikov Anton Troynikov(Cofounder of Chroma), and
44 more.

llama_index by run-llama

0.3%
44k
Data framework for building LLM-powered agents
Created 2 years ago
Updated 19 hours ago
Feedback? Help us improve.