Lesson 76 — Intermediate

Compression & Compaction

Context badhta jaata hai, budget fix hai — isliye beech ka rasta hai compaction: size kam karo par task-critical information bachao. Is lesson mein history summarize, tool outputs slim aur facts pin karna seekhoge.

⏱ 20 min• Intermediate• Context Selection & Assembly

Reduction vs information loss

WHAT

History aur tool outputs ko chhota karna bina goals, constraints, decisions aur open work khoye. Summary mein narrative compress hota hai, facts pin hote hain.

WHEN

History budget paar kare, lamba task ghanton chale, tool calls se bade dumps aayein — trigger budget threshold, har turn nahi.

WHERE

Rolling summary buffer (recent turns raw + summary), tool-result preprocessor, aur pinned facts block jo kabhi compress nahi hota.

Compression ka golden rule: shabd bacha sakte ho, facts nahi. Ek number, ID ya decision gayab ho gaya toh agent dobara kaam karega — cost aur confusion dono badhenge.

Trigger: History apne cap ke paar (jaise70% budget) tab compress — har turn par summarize karne se latency badhti hai aur compounding loss hota hai.

History compress karo

Nayi summary mein kya preserve karna hai: goal (verbatim), constraints, decisions + kyun, unresolved work. Baaki turns ka narrative ghulao, last kuch turns raw chhodo.

def compact_history(turns, summary, keep_last=4):
    if len(turns) <= keep_last:
        return summary, turns
    new_summary = summarize(
        "Purani summary:\n" + summary +
        "\nNayi conversation — facts, decisions, open items only:\n" +
        render(turns[:-keep_last]))
    return new_summary, turns[-keep_last:]
# Goal hamesha VERBATIM pin rehta hai — summarize nahi hota
Goal kabhi compress nahi: User ne kya maanga tha summary ke andar ghula toh agent bhool jaayega kya finish karna hai. Goal + constraints ek pinned block mein raw rakho.

Tool outputs slim karo

def slim(result, keep=5):
    return {
        "total": len(result["items"]),
        "items": result["items"][:keep],
        "next_cursor": result["next"],   # details phir se maang lenge
    }
External + lazy: Full output file/store mein likho, model ko slim version + cursor do. Zaroorat aaye toh detail lazy load — yehi "preserve exact structured data" wala point hai.

Rolling & hierarchical summaries

Lambi chalne wale tasks mein ek summary kaafi nahi — layers banao: turn summary → session summary → project summary. Har layer mein upar wali ka compressed version + naya content.

Compounding loss: Summary of summary of summary = har baar aur info girti hai. Hierarchical layers + verbatim anchors isi liye hain — anchor se wapas ground hota hai.

Failure modes

Test: Ek eval set lo: compress ke baad bhi agent ko woh5 facts yaad rahe? (L7-style regression check) — compression blind trust nahi, measurement hai.

Exercise

Question: Badi conversation ko chhota karke rakhna — ek shabd, English?

Question: History se chhota summary banane ka verb — ek shabd, English?

Question: IDs, URLs, exact values ko compression se pehle protect karna — verb, ek shabd, English?

Common mistakes

Desi example: Case diary

Advocate poora trial transcript nahi rakhta — key dates, orders aur admissions pin karta hai, baaki narrative summary. Wahi compaction hai: narrative compress, facts pin.

text
summary = "Data fetch done, schema X decide (kyun: ...)"
pinned  = {"ids": [...], "numbers": {...}, "todo": [...]}
recent  = last_4_turns_raw   # dono ke upar recent raw
Interview angle — yahan se sawaal aate hain
  • Q: Compaction kab trigger karoge? (budget threshold — har turn nahi; aur kya preserve karte ho: goals, decisions, IDs)
  • Q: Tool output slim kaise karoge? (field slice, top-k, pagination cursor, short errors, full result external)
  • Q: Rolling vs hierarchical summary kab? (rolling = session ke andar; hierarchical = hafte/archives, layered)
  • Q: Compression se information loss kaise measure karoge? (eval set: compress ke baad facts yaad rahe ya nahi — L7 regression style)
Lesson complete?

History, tool outputs aur pinned facts — teenon ab sambhalne aate hain. Agli lesson: window se information ko kaise bahar offload karte hain.

Popular courses: Data Science Course in Lucknow · AI Course in Lucknow · Python Course in Lucknow · Power BI Course · Data Analytics Course