Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Configuratie van samenvattingen

Overzicht

De summarization configuratie biedt gecentraliseerde controle over het samenvatten van gesprekken en het snoeien van context. Dit vervangt de summarize en summaryModel velden per endpoint die voorheen beschikbaar waren voor aangepaste en Azure OpenAI endpoints.

Wanneer een gesprek het contextvenster van het model overschrijdt, comprimeert het samenvattingssysteem automatisch oudere berichten tot een beknopte checkpoint-samenvatting. Hierdoor kunnen gesprekken voor onbepaalde tijd worden voortgezet zonder belangrijke context te verliezen. Het systeem bevat ook context pruning, dat stapsgewijs grote tool-resultaten in oudere berichten vermindert om token-ruimte terug te winnen voordat samenvatting nodig is.

Na een samenvattingsronde gebruikt de contextgebruiksmeter de opgeslagen samenvattingsbasislijn plus de rondes na de samenvatting, in plaats van de verwijderde geschiedenis van vóór de samenvatting opnieuw te tellen. Cumulatieve gebruiks- en kostentotalen bevatten nog steeds de volledige uitgaven van de vertakking.

Voorbeeld

summarization:
  provider: 'openAI'
  model: 'gpt-4o-mini'
  maxSummaryTokens: 4096
  reserveRatio: 0.05
  trigger:
    type: 'token_ratio'
    value: 0.8
  contextPruning:
    enabled: true
    keepLastAssistants: 3
    softTrimRatio: 0.3
    hardClearRatio: 0.5
    minPrunableToolChars: 50000
    softTrim:
      maxChars: 4000
      headChars: 1500
      tailChars: 1500
    hardClear:
      enabled: true
      placeholder: '[Old tool result content cleared]'

provider

KeyTypeDescriptionExample
providerStringDe LLM-provider die moet worden gebruikt voor samenvattingsaanroepen. Indien weggelaten, wordt de eigen provider van de agent gebruikt.provider: "openAI"

Standaard: Eigen provider van de Agent

model

KeyTypeDescriptionExample
modelStringHet model dat moet worden gebruikt voor samenvattingsaanroepen. Indien weggelaten, wordt het eigen model van de agent gebruikt.model: "gpt-4o-mini"

Standaard: Eigen model van de Agent

parameters

KeyTypeDescriptionExample
parametersObjectAanvullende LLM-parameters voor samenvattingsverzoeken (bijv. temperature, top_p).parameters: { temperature: 0.3 }

prompt

KeyTypeDescriptionExample
promptStringAangepaste prompt voor initiële samenvatting. Vervangt de ingebouwde checkpoint-prompt.

Standaard: Een gestructureerde checkpoint-prompt die secties genereert voor Doel, Beperkingen & Voorkeuren, Voortgang, Belangrijke Beslissingen, Volgende Stappen en Kritieke Context.

updatePrompt

KeyTypeDescriptionExample
updatePromptStringAangepaste prompt voor her-compactering wanneer er al een eerdere samenvatting bestaat. Wordt gebruikt wanneer de samenvatting moet worden bijgewerkt met nieuwe gespreksinhoud.

Standaard: Een ingebouwde prompt die nieuwe berichten samenvoegt met het bestaande controlepunt, oudere details comprimeert en recente acties meer detail geeft.

maxSummaryTokens

KeyTypeDescriptionExample
maxSummaryTokensNumberMaximaal aantal output-tokens voor de reactie van het samenvattingsmodel.maxSummaryTokens: 4096

reserveRatio

KeyTypeDescriptionExample
reserveRatioNumberFractie van het tokenbudget gereserveerd als reserve (0–1). Voorkomt dat de context tot de absolute capaciteit wordt gevuld.reserveRatio: 0.05

Standaard: 0.05 (5% marge)

trigger

KeyTypeDescriptionExample
triggerObjectDefinieert wanneer samenvatting wordt geactiveerd. Indien weggelaten, wordt samenvatting geactiveerd zodra het opschonen van berichten berichten verwijdert.

trigger Sub-keys

KeyTypeDescriptionExample
typeStringDe trigger-strategie. Opties: `"token_ratio"`, `"remaining_tokens"`, `"messages_to_refine"`.type: "token_ratio"
valueNumberDe drempelwaarde voor het gekozen type trigger. Voor `token_ratio`: 0–1 (inclusief). Voor `remaining_tokens` en `messages_to_refine`: positief geheel getal.value: 0.8

Trigger-typen

TypeValueFires When
token_ratio0.0–1.0Het aandeel gebruikte context-tokens bereikt of overschrijdt de waarde
remaining_tokensPositief geheel getalHet aantal resterende context-tokens daalt tot of onder de waarde
messages_to_refinePositief geheel getalHet aantal berichten dat in aanmerking komt voor samenvatting bereikt of overschrijdt de waarde
(not set)—Wanneer pruning berichten verwijdert (standaardgedrag)

Voorbeeld:

summarization:
  trigger:
    type: 'remaining_tokens'
    value: 8000

contextPruning

KeyTypeDescriptionExample
contextPruningObjectConfigureert op positie gebaseerde degradatie van toolresultaten. Grote toolresultaten in oudere berichten worden stapsgewijs ingekort of verwijderd om tokenruimte vrij te maken.

