AI-agenter · leksjon

Sammendrag som komprimering

Erstatt med jevne mellomrom gamle samtaleomganger med et løpende sammendrag, og bytt dermed eksakt gjenkalling mot plass i kontekstvinduet.

Leksjon 3 av 413 trinn

Sammendrag som komprimering er en gratis leksjon i AI-agenter på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i AI-agenter, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i AI-agenter inneholder totalt 4 leksjoner.

Komprimering som minne

Når en samtale blir lang, erstatter De gamle samtalerunder med et kort sammendrag. De bytter nøyaktig gjenfinning mot ledig kontekstplass.

Sammendraget fanger hovedinnholdet (fakta, beslutninger og uavklarte punkter) — den ordrette teksten er borte.

Når sammendrag skal lages

Utløs oppsummering når:

  • Det totale antallet token overskrider en terskel (for eksempel 8k)
  • Antallet samtalerunder overskrider N (for eksempel 20)
  • Brukeren begynner på et nytt emne

Oppsummer de eldre samtalerundene

Behold de nyeste samtalerundene ordrett, og oppsummer bare det som falt ut:

def compact(messages, keep_recent=10):
    system = messages[0]
    old = messages[1:-keep_recent]
    recent = messages[-keep_recent:]
    if not old:
        return messages
    summary = summarise(old)
    return [
        system,
        {'role': 'system', 'content': f'Earlier conversation summary:\n{summary}'},
        *recent
    ]

Sammendragsprompt

Bruk et separat og rimelig modellkall til å lage sammendraget:

def summarise(messages):
    text = '\n'.join(f'{m["role"]}: {m["content"]}' for m in messages)
    response = client.chat.completions.create(
        model='gpt-4o-mini',
        messages=[
            {'role': 'system', 'content': 'Summarise this conversation in 5 bullet points. Preserve facts, decisions, and pending TODOs.'},
            {'role': 'user', 'content': text}
        ],
        max_tokens=300,
    )
    return response.choices[0].message.content

Løpende sammendrag

Vedlikehold ett enkelt, voksende sammendrag i stedet for å lage et nytt sammendrag fra grunnen hver gang:

running_summary = ''

def extend_summary(new_messages):
    global running_summary
    response = client.chat.completions.create(
        model='gpt-4o-mini',
        messages=[
            {'role': 'system', 'content': 'Extend the existing summary with the new turns. Keep it under 200 words.'},
            {'role': 'user', 'content': f'Existing summary:\n{running_summary}\n\nNew turns:\n{format(new_messages)}'}
        ],
        max_tokens=500,
    )
    running_summary = response.choices[0].message.content

Strukturerte sammendrag

Tving sammendraget til å trekke ut bestemte felter:

summary_schema = {
    'topics_discussed': '...',
    'user_facts': {'name': '...', 'preferences': '...'},
    'open_questions': ['...'],
    'decisions_made': ['...']
}
# Use json_object response_format to enforce.
import json
print(json.dumps(summary_schema, indent=2))

Hierarkiske sammendrag

For svært lange historikker:

  • Sammendrag per 100 samtalerunder (mellomnivå)
  • Sammendrag per 1000 samtalerunder (høyt nivå)
  • Sammendrag for hele levetiden (ekstremt nivå)

Sett bare det aktuelle nivået inn i konteksten.

Tap av detaljer

Sammendrag mister spesifikke sitater og nøyaktig ordlyd. Hvis brukeren spør «hva sa jeg egentlig om prissetting tidligere?», kan modellen ikke svare.

For ordrett gjenfinning trengs enten en større kontekst eller et vektorarkiv med søk.

Både vektorarkiv og sammendrag

Det beste fra begge verdener:

  1. Oppsummer gamle samtalerunder i systemmeldingen
  2. Bygg OGSÅ inn hver samtalerunde og lagre den i et vektorlager
  3. Hvis brukeren spør etter detaljer, hent den ordrette teksten fra vektorlageret

Sammendragskvalitet er viktig

Et dårlig sammendrag er verre enn ikke å ha noe sammendrag. Bruk en rimelig, men kompetent modell (gpt-4o-mini, haiku) — ikke den billigste modellen — til sammendragskall.

Oppdatering av sammendrag er kostbart

Å oppsummere 8000 token med samtale er et reelt LLM-kall — 1–2 sekunder og 0,5 cent. Gjør det asynkront mellom samtalerundene i stedet for i den kritiske kjørebanen.

Avveiningen ved sammendrag

Hva er den viktigste avveiningen når oppsummering brukes som minne?

Oppsummering

Oppsummering er den rimelige måten å utvide minnet på. Kombiner den med vektorretrieval for å kunne hente frem nøyaktige sitater.

Gratis å komme i gang

Lær deg AI-agenter med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
60
Leksjoner
239

Ofte stilte spørsmål

Er leksjonen «Sammendrag som komprimering» gratis?

Ja – hele teksten i «Sammendrag som komprimering» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av AI-agenter-kurset, kan du oppgradere til CoddyKit PRO. Kurset i AI-agenter inneholder totalt 4 leksjoner.

Hva lærer jeg i «Sammendrag som komprimering»?

Erstatt med jevne mellomrom gamle samtaleomganger med et løpende sammendrag, og bytt dermed eksakt gjenkalling mot plass i kontekstvinduet. Du øver på AI-agenter med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med AI-agenter?

Ingen tidligere erfaring er nødvendig. AI-agenter på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.

Hvor lang tid tar leksjonen «Sammendrag som komprimering»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne AI-agenter-leksjonen?

Ja. Alle AI-agenter-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Korttidsminne i kontekstvinduet
  2. Hvorfor lange kontekster ikke skalerer
  3. Sammendrag som komprimering
  4. Enkle minnelagre (nøkkel–verdi)
← Tilbake til AI-agenter