AI Backends
django-nocturne uses LangChain as a unified interface to multiple LLM providers.
Set AI_BACKEND in your NOCTURNE settings dict to switch providers.
Anthropic (Claude)
pip install "django-nocturne[anthropic]"
NOCTURNE = {
"AI_BACKEND": "anthropic",
"ANTHROPIC_API_KEY": env("ANTHROPIC_API_KEY"),
"ANTHROPIC_MODEL": "claude-sonnet-4-6",
}
OpenAI (GPT / Azure / Groq)
pip install "django-nocturne[openai]"
NOCTURNE = {
"AI_BACKEND": "openai",
"OPENAI_API_KEY": env("OPENAI_API_KEY"),
"OPENAI_MODEL": "gpt-4o",
# Override for Azure, Groq, LM Studio, vLLM:
# "OPENAI_BASE_URL": "https://api.groq.com/openai/v1",
}
Ollama (Local)
No API key required. Start Ollama and pull a model first:
pip install "django-nocturne[ollama]"
ollama pull llama3.2
NOCTURNE = {
"AI_BACKEND": "ollama",
"OLLAMA_BASE_URL": "http://localhost:11434",
"OLLAMA_MODEL": "llama3.2",
}
Google Gemini
pip install "django-nocturne[gemini]"
NOCTURNE = {
"AI_BACKEND": "gemini",
"GEMINI_API_KEY": env("GEMINI_API_KEY"),
"GEMINI_MODEL": "gemini-1.5-flash",
}
Disabling AI
Set AI_DIAGNOSIS_ENABLED = False to skip all LLM calls:
NOCTURNE = {
"AI_DIAGNOSIS_ENABLED": False,
}
Testing Your Backend
python manage.py test_ai_diagnosis
python manage.py test_ai_diagnosis --backend anthropic