Okno kontekstowe
Okno kontekstowe w dużym modelu językowym (LLM) odnosi się do ilości tekstu, którą model może uwzględnić podczas generowania odpowiedzi, wpływając na jego zdolność do rozumienia i generowania spójnego tekstu.
Okno kontekstowe dużego modelu językowego (LLM) określa maksymalną liczbę tokenów (słów, części słów lub znaków), które model może przetwarzać i uwzględniać jednocześnie podczas generowania odpowiedzi. Okno to działa jak pamięć krótkotrwała modelu, obejmując dane wejściowe (prompt) i wszelki poprzedzający tekst wygenerowany. Większe okno kontekstowe pozwala LLM zachować więcej informacji z rozmowy lub dokumentu, co prowadzi do poprawy spójności, trafności i zrozumienia złożonych instrukcji lub długich narracji. Na przykład model z oknem kontekstowym o rozmiarze 4096 tokenów może „pamiętać” do około 3000 słów tekstu. Architektura LLM, w szczególności mechanizm uwagi (np. self-attention w Transformerach), dyktuje, jak efektywnie może on wykorzystać to okno. Istnieją kompromisy: większe okna kontekstowe wymagają znacznie więcej zasobów obliczeniowych (pamięci i mocy obliczeniowej) i mogą prowadzić do zwiększonego opóźnienia podczas wnioskowania. Ponadto modele mogą napotykać problem „zagubienia w środku” (lost in the middle), gdzie informacje znajdujące się w środku bardzo długiego kontekstu są wykorzystywane mniej efektywnie niż informacje na początku lub końcu. Techniki takie jak uwaga z przesuwającym się oknem (sliding window attention), uwaga rzadka (sparse attention) lub generowanie wspomagane wyszukiwaniem (retrieval-augmented generation, RAG) są stosowane w celu złagodzenia tych ograniczeń i rozszerzenia efektywnego zarządzania kontekstem.
graph LR
Center["Okno kontekstowe"]:::main
Pre_computer_science["computer-science"]:::pre --> Center
click Pre_computer_science "/terms/computer-science"
Rel_large_language_model["large-language-model"]:::related -.-> Center
click Rel_large_language_model "/terms/large-language-model"
Rel_hallucination_ai["hallucination-ai"]:::related -.-> Center
click Rel_hallucination_ai "/terms/hallucination-ai"
Rel_token["token"]:::related -.-> Center
click Rel_token "/terms/token"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧠 Sprawdzenie wiedzy
🧒 Wyjaśnij jak 5-latkowi
To jest jak notatnik [LLM](/pl/terms/llm); może on zapamiętać tylko to, co mieści się na bieżącej stronie, pisząc swoją odpowiedź.
🤓 Expert Deep Dive
Rozmiar okna kontekstowego, zazwyczaj mierzony w tokenach, jest kluczowym parametrem architektonicznym, bezpośrednio wpływającym na zdolność LLM do wykonywania zadań wymagających zależności długoterminowych. Architektury oparte na Transformerach, dominujące w nowoczesnych LLM, wykorzystują mechanizmy samo-uwagi (self-attention). Złożoność obliczeniowa standardowej samo-uwagi rośnie kwadratowo ($O(N^2)$) wraz z długością sekwencji $N$ (rozmiar okna kontekstowego), co sprawia, że bardzo duże okna są nieopłacalnie kosztowne pod względem pamięci i obliczeń. To napędza badania nad wydajnymi wariantami uwagi, takimi jak uwaga rzadka (sparse attention, np. Longformer, BigBird), uwaga liniowa (linear attention) i generowanie wspomagane wyszukiwaniem (RAG). RAG, na przykład, wzbogaca LLM o zewnętrzny system wyszukiwania wiedzy, skutecznie rozszerzając jego dostępny „kontekst” poza ustalone okno poprzez dynamiczne pobieranie odpowiednich informacji. Wybory architektoniczne, takie jak kodowania pozycyjne (np. absolutne, względne, rotacyjne), również wpływają na to, jak dobrze model może interpretować pozycje tokenów w oknie. Przypadki brzegowe obejmują katastrofalne zapominanie (catastrophic forgetting) podczas dostrajania na nowych danych oraz wspomniany problem „zagubienia w środku” (lost in the middle), gdzie wyniki uwagi mogą spadać dla tokenów znajdujących się daleko od początku lub końca promptu.