Use a model profile when you need more detailed control over model behavior than auto-discovery provides.
This workflow lets you configure model-specific settings such as:
context_windowtokenizerUse it when you want PrivateGPT to know the exact limits and capabilities of each model, or when you need to override what your provider exposes automatically.
This workflow is supported from the source-based Local with uv install:
settings-model.yaml from your running LLM server.PGPT_PROFILES=model.Generate a profile from the models exposed by your OpenAI-compatible server:
This creates settings-model.yaml with all discovered models as a starting point for detailed configuration.
Start from Local with uv first. Local tokenizer support requires private-gpt[tokenizer-local] or private-gpt[core].
Open settings-model.yaml and adjust the fields you care about. This is where you explicitly define how PrivateGPT should treat each model. Example:
Once settings-model.yaml exists, start PrivateGPT with PGPT_PROFILES=model.
PGPT_PROFILES=model tells PrivateGPT to load settings-model.yaml on top of the base config. Profile files follow the naming convention settings-{name}.yaml.