
AI Voice Agent
https://github.com/anil-matcha/ai-voice-agent- Category
- AI Agents
- Rank
- No. 1464Tools index
- Pricing
- Open Source
- Type
- AGENT
- Builder
- Anil-matcha
- GitHub
- 40 stars
- Date
About
Self-hosted AI voice agent — build conversational voice assistants you fully control.
What it does
A Python microphone application turns spoken input into text with Deepgram, sends conversation context to OpenAI, converts each reply back to speech through Deepgram, and plays the result locally.
Why it's ranked here
This is a compact, readable voice-loop example with practical microphone muting and conversation memory. Its narrow architecture also limits it: the repository demonstrates local audio interaction, while the claimed sales and support use cases need integrations, persistence, and operational safeguards that are not included.
What's good
The complete speech loop fits in one application, making each stage easy to trace. It streams interim transcripts, waits for finalized speech, preserves prior user and assistant messages, splits replies by sentence for synthesis, and mutes input during playback to reduce feedback.
Tradeoffs
The agent persona, restaurant menu, model choice, English transcription settings, and speech voice are fixed in code. Conversation state lives only in memory. Responses and synthesized audio are processed synchronously, with broad exception handling and console output. No tests, phone network integration, authentication, storage, or deployment configuration are shown.
How to use it well
Use it as a learning prototype or starting point for a local, English-language voice assistant when you can supply Deepgram and OpenAI credentials. Replace the restaurant prompt and fixed provider settings for experiments. It does not cover production call routing, durable customer records, monitoring, or service deployment.
Technical notes+
app.py uses Deepgram SDK live transcription with nova-2, 16 kHz mono linear PCM, interim results, voice activity events, and endpointing. Final speech triggers client.chat.completions.create with gpt-3.5-turbo; replies are segmented by punctuation, posted to Deepgram's Aura Helios English TTS endpoint, appended into output_audio.mp3, and played through pygame while the microphone is muted. conversation_memory stores turns in process, although the user entry records only the latest transcript sentence rather than the assembled utterance. requirements.txt pins all dependencies, .env.example declares both required provider keys, and README.md documents direct execution with Python 3.11.
Observed
- License
- MIT License
- Primary language
- Python
- Runtime
- Python 3.11
- Installation
- Dependencies are pinned in requirements.txt and installed with pip.
- Interface
- Interactive local microphone application started from the command line.
- External services
- Requires Deepgram and OpenAI API keys.
- Repository structure
- The supplied tree shows one application source file and no test directory.
Read from README.md, requirements.txt, app.py, LICENSE, .env.example.
What it can do
Create conversational voice assistants
Configuration settings and voice parameters → Functional AI voice agent
Process spoken user commands
Audio speech input → Parsed voice commands and intents
Generate spoken responses
Text responses from AI processing → Synthesized speech audio
Host voice agents locally
Voice agent configuration and server setup → Self-hosted voice assistant service
Customize voice assistant behavior
Behavioral parameters and response templates → Personalized voice agent responses
Handle multi-turn conversations
Conversation context and user dialogue → Contextual voice responses
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.