Context pruning is een opt-in functie die onafhankelijk van samenvatting werkt. Het richt zich op grote tool call resultaten in oudere berichten en past twee progressieve fasen toe:

  1. Soft trim — Kort toolresultaten in om alleen het begin- en eindgedeelte te behouden, met een weglatingsteken ertussen
  2. Hard clear — Vervangt het volledige tool-resultaat door een korte tijdelijke aanduiding

Beide fasen zijn gebaseerd op positie: berichten die zich dichter bij het begin van het gesprek bevinden (ouder), worden als eerste verwijderd.

contextPruning sub-keys

KeyTypeDescriptionExample
enabledBooleanSchakelt positiegebaseerde degradatie van toolresultaten in.enabled: true
keepLastAssistantsNumberAantal recente assistent-beurten dat moet worden beschermd tegen snoeien.keepLastAssistants: 3
softTrimRatioNumberLeeftijdsverhouding (0–1) waarbij soft-trim wordt geactiveerd. Berichten die ouder zijn dan deze verhouding van het gesprek komen in aanmerking voor soft-trimming.softTrimRatio: 0.3
hardClearRatioNumberLeeftijdsverhouding (0–1) waarbij hard-clear wordt geactiveerd. Berichten die ouder zijn dan deze verhouding komen in aanmerking voor volledige vervanging.hardClearRatio: 0.5
minPrunableToolCharsNumberMinimum aantal tekens van een tool-resultaat voordat snoeien wordt toegepast. Kleinere resultaten blijven ongewijzigd.minPrunableToolChars: 50000
softTrimObjectConfiguratie voor de soft-trim fase.
hardClearObjectConfiguratie voor de hard-clear fase.

Standaardinstellingen:

VeldStandaard
enabledfalse
keepLastAssistants3
softTrimRatio0.3
hardClearRatio0.5
minPrunableToolChars50000

softTrim sub-keys

KeyTypeDescriptionExample
maxCharsNumberMaximaal totaal aantal tekens na het inkorten van een tool-resultaat.maxChars: 4000
headCharsNumberAantal tekens dat moet worden behouden vanaf het begin van het toolresultaat.headChars: 1500
tailCharsNumberAantal tekens dat moet worden behouden vanaf het einde van het tool-resultaat.tailChars: 1500

Standaardwaarden: maxChars: 4000, headChars: 1500, tailChars: 1500

hardClear Sub-keys

KeyTypeDescriptionExample
enabledBooleanOf de hard-clear fase actief is. Wanneer uitgeschakeld, wordt alleen soft-trim toegepast.enabled: true
placeholderStringTijdelijke aanduidingstekst die de volledige inhoud van het toolresultaat vervangt wanneer deze geforceerd wordt gewist.placeholder: "[Old tool result content cleared]"

Standaardwaarden: enabled: true, placeholder: "[Old tool result content cleared]"

Voorbeeld:

summarization:
  contextPruning:
    enabled: true
    keepLastAssistants: 5
    softTrimRatio: 0.25
    hardClearRatio: 0.6
    minPrunableToolChars: 30000
    softTrim:
      maxChars: 6000
      headChars: 2500
      tailChars: 2500
    hardClear:
      enabled: true
      placeholder: '[Content removed for context management]'

Volledig configuratievoorbeeld

version: 1.3.10
cache: true

summarization:
  provider: 'openAI'
  model: 'gpt-4o-mini'
  maxSummaryTokens: 4096
  reserveRatio: 0.05
  trigger:
    type: 'token_ratio'
    value: 0.8
  contextPruning:
    enabled: true
    keepLastAssistants: 3
    softTrimRatio: 0.3
    hardClearRatio: 0.5
    minPrunableToolChars: 50000
    softTrim:
      maxChars: 4000
      headChars: 1500
      tailChars: 1500
    hardClear:
      enabled: true
      placeholder: '[Old tool result content cleared]'

Migratie van Per-Endpoint Instellingen

Als je voorheen summarize en summaryModel gebruikte op aangepaste of Azure OpenAI endpoints:

endpoints:
  custom:
    - name: 'My Endpoint'
      summarize: true
      summaryModel: 'gpt-3.5-turbo'

Deze velden zijn verwijderd. Gebruik in plaats daarvan de summarization configuratie op het hoogste niveau:

summarization:
  model: 'gpt-4o-mini'

Opmerkingen

  • Samenvatting wordt globaal geconfigureerd in plaats van per-endpoint.
  • De velden summarize en summaryModel op aangepaste endpoints en Azure OpenAI endpoints worden niet langer ondersteund.
  • Wanneer provider en model worden weggelaten, worden de eigen provider en het model van de agent gebruikt voor samenvatting.
  • Context pruning is standaard uitgeschakeld en moet expliciet worden ingeschakeld met contextPruning.enabled: true
  • Context pruning heeft alleen invloed op resultaten van tool calls die minPrunableToolChars overschrijden — kleinere resultaten worden nooit gepruned.
  • De keepLastAssistants instelling beschermt recente beurten tegen snoeien, ongeacht de trim/clear ratio's.
  • Aangepaste prompt en updatePrompt waarden vervangen de ingebouwde prompts volledig — gebruik ze met zorg
  • Stel AGENT_DEBUG_LOGGING=true in uw .env bestand in om uitgebreide logging van tokentellingen en diagnostische gegevens over context-pruning in te schakelen.

Hoe is deze gids?