# ── Groq API ────────────────────────────────────────────────────────── GROQ_API_KEY=your-groq-api-key # ── Supabase (Database & Auth) ───────────────────────────────────────── SUPABASE_URL=https://your-project-ref.supabase.co # Anon key for frontend authentication (client-side) SUPABASE_ANON_KEY=your-anon-key # Service role key for backend (bypasses RLS) SUPABASE_SERVICE_ROLE_KEY=your-service-role-key # ── Qdrant Cloud (Vector Database) ─────────────────────────────────── QDRANT_URL=https://your-cluster-url.cloud.qdrant.io QDRANT_API_KEY=your-qdrant-api-key # Embedding model for multilingual support (Hindi/English/Hinglish) # Default: intfloat/multilingual-e5-small (384 dims, 100+ languages) EMBEDDING_MODEL=intfloat/multilingual-e5-small # ── Mode switch ─────────────────────────────────────────────────────── # "api" = Groq Whisper + Groq LLM (recommended, no GPU needed) # "local" = WhisperX local models (future, needs CUDA Docker image) MODEL_MODE=api # ── Groq Whisper (api mode) ─────────────────────────────────────────── GROQ_WHISPER_MODEL=whisper-large-v3 # or whisper-large-v3-turbo # ── Backend ────────────────────────────────────────────────────────── BACKEND_URL=http://localhost:8000 # ── Audio Storage ──────────────────────────────────────────────────── # Storage backend: "s3" (Supabase Storage is NOT used) # All audio files are stored in S3, presigned URLs stored in database AUDIO_STORAGE_BACKEND=s3 # AWS S3 Configuration (REQUIRED - audio files stored here) AWS_ACCESS_KEY_ID=your-aws-access-key-id AWS_SECRET_ACCESS_KEY=your-aws-secret-access-key AWS_REGION=us-east-1 AWS_S3_BUCKET=voicetrace-audio # ── VAPI (Voice Agent) ─────────────────────────────────────────────── # VAPI API key for custom voice agent integration VAPI_API_KEY=your-vapi-api-key # VAPI assistant ID for vendor interactions (custom agent, not phone-based) VAPI_ASSISTANT_ID=your-vapi-assistant-id # VAPI webhook URL for receiving callbacks VAPI_WEBHOOK_URL=https://your-domain.com/vapi/webhook