OpenViSTAI · Agents · Blockchain · Crypto
Menu
RAG & Knowledge Systems

Example RAG Application

Example RAG Application is an open-source Python reference project that runs a retrieval-augmented generation pipeline through a REST API or interactive CLI. Its sample ingestion pipeline prepares Wikipedia text, creates embeddings, and indexes them in Qdrant; LiteLLM supports configured model providers, and Langfuse can capture observability data.

Independent OpenViST project profile, based on linked sources.

Example RAG Application — OpenViST project profile in RAG & Knowledge Systems.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use it when you want a code-level starting point for a locally run RAG application and can configure its infrastructure, data index, and model credentials. It is also useful for comparing CLI and REST API interaction patterns in one reference project.

Who it is for

  • Developers learning how to assemble a RAG application without requiring an LLM framework.
  • Teams prototyping document-grounded question answering behind an API or CLI.
  • Builders adapting a sample ingestion and Qdrant indexing pipeline to their own data.

Documented uses

  • Ingest and index text chunks and embeddings in Qdrant.
  • Interact with a RAG pipeline through an interactive CLI.
  • Expose the pipeline as a REST API and inspect its API documentation.
  • Configure a model through LiteLLM and optionally log proxy calls to Langfuse.
Before you choose

Requirements & limits

The project is publicly available as an open-source GitHub repository under the MIT license. Running it locally requires UV and Docker.

  • It is a source-code project to configure and run locally, not a hosted RAG service.
  • The application uses FastAPI for REST and Typer for CLI access.
  • The example dataset and ingestion pipeline are replaceable, but Qdrant payloads must contain a content field.
  • The CLI starts with an echoing mock LLM; using a real model requires provider configuration and environment variables.
  • Langfuse runs locally in the documented setup; its keys can be added to .env to log LiteLLM proxy calls.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Set up the example RAG project and create its search index

Prepare the local infrastructure and build the example Qdrant index from the included Wikipedia ingestion pipeline.

Before you start

  • UV and Docker
  • A copy of .env.example named .env, with the API keys and other environment variables needed for the desired configuration
  • The just task runner, installable with UV or available through the project dependency sync

Steps

  1. Install just with the command below, or install it with the development dependencies using the command below.

    Documented command
    uv tool install just
    Documented command
    uv sync --dev
  2. Copy .env.example to .env and enter the relevant environment variables.

  3. Run just scaffold to start the infrastructure containers with Docker Compose.

  4. Run just create-collection to execute the ingestion pipeline and index the chunks and embeddings in Qdrant.

Expected outcome

The local infrastructure is started and the sample Wikipedia data is indexed in Qdrant for the RAG application.

Guide limitations

  • The sample pipeline is basic and intended as a replicable example; it can be replaced with another pipeline.
  • Qdrant payloads used by the application must include a content field.
Source-based practical guide

Start a CLI chat or REST API

Use the configured RAG application through its documented command-line or API entry point.

Before you start

  • UV and Docker
  • The project environment and infrastructure set up, including relevant .env variables
  • An indexed Qdrant collection for document-grounded retrieval; model credentials and provider configuration to use a real LLM

Steps

  1. Start the interactive CLI with the command below, or start the API server with the command below.

    Documented command
    uv run cli
    Documented command
    uv run api
  2. For a real model in the CLI, pass its configured model name with the command below.

    Documented command
    uv run cli -m 
  3. When using the API, open http://localhost:8000/docs to view its API documentation.

Expected outcome

The CLI starts a chat session, or the REST API runs locally on port 8000 with its documentation at `/docs`.

Guide limitations

  • The CLI uses a mock LLM by default, which echoes the input.
  • Real model use requires the appropriate environment variables and a model configured through LiteLLM.
COMPARE OPTIONS

Compare options for Retrieval-augmented applications

These projects document a common task and share a project role. This is a source-based comparison, not an execution benchmark or a guarantee of interchangeability.

ProjectDocumented purposePlatformAccess and requirements
Example RAG ApplicationIngest and index text chunks and embeddings in Qdrant.CLI, Docker, ServerThe project is publicly available as an open-source GitHub repository under the MIT license. Running it locally requires UV and Docker.
Rag Powered AI Assistant Transforming Data Retrieval And Analysis Across The Web And PdfsRetrieve relevant passages from web and PDF content to answer a question.Web
LangChain in Supabase Edge FunctionsInitialize and start a Supabase project locally.Cloud, Server
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
12 October 2026
Original website title
ajac-zero/example-rag-app · Official homepage title · retained in its source language