Config.PROVIDER was never actually consulted by the LLM call sites -
rag_engine.py, insight_extractor.py, and knowledge_lifecycle.py all
hardcoded Ollama directly. This wires up a real "groq" provider:
- config.py: GROQ_API_KEY/GROQ_MODEL settings, is_groq_provider(),
provider-aware get_active_llm_model() and validate_provider_config()
- rag_engine.py: uses llama_index's Groq LLM when provider is groq
- insight_extractor.py / knowledge_lifecycle.py: branch to Groq's
OpenAI-compatible chat completions API instead of Ollama's /api/generate
- requirements.txt: add llama-index-llms-groq
Embeddings are untouched and stay on Ollama - Groq has no embeddings API.
Default model is openai/gpt-oss-120b.