Settings reference#
Every environment variable the app reads. Settings are loaded by pydantic-settings at startup; missing required variables cause the app to fail fast.
Tip: rather than editing this table by hand, you can
uv run python -c "from qfa.settings import AppSettings; import json; print(AppSettings.model_json_schema())"to dump the live schema.
LLM (LLM_*)#
Variable |
Required |
Default |
Notes |
|---|---|---|---|
|
no |
|
Routed by LiteLLM based on the prefix ( |
|
yes |
— |
Provider API key. Stored as |
|
only some providers |
|
E.g. |
|
only some providers |
|
API version where the provider expects one. |
|
no |
|
Per-LLM-call timeout. |
|
no |
|
Token budget guard. Estimated as |
|
no |
|
Conversion ratio used by the token budget guard. |
Orchestrator (ORCHESTRATOR_*)#
Variable |
Required |
Default |
Notes |
|---|---|---|---|
|
no |
|
JSON list. Metadata keys allowed to reach the LLM. |
Auth (AUTH_*)#
Variable |
Required |
Default |
Notes |
|---|---|---|---|
|
yes |
— |
JSON array of |
Database (DB_*)#
Variable |
Required |
Default |
Notes |
|---|---|---|---|
|
no |
|
Master switch for usage tracking. When |
|
only if |
|
Full asyncpg URL. Used when supplied; otherwise built from the next four. |
|
only if |
|
|
|
no |
|
|
|
only if |
|
|
|
only if |
|
For |
|
only when |
— |
Stored as |
|
no |
|
|
|
no |
|
AAD scope for the access token (Entra mode only). |
Logging (LOG_*)#
Variable |
Required |
Default |
Notes |
|---|---|---|---|
|
no |
|
Level for the |
|
no |
|
Level for third-party libraries. |