# HuggingFace HF_TOKEN=your_huggingface_token_here # OpenAI (optional) OPENAI_API_KEY=your_openai_key_here # Anthropic (optional) ANTHROPIC_API_KEY=your_anthropic_key_here # Model names (optional - sensible defaults set in config.py) # ANTHROPIC_MODEL=claude-sonnet-4-5-20250929 # OPENAI_MODEL=gpt-5.1 # ============================================ # Audio Processing Configuration (TTS) # ============================================ # Kokoro TTS Model Configuration TTS_MODEL=hexgrad/Kokoro-82M TTS_VOICE=af_heart TTS_SPEED=1.0 TTS_GPU=T4 TTS_TIMEOUT=60 # Available TTS Voices: # American English Female: af_heart, af_bella, af_nicole, af_aoede, af_kore, af_sarah, af_nova, af_sky, af_alloy, af_jessica, af_river # American English Male: am_michael, am_fenrir, am_puck, am_echo, am_eric, am_liam, am_onyx, am_santa, am_adam # Available GPU Types (Modal): # T4 - Cheapest, good for testing (default) # A10 - Good balance of cost/performance # A100 - Fastest, most expensive # L4 - NVIDIA L4 GPU # L40S - NVIDIA L40S GPU # Note: GPU type is set at function definition time. Changes require app restart. # ============================================ # Audio Processing Configuration (STT) # ============================================ # Speech-to-Text API Configuration STT_API_URL=nvidia/canary-1b-v2 STT_SOURCE_LANG=English STT_TARGET_LANG=English # Available STT Languages: # English, Bulgarian, Croatian, Czech, Danish, Dutch, Estonian, Finnish, French, German, Greek, Hungarian, Italian, Latvian, Lithuanian, Maltese, Polish, Portuguese, Romanian, Slovak, Slovenian, Spanish, Swedish, Russian, Ukrainian # ============================================ # Audio Feature Flags # ============================================ ENABLE_AUDIO_INPUT=true ENABLE_AUDIO_OUTPUT=true # ============================================ # Image OCR Configuration # ============================================ OCR_API_URL=prithivMLmods/Multimodal-OCR3 ENABLE_IMAGE_INPUT=true # ============== EMBEDDINGS ============== # OpenAI Embedding Model (used if LLM_PROVIDER is openai and performing RAG/Embeddings) OPENAI_EMBEDDING_MODEL=text-embedding-3-small # Local Embedding Model (used for local/offline embeddings) LOCAL_EMBEDDING_MODEL=sentence-transformers/all-MiniLM-L6-v2 # ============== HUGGINGFACE (FREE TIER) ============== # HuggingFace Token - enables Llama 3.1 (best quality free model) # Get yours at: https://huggingface.co/settings/tokens # # WITHOUT HF_TOKEN: Falls back to ungated models (zephyr-7b-beta) # WITH HF_TOKEN: Uses Llama 3.1 8B Instruct (requires accepting license) # # For HuggingFace Spaces deployment: # Set this as a "Secret" in Space Settings -> Variables and secrets # Users/judges don't need their own token - the Space secret is used # HF_TOKEN=hf_your-token-here # ============== AGENT CONFIGURATION ============== MAX_ITERATIONS=10 SEARCH_TIMEOUT=30 LOG_LEVEL=INFO # ============================================ # Modal Configuration (Required for TTS) # ============================================ # Modal credentials are required for TTS (Text-to-Speech) functionality # Get your credentials from: https://modal.com/ MODAL_TOKEN_ID=your_modal_token_id_here MODAL_TOKEN_SECRET=your_modal_token_secret_here # ============== EXTERNAL SERVICES ============== # PubMed (optional - higher rate limits) NCBI_API_KEY=your-ncbi-key-here # Vector Database (optional - for LlamaIndex RAG) CHROMA_DB_PATH=./chroma_db # Neo4j Knowledge Graph NEO4J_URI=bolt://localhost:7687 NEO4J_USER=neo4j NEO4J_PASSWORD=your_neo4j_password_here NEO4J_DATABASE=your_database_name