Abraxas-365/langchain-rust
🦜️🔗LangChain for Rust, the easiest way to write LLM-based programs in Rust
What it solves
LangChain Rust provides a way to build complex applications powered by Large Language Models (LLMs) using the Rust programming language. It brings the composability and orchestration patterns of the original LangChain framework to a high-performance, type-safe environment.
How it works
The library implements a set of modular components that can be "chained" together to create sophisticated AI workflows. It provides standardized interfaces for:
- LLMs and Embeddings: Integration with providers like OpenAI, Azure OpenAI, Ollama, Anthropic Claude, and MistralAI.
- Vector Stores: Support for databases such as OpenSearch, Postgres, Qdrant, Sqlite, and SurrealDB for efficient retrieval of embeddings.
- Chains: Pre-built logic for LLM chains, conversational chains, Q&A, and SQL-based interactions.
- Agents: Tool-using agents that can interact with external services like Google Search (Serpapi), DuckDuckGo, and the command line.
- Document Loaders: Tools to ingest data from PDF, HTML, CSV, Git commits, and source code.
Who it’s for
Developers who want to build LLM-powered applications with the performance, safety, and concurrency benefits of Rust rather than using Python or JavaScript.
Highlights
- Broad Provider Support: Works with multiple LLM and embedding providers including local options like Ollama and FastEmbed.
- Extensible Tooling: Includes built-in tools for web search, mathematics (Wolfram), and text-to-speech.
- Semanitc Routing: Supports both static and dynamic routing to direct queries based on meaning.
- Diverse Data Ingestion: Built-in loaders for a wide variety of file formats and source code repositories.
Related
- Project
- Project
- Project
- Project
- Project