Files
privateGPT/fern/docs/pages/configuration/settings.mdx
Alfonso Lozana 78a1e8b9f6 feat: control docs parser (#2273)
* fix: ensure that the publisher is ready to publish new messages

* fix: dockerfile

* fix: clones

(cherry picked from commit bc0a77e050)

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* fix: add ExtractionUnsuccessfulError in docling reader

* feat: add vision pipeline

* feat: add fall back with vision

* feat: add settings of enable_vision_fallback

* doc: update doc

* chore: code refactor

* feat: remove pypdfium2 dependency

* fix: add settings and change only doc vision behaviour

* feat: change extraction_type_override to skip_strategy_inference (disable strategy on vision transform parser)

* chore: make check

---------

Co-authored-by: Javier Martinez <javiermartinezalvarez98@gmail.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-24 08:22:17 +02:00

65 lines
1.9 KiB
Plaintext

---
title: "Settings & Profiles"
description: "Settings files, profiles, and environment variable expansion."
---
PrivateGPT is configured through YAML settings files. The base file is `settings.yaml` at the project root. Additional **profiles** can be layered on top to override or extend the base config.
---
## Profiles
A profile is a file named `settings-{name}.yaml`. Activate one or more profiles at startup by setting `PGPT_PROFILES`:
```bash
PGPT_PROFILES=model private-gpt serve
```
Multiple profiles are merged in order — later profiles override earlier ones:
```bash
PGPT_PROFILES=model,local private-gpt serve
```
This loads `settings.yaml`, then merges `settings-model.yaml`, then `settings-local.yaml` on top.
The typical use case is a `settings-model.yaml` generated by `make auto-discover-models` that defines your LLM and embedding models without modifying the base config.
---
## Environment variable expansion
Any value in a settings file can reference an environment variable:
```yaml
server:
port: ${PORT:8080}
```
The syntax is `${VARIABLE_NAME:default_value}`. If the variable is not set, the default is used. Variables with no default will raise an error at startup if unset.
---
## Settings folder
By default, PrivateGPT looks for settings files in the project root. Override this with:
```bash
PGPT_SETTINGS_FOLDER=/path/to/settings private-gpt serve
```
---
## Data settings
### `PGPT_ENABLE_VISION_FALLBACK`
Controls whether PDF ingestion retries extraction with the **vision reader** (VLM-based) when the primary reader (e.g. Docling) fails to extract meaningful text — typically due to unmapped glyphs from CID fonts without a ToUnicode map.
```yaml
data:
enable_vision_fallback: ${PGPT_ENABLE_VISION_FALLBACK:false}
```
Requires at least one multimodal model configured. See [Model Configuration](./advanced.mdx) for setup instructions.