Misingi

Dirisha la muktadha la wakala wa LLM: nini kinaingia ndani yake na kwa nini wakala husahau kanuni

Imesasishwa: · Skillaria.Top

Dirisha la muktadha la LLM ni maandishi yote ambayo modeli inaona kila inapojibu: maelekezo ya mfumo, faili za maagizo, historia ya mazungumzo, faili zilizosomwa na matokeo ya zana. Lina kikomo kigumu cha tokeni, lakini ubora wa umakini unashuka mapema zaidi kuliko kikomo, kwa hiyo katika kikao kirefu wakala anaanza kupoteza kanuni; zinazosaidia ni maagizo mafupi, compaction, vikao vipya vyenye faili la mpango, na kazi zenye kelele kupelekwa kwa subagents.

Dirisha la muktadha la LLM ni nini

Dirisha la muktadha la LLM ni maandishi yote ambayo modeli inapokea kama ingizo kwa ajili ya kutoa jibu linalofuata. Modeli haina kumbukumbu kwa maana ya kibinadamu: kila kitu inachokijua kuhusu kazi yako kwa wakati huu kiko ndani ya dirisha hili. Kisichomo ndani yake, kwa modeli hakipo.

Ukubwa wa dirisha unapimwa kwa tokeni — vipande vya maneno. Kwa Kiswahili na lugha nyingine, tokeni moja kwa wastani ni fupi kuliko kwa Kiingereza, kwa hiyo maagizo yaleyale yanaweza kugharimu tokeni zaidi. Modeli za sasa zina madirisha ya mamia ya maelfu ya tokeni, na inaonekana kana kwamba nafasi itatosha kila kitu. Kivitendo nafasi ya wakala inaisha haraka kuliko unavyotarajia, na ubora wake unaanza kushuka hata kabla ya hapo.

Nini kinaingia kwenye dirisha la wakala

Wakala wa kuandika programu ana vyanzo vitatu tu vya taarifa: maelekezo ya mfumo yanayoeleza kazi, maudhui ya faili alizozisoma, na matokeo ya zana alizoziita. Vyote vitatu vinaishi kwenye dirisha moja na vinashindania nafasi.

NiniLinapoingiaKawaida linagharimu kiasi gani
Maelekezo ya mfumo wa wakala na maelezo ya zanamwanzoni mwa kila kikaoGharama ya kudumu, hutegemei sana wewe
CLAUDE.md, AGENTS.md na faili nyingine za maagizomwanzoni mwa kikao, yoteKutoka mamia hadi makumi ya maelfu ya tokeni — inategemea wewe
Ujumbe wako na majibu ya wakalayanakusanyika mazungumzo yoteYanakua kwa kila mazungumzo
Faili zilizosomwawakala anapozifunguaFaili kubwa — maelfu ya tokeni kwa mara moja
Matokeo ya amri: majaribio, kumbukumbu, build, grepbaada ya kila witoMara nyingi sehemu kubwa zaidi na isiyo na msaada zaidi

Jambo kuu: hakuna chochote kati ya hivi kinachotoweka chenyewe. Kumbukumbu ya majaribio yaliyoanguka, iliyohitajika hatua ishirini zilizopita, bado iko kwenye dirisha na inavuta umakini kutoka hatua ya sasa. Kikao kirefu ni rundo linalokua kila wakati, ambamo kupata sindano inazidi kuwa ngumu.

Kwa nini wakala husahau kanuni katika kikao kirefu

Malalamiko ya kawaida: mwanzoni mwa kikao wakala anafuata kwa makini kanuni za CLAUDE.md, lakini baada ya saa moja ya kazi anaanza kuzivunja. Hajazisahau kwa maana halisi — maandishi ya kanuni bado yako kwenye dirisha. Tatizo ni jinsi modeli inavyogawa umakini kwenye maandishi marefu.

Lost in the middle

Utafiti wa Liu na wenzake wa 2023 ulionyesha kwamba modeli za lugha zinatumia vizuri zaidi taarifa zilizo mwanzoni na mwishoni mwa muktadha mrefu, kuliko zile zilizo katikati. Faili la maagizo linapakiwa mwanzoni mwa kikao, lakini mazungumzo yanavyoendelea, maandishi mengi zaidi yanarundikana juu na chini yake. Kanuni iliyokuwa mbele ya macho inaishia polepole katika eneo ambalo modeli inaona vibaya zaidi.

Sehemu ya kanuni katika dirisha inapungua

Katika kikao kipya, maagizo ni sehemu kubwa ya muktadha. Baada ya miito mia moja ya zana, yanageuka kuwa kipande kidogo kati ya kumbukumbu, tofauti za msimbo na msimbo uliosomwa. Ishara ni ileile, lakini kelele inayoizunguka ni mara kadhaa zaidi.

Mifano mipya inazidi kanuni za zamani

Modeli inategemea sana kile kilichotokea hivi karibuni katika mazungumzo. Ikiwa wakala ameshavunja kanuni mara kadhaa mfululizo na ikapita bila matokeo, mtindo huo katika historia unaanza kuwa na uzito zaidi ya mstari wa maelekezo ulioko mwanzoni.

