Skip to main content

Quick Start

Follow this sequence to launch RAG Loom locally in minutes. It assumes you have completed the Prerequisites & Environment Setup.

Option A — Guided Script

The utilscripts/quick_start.sh helper orchestrates dependency installation, service start-up, and verification.

# Ensure the script is executable
chmod +x utilscripts/quick_start.sh

# Install dependencies, prepare the environment, and run smoke checks
./utilscripts/quick_start.sh setup

# Start the FastAPI service with sensible defaults
./utilscripts/quick_start.sh start

Common subcommands:

CommandDescription
./utilscripts/quick_start.sh statusReport service status and essential diagnostics
./utilscripts/quick_start.sh logsTail application logs
./utilscripts/quick_start.sh testRun the Python test suite
./utilscripts/quick_start.sh cleanStop services and remove temporary assets

Option B — Manual Steps

  1. Ensure your Python environment is active (see Prerequisites).
  2. Install dependencies:
    pip install -r requirements.txt
  3. Copy and configure environment variables:
    cp docs/static/files/env.example .env
    # update .env with provider credentials and vector store settings
  4. Start the API in development mode:
    uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload

Verifying the Installation

Once the server is running, validate the stack.

# Health probe
curl http://localhost:8000/health

# Upload a sample document (replace path with your file)
curl -X POST "http://localhost:8000/api/v1/ingest" \
-H "accept: application/json" \
-H "Content-Type: multipart/form-data" \
-F "file=@sample.pdf"

# Perform a semantic search
curl -X POST "http://localhost:8000/api/v1/search" \
-H "Content-Type: application/json" \
-d '{
"query": "Summarise the architecture",
"top_k": 3,
"similarity_threshold": 0.65
}'

Expect a 200 response from the health check, successful ingestion confirmation, and JSON search results containing relevant passages.

Running the Test Suite

Smoke tests ensure the deployment is wired correctly:

pytest test_service.py          # API smoke tests
pytest # Full suite

For continuous integration, add pytest --maxfail=1 --disable-warnings to fail early on regressions.

Useful Endpoints

EndpointPurpose
GET /healthService availability, vector store, and provider diagnostics
GET /docsInteractive OpenAPI schema
POST /api/v1/ingestUpload content for indexing
POST /api/v1/searchSemantic search across indexed documents
POST /api/v1/generateRetrieve + generate answers using the configured LLM

Continue to Project Structure for an annotated map of the codebase, or jump ahead to the REST API reference when you are ready to integrate clients.