Configuratiestructuur
Let op: Velden die niet specifiek als vereist worden genoemd, zijn optioneel.
version
- vereist
| Key | Type | Description | Example |
|---|---|---|---|
| version | String | Specificeert de versie van het configuratiebestand. | version: 1.3.13 |
cache
| Key | Type | Description | Example |
|---|---|---|---|
| cache | Boolean | Schakelt caching in of uit. Stel in op `true` om caching in te schakelen (standaard). | cache: true |
skillSync
| Key | Type | Description | Example |
|---|---|---|---|
| skillSync | Object | Configureert externe Skill-mirroring. In v1.3.13 wordt GitHub Skill Sync ondersteund. |
zie: Skill Sync Object Structure
messageFilter
| Key | Type | Description | Example |
|---|---|---|---|
| messageFilter | Object | Configureert server-side berichtfilters. In v1.3.13 kan `messageFilter.pii` tekst die eruitziet als inloggegevens weigeren voordat modelaanroepen en persistentie plaatsvinden. |
zie: Message Filter Object Structure
fileStrategy
- Opties: "local" | "firebase" | "s3" | "azure_blob" | "cloudfront"
| Key | Type | Description | Example |
|---|---|---|---|
| fileStrategy | String | Bepaalt waar door gebruikers geüploade/gegenereerde bestanden worden opgeslagen. Standaard ingesteld op `"local"` indien weggelaten. | fileStrategy: "firebase" |
- Opmerkingen:
"cloudfront"slaat bestanden op in S3 en retourneert CloudFront-URL's voor stabiele media-aflevering, ondertekende cookies en ondertekende downloads."firebase"serveert bestanden via Firebase Storage en Firebase Hosting edge-locaties.- S3 serveert bestanden via presigned URLs (tijdelijke ondertekende tokens) die verlopen. Zodra deze zijn verlopen, zal elke afbeelding of avatar die naar die URL verwijst, als defect worden weergegeven in de UI. Dit maakt S3 ongeschikt als primaire strategie voor visuele assets. Zie de gerelateerde discussie voor details.
- Voor de beste prestaties van afbeeldingen en avatars, gebruik
"cloudfront"of"firebase", of configureerfileStrategiesomavatarenimagenaar een strategie met CDN-ondersteuning te routeren. - Raadpleeg de File Storage & CDN documentation voor details over de installatie.
fileStrategies
Biedt gedetailleerde controle over bestandsopslagstrategieën voor verschillende bestandstypen.
- Beschikbare strategieën: "local" | "firebase" | "s3" | "azure_blob" | "cloudfront"
| Key | Type | Description | Example |
|---|---|---|---|
| fileStrategies | Object | Configureert verschillende opslagstrategieën voor verschillende bestandstypen. Flexibeler dan de enkele fileStrategy optie. |
Sub-keys:
| Key | Type | Description | Example |
|---|---|---|---|
| default | String | Fallback-opslagstrategie wanneer een specifiek type niet is gedefinieerd. Standaard ingesteld op "local". | |
| avatar | String | Opslagstrategie voor gebruikers- en agent-avatar-afbeeldingen. Het wordt aanbevolen om een CDN-ondersteunde strategie (`"cloudfront"` of `"firebase"`) te gebruiken voor de beste prestaties. | |
| image | String | Opslagstrategie voor afbeeldingen die in chats zijn geüpload. Het wordt aanbevolen om een strategie met CDN-ondersteuning (`"cloudfront"` of `"firebase"`) te gebruiken voor de beste prestaties. | |
| document | String | Opslagstrategie voor documentuploads (PDF's, tekstbestanden, enz.). | |
| skills | String | Opslagstrategie voor bestanden gebundeld met Skills. |
- Opmerkingen:
- Deze instelling heeft voorrang op de enkele
fileStrategyoptie - Als een specifiek bestandstype niet is geconfigureerd, valt het terug op
default, daarna opfileStrategyen uiteindelijk op"local" - Afbeeldingen en avatars hebben persistente, stabiele URL's nodig om correct te worden weergegeven in de UI. S3 presigned URL's verlopen (AWS-limiet: 7 dagen voor IAM-gebruikers, uren voor STS/op rollen gebaseerde credentials), wat leidt tot kapotte afbeeldingen in de model selector en chat UI. Zie de gerelateerde discussie voor de volledige context. Gebruik
"cloudfront"of"firebase"vooravatarenimageom dit te voorkomen. - S3 en Azure Blob Storage zijn zeer geschikt voor
documentopslag, waarbij kortstondige presigned download-URL's passend zijn. - Raadpleeg de File Storage & CDN documentation voor installatiedetails voor elke opslagprovider.
- Deze instelling heeft voorrang op de enkele
Voorbeelden:
# Use a single strategy for all file types
fileStrategies:
default: 's3'# Route images and avatars to CDN, keep documents in object storage
fileStrategies:
avatar: 'cloudfront' # CDN delivery for avatars
image: 'cloudfront' # CDN delivery for generated/uploaded images
document: 's3' # Object storage for documents# Only configure specific types, others use default
fileStrategies:
default: 'local'
avatar: 'firebase' # Only avatars use Firebase CDN, everything else is localcloudfront
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| cloudfront | Object | Configureert CloudFront-levering voor bestanden die zijn opgeslagen in S3. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| domain | String | CloudFront distributiedomein of CNAME. Vereist wanneer een bestandsstrategie `"cloudfront"` gebruikt. | domain: "https://cdn.example.com" |
| distributionId | String | CloudFront distributie-ID. Vereist wanneer `invalidateOnDelete` true is. | distributionId: "E1234ABCD" |
| invalidateOnDelete | Boolean | Maakt een CloudFront-invalidation aan voor verwijderde bestanden. Standaard: false. | invalidateOnDelete: false |
| imageSigning | String | Beheert de toegang tot inline afbeeldingen/avatars. Opties: `"none"` of `"cookies"`. `"url"` is gereserveerd en niet geïmplementeerd voor afbeeldingen. | imageSigning: "cookies" |
| cookieDomain | String | Gedeeld bovenliggend cookiedomein vereist voor ondertekende cookies. Moet beginnen met een punt. | cookieDomain: ".example.com" |
| cookieExpiry | Number | Levensduur van ondertekende cookie in seconden. Standaard: 1800, maximum: 604800. | cookieExpiry: 1800 |
| urlExpiry | Number | Levensduur van de ondertekende CloudFront-download-URL in seconden. Standaard: 3600. | urlExpiry: 3600 |
| storageRegion | String | Optioneel regio-label dat wordt gebruikt in gegenereerde object-keys wanneer regio-paden zijn ingeschakeld. | storageRegion: "us-east-2" |
| includeRegionInPath | Boolean | Bevat de opslagregio in nieuw gegenereerde object-keys. Standaard: false. | includeRegionInPath: false |
| requireSignedAccess | Boolean | Weigert opstarten wanneer signed-cookie CloudFront-toegang niet kan worden geïnitialiseerd. Standaard: false. | requireSignedAccess: true |
zie: CloudFront Object Structure en CloudFront with S3
filteredTools
| Key | Type | Description | Example |
|---|---|---|---|
| filteredTools | Array of Strings | Filtert specifieke tools uit zowel Plugins als OpenAI Assistants endpoint. | filteredTools: ["scholarai", "calculator"] |
- Opmerkingen:
- Als zowel
includedToolsalsfilteredToolszijn opgegeven, wordt alleenincludedToolsherkend. - Is van invloed op zowel de
gptPluginsals deassistantsendpoint - Je kunt de namen van de tools om te filteren vinden in
api/app/clients/tools/manifest.json- Gebruik de
pluginKeywaarde
- Gebruik de
- Ook alle bestanden die onder de map ".well-known" staan:
api/app/clients/tools/.well-known- Gebruik de
name_for_modelwaarde
- Gebruik de
- Als zowel
includedTools
| Key | Type | Description | Example |
|---|---|---|---|
| includedTools | Array of Strings | Bevat specifieke tools van zowel Plugins als OpenAI Assistants endpoints. | includedTools: ["calculator"] |
- Opmerkingen:
- Als zowel
includedToolsalsfilteredToolszijn opgegeven, wordt alleenincludedToolsherkend. - Is van invloed op zowel de
gptPluginsals deassistantsendpoint - Je kunt de namen van de tools om te filteren vinden in
api/app/clients/tools/manifest.json- Gebruik de
pluginKeywaarde
- Gebruik de
- Ook alle bestanden die onder de map ".well-known" staan:
api/app/clients/tools/.well-known- Gebruik de
name_for_modelwaarde
- Gebruik de
- Als zowel
secureImageLinks
| Key | Type | Description | Example |
|---|---|---|---|
| secureImageLinks | Boolean | Of de toegang tot afbeeldingslinks die lokaal door de app worden gehost al dan niet moet worden beveiligd. Standaard: false. | secureImageLinks: true |
imageOutputType
- Let op: Hoofdlettergevoelig. Het Google endpoint ondersteunt alleen "jpeg" en "png" output-types.
- Opties: "png" | "webp" | "jpeg"
| Key | Type | Description | Example |
|---|---|---|---|
| imageOutputType | String | Het type afbeeldingsuitvoer voor afbeeldingsreacties. Standaard ingesteld op "png" indien weggelaten. | imageOutputType: "webp" |
ocr
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| ocr | Object | Configureert Optical Character Recognition (OCR)-instellingen voor het extraheren van tekst uit afbeeldingen. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| apiKey | String | De API-sleutel voor de OCR-service. | |
| baseURL | String | De basis-URL voor de OCR-service API. | |
| strategy | String | De te gebruiken OCR-strategie. Opties zijn "mistral_ocr", "azure_mistral_ocr", "vertexai_mistral_ocr", "document_parser" of "custom_ocr". | |
| mistralModel | String | Het Mistral-model dat moet worden gebruikt voor OCR-verwerking. |
zie: OCR Config Object Structure
webSearch
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| webSearch | Object | Configureert de functionaliteit voor webzoeken, inclusief zoekproviders, content-scrapers en resultaat-rerankers. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| serperApiKey | String | Omgevingsvariabele voor de Serper API-sleutel. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI in te voeren. | |
| searxngInstanceUrl | String | Omgevingsvariabele voor de URL van de SearXNG-instantie. Indien niet ingesteld in .env, worden gebruikers via de UI gevraagd deze op te geven. | |
| searxngApiKey | String | Omgevingsvariabele voor de SearXNG API-sleutel. Indien niet ingesteld in .env, zullen gebruikers via de UI worden gevraagd deze op te geven. | |
| tavilyApiKey | String | Omgevingsvariabele voor de Tavily API-sleutel. Wordt gebruikt voor zowel zoeken als scrapen. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI op te geven. | |
| tavilySearchUrl | String | Omgevingsvariabele voor een aangepaste Tavily Search API URL. Optioneel; standaard ingesteld op de door Tavily gehoste zoekfunctie indien niet opgegeven. | |
| tavilyExtractUrl | String | Omgevingsvariabele voor een aangepaste Tavily Extract API URL. Optioneel; standaard ingesteld op de door Tavily gehoste extractie indien niet opgegeven. | |
| firecrawlApiKey | String | Omgevingsvariabele voor de Firecrawl API-sleutel. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI op te geven. | |
| firecrawlApiUrl | String | Omgevingsvariabele voor de Firecrawl API URL. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI op te geven. | |
| jinaApiKey | String | Omgevingsvariabele voor de Jina API-sleutel. Indien niet ingesteld in .env, zullen gebruikers via de UI worden gevraagd deze op te geven. | |
| cohereApiKey | String | Omgevingsvariabele voor de Cohere API-sleutel. Indien niet ingesteld in .env, wordt gebruikers gevraagd deze via de UI in te voeren. | |
| searchProvider | String | Specificeert welke zoekprovider moet worden gebruikt. Opties: "serper", "searxng", "tavily". | |
| scraperProvider | String | Specificeert welke scraper-service moet worden gebruikt. Opties: "firecrawl", "serper", "tavily". | |
| firecrawlVersion | String | Specificeert de Firecrawl API-versie (v0 of v1). | |
| rerankerType | String | Specificeert welke reranker-service moet worden gebruikt. Stel in op "none" om reranking over te slaan. Opties: "jina", "cohere", "none". | |
| scraperTimeout | Integer | Time-out in milliseconden voor scraper-verzoeken. Moet een niet-negatief geheel getal zijn. | |
| safeSearch | Number | Filteringsniveau voor veilig zoeken. 0 = UIT, 1 = GEMATIGD (standaard), 2 = STRIKT. |
zie: Web Search Object Structure
fileConfig
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| fileConfig | Object | Configureert instellingen voor bestandsafhandeling voor de applicatie, inclusief groottelimieten en beperkingen voor MIME-types. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| endpoints | Record/Object | Specificeert configuraties voor bestandsafhandeling voor individuele endpoints, wat aanpassing per endpoint mogelijk maakt. | |
| serverFileSizeLimit | Number | De maximale bestandsgrootte (in MB) die de server accepteert. Is wereldwijd van toepassing op alle endpoints, tenzij overschreven door endpoint-specifieke instellingen. | |
| avatarSizeLimit | Number | Maximale grootte (in MB) voor gebruikersavatar-afbeeldingen. | |
| clientImageResize | Object | Configureert client-side afbeeldingsverkleining om bestandsuploads te optimaliseren en uploadfouten door grote afbeeldingsformaten te voorkomen. | |
| ocr | Object | Instellingen voor Optical Character Recognition (OCR) bestandsverwerking. | |
| text | Object | Instellingen voor het direct parsen van tekstbestanden. | |
| stt | Object | Instellingen voor Speech-to-Text (STT) audiobestandverwerking. | |
| fileTokenLimit | Number | Maximaal aantal tokens uit tekstbestanden om op te nemen in prompts vóór afkapping. | fileTokenLimit: 100000 |
clientImageResize
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| clientImageResize | Object | Configureert client-side afbeeldingsverkleining om bestandsuploads te optimaliseren en uploadfouten door grote afbeeldingsformaten te voorkomen. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| enabled | Boolean | Schakelt de functionaliteit voor het aanpassen van de grootte van afbeeldingen aan de clientzijde in of uit. Standaard: false. | enabled: true |
| maxWidth | Number | Maximale breedte in pixels voor aangepaste afbeeldingen. Afbeeldingen die breder zijn dan dit worden aangepast. Standaard: 1920. | maxWidth: 1024 |
| maxHeight | Number | Maximale hoogte in pixels voor aangepaste afbeeldingen. Afbeeldingen die hoger zijn dan dit worden aangepast. Standaard: 1080. | maxHeight: 768 |
| quality | Number | JPEG-compressiekwaliteit (0.1 tot 1.0). Hogere waarden betekenen een betere kwaliteit maar grotere bestandsgroottes. Standaard: 0.8. | quality: 0.9 |
| compressFormat | String | Uitvoerformaat voor gecomprimeerde afbeeldingen. Opties: "jpeg", "webp". Standaard: "jpeg". | compressFormat: "webp" |
Beschrijving:
De clientImageResize configuratie maakt automatische beeldvergroting aan de clientzijde mogelijk vóór het uploaden. Deze functie helpt bij:
- Voorkom uploadfouten doordat grote afbeeldingsbestanden de serverlimieten overschrijden
- Verminder bandbreedtegebruik door afbeeldingen te comprimeren vóór verzending
- Verbeter de uploadprestaties met kleinere bestandsgroottes
- Behoud de beeldkwaliteit terwijl de bestandsgrootte wordt geoptimaliseerd
Wanneer ingeschakeld, worden afbeeldingen die de opgegeven maxWidth of maxHeight dimensies overschrijden, automatisch aan de clientzijde aangepast voordat ze naar de server worden geüpload. De schaling behoudt de oorspronkelijke beeldverhouding en zorgt er tegelijkertijd voor dat de afbeelding binnen de opgegeven grenzen past.
Voorbeeld:
fileConfig:
clientImageResize:
enabled: true
maxWidth: 1920
maxHeight: 1080
quality: 0.8
compressFormat: 'jpeg'Opmerkingen:
- Alleen van toepassing op afbeeldingsbestanden (JPEG, PNG, WebP, enz.)
- Het formaat wordt automatisch aangepast wanneer afbeeldingen de opgegeven afmetingen overschrijden
- De oorspronkelijke beeldverhouding blijft behouden tijdens het wijzigen van het formaat
- Deze functie werkt met alle ondersteunde image upload endpoints
- De kwaliteitsinstelling is alleen van toepassing op JPEG- en WebP-formaten
- Het instellen van de kwaliteit op een te lage waarde (< 0,5) kan leiden tot merkbare beeldverslechtering.
zie: File Config Object Structure
rateLimits
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| rateLimits | Object | Definieert rate limiting-beleid om misbruik te voorkomen door het aantal verzoeken te beperken. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| fileUploads | Object | Configureert snelheidslimieten specifiek voor bestandsupload-bewerkingen. | |
| conversationsImport | Object | Configureert rate limits specifiek voor importbewerkingen van gesprekken. | |
| stt | Object | Configureert snelheidslimieten specifiek voor speech-to-text (stt) verzoeken | |
| tts | Object | Configureert snelheidslimieten specifiek voor text-to-speech (tts) verzoeken |
fileUploads Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| ipMax | Number | Maximaal aantal toegestane uploads per IP-adres per venster. | |
| ipWindowInMinutes | Number | Tijdvenster in minuten voor de IP-gebaseerde uploadlimiet. | |
| userMax | Number | Maximaal aantal uploads toegestaan per gebruiker per venster. | |
| userWindowInMinutes | Number | Tijdvenster in minuten voor de uploadlimiet per gebruiker. |
conversationsImport Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| ipMax | Number | Maximaal aantal imports toegestaan per IP-adres per venster. | |
| ipWindowInMinutes | Number | Tijdvenster in minuten voor de IP-gebaseerde importlimiet. | |
| userMax | Number | Maximaal aantal imports per gebruiker per venster. | |
| userWindowInMinutes | Number | Tijdvenster in minuten voor de gebruikersgebaseerde importlimiet. |
tts Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| ipMax | Number | Maximaal aantal toegestane verzoeken per IP-adres per tijdvenster. | |
| ipWindowInMinutes | Number | Tijdvenster in minuten voor de IP-gebaseerde verzoeklimiet. | |
| userMax | Number | Maximaal aantal verzoeken per gebruiker per venster. | |
| userWindowInMinutes | Number | Tijdvenster in minuten voor de limiet van gebruikersgebaseerde verzoeken. |
stt Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| ipMax | Number | Maximaal aantal toegestane verzoeken per IP-adres per tijdvenster. | |
| ipWindowInMinutes | Number | Tijdvenster in minuten voor de IP-gebaseerde verzoeklimiet. | |
| userMax | Number | Maximaal aantal verzoeken per gebruiker per venster. | |
| userWindowInMinutes | Number | Tijdvenster in minuten voor de limiet van gebruikersgebaseerde verzoeken. |
- Voorbeeld:
rateLimits:
fileUploads:
ipMax: 100
ipWindowInMinutes: 60
userMax: 50
userWindowInMinutes: 60
conversationsImport:
ipMax: 100
ipWindowInMinutes: 60
userMax: 50
userWindowInMinutes: 60
stt:
ipMax: 100
ipWindowInMinutes: 1
userMax: 50
userWindowInMinutes: 1
tts:
ipMax: 100
ipWindowInMinutes: 1
userMax: 50
userWindowInMinutes: 1registration
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| registration | Object | Configureert registratie-gerelateerde instellingen voor de applicatie. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| socialLogins | Configuraties voor sociaal inloggen. | ||
| allowedDomains | Specificeert toegestane domeinen voor registratie. |
zie ook:
memory
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| memory | Object | Configureert gespreksgeheugen en personalisatiefuncties voor de applicatie. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| disabled | Boolean | Schakelt de geheugenfunctionaliteit uit wanneer ingesteld op true. | |
| validKeys | Array of Strings | Specificeert welke sleutels geldig zijn voor geheugenopslag. | |
| tokenLimit | Number | Stelt het maximale aantal tokens in voor geheugenopslag en verwerking. | |
| charLimit | Number | Stelt het maximale aantal tekens in voor geheugenopslag. Standaard: 10000. | |
| maxInputTokens | Number | Limiteert het aantal tokens van recente chats die naar de automatische geheugenagent worden verzonden vóór extractie. Standaard: 12000. | |
| personalize | Boolean | Schakelt personalisatiefuncties in of uit. | |
| messageWindowSize | Number | Specificeert het aantal recente berichten dat moet worden opgenomen in de geheugencontext. | |
| agent | Object | Union | Configureert de agent die verantwoordelijk is voor geheugenverwerking. |
summarization
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| summarization | Object | Configureert het samenvatten van gesprekken en het snoeien van context. Vervangt de `summarize` en `summaryModel` velden per endpoint. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| provider | String | LLM-provider voor samenvattingsaanroepen. Standaard ingesteld op de eigen provider van de agent. | |
| model | String | Model voor samenvattingsaanroepen. Standaard ingesteld op het eigen model van de agent. | |
| parameters | Object | Aanvullende LLM-parameters voor samenvattingsverzoeken. | |
| prompt | String | Aangepaste prompt voor initiële samenvatting. | |
| updatePrompt | String | Aangepaste prompt voor her-compactering wanneer er al een samenvatting bestaat. | |
| trigger | Object | Definieert wanneer samenvatting wordt geactiveerd (op basis van tokenverhouding, resterende tokens of berichtaantal). | |
| maxSummaryTokens | Number | Maximaal aantal output-tokens voor de respons van het samenvattingsmodel. | |
| reserveRatio | Number | Fractie van het tokenbudget gereserveerd als reserve (0–1). Standaard: 0.05. | |
| contextPruning | Object | Configureert op positie gebaseerde degradatie van toolresultaten voor oudere berichten. |
zie: Summarization Object Structure
actions
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| actions | Object | Configureert actie-gerelateerde instellingen, gebruikt door Agents en Assistants |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| allowedDomains | Array of Strings | Strikte whitelist van domeinen voor acties. Indien ingesteld, zijn alleen de vermelde domeinen bereikbaar. | |
| allowedAddresses | Array of Strings | SSRF-vrijstellingslijst (alleen voor privé-IP-bereik). Staat specifieke privé host:poort-services toe zonder publieke bestemmingen te beperken wanneer `allowedDomains` niet is geconfigureerd. |
zie ook:
interface
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| interface | Object | Configureert gebruikersinterface-elementen binnen de applicatie, waardoor aanpassing van de zichtbaarheid en het gedrag van verschillende componenten mogelijk is. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| privacyPolicy | Object | Bevat instellingen met betrekking tot de verstrekte link naar het privacybeleid. | |
| termsOfService | Object | Bevat instellingen met betrekking tot de verstrekte link naar de servicevoorwaarden. | |
| modelSelect | Boolean | Bepaalt of de functie voor modelselectie beschikbaar is. | |
| parameters | Boolean | Schakelt de zichtbaarheid van parameterconfiguratie-opties in, ook wel bekend als gespreksinstellingen. | |
| presets | Boolean | Schakelt het menu met voorinstellingen in of uit | |
| prompts | Boolean or Object | Schakelt alle prompt-gerelateerde functies in of uit voor alle gebruikers | |
| bookmarks | Boolean | Schakelt alle functies met betrekking tot bladwijzers in of uit voor alle gebruikers | |
| memories | Boolean | Schakelt de memories-functie in of uit voor alle gebruikers | |
| multiConvo | Boolean | Schakelt alle "multi convo", oftewel multiple response streaming, gerelateerde functies in of uit voor alle gebruikers | |
| agents | Boolean or Object | Schakelt alle agents-functies in of uit voor alle gebruikers | |
| temporaryChat | Boolean | Schakelt de tijdelijke chatfunctie in of uit | |
| temporaryChatRetention | Number | Configureert de bewaartermijn voor tijdelijke chats in uren. Min: 1, Max: 8760. Standaard: 720 (30 dagen). | |
| autoSubmitFromUrl | Boolean | Bepaalt of `/c/new?prompt=…&submit=true` automatisch wordt verzonden naar het model. Wanneer `false`, wordt de prompt vooraf ingevuld maar niet verzonden. | |
| mcpServers | Object | Bevat instellingen met betrekking tot MCP-serverselectie en toegangscontrole. | |
| customWelcome | String | Aangepast welkomstbericht dat wordt weergegeven in de chatinterface. | |
| runCode | Boolean | Schakelt de "Run Code"-knop voor Markdown-codeblokken in of uit | |
| webSearch | Boolean | Schakelt de zoekknop op het web in of uit in de chatinterface | |
| fileSearch | Boolean | Schakelt de knop voor bestandszoekopdrachten in of uit in de chatinterface | |
| fileCitations | Boolean | Schakelt wereldwijd bestandscitaties in of uit voor alle gebruikers | |
| peoplePicker | Object | Configureert welke principal-types beschikbaar zijn als besturingselementen in de interface voor het kiezen van personen | |
| marketplace | Object | Schakelt toegang tot de Agent Marketplace in of uit |
zie: Interface Object Structure
modelSpecs
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| modelSpecs | Object | Configureert Model Specs, wat gedetailleerde instellingen en aanpassingen van AI-modellen en hun gedrag binnen de applicatie mogelijk maakt. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| enforce | Boolean | Bepaalt of de Model Specs strikt voorrang moeten krijgen op andere configuratie-instellingen. | |
| prioritize | Boolean | Geeft aan of Model Specs voorrang moeten krijgen op de standaardconfiguratie wanneer beide van toepassing zijn. | |
| list | Array of Objects | Bevat een lijst met individuele Model Specs die verschillende configuraties en gedragingen specificeren. |
zie: Model Specs Object Structure
endpoints
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| endpoints | Object | Definieert aangepaste API-endpoints voor de applicatie. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| custom | Array of Objects | Elk object in de array vertegenwoordigt een unieke endpoint configuratie. | |
| azureOpenAI | Object | Azure OpenAI endpoint-specifieke configuratie | |
| assistants | Object | Configuratie specifiek voor het Assistants endpoint. | |
| azureAssistants | Object | Azure Assistants endpoint-specifieke configuratie. | |
| agents | Object | Agents endpoint-specifieke configuratie. | |
| all | Object | Algemene endpoint-instellingen die van toepassing zijn op alle endpoints. Zie Shared Endpoint Settings. | |
| allowedAddresses | Array of Strings | SSRF-vrijstellingslijst (alleen private IP-ruimte). Staat toe dat door de gebruiker opgegeven baseURLs verwijzen naar specifieke private host:port-services (bijv. self-hosted Ollama) zonder SSRF-beveiliging voor al het overige uit te schakelen. |
Let op: Endpoints ondersteunen Shared Endpoint Settings zoals
streamRate,headers,titleModel,titleMethod,titlePrompt,titlePromptTemplate,titleEndpointenmaxToolResultChars. Deze kunnen individueel per endpoint worden geconfigureerd of globaal met behulp van deallsleutel.headersworden samengevoegd, waarbij waarden op endpoint-niveau voorrang krijgen bij sleutelconflicten. Deallsleutel accepteert geenbaseURL.
Let op:
endpoints.allowedAddressesis van toepassing op door de gebruiker opgegevenbaseURL-waarden (wanneer een beheerder een aangepast endpoint configureert metapiKey: 'user_provided'enbaseURL: 'user_provided'). Elke door de gebruiker opgegeven baseURL wordt op het moment van het verzoek gevalideerd tegen de SSRF-blokkering; de hier vermelde items zijn hiervan vrijgesteld. ZiemcpSettings.allowedAddressesvoor de semantiek van het veld — dezelfde regels zijn van toepassing (alleen privé IP-bereik, poort vereist, geen URL's/paden/CIDR/kale hosts/openbare IP-literals).
mcpSettings
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| mcpSettings | Object | Definieert globale instellingen voor Model Context Protocol (MCP) servers |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| allowedDomains | Array of Strings | Strikte whitelist van domeinen voor MCP serververbindingen. Indien ingesteld, zijn alleen de vermelde items bereikbaar. | |
| allowedAddresses | Array of Strings | SSRF-vrijstellingslijst (alleen privé-IP-bereik). Staat specifieke privé host:poort-services toe zonder `allowedDomains` in de strikte whitelist-modus te zetten. |
- Opmerkingen:
- Dit is een beveiligingsfunctie ter bescherming tegen misbruik van interne adressen via MCP servers
- Standaard beperkt LibreChat MCP-servers in het verbinden met interne, lokale of privénetwerkadressen.
- MCP-servers die lokale IP-adressen of domeinen gebruiken, kunnen ofwel worden toegevoegd aan de strikte
allowedDomainswhitelist (die dan de enige bereikbare set wordt), of — om publieke bestemmingen bereikbaar te houden — worden vrijgesteld als exacte host:port-services viaallowedAddresses. - Zoals bij alle yaml-configuratiewijzigingen, is een herstart van LibreChat vereist om deze van kracht te laten worden.
- Ondersteunt domeinen, wildcard-subdomeinen (
*.example.com), Docker-domeinen en IP-adressen
Voorbeeld:
mcpSettings:
# Strict whitelist mode:
# allowedDomains:
# - "example.com" # Specific domain
# - "*.example.com" # All subdomains
# - "http://mcp-server:3000" # Internal service, explicitly whitelisted
# Default SSRF mode with private service exemptions:
allowedAddresses:
- 'host.docker.internal:8080' # Permit one private host on one port
- '10.0.0.5:8000' # Permit one private IP on one portzie: MCP Settings Object Structure
mcpServers
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| mcpServers | Object | Definieert de configuratie voor Model Context Protocol (MCP) servers, waardoor dynamische integratie van MCP servers binnen de applicatie mogelijk is. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| <serverName> | Object | Elke sleutel onder `mcpServers` vertegenwoordigt een individuele MCP serverconfiguratie, geïdentificeerd door een unieke naam. |
- Opmerkingen:
- Initialisatie vindt plaats bij het opstarten en de app moet opnieuw worden opgestart om wijzigingen door te voeren.
- De
<serverName>is een unieke identificatie voor elke MCP serverconfiguratie. - Elke MCP server kan worden geconfigureerd met behulp van een van de vier verbindingstypen:
stdiowebsocketssestreamable-http
- Het
typeveld specificeert het verbindingstype naar de MCP server. - Als
typewordt weggelaten, wordt de standaardwaarde bepaald op basis van de aanwezigheid en het formaat vanurlofcommand:- Als
urlis opgegeven en begint methttpofhttps, dan is de standaardwaarde voortypesse. - Als
urlis opgegeven en begint metwsofwss, dan is de standaardwaarde voortypewebsocket. - Als
commandis opgegeven, is de standaardwaarde voortypestdio.
- Als
- Aanvullende configuratieopties zijn onder andere:
timeout: Time-out in milliseconden voor MCP server-verzoeken. Bepaalt hoe lang er gewacht moet worden op een antwoord voor tool-verzoeken.initTimeout: Timeout in milliseconden voor MCP server-initialisatie. Bepaalt hoe lang er gewacht moet worden tot de server is geïnitialiseerd.serverInstructions: Bepaalt of serverinstructies worden opgenomen in de context van de agent. Kantrue(gebruik door de server verstrekte),false(uitgeschakeld) of een aangepaste string (overschrijft door de server verstrekte) zijn.customUserVars: (Optioneel) Definieert aangepaste variabelen (bijv. API-sleutels, URL's) die individuele gebruikers kunnen instellen voor een MCP-server. Deze waarden per gebruiker, die via de UI worden verstrekt, kunnen vervolgens worden verwezen in deheadersofenvconfiguraties van de server met behulp van de{{VARIABLE_NAME}}syntaxis. Dit maakt authenticatie of aanpassing per gebruiker voor MCP-tools mogelijk.
- zie: MCP Servers Object Structure
Voorbeeld:
mcpServers:
everything:
# type: sse # type can optionally be omitted
url: http://localhost:3001/sse
timeout: 30000
initTimeout: 10000
serverInstructions: true # Use server-provided instructions
puppeteer:
type: stdio
command: npx
args:
- -y
- '@modelcontextprotocol/server-puppeteer'
timeout: 30000
initTimeout: 10000
serverInstructions: 'Do not access any local files or local/internal IP addresses'
filesystem:
# type: stdio
command: npx
args:
- -y
- '@modelcontextprotocol/server-filesystem'
- /home/user/LibreChat/
iconPath: /home/user/LibreChat/client/public/assets/logo.svg
mcp-obsidian:
command: npx
args:
- -y
- 'mcp-obsidian'
- /path/to/obsidian/vault
streamable-http-example:
type: streamable-http
url: https://example.com/mcp
headers:
Authorization: 'Bearer ${API_TOKEN}'
timeout: 30000
per-user-crendentials-example:
type: sse
url: 'https//some.mcp/sse'
headers:
X-Custom-Auth-Token: '{{USER_API_KEY}}' # Placeholder for the user-provided API key, defined in `customUserVars` below.
customUserVars:
USER_API_KEY:
title: 'Service API Key'
description: "Your personal API key for this service. You can get it <a href='https://example.com/api-keys' target='_blank'>here</a>."
serverInstructions: truezie: MCP Servers Object Structure
speech
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| speech | Object | Configureert Text-to-Speech (TTS) en Speech-to-Text (STT) providers voor de applicatie. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| tts | Object | Configuraties voor Text-to-Speech-providers (OpenAI, Azure OpenAI, ElevenLabs, LocalAI). | |
| stt | Object | Configuraties voor Speech-to-Text providers (OpenAI, Azure OpenAI). | |
| speechTab | Object | Standaard UI-instellingen voor spraakfuncties. |
turnstile
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| turnstile | Object | Configureert Cloudflare Turnstile voor bot-bescherming op registratie- en inlogformulieren. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| siteKey | String | Uw Cloudflare Turnstile site key (vereist). | |
| options | Object | Aanvullende Turnstile widget-opties (optioneel). |
zie: Turnstile Object Structure
transactions
Sleutel:
| Key | Type | Description | Example |
|---|---|---|---|
| transactions | Object | Beheert functies voor transactielogboekregistratie en zichtbaarheid. |
Subkeys:
| Key | Type | Description | Example |
|---|---|---|---|
| enabled | Boolean | Schakelt transactielogboekregistratie in of uit. Standaard: true. |
zie: Transactions Object Structure
Aanvullende links
- Summarization Object Structure
- AWS Bedrock Objectstructuur
- Custom Endpoint Object Structure
- Azure OpenAI Endpoint Object Structure
- Structuur van het Assistants Endpoint-object
- Agents
- OCR Config Object Structure
- Speech Object Structure
- Turnstile Object Structure
- Structuur van het Transactions-object
- Balance Object Structure
- Structuur van het Web Search-object
- Memory Object Structure
Hoe is deze gids?