Quick start
Get a full voice loop running on your machine: speak → STT → LLM → TTS → hear the reply.
Prerequisites
- Python 3.10+
- Deepgram API key (STT + Aura TTS)
- Ollama (local LLM, recommended) or Google Gemini API key
- Headphones (reduces echo from speaker → mic)
1. Clone and install
git clone https://github.com/suryaraj05/voxgraph.git
cd voxgraph
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # macOS/Linux
pip install -r requirements.txt2. Configure environment
cp .env.example .envEdit .env. Minimum for local demo:
DEEPGRAM_API_KEY=your_key
LLM_PROVIDER=ollama
OLLAMA_MODEL=qwen2.5:7b
TTS_PROVIDER=deepgram
DEMO_MODE=1
STT_ONLY=03. Start Ollama (if using local LLM)
ollama serve
ollama pull qwen2.5:7b4. Run the server
python -u -m uvicorn voxgraph:app --host 0.0.0.0 --port 80015. Run the live mic client
In a second terminal, from the voxgraph folder:
python scripts/live_mic_client.py --demo --url ws://127.0.0.1:8001/audioSpeak naturally. The server detects end-of-utterance, calls the LLM, and streams TTS back. Type q + Enter to quit.
Verify it works
- Server log:
Deepgram connection opened - Client log:
Live playback on (24000 Hz PCM)... - After you speak:
· Thinking…→· Speaking…on the client
Next steps
- Architecture — how the pipeline fits together
- Configuration — all environment variables
- Customize — add your own logic