पाठ 14 / 25

पुरानी बारियों का सार

पुराने messages की जगह निष्ठावान सार रखें और काम, निर्णय व खुली बातें सँभालें।

संपीड़ित करें, मिटाएँ नहीं

इतिहास आपके trigger से ऊपर जाए तो model (या सस्ते model) से पुरानी बारियों का छोटा नोट बनवाएँ, फिर उन messages की जगह वही रखें और सबसे हाल की बारियाँ ज्यों की त्यों रखें। अच्छा सार लक्ष्य, लिए गए निर्णय, बदली गई files और बाक़ी काम सुरक्षित रखता है। सार जो छोड़ दे वह चला जाता है, इसलिए उसमें सटीक मान (IDs, paths) रखें।

सार बनाएँ, पूँछ रखें

summarise एक और model call है। पहला user message कभी सार में न मिटाएँ, क्योंकि उसमें मूल काम है।

def compact(messages, keep_last=6):
    if len(messages) <= keep_last + 1:
        return messages
    head, old, tail = messages[0], messages[1:-keep_last], messages[-keep_last:]
    note = summarise(old)       # goal, decisions, open items, exact IDs
    return [head,
            {"role": "user", "content": f"Summary of earlier work:\n{note}"},
            *tail]

सार जाँचें

सार विवरण गढ़ या छोड़ सकते हैं। महत्वपूर्ण runs में messages बदलने से पहले उन्हें कहीं log करें ताकि आप जाँच सकें कि क्या खोया।

त्वरित जाँच: सार में कभी क्या नहीं मिटाना चाहिए?

  • मूल काम
  • अभिवादन
  • पुराने error logs
  • Whitespace
Answer

मूल काम — मूल लक्ष्य खोने से बाक़ी काम दिशाहीन हो जाता है।