Context rot: kuharibika kwa ubora kabla ya kikomo

Context rot («kuoza kwa muktadha») ni jina la jambo ambalo ubora wa majibu ya modeli unashuka kadiri dirisha linavyojaa, ingawa kikomo cha kiufundi bado kiko mbali. Modeli inakubali rasmi tokeni 200,000, lakini kwa 150,000 inafanya kazi vibaya kuliko kwa 20,000: inachanganya maelezo mara nyingi zaidi, inarudia suluhisho zilizokwishakataliwa, na inapoteza maagizo.

Dalili kwamba kikao kimeoza:

  • wakala anapendekeza mbinu ambayo mlikwishakataa pamoja nusu saa iliyopita;
  • anachanganya majina ya faili na kazi ambazo tayari mlijadili;
  • anaacha kuendesha ukaguzi ambao mwanzoni alikuwa anauendesha mwenyewe;
  • majibu yanazidi kuwa marefu na yasiyo wazi, na mabadiliko ya ziada ya «nimerekebisha pia» yanaonekana.

Kutibu hili kwa kuongeza kanuni nyingine hakusaidii: kanuni mpya nayo itapotea kwenye kelele ileile. Unahitaji kupunguza kelele.

Compaction ya muktadha

Compaction ni kubana historia ya kikao: modeli inaandika muhtasari wa kilichotokea, na mazungumzo yanaendelea na muhtasari huo badala ya historia kamili. Dirisha linapata nafasi, na kiini cha kazi kinaonekana kubaki.

Katika Claude Code kuna amri /compact ambayo unaweza kuipa kidokezo cha kile cha kuzingatia wakati wa kubana. Dirisha likikaribia kikomo, Claude Code pia hufanya compaction yenyewe. Amri /clear inafuta historia yote na kuanza upya, na /context inaonyesha dirisha limejaa nini.

/context
/compact hifadhi: lengo la kazi, maamuzi yaliyofanywa pamoja na sababu zake, orodha ya faili zilizobadilishwa, kilichobaki kukaguliwa
/clear

Hatari za compaction

Muhtasari daima unapoteza maelezo. Katika muhtasari huo huenda isiingie chaguo lililokataliwa na sababu ya kukataliwa, usemi halisi wa mahitaji, au jambo dogo mlilokubaliana kwa kupita. Baada ya compaction wakala anafanya kazi kwa kutumia muhtasari wa kikao chake mwenyewe. Kwa hiyo mambo muhimu ni bora kuyaweka si kwenye historia ya mazungumzo, bali kwenye faili zitakazobaki baada ya compaction yoyote.

Compaction au kikao kipya

HaliNini cha kufanya
Kazi karibu imekamilika, inahitaji nafasi kidogo tuCompaction yenye kidokezo cha nini cha kuhifadhi
Kazi moja imekamilika, nyingine inaanzaKikao kipya; historia ya zamani inasumbua tu
Kikao kimeoza, wakala anazunguka mduaraAndika hali kwenye faili la mpango, anza kikao kipya
Inahitaji utafiti mrefu wa msimbo au kumbukumbuKabidhi utafiti kwa subagent

Jinsi ya kuokoa dirisha la muktadha

Kuokoa muktadha si kuhusu bei ya tokeni, bali kuhusu ubora wa kazi. Kelele ndogo kwenye dirisha inamaanisha umakini zaidi kwa kazi na kwa kanuni.

1. Faili fupi la maagizo la kuelekeza

CLAUDE.md au AGENTS.md ya kuingia inasomwa yote kila kikao. Faili la mistari 600 ni kama tokeni 10,000–20,000 za gharama ya kudumu. Liweke amri za ukaguzi, vikwazo vikali na ramani ya mradi; maelezo ya kila mada yawe kwenye nyaraka tofauti ambazo wakala anazifungua tu inapohitajika.

2. Maarifa yanayopakiwa kwa mahitaji

Katika Claude Code skills zimeundwa hivyo kwamba kwanza ni maelezo yao mafupi tu yanaingia kwenye muktadha, na maandishi kamili ya maelekezo yanapakiwa skill inapohitajika kwa kazi. Ni njia nzuri ya kuweka taratibu adimu — deploy, migrations, toleo — karibu bila kulipa kwa kila kikao.

3. Subagents kwa kazi yenye kelele

Subagent inafanya kazi kwenye dirisha lake la muktadha na kurudisha kwa kikao kikuu matokeo tu. Utafutaji kwenye msimbo mkubwa, uchambuzi wa kumbukumbu ndefu, kujifunza moduli isiyojulikana — yote haya yanaweza kupewa subagent, na jibu linakuwa aya chache za hitimisho badala ya mistari elfu ya matokeo ghafi.

4. Matokeo ya zana yasiyo na kelele

Matokeo ya amri ndiyo yanayomeza dirisha zaidi. Panga amri za ukaguzi zichapishe mstari mmoja zikifanikiwa, na zikishindwa zionyeshe kiini tu: jaribio lililoanguka na ujumbe wake, si kumbukumbu nzima ya build.

# kelele: mistari elfu kwenye dirisha kwa kila mbio
pytest -v

# kimya: mafanikio ni mstari mmoja, kuanguka kunaonyesha majaribio yaliyoanguka tu
pytest -q --tb=short

# kumbukumbu — si yote, bali mwisho na makosa tu
tail -n 50 app.log | grep -i error

5. Kazi moja — kikao kimoja

Usivute kikao kimoja kupitia kazi tatu zisizohusiana. Historia ya kazi ya kwanza haina msaada kwa ya tatu, lakini inachukua nafasi na inamchanganya wakala. Ukimaliza — rekodi matokeo — fungua kikao kipya.

6. Hali kwenye faili, si kwenye historia

Kila kitu kinachopaswa kuishi compaction na vikao vipya, kiandike kwenye hazina: lengo, maamuzi pamoja na sababu zake, chaguo zilizokataliwa, kilichofanyika na kilivyothibitishwa, hatua inayofuata. Kwa mfano, katika PLAN.md na PROGRESS.md. Kikao kipya kinaanza basi si kwa kusimulia upya, bali kwa hati sahihi, na unaweza kufuta historia bila wasiwasi.

# PROGRESS.md
## Lengo
Kubadilisha hesabu ya punguzo kuwa senti nzima

## Imefanyika (imethibitishwa)
- app/payments/discount.py: float → int, make test ni kijani
- Migration 041 imeongezwa, imetumika kwenye mazingira ya ndani

## Maamuzi
- Kuzungusha — benki (banker's rounding), kama mtoa huduma wa malipo

## Yaliyokataliwa
- Decimal kwenye modeli: inavunja serialization ya webhooks

## Hatua inayofuata
Sasisha scenario ya e2e ya kuweka oda na endesha make e2e

Kanuni muhimu — si ndani ya dirisha tu

Hata muktadha uliopangwa vizuri hautoi dhamana kwamba kanuni zitafuatwa: maandishi kwenye dirisha ni ushawishi kwa modeli, si marufuku yanayotekelezwa. Ikiwa ukiukaji hauwezi kukubalika, kanuni inapaswa kukaguliwa kwa mitambo. Katika Claude Code kuna hooks — amri zinazoendeshwa kwenye matukio ya wakala na zinaweza kuzuia kitendo — na mipangilio ya ruhusa inayokataza zana au amri fulani. Linters, majaribio na CI vinafanya kazi bila kujali kinachoendelea sasa ndani ya dirisha la wakala.

Kanuni nzuri ya harness: kila kinachoweza kukaguliwa kiotomatiki, kikaguliwe kiotomatiki; na katika muktadha kinabaki tu kile kinachohitaji busara.

Hitimisho

Dirisha la muktadha la LLM ndilo mahali pekee ambapo wakala anaona kazi yako, na linajaa haraka kuliko unavyofikiri: maagizo, historia, faili zilizosomwa na matokeo ya amri yanarundikana hadi mwisho wa kikao. Ubora unashuka muda mrefu kabla ya kikomo cha kiufundi, kanuni zilizo katikati ya muktadha mrefu zinapotea, na compaction inaokoa nafasi kwa gharama ya maelezo. Weka maagizo mafupi, pakia maarifo adimu kwa mahitaji, kabidhi kazi zenye kelele kwa subagents, hifadhi hali kwenye faili, na uimarishe kanuni muhimu kwa hooks na ukaguzi. Kufanya kazi na muktadha wa wakala tunaufundisha kwa vitendo katika kozi ya harness engineering.

Maswali ya mara kwa mara

Dirisha la muktadha la Claude lina tokeni ngapi?

Inategemea modeli na mpango wa matumizi; kigezo cha kawaida ni takriban tokeni 200,000, na baadhi ya modeli na mipangilio ina zaidi. Thamani sahihi ziko kwenye nyaraka za Anthropic za modeli husika.

Je, modeli yenye dirisha kubwa inasuluhisha tatizo la kanuni zilizosahauliwa?

Kwa sehemu tu: nafasi ni kubwa zaidi, lakini athari ya lost in the middle na context rot haiondoki. Dirisha kubwa halichukui nafasi ya maagizo mafupi na kikao safi.

Je, nirudie kanuni muhimu kwenye ujumbe wakati wakala anaivunja?

Ukumbusho wa mara moja unasaidia, kwa sababu maandishi mapya mwishoni mwa muktadha modeli inayaona vizuri zaidi. Lakini ikiwa unalazimika kukumbusha mara kwa mara, kanuni hiyo ifungwe kwa ukaguzi au hook.

Naonaje nini kinachojaza dirisha la Claude Code?

Amri /context inaonyesha nafasi inayochukuliwa na maelekezo ya mfumo, zana, faili za kumbukumbu na historia ya ujumbe. Ni njia ya haraka ya kuona kama CLAUDE.md iliyovimba au historia ndefu inamaliza dirisha.

Ni nini kinachopotea kwanza katika compaction?

Makubaliano yaliyokuwepo katika mazungumzo pekee: chaguo zilizokataliwa, ufafanuzi wa mahitaji, nuances ndogo. Kila kilichoandikwa kwenye faili za hazina wakala anaweza kukisoma tena.