⚙️ Hey all, we just released the 0.3.1 which brings a significant change to nao_config.yaml !
The llm section of the config file is now more complete and taken into account in your instance. You can now define each provider and each model you want to use per provider 👇
llm:
# Model used by database ai_summary templates and background tasks
annotation_model: gpt-5.5
providers:
- provider: openai
api_key: {{ env('OPENAI_API_KEY') }}
models:
- id: gpt-5.5
default: true
- id: gpt-5.6-sol
name: GPT 5.6
costs:
input_no_cache: 0.4
input_cache_read: 0.1
input_cache_write: 0
output: 1.6
- provider: anthropic
api_key: {{ env('ANTHROPIC_API_KEY') }}
models:
- id: claude-sonnet-4-5
settings:
temperature: 0
Then in the UI/settings these values will be taken into account. But if you have overridden a provider from the UI the UI takes precedence for this provider. So it's a way to manage LLM configuration as code an never change the UI for it.
There is also a nao migrate command to help you migration the llm config section from the previous syntax to the new one.
We also added a test section in which you can define the models you want to be used we running nao test
test:
models:
- openai:gpt-4.1
- anthropic:claude-sonnet-4-5