Trieve is an all-in-one platform designed for developers to integrate search, recommendations, Retrieval-Augmented Generation (RAG), and analytics into their applications. It offers a comprehensive API and SDKs, with a focus on self-hosting and flexibility in model integration.
How It Works
Trieve employs a hybrid search approach, combining semantic vector search using OpenAI or Jina embeddings with Qdrant, and typo-tolerant neural sparse-vector search powered by naver/efficient-splade-VI-BT-large-query
. It also supports cross-encoder re-ranking with models like BAAI/bge-reranker-large
for enhanced relevance. Features like sub-sentence highlighting, recency biasing, and tunable merchandising are included to optimize search UX.
Quick Start & Requirements
- Installation: Self-hosting guides are available for AWS, GCP, Kubernetes, and Docker Compose. Local development requires Rust, Node.js (via NVM), and Yarn.
- Prerequisites: OpenAI API key (or other LLM provider via OpenRouter),
curl
, gcc
, g++
, make
, pkg-config
, python3
, python3-pip
, libpq-dev
, libssl-dev
, openssl
, postgresql-libs
.
- Setup: Local development involves cloning the repo, installing dependencies, setting environment variables (including LLM API keys), building Rust components, and running Docker services.
- Documentation: API Reference + Docs
Highlighted Details
- Supports semantic, full-text, and hybrid search with cross-encoder re-ranking.
- Offers RAG API routes with topic-based memory management or custom context selection.
- Enables bringing your own embedding, SPLADE, cross-encoder, and LLM models.
- Includes features like sub-sentence highlighting, grouping by file, and filtering.
Maintenance & Community
- Active development with a small, hands-on team.
- Community channels available via Discord and Matrix.
- Professional services are offered.
Licensing & Compatibility
- The project appears to be open-source, but a specific license is not explicitly stated in the README. Compatibility for commercial use or closed-source linking would require clarification on licensing terms.
Limitations & Caveats
- The README does not explicitly state the open-source license, which is critical for commercial adoption. Local setup instructions are extensive and may require significant time and system configuration.