Add LLM connection settings and enhance error handling: Introduce new parameters for LLM connection timeout, retry attempts, and stall timeout in .env.example and settings.py. Update agent.py to log errors and session closures, and implement a watchdog for LLM stall detection in MetricsCollector.
Implement speech-to-text provider selection and configuration: Update environment settings to support both Moonshine and NVIDIA STT providers, refactor STT initialization logic in the agent, and enhance footer generation in the Streamlit app for improved user experience. Update dependencies and settings management for better flexibility in model selection.
Refactor Streamlit app layout and enhance UI styling: Update page configuration for a wider layout, improve header visibility, and apply new CSS styles for better user experience. Adjust audio visualization in JavaScript for improved responsiveness and aesthetics.
implement LLM provider selection and configuration: Update environment settings to support HuggingFace alongside NVIDIA, refactor LLM initialization logic in the agent, and enhance settings management for improved flexibility in model selection.
implement main entry point for Open Voice Agent with CLI support for running FastAPI, Streamlit, or both. Enhance Streamlit UI for audio processing and integrate WebSocket communication. Update dependencies in pyproject.toml and remove requirements.txt.