GodSpeed / data_sources /setup_guide.md
AdithyaVardan's picture
Add text/markdown parser for file agent; add sample knowledge base documents
2f22e68

Godspeed Setup Guide

Prerequisites

  • Python 3.11+
  • Docker (for Qdrant)
  • Redis (brew install redis)
  • Supabase account
  • Google AI Studio API key (Gemini)

Quick Start

1. Clone and install

git clone https://github.com/samyuktha2004/Godspeed.git
cd GodSpeed
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python -m spacy download en_core_web_sm

2. Start infrastructure

# Redis (macOS)
brew services start redis

# Qdrant
docker run -d --name qdrant -p 6333:6333 qdrant/qdrant

3. Configure environment

Copy .env.example to .env and fill in:

GOOGLE_API_KEY=your-gemini-key
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_KEY=your-service-role-key
JIRA_BASE_URL=https://your-org.atlassian.net
JIRA_EMAIL=you@your-org.com
JIRA_API_TOKEN=your-atlassian-token
CONFLUENCE_BASE_URL=https://your-org.atlassian.net
CONFLUENCE_EMAIL=you@your-org.com
CONFLUENCE_TOKEN=your-atlassian-token
CONFLUENCE_SPACES=YOUR_SPACE_KEY

4. Run Supabase schema

Open your Supabase project → SQL Editor → paste and run supabase/schema.sql.

Also run this to add the qdrant_id column:

ALTER TABLE chunks ADD COLUMN IF NOT EXISTS qdrant_id text;

5. Start the server

uvicorn main:app --port 8000

6. Start Celery worker (optional, for background jobs)

celery -A ingestion.jobs.celery_app worker --loglevel=info
celery -A ingestion.jobs.celery_app beat --loglevel=info

Testing the System

Ingest Confluence

curl -X POST http://localhost:8000/confluence/sync/YOUR_SPACE_KEY

Query the agent

curl -X POST http://localhost:8000/agent/query \
  -H "Content-Type: application/json" \
  -d '{"query": "What is our deployment process?", "team_id": "default", "session_id": "s1"}'

Troubleshooting

Server won't start

  • Check all env vars are set in .env
  • Make sure Redis and Qdrant are running
  • Run python -c "import main" to check for import errors

Agent returns low confidence

  • The knowledge base may not have enough relevant content
  • Run a Confluence sync to ingest more pages
  • Check Supabase chunks table has rows

Qdrant connection refused

  • Start Docker and run: docker start qdrant
  • Or: docker run -d --name qdrant -p 6333:6333 qdrant/qdrant

Supabase RLS error

  • Use the service_role key, not the anon key

First query is slow (30-60s)

  • BGE-M3 and reranker models download on first use (~1.5GB total)
  • Subsequent queries are fast (models cached in memory)