Wiele modeli Gemini ma duże okna kontekstu o wielkości co najmniej 1 mln tokenów. W przeszłości duże modele językowe (LLM) były znacznie ograniczone przez ilość tekstu (lub tokenów), które można było przekazać do modelu jednocześnie. Długie okno kontekstu Gemini otwiera wiele nowych przypadków użycia i paradygmatów programistycznych.
Kod, którego już używasz w przypadkach takich jak tekst generowanie lub multimodalne dane wejściowe, będzie działać bez zmian w przypadku długiego kontekstu.
Z tego dokumentu dowiesz się, co możesz osiągnąć za pomocą modeli z oknami kontekstu o wielkości co najmniej 1 mln tokenów. Na tej stronie znajdziesz krótkie omówienie okna kontekstu oraz informacje o tym, jak programiści powinni myśleć o długim kontekście, o różnych przypadkach użycia długiego kontekstu w rzeczywistych sytuacjach oraz o sposobach optymalizacji wykorzystania długiego kontekstu.
Rozmiary okien kontekstu poszczególnych modeli znajdziesz na stronie Modele.
Czym jest okno kontekstu?
Podstawowy sposób korzystania z modeli Gemini polega na przekazywaniu do modelu informacji (kontekstu), na podstawie których model generuje odpowiedź. Okno kontekstu można porównać do pamięci krótkotrwałej. Ilość informacji, które można przechowywać w pamięci krótkotrwałej, jest ograniczona. To samo dotyczy modeli generatywnych.
W modelu Gemini 4 (gemini-4-argon) okno kontekstu o wielkości 1 mln tokenów jest współdzielone przez tokeny wejściowe, tokeny myślenia i tokeny wyjściowe, a model może generować do 1 mln tokenów wyjściowych przy użyciu długiego dekodowania. Jeśli liczba tokenów wejściowych plus max_output_tokens przekracza 1 048 576 tokenów, interfejs API automatycznie ogranicza limit wyjściowy do pozostałego miejsca w oknie kontekstu (1,048,576 minus tokeny wejściowe). Wcześniejsze modele Gemini 3 i 2.5 używają oddzielnych budżetów: 1 mln tokenów wejściowych i 64 tys. tokenów wyjściowych.
Więcej informacji o tym, jak działają modele, znajdziesz w naszym przewodniku po modelach generatywnych.
Pierwsze kroki z długim kontekstem
Wcześniejsze wersje modeli generatywnych mogły przetwarzać tylko 8 tys. tokenów naraz. Nowsze modele poszły o krok dalej i akceptują 32 tys. lub nawet 128 tys. tokenów. Gemini to pierwszy model, który może akceptować 1 mln tokenów.
W praktyce 1 mln tokenów to:
- 50 tys. wierszy kodu (przy standardowej liczbie 80 znaków na wiersz);
- wszystkie SMS-y wysłane w ciągu ostatnich 5 lat;
- 8 powieści w języku angielskim o średniej długości;
- transkrypcje ponad 200 odcinków podcastów o średniej długości.
W przypadku wielu innych modeli, które mają bardziej ograniczone okna kontekstu, często trzeba stosować strategie takie jak arbitralne usuwanie starych wiadomości, podsumowywanie treści, używanie RAG z bazami danych wektorowych lub filtrowanie promptów w celu oszczędzania tokenów.
Chociaż te techniki pozostają przydatne w określonych scenariuszach, rozbudowane okno kontekstu Gemini zachęca do bardziej bezpośredniego podejścia: dostarczania wszystkich istotnych informacji z góry. Modele Gemini zostały zaprojektowane specjalnie z myślą o obsłudze dużego kontekstu, dlatego wykazują dużą skuteczność w uczeniu się w kontekście. Na przykład, korzystając tylko z materiałów instruktażowych w kontekście (500-stronicowej gramatyki , słownika i ok. 400 równoległych zdań), Gemini nauczył się tłumaczyć z angielskiego na kalamang – język papuaski, którym posługuje się mniej niż 200 osób – z jakością podobną do jakości tłumaczenia wykonanego przez człowieka, który korzysta z tych samych materiałów. Pokazuje to zmianę paradygmatu, którą umożliwia długi kontekst Gemini, otwierając nowe możliwości dzięki solidnemu uczeniu się w kontekście.
Przypadki użycia długiego kontekstu
Chociaż standardowym przypadkiem użycia większości modeli generatywnych jest nadal wprowadzanie tekstu, rodzina modeli Gemini umożliwia nowy paradygmat przypadków użycia multimodalnych. Modele te mogą natywnie rozumieć tekst, filmy, dźwięk i obrazy. Towarzyszy im interfejs Gemini API, który dla wygody przyjmuje multimodalne typy plików.
Długi tekst
Tekst okazał się warstwą inteligencji, która leży u podstaw wielu postępów w dziedzinie LLM. Jak wspomnieliśmy wcześniej, wiele praktycznych ograniczeń LLM wynikało z tego, że nie miały one wystarczająco dużego okna kontekstu, aby wykonywać określone zadania. Doprowadziło to do szybkiego przyjęcia generowania wspomaganego wyszukiwaniem (RAG) i innych technik, które dynamicznie dostarczają modelowi odpowiednie informacje kontekstowe. Teraz, gdy okna kontekstu są coraz większe, pojawiają się nowe techniki, które otwierają nowe przypadki użycia.
Oto niektóre nowe i standardowe przypadki użycia długiego kontekstu opartego na tekście:
- Podsumowywanie dużych korpusów tekstu
- Wcześniejsze opcje podsumowywania w przypadku modeli z mniejszym kontekstem wymagały użycia okna przesuwnego lub innej techniki, aby zachować stan poprzednich sekcji, gdy do modelu przekazywane są nowe tokeny.
- Pytania i odpowiedzi
- W przeszłości było to możliwe tylko w przypadku RAG ze względu na ograniczoną ilość kontekstu i niską zdolność modeli do przypominania sobie faktów.
- Agentic Workflows
- Tekst jest podstawą tego, jak agenci zachowują stan tego, co zrobili i co muszą zrobić. Brak wystarczających informacji o świecie i celu agenta ogranicza jego niezawodność.
Uczenie się w kontekście z wieloma przykładami to jedna z najbardziej unikalnych możliwości, które otwierają modele z długim kontekstem. Badania wykazały, że przyjęcie powszechnego paradygmatu „jednego przykładu” lub „wielu przykładów”, w którym model otrzymuje jeden lub kilka przykładów zadania, i zwiększenie tej liczby do setek, tysięcy, a nawet setek tysięcy przykładów może prowadzić do nowych możliwości modelu. Wykazano też, że to podejście z wieloma przykładami działa podobnie jak modele, które zostały dostrojone do konkretnego zadania. W przypadkach użycia, w których skuteczność modelu Gemini nie jest jeszcze wystarczająca do wdrożenia produkcyjnego, możesz wypróbować podejście z wieloma przykładami. Jak dowiesz się później w sekcji Optymalizacja długiego kontekstu, pamięć podręczna kontekstu sprawia, że ten typ obciążenia z dużą liczbą tokenów wejściowych jest znacznie bardziej opłacalny, a w niektórych przypadkach nawet zmniejsza opóźnienie.
Długi film
Użyteczność treści wideo była długo ograniczana przez brak dostępności samego medium. Trudno było przeglądać treści, transkrypcje często nie oddawały niuansów filmu, a większość narzędzi nie przetwarza obrazu, tekstu i dźwięku razem. Dzięki Gemini możliwości tekstowe w długim kontekście przekładają się na zdolność do rozumowania i odpowiadania na pytania dotyczące danych wejściowych multimodalnych przy zachowaniu stałej skuteczności.
Oto niektóre nowe i standardowe przypadki użycia długiego kontekstu wideo:
- Pytania i odpowiedzi dotyczące filmu
- Pamięć wideo, jak pokazano w projekcie Astra Google
- Dodawanie napisów do filmu
- Systemy rekomendacji filmów, dzięki wzbogacaniu dotychczasowych metadanych o nowe rozpoznawanie multimodalne
- Dostosowywanie filmów przez analizowanie korpusu danych i powiązanych metadanych wideo, a następnie usuwanie części filmów, które nie są istotne dla widza
- Moderowanie treści wideo
- Przetwarzanie wideo w czasie rzeczywistym
Podczas pracy z filmami ważne jest, aby wziąć pod uwagę, jak są one przetwarzane na tokeny, co wpływa na rozliczenia i limity wykorzystania. Więcej informacji o promptach z plikami wideo znajdziesz w przewodniku po promptach.
Długi dźwięk
Modele Gemini były pierwszymi natywnie multimodalnymi dużymi modelami językowymi, które potrafiły rozumieć dźwięk. W przeszłości typowy przepływ pracy programisty polegał na łączeniu ze sobą wielu modeli specyficznych dla danej domeny, np. modelu zamiany mowy na tekst i modelu tekst na podstawie tekstu, w celu przetwarzania dźwięku. Prowadziło to do dodatkowego opóźnienia wymaganego przez wykonywanie wielu żądań w obie strony oraz do zmniejszenia skuteczności, co zwykle przypisywano rozłączonym architekturam konfiguracji wielu modeli.
Oto niektóre nowe i standardowe przypadki użycia kontekstu audio:
- Transkrypcja i tłumaczenie w czasie rzeczywistym
- Pytania i odpowiedzi dotyczące podcastu lub filmu
- Transkrypcja i podsumowanie spotkania
- Asystenci głosowi
Więcej informacji o promptach z plikami audio znajdziesz w przewodniku po promptach.
Optymalizacje długiego kontekstu
Podstawową optymalizacją podczas pracy z długim kontekstem i modelami Gemini jest używanie buforowania kontekstu. Oprócz wcześniejszej niemożliwości przetwarzania dużej liczby tokenów w jednym żądaniu, głównym ograniczeniem był koszt. Jeśli masz aplikację „czat z danymi”, w której użytkownik przesyła 10 plików PDF, film i kilka dokumentów roboczych, w przeszłości musiałbyś pracować z bardziej złożonym narzędziem lub frameworkiem generowania wspomaganego wyszukiwaniem (RAG), aby przetworzyć te żądania i zapłacić znaczną kwotę za tokeny przeniesione do okna kontekstu. Teraz możesz buforować pliki przesyłane przez użytkownika i płacić za ich przechowywanie co godzinę. Na przykład koszt danych wejściowych i wyjściowych na żądanie w przypadku Gemini Flash jest ok. 4 razy niższy niż standardowy koszt danych wejściowych i wyjściowych, więc jeśli użytkownik wystarczająco często czatuje z danymi, możesz jako programista znacznie zaoszczędzić.
Ograniczenia długiego kontekstu
W różnych sekcjach tego przewodnika mówiliśmy o tym, jak modele Gemini osiągają wysoką skuteczność w różnych testach wyszukiwania igły w stogu siana. Testy te uwzględniają najbardziej podstawową konfigurację, w której szukasz jednej igły. W przypadkach, w których możesz mieć wiele „igieł” lub konkretnych informacji, których szukasz, model nie działa z taką samą dokładnością. Skuteczność może się znacznie różnić w zależności od kontekstu. Należy o tym pamiętać, ponieważ istnieje nieodłączny kompromis między uzyskaniem odpowiednich informacji a kosztem. Możesz uzyskać ok. 99% skuteczności w przypadku jednego zapytania, ale za każdym razem, gdy je wysyłasz, musisz zapłacić za tokeny wejściowe. Jeśli więc chcesz uzyskać 100 informacji i potrzebujesz 99% skuteczności, prawdopodobnie będziesz musiał wysłać 100 żądań. To dobry przykład sytuacji, w której buforowanie kontekstu może znacznie obniżyć koszty związane z używaniem modeli Gemini przy zachowaniu wysokiej skuteczności.
Najczęstsze pytania
Gdzie najlepiej umieścić zapytanie w oknie kontekstu?
W większości przypadków, zwłaszcza jeśli łączny kontekst jest długi, skuteczność modelu będzie lepsza, jeśli umieścisz zapytanie lub pytanie na końcu prompta (po całym innym kontekście).
Czy dodanie większej liczby tokenów do zapytania obniża skuteczność modelu?
Ogólnie rzecz biorąc, jeśli nie musisz przekazywać tokenów do modelu, najlepiej ich nie przekazywać. Jeśli jednak masz dużą liczbę tokenów z informacjami i chcesz zadać pytania dotyczące tych informacji, model jest w stanie je wyodrębnić (w wielu przypadkach z dokładnością do 99%).
Jak mogę obniżyć koszty związane z zapytaniami w długim kontekście?
Jeśli masz podobny zestaw tokenów lub kontekst, którego chcesz używać wielokrotnie , pamięć podręczna kontekstu może pomóc obniżyć koszty związane z zadawaniem pytań dotyczących tych informacji.
Czy długość kontekstu wpływa na opóźnienie modelu?
W przypadku każdego żądania występuje pewne stałe opóźnienie, niezależnie od jego rozmiaru, ale ogólnie dłuższe zapytania będą miały większe opóźnienie (czas do pierwszego tokena).