A Streamlit-powered application that converts documentation into interactive voice responses using OpenAI's Text-to-Speech capabilities. This tool helps users get quick, voice-enabled answers to their documentation-related questions.
- 🔍 Documentation crawling and indexing
- 🔊 Voice-powered responses using OpenAI's TTS
- 💡 Intelligent context-aware answers
- 📚 Vector-based document search
- 🎯 Multiple voice options
- 📥 Downloadable audio responses
- Python 3.8+
- OpenAI API key
- Qdrant instance and API key
- Firecrawl API key
- Clone the repository:
git clone https://github.com/ucalyptus/customer_support_voice_agent.git
cd customer_support_voice_agent
- Install the required dependencies:
pip install -r requirements.txt
- Create a
.env
file in the project root with your API keys:
QDRANT_URL=your_qdrant_url
QDRANT_API_KEY=your_qdrant_api_key
FIRECRAWL_API_KEY=your_firecrawl_api_key
OPENAI_API_KEY=your_openai_api_key
- Start the Streamlit application:
streamlit run script.py
-
Configure the system using the sidebar:
- Enter your API keys
- Specify the documentation URL
- Select your preferred voice
-
Ask questions about the documentation and receive both text and voice responses
The following voices are available:
- alloy
- ash
- ballad
- coral
- echo
- fable
- onyx
- nova
- sage
- shimmer
- verse
- Vector Database: Uses Qdrant for efficient document storage and retrieval
- Document Crawler: Utilizes Firecrawl for documentation scraping
- Embedding Model: FastEmbed for text embedding generation
- Processing Agents: GPT-4 powered agents for context processing and TTS optimization
- Voice Synthesis: OpenAI's TTS model for natural-sounding responses
Contributions are welcome! Please feel free to submit a Pull Request.
For support, please open an issue in the GitHub repository or contact the maintainers.