# For OpenAI OPENAI_API_KEY=YOUR_OPENAI_API_KEY # Example - replace with real key DSPY_LM_PROVIDER=openai # Example - replace with provider key DSPY_LM_MODEL=gpt-5.1-codex # Example - replace with model # For Anthropic ANTHROPIC_API_KEY=sk-anth... # Example - replace with real key DSPY_LM_PROVIDER=anthropic # Example - replace with real provider key DSPY_LM_MODEL=claude-4.5-haiku # Example - replace with real model # For Ollama (local AI) DSPY_LM_PROVIDER=ollama # Example - replace with real provider DSPY_LM_MODEL=qwen3 # Example - replace with real model # OLLAMA_BASE_URL=http://localhost:11434/v1 # For OpenRouter (access multiple models) OPENROUTER_API_KEY=sk-or-... # Example - replace with real key DSPY_LM_PROVIDER=openrouter # Example - replace with real provider DSPY_LM_MODEL=x-ai/grok-4.1-fast:free # Example - replace with real model # Vector Database (Qdrant) & Embeddings QDRANT_URL=http://localhost:6333 # Example - replace with real URL # EMBEDDING_PROVIDER=openai # or ollama, openrouter # EMBEDDING_BASE_URL=https://api.openai.com/v1 # Required for OpenRouter/Ollama EMBEDDING_API_KEY=sk-... # Defaults to OPENAI_API_KEY if not set # EMBEDDING_MODEL=text-embedding-3-small # Langfuse (Observability) LANGFUSE_PUBLIC_KEY=pk-lf-... # Example - configure for observability LANGFUSE_SECRET_KEY=sk-lf-... # Example - configure for observability # LANGFUSE_HOST=https://cloud.langfuse.com # Example - replace with real URL # LANGFUSE_BASE_URL=https://cloud.langfuse.com # Example - replace with real URL # Logging & UI # COMPOUNDING_LOG_PATH=compounding.log # COMPOUNDING_LOG_LEVEL=DEBUG # COMPOUNDING_QUIET=false # System & Context # COMPOUNDING_ENV=.env # CONTEXT_WINDOW_LIMIT=128000 # CONTEXT_OUTPUT_RESERVE=4096 # DSPY_MAX_TOKENS=16384 # Internet Search (Optional) # SEARCH_PROVIDER=duckduckgo # Example - no API key needed, but set if you want a different provider