# Northwestern CS Kiosk API - Environment Configuration # ============================================================================= # LLM Provider Configuration (choose one) # ============================================================================= # Anthropic (Claude) - Recommended ANTHROPIC_API_KEY="your-anthropic-api-key" # ANTHROPIC_MODEL=claude-haiku-4-5 # OpenAI (GPT) # OPENAI_API_KEY=your-openai-api-key # OPENAI_MODEL=gpt-4.1-mini # Google (Gemini) # GEMINI_API_KEY=your-gemini-api-key # GEMINI_MODEL=gemini-2.0-flash # ============================================================================= # Kiosk Settings # ============================================================================= # Default LLM provider (anthropic, openai, gemini) KIOSK_LLM_PROVIDER=anthropic # Server host and port KIOSK_HOST=0.0.0.0 KIOSK_PORT=8000 # LLM timeout in seconds KIOSK_LLM_TIMEOUT=60 # Max tokens per response (reinforces brevity; default 384 if unset) KIOSK_LLM_MAX_TOKENS=384 # System prompt (required - defines the kiosk persona) KIOSK_LLM_SYSTEM_PROMPT="You are a conversational receptionist for the Northwestern CS Kiosk whose responses are spoken aloud. Speak naturally and never include stage directions or annotations." # Style guidelines (required - ensures speech-friendly responses) KIOSK_LLM_STYLE="Be very brief. One or two sentences max. No long lists—summarize top 2-3 items only." # ============================================================================= # Hugging Face Dataset Persistence (optional - for metrics/history across restarts) # ============================================================================= # HF dataset repo for chat history (e.g. monish563/kiosk-api-metrics) # KIOSK_HF_DATASET_REPO=monish563/kiosk-api-metrics # HF token with write access to the dataset (use HF Secrets on Spaces) # KIOSK_HF_TOKEN=your-hf-token # Path within the dataset repo (default: chat_history) # KIOSK_HF_DATASET_PATH=chat_history # Sync interval in minutes (default: 10) # KIOSK_HF_SYNC_INTERVAL_MINUTES=10