This document is the shared provider contract used by live-model examples in this repository.
Required (normal openai mode):
export OPENAI_API_KEY=...Optional:
export PROVIDER=openai
export MODEL=openai/gpt-4o-mini
export PREPROCESSOR_MODEL=openai/gpt-4o-mini
export OPENAI_BASE_URL=...
export PREPROCESSOR_PROMPT_PROFILE=defaultProvider mode contract (PROVIDER) is strict:
openaiollamaopenai_compatible
Unknown values hard fail with a validation error.
Resolution precedence:
OPENAI_BASE_URLoverridePROVIDER- default (
openai)
Operational behavior by mode:
openai- default
base_url:https://api.openai.com/v1 - requires
OPENAI_API_KEY
- default
ollama- default
base_url:http://localhost:11434 - API key optional
- default
openai_compatible- requires
OPENAI_BASE_URLwhen explicitly selected withPROVIDER - API key requirement depends on endpoint
- requires
Startup emits one concise config line showing resolved mode, base_url,
model, and resolution source (default, PROVIDER, or
OPENAI_BASE_URL override).
MODEL and PREPROCESSOR_MODEL use LiteLLM format: <provider>/<model>.
PREPROCESSOR_MODEL is optional and defaults to MODEL.
For heuristic-first usage, keep PREPROCESSOR_PROMPT_PROFILE=default.
Use llama only for LLM-only preprocessing with Llama-family models.