Kontekstteknikk, tydelig forklart:
Alle snakker om kontekstteknikk, men ingen forteller deg hva det faktisk betyr. I dag skal jeg forklare alt du trenger å vite om kontekstutvikling på en trinnvis måte. La oss gå! 🚀
Så, hva er kontekstteknikk? Det er kunsten og vitenskapen å levere riktig informasjon, i riktig format, til rett tid, til din LLM. Her er et sitat av Andrej Karpathy om kontekstteknikk... 👇
For å forstå kontekstingeniørkunst er det essensielt først å forstå meningen med kontekst. Agenter i dag har utviklet seg til mye mer enn bare chatboter. Grafikken nedenfor oppsummerer de 6 typene kontekster en agent trenger for å fungere skikkelig. Se på dette 👇
Nå burde du vite at det ikke er nok å bare «prompte» agentene. Du må konstruere inputen (konteksten). Tenk på det slik: 🧠 LLM = CPU 💾 Kontekstvindu = RAM Du programmerer i praksis "RAM" med de perfekte instruksjonene for AI-en din. Fortsatte... 👇
Så hvordan gjør vi det? Kontekstteknikk kan deles inn i fire grunnleggende stadier: - Skrivekontekst - Valg av kontekst - Komprimering av kontekst - Isolerende kontekst La oss forstå hver enkelt, én etter én... 👇
1️⃣ Skrivekontekst: Å skrive kontekst betyr å lagre den utenfor kontekstvinduet for å hjelpe en agent med å utføre en oppgave. Du kan gjøre det ved å skrive det til: - Langtidsminne (vedvarer gjennom økter) - Korttidsminne (vedvarer innenfor økten) - Et tilstandsobjekt Sjekk dette👇
2️⃣ Les kontekst: Å lese konteksten betyr å trekke den inn i kontekstvinduet for å hjelpe en agent med å utføre en oppgave. Nå kan denne konteksten hentes fra: - Et verktøy -Hukommelse - Kunnskapsbase (dokumentasjon, vektordatabase) Sjekk dette👇
3️⃣ Komprimerer kontekst Å komprimere kontekst betyr å beholde kun de tokenene som trengs for en oppgave. Den hentede konteksten kan inneholde duplisert eller redundant informasjon (multi-turn verktøykall), noe som fører til ekstra tokens og økte kostnader. Kontekstoppsummering hjelper her. Sjekk dette👇
4️⃣ Isolerende kontekst Å isolere kontekst innebærer å dele den opp for å hjelpe en agent med å utføre en oppgave. Noen populære måter å gjøre dette på er: - Bruk av flere agenter (eller delagenter), hver med sin egen kontekst - Bruk av et sandkassemiljø for kodelagring og utførelse - Og ved å bruke et tilstandsobjekt Sjekk dette👇
103