gitmyhub

quivr

Python ★ 39k updated 11mo ago

Opiniated RAG for integrating GenAI in your apps 🧠 Focus on your product rather than the RAG. Easy integration in existing products with customisation! Any LLM: GPT4, Groq, Llama. Any Vectorstore: PGVector, Faiss. Any Files. Anyway you want.

Python framework that bundles document indexing, vector search, and LLM integration into one package so you can build AI question-answering features without assembling the pieces yourself.

PythonOpenAIAnthropicMistralOllamaPGVectorFaissDockersetup: moderatecomplexity 3/5

Quivr is a Python framework that helps developers add AI-powered question-and-answer capabilities to their own applications without building the underlying plumbing from scratch. The problem it solves is that setting up a "RAG" system — Retrieval-Augmented Generation, where an AI answers questions based on your own documents rather than only its training data — normally requires assembling many moving parts: a document parser, a vector database for storing searchable chunks of text, an LLM (large language model) integration, a conversation history manager, and a retrieval pipeline. Quivr bundles all of that into one opinionated, pre-configured package.

How it works: you install the quivr-core Python package, point it at your files (PDFs, text files, Markdown, etc.), and it creates a "brain" — an indexed, searchable representation of that content. When a user asks a question, Quivr retrieves the most relevant chunks from the index, passes them to an LLM (such as GPT-4, Groq, or a local Ollama model), and returns a grounded answer. The retrieval pipeline is configurable via YAML files: you can swap in different vector stores (PGVector or Faiss), plug in a reranker (a model that re-sorts retrieved chunks by relevance), and tune parameters like conversation history depth and temperature.

You would reach for Quivr when building an internal knowledge-base chatbot, a customer support bot that answers from your documentation, or any product feature where users should be able to ask questions about specific files. Rather than writing the indexing, chunking, and retrieval logic yourself, you get a working pipeline in roughly five lines of code and configure it from there.

The tech stack is Python 3.10+, with optional integrations for OpenAI, Anthropic, Mistral, and Ollama APIs, and vector storage via PGVector (PostgreSQL extension) or Faiss (Facebook's similarity search library). Docker is supported for deployment.

Where it fits