Przewodnik i wgląd

Szybka kontrola pamięci podręcznej w wielomodelowej bramie API: stabilne prefiksy, izolacja dzierżawców i analiza trafień w pamięci podręcznej

Praktyczna architektura bramy chroniąca współczynnik trafień w pamięci podręcznej podpowiedzi w interfejsach API OpenAI, Anthropic i Gemini: stabilne regiony podpowiedzi, normalizacja metryk dostawców, izolacja dzierżawców, przypisywanie rozliczeń i kontrole wdrożeń.

Szybkie buforowanie jest łatwe do zmarnowania. Zespół może mieć monit systemowy na 40 000 tokenów, schemat narzędzia, blok zasad, mapę repozytorium lub pamięć agenta, które powinny nadawać się do ponownego wykorzystania, a następnie przypadkowo umieścić sygnaturę czasową, identyfikator żądania, nazwę użytkownika, fragment kodu pobierania lub losową kolejność narzędzi w górnej części podpowiedzi. Dostawca widzi inny prefiks, brakuje pamięci podręcznej, wzrasta opóźnienie, a rachunek wygląda na zagmatwany.

W aplikacji jednego dostawcy możesz to naprawić w szablonie aplikacji. W bramie wielomodelowej problem jest większy: każdy dostawca udostępnia inną kontrolę pamięci podręcznej, progi tokenów, zachowanie czasu wygaśnięcia, pola użytkowania i semantykę rozliczeń. Brama potrzebuje przenośnego wzorca płaszczyzny kontrolnej do tworzenia podpowiedzi bezpiecznych dla pamięci podręcznej, mierzenia zachowania pamięci podręcznej, izolowania dzierżawców i przypisywania kosztów.

W tym artykule opisano architekturę referencyjną. Nie jest to studium przypadku klienta i nie zawiera wyników testów porównawczych. Poniższe fakty pochodzą z dokumentacji dostawcy i badań publicznych; zalecenia projektowe stanowią wytyczne operacyjne na poziomie bramy.

Tryb awarii: monit o złamanie pamięci podręcznej

Buforowanie podpowiedzi zwykle nagradza powtarzające się przedrostki podpowiedzi. Dokładna mechanika różni się w zależności od dostawcy, ale praktyczne implikacje są spójne: jeśli zmieni się przód monitu, ucierpi na tym ponowne użycie.

Do typowych programów do łamania pamięci podręcznej należą:

  • Metadane dotyczące żądania u góry: znaczniki czasu, identyfikatory śledzenia, identyfikatory sesji, identyfikatory wdrożeń lub wygenerowane etykiety żądań.
  • Dane specyficzne dla użytkownika w przedrostku: nazwy, atrybuty konta, uprawnienia lub prywatne preferencje umieszczone przed zasadami lub blokami narzędzi wielokrotnego użytku.
  • Niestabilna serializacja narzędzi: schematy narzędzi emitowane w kolejności niedeterministycznej, ze zmieniającymi się białymi znakami lub wygenerowanymi identyfikatorami.
  • Zbyt wczesne pobranie fragmentów: kontekst RAG wstawiony przed stabilnymi instrukcjami systemu lub kontekstem współdzielonego repozytorium.
  • Dyfowanie szablonu: drobne zmiany w sformułowaniach, często publikowane bez kontroli wersji i diagnostyki pamięci podręcznej.

Brama nie może w magiczny sposób sprawić, że niestabilny prefiks będzie buforowany, ale może wymusić zawarcie umowy o natychmiastowym montażu i uwidocznić braki w pamięci podręcznej.

Fakty dotyczące dostawców, na których warto się opierać

Szczegóły mają znaczenie, ponieważ brama musi normalizować zachowanie bez udawania, że dostawcy są identyczni.

  • OpenAI: OpenAI udokumentowało buforowanie podpowiedzi dla najdłuższego wcześniej obliczonego przedrostka podpowiedzi. Zaczyna się od 1024 tokenów, zwiększa się o 128 tokenów i wyświetla liczbę tokenów w pamięci podręcznej w polach użycia. OpenAI stwierdza również, że pamięć podręczna podpowiedzi jest zwykle czyszczona po 5–10 minutach bezczynności i zawsze usuwana w ciągu godziny od ostatniego użycia pamięci podręcznej.
  • Antropiczne: Antropiczne buforowanie podpowiedzi można zażądać za pomocą cache_control. Jego dokumentacja opisuje dopasowanie pamięci podręcznej do komponentów podpowiedzi, takich jak narzędzia, zawartość systemu i komunikaty, aż do bloku oznaczonego jako kontrola pamięci podręcznej. Anthropic dokumentuje efemeryczną skrytkę, w tym 5-minutową i 1-godzinną opcję za dodatkową opłatą.
  • Gemini: buforowanie kontekstowe Google Gemini ujawnia liczbę tokenów trafień w pamięci podręcznej za pomocą metadanych użytkowania, takich jak total_cached_tokens, a jego dokumentacja zawiera minimalną liczbę tokenów wejściowych według modelu.
  • Implikacje dotyczące kontroli danych: dokumentacja API OpenAI dotycząca kontroli danych zauważa, że rozszerzone buforowanie podpowiedzi wymaga przechowywania tensorów klucz/wartość jako stanu aplikacji w pamięci lokalnej GPU. Nawet jeśli dostawcy utrzymują gwarancje izolacji, bramy powinny traktować zachowanie pamięci podręcznej jako wrażliwą infrastrukturę, a nie jak magazyn danych współdzielonej aplikacji.
  • Sygnał badawczy: w ramach badania publicznego zbadano, czy architektury typu bramy mogą wprowadzać luki w zabezpieczeniach szybkiego buforowania, które omijają założenia izolacji pamięci podręcznej na poziomie dostawcy. Nie oznacza to, że konkretna brama jest podatna na ataki, ale wspiera konserwatywny projekt izolacji dzierżawców.

Zalecenie: zaimplementuj kontrolę pamięci podręcznej jako funkcję bramy z wyraźnymi zasadami, a nie jako przypadkowy efekt uboczny powtarzających się monitów.

Umowa na szybki montaż obejmująca trzy regiony

Najważniejszą decyzją projektową jest oddzielenie treści stabilnej i niestabilnej, zanim żądanie dotrze do adaptera dostawcy.

Region 1: stabilny prefiks

Prefiks stabilny oznacza, że treść ma pozostać identyczna w wielu żądaniach dla tej samej aplikacji, trasy modelu i wersji szablonu podpowiedzi. Przykłady obejmują:

  • instrukcje systemu podstawowego;
  • blokady dotyczące bezpieczeństwa i zasad;
  • schematy narzędzi;
  • statyczna dokumentacja produktu;
  • mapy repozytoriów dla agentów kodujących;
  • instrukcje w stałym formacie wyjściowym.

Ten region powinien być deterministyczny. Brama powinna zbudować ją na podstawie wersjonowanych szablonów, kanonicznego formatu JSON i stabilnych reguł porządkowania. Jeśli dołączony jest rejestr narzędzi, posortuj narzędzia według stabilnego identyfikatora narzędzia. Jeśli uwzględnione są schematy JSON, serializuj je z deterministyczną kolejnością kluczy i bez generowanych znaczników czasu.

Region 2: półstabilny kontekst najemcy lub obszaru roboczego

Region półstabilny zmienia się rzadziej niż pojedyncze żądania, ale nie jest udostępniany globalnie. Przykłady obejmują:

  • zastąpienia zasad specyficznych dla dzierżawcy;
  • listy dozwolonych narzędzi na poziomie obszaru roboczego;
  • terminologia dostosowana do potrzeb klienta;
  • konwencje kodowania zespołowego;
  • długoterminowy kontekst projektu.

Ten region powinien obejmować zakres dzierżawy, obszaru roboczego lub granicy aplikacji. Może nadal można go przechowywać w pamięci podręcznej, ale brama nigdy nie powinna zakładać, że inny dzierżawca może bezpiecznie go ponownie użyć.

Region 3: przyrostek niestabilny

Ulotny przyrostek to część dotycząca żądania:

  • wiadomość użytkownika;
  • pobrano fragmenty tego zapytania;
  • aktualny znacznik czasu, jeśli jest to naprawdę potrzebne;
  • poproś o identyfikator i metadane śledzenia, jeśli w ogóle zostały uwzględnione w monicie;
  • krótkoterminowe zmiany w rozmowie;
  • wyniki działania narzędzia wykonawczego.

Większość błędnych ustawień pamięci podręcznej spowodowanych projektem aplikacji ma miejsce w wyniku przypadkowego umieszczenia w prefiksie danych zmiennego sufiksu. Kreator po stronie bramy powinien to utrudnić.

Wzorzec implementacji: narzędzia do tworzenia stabilnych prefiksów

Praktyczna implementacja bramy może udostępnić interfejs szybkiego montażu zamiast akceptować jeden nieprzejrzysty ciąg znaków podpowiedzi z każdej aplikacji.

{
  "template_id": "agent-kodu-v3",
  "ident_dzierżawcy": "dzierżawca_123",
  "route": "kodowanie-długiego-kontekstu",
  „stabilny_prefiks”: {
    "system_policy_version": "2026-08-01",
    "toolset_version": "narzędzia-v12",
    "repo_context_version": "repo-map-8491"
  },
  „semi_stable_context”: {
    "workspace_policy_version": "workspace-44-v6"
  },
  "volatile_suffix": {
    "user_message": "Wyjaśnij, dlaczego ten test kończy się niepowodzeniem...",
    „retrieval_context_ids”: [„kawałek_7”, „kawałek_19”],
    „trace_id”: „not_inserted_into_prompt”
  }

Następnie brama renderuje żądanie specyficzne dla dostawcy. Daje to bramie miejsce do egzekwowania reguł:

  • odrzucaj znaczniki czasu w stabilnych polach prefiksu;
  • kanonizować schematy narzędzi;
  • haszuj każdy region osobno;
  • dołącz elementy sterujące pamięcią podręczną, jeśli dostawca je obsługuje;
  • zachowaj semantykę terminów podczas późniejszego przenoszenia niestabilnego materiału;
  • zapisuj szablony i odciski palców z prefiksami na potrzeby diagnostyki.

W przypadku starszych aplikacji, które wysyłają tylko nieprzetworzone wiadomości, brama może nadal zapewniać tryb lint: sprawdzanie kolejności wiadomości, obliczanie odcisków palców prefiksów i zgłaszanie prawdopodobnych przypadków naruszenia pamięci podręcznej bez początkowego przepisywania monitu.

Warstwa adaptera dostawcy: normalizuj użycie pamięci podręcznej bez ukrywania różnic

Brama obsługująca wiele modeli nie powinna udostępniać programistom trzech niepowiązanych raportów dotyczących pamięci podręcznej. Nie powinno to również spłaszczać ekonomii specyficznej dla dostawcy tak agresywnie, tak aby wyjaśnienie faktur stało się niemożliwe.

Utwórz znormalizowaną księgę pamięci podręcznej z polami takimi jak:

{
  "request_id": "req_abc",
  "ident_dzierżawcy": "dzierżawca_123",
  "app_id": "agent-kodu",
  "route": "kodowanie-długiego-kontekstu",
  "dostawca": "nazwa_dostawcy",
  "model": "id_modelu",
  "template_id": "agent-kodu-v3",
  "stable_prefix_hash": "sha256:...",
  "semi_stable_hash": "sha256:...",
  „input_tokens_total”: 58200,
  „input_tokens_uncached”: 8200,
  „cache_write_tokens”: 50000,
  „cache_read_tokens”: 0,
  „tokeny_wyjściowe”: 1300,
  "cache_ttl_class": "efemeryczny_5m",
  "pola_cache_dostawcy": {
    "raw_field_names": "przechowywane_lub_redacted_provider_usage"
  }

Adapter mapuje użycie dostawcy na znormalizowane kategorie:

  • Tokeny wejściowe niezapisane w pamięci podręcznej: tokeny przetworzone bez rabatu za odczyt z pamięci podręcznej lub rozliczania odczytu z pamięci podręcznej.
  • Tokeny zapisu w pamięci podręcznej: tokeny, które utworzyły lub odświeżyły wpis w pamięci podręcznej po stronie dostawcy, gdy dostawca zgłosi to rozróżnienie.
  • Tokeny odczytu pamięci podręcznej: tokeny podawane z pamięci podręcznej lub liczone jako buforowane przez metadane użycia dostawcy.
  • Tokeny wyjściowe: wygenerowane tokeny, które powinny pozostać oddzielone od ekonomii pamięci podręcznej.
  • Opcja TTL: wybrana klasa czasu trwania pamięci podręcznej, w przypadku której dostawca udostępnia wybór.

Zalecenie: przechowuj surowe informacje o użyciu dostawcy w zredagowanej formie opartej na wersji schematu wraz ze znormalizowanymi polami. Normalizacja jest przydatna w przypadku dashboardów; surowe pola są niezbędne do uzgodnienia w przypadku zmiany semantyki dostawcy.

Obserwowalność pamięci podręcznej: pulpity wyjaśniające błędy

Przydatny pulpit nawigacyjny pamięci podręcznej nie tylko wyświetla całkowitą liczbę tokenów w pamięci podręcznej. Powinno to pomóc zespołom odpowiedzieć: „Które obciążenie zakłóca przedrostek i co się zmieniło?”

Śledź wskaźniki pamięci podręcznej według:

  • najemca;
  • obszar roboczy lub aplikacja;
  • model trasy;
  • dostawca i model;
  • wersja szablonu podpowiedzi;
  • stabilny skrót przedrostka;
  • półstabilny skrót kontekstu;
  • Klucz API lub konto usługi, w stosownych przypadkach;
  • okno czasowe, zwłaszcza że czasy TTL pamięci podręcznej są krótkie w przypadku wielu obciążeń.

Przydatne metryki pochodne obejmują:

  • Szybkość odczytu pamięci podręcznej: buforowane tokeny wejściowe podzielone przez łączną liczbę tokenów wejściowych kwalifikujących się do buforowania.
  • Rezygnacja z prefiksu: liczba odrębnych stabilnych skrótów prefiksów na wersję szablonu na godzinę.
  • Dryfowanie szablonu: zmiany trafień w pamięci podręcznej po wydaniu szablonu.
  • Koszt zimnego startu: wydatki na zapis w pamięci podręcznej lub dane wejściowe w pamięci podręcznej dla pierwszego żądania w serii.
  • Porównanie tras: współczynniki trafień na trasach dostawców przy tym samym logicznym obciążeniu.

Nie przechowuj domyślnie nieprzetworzonych monitów na potrzeby debugowania. Preferuj skróty, długości regionów, identyfikatory szablonów, ostrzeżenia o kanonizacji i zredagowane różnice. Jeśli zespół potrzebuje głębszego debugowania, wymagaj jawnej kontroli dostępu i limitów przechowywania.

Zasady izolacji dzierżawców: nie projektuj do ponownego wykorzystania przez wielu dzierżawców

Założenie najbezpieczniejszej bramy jest proste: zachowanie pamięci podręcznej powinno mieć zasięg dzierżawcy. Nawet jeśli dwóch dzierżawców korzysta z identycznego bloku zasad publicznych, brama nie powinna celowo kierować ani kształtować ruchu w celu wykorzystania ponownego wykorzystania pamięci podręcznej między dzierżawcami.

Zasada konserwatywna obejmuje:

  • Routing uwzględniający dzierżawców: kieruj ruch możliwy do buforowania przy użyciu granic dzierżawy, obszaru roboczego i aplikacji.
  • Brak wspólnych przedrostków zawierających sekrety: nigdy nie umieszczaj sekretów najemcy, danych uwierzytelniających, dokumentów prywatnych ani danych specyficznych dla użytkownika w udostępnionym przedrostku wielokrotnego użytku.
  • Oddzielne odciski palców prefiksu: obliczaj odciski palców z zakresem dzierżawy zawartym w księdze bramy, nawet jeśli renderowany tekst jest identyczny.
  • Kontrola na poziomie organizacji: umożliwia administratorom wyłączanie funkcji pamięci podręcznej dostawcy w przypadku wrażliwych obciążeń.
  • Izolacja dostawcy nie jest funkcją produktu do odsprzedaży: traktuj izolację pamięci podręcznej dostawcy jako podstawową ochronę, a nie pozwolenie na tworzenie pul pamięci podręcznej między klientami.

Przewidywanie: w miarę jak agenci o długim kontekście staną się coraz bardziej powszechni, zachowanie pamięci podręcznej stanie się częścią przeglądów bezpieczeństwa, a nie tylko przeglądów kosztów. Bramy, które mogą potwierdzać zasady pamięci podręcznej ograniczone do dzierżawcy, będą łatwiejsze w zarządzaniu.

Atrybucja rozliczeń: oddzielne odczyty i zapisy w pamięci podręcznej oraz zwykłe tokeny

Szybkie buforowanie może sprawić, że faktury będą trudniejsze do zrozumienia, jeśli wszystkie tokeny wejściowe będą wyświetlane jako jedna liczba. Księga rozliczeniowa powinna zawierać co najmniej pięć kategorii:

  1. niebuforowane tokeny wejściowe;
  2. tokeny zapisu w pamięci podręcznej;
  3. tokeny odczytu pamięci podręcznej;
  4. tokeny wyjściowe;
  5. Opłaty za TTL lub kontrolę pamięci podręcznej zależne od dostawcy.

Ma to znaczenie, gdy jeden dostawca rabatuje odczyty z pamięci podręcznej, inny pobiera inne opłaty za zapisy w pamięci podręcznej, a jeszcze inny udostępnia opcję dłuższego TTL. Faktura klienta powinna wyjaśniać, dlaczego dwa żądania z podobnymi łącznymi tokenami wejściowymi miały różne koszty.

W przypadku wewnętrznego obciążenia zwrotnego przypisz efekty pamięci podręcznej dzierżawcy i aplikacji, która wysłała żądanie. Unikaj przydzielania korzyści z odczytu pamięci podręcznej między jedną dzierżawą a drugą. Jeśli stabilny szablon monitu jest własnością zespołu współdzielonej platformy wewnętrznej, należy raportować wydajność pamięci podręcznej na poziomie szablonu oddzielnie od faktur najemcy.

Lista kontrolna czyszczenia pamięci podręcznej

Przed włączeniem wymuszania pamięci podręcznej uruchom szablony podpowiedzi za pomocą listy kontrolnej lint:

  • Instrukcje dotyczące stabilnego systemu pojawiają się przed niestabilnymi danymi wprowadzonymi przez użytkownika.
  • Schematy narzędzi są sortowane według stabilnego identyfikatora lub nazwy.
  • JSON jest serializowany deterministycznie.
  • W stabilnym prefiksie nie pojawiają się żadne znaczniki czasu, losowe identyfikatory, identyfikatory żądań ani identyfikatory śledzenia.
  • W udostępnionych blokach wielokrotnego użytku nie pojawiają się żadne sekrety specyficzne dla użytkownika.
  • Fragmenty RAG są umieszczane po sekcjach zasad i narzędzi wielokrotnego użytku, chyba że istnieje celowy powód, aby tego nie robić.
  • Szablony podpowiedzi mają wyraźne wersje.
  • Wersje szablonów można powiązać ze zmianami współczynnika trafień w pamięci podręcznej.
  • Kontrola pamięci podręcznej dostawcy jest używana wyłącznie poprzez kod adaptera, a nie rozproszoną logikę aplikacji.
  • Logowanie nieprzetworzonych monitów jest domyślnie wyłączone lub chronione rygorystycznymi regułami przechowywania i dostępu.

Plan wdrożenia

1. Obserwuj przed zmianą podpowiedzi

Zacznij od zebrania pól użycia dostawcy i znormalizowanych wskaźników pamięci podręcznej dla istniejącego ruchu. Oblicz odciski palców prefiksu dla pierwszych N tokenów lub dla obszarów podpowiedzi zdefiniowanych przez bramę. Celem jest znalezienie tras o dużym natężeniu ruchu i długim kontekście, charakteryzujących się dużą zmianą prefiksów.

2. Klasyfikuj obciążenia

Grupuj ruch na kategorie: sesje agentów, asystenci kodowania, RAG, automatyzacja wsparcia, analiza dokumentów, zadania wsadowe i krótki czat. Szybka praca z pamięcią podręczną zwykle skupia największą uwagę na obciążeniach z długim kontekstem i powtarzającymi się prefiksami. Krótkie podpowiedzi poniżej progów dostawcy mogą nie przynieść korzyści.

3. Przedstaw narzędzia do tworzenia stabilnych prefiksów

Przenieś jedno zadanie z surowej konstrukcji szybkiej do montażu opartego na regionie. Zachowaj semantyczny równoważność renderowanego żądania dostawcy. Nie łącz tej zmiany z migracją modelu, przeprojektowaniem narzędzi lub poważnym przepisaniem podpowiedzi, w przeciwnym razie nie będziesz wiedział, co spowodowało zmiany metryki.

4. Kanaryjska jedna trasa

Włącz kontrolę pamięci podręcznej dla małego fragmentu jednej dzierżawy lub aplikacji wewnętrznej. Porównaj współczynnik odczytu pamięci podręcznej, zmianę prefiksu, czas do pierwszego tokena, poziom błędów i kategorie kosztów. Unikaj ubiegania się o oszczędności, dopóki rachunki dostawcy nie pokryją się z księgami bramy.

5. Egzekwuj stopniowo

Po kanarku zamień ostrzeżenia o kłaczkach w kontrole zasad. Na przykład najpierw ostrzegaj o niestabilnej kolejności narzędzi, a następnie odrzuć nowe wersje szablonów, które zawierają niestabilne metadane w przedrostku stabilnym.

Kompromisy

  • Większy współczynnik trafień w pamięci podręcznej w porównaniu z elastycznością natychmiastowości: stabilne prefiksy ułatwiają ponowne użycie, ale zespoły mogą być zmuszone później przenieść instrukcje dynamiczne lub przeprojektować szablony.
  • Buforowanie natywne dostawcy a przenośność: korzystanie z kontroli pamięci podręcznej każdego dostawcy może poprawić ekonomię, ale progi, TTL, pola i semantyka cen są różne.
  • Obserwowalność a wrażliwe rejestrowanie: różnice w podpowiedziach pomagają usuwać błędy, ale skróty i zredagowana diagnostyka są bezpieczniejszymi ustawieniami domyślnymi.
  • Izolacja najemcy a maksymalne ponowne wykorzystanie: szerokie ponowne wykorzystanie może wyglądać atrakcyjnie, ale zachowanie ukierunkowane na najemcę jest bezpieczniejsze i łatwiejsze do wyjaśnienia.
  • Dłuższe przechowywanie a złożoność kosztów i zasad: dłuższe opcje TTL mogą pomóc w sesjach agentów, ale mogą powodować inne kwestie związane z cenami i kontrolą danych.

Wniosek, który można zastosować

Traktuj buforowanie podpowiedzi jako problem z płaszczyzną kontrolną bramy, a nie pole wyboru dostawcy. Praktyczny wzór jest następujący: zdefiniuj stabilne, półstabilne i lotne obszary podpowiedzi; renderuj je deterministycznie; dostosować kontrolę pamięci podręcznej specyficzną dla dostawcy za jednym interfejsem; normalizować wykorzystanie pamięci podręcznej w księdze; udostępniać diagnostykę trafień w pamięci podręcznej według dzierżawy, aplikacji, trasy i wersji szablonu; i wymuszaj założenia dotyczące zasięgu najemcy.

Pierwszym użytecznym krokiem nie jest przepisanie. Dodaj widoczność pamięci podręcznej do najdłuższych podpowiedzi, zidentyfikuj zmianę prefiksów i zaznacz szablony powodujące najwięcej chybień. Gdy już wyjaśnisz zachowanie pamięci podręcznej, możesz ją bezpiecznie zoptymalizować.

Powiązane lektury

FAQ

Często zadawane pytania

Czy brama powinna automatycznie przepisywać monity, aby poprawić trafienia w pamięci podręcznej?
Nie na początku. Zacznij od lintingu, odcisków palców i diagnostyki. Automatyczne przepisywanie może zmienić zachowanie modelu, szczególnie w przypadku monitów o użycie agenta i narzędzia. Jeśli zostanie wprowadzone przepisywanie, zrób to za pomocą szablonów wersjonowanych, kanarków i kontroli regresji semantycznej.
Czy różni dzierżawcy mogą współużytkować ten sam prefiks w pamięci podręcznej, jeśli tekst jest identyczny?
Konserwatywna brama nie powinna celowo polegać na ponownym wykorzystaniu pamięci podręcznej między dzierżawcami. Traktuj zachowanie pamięci podręcznej jako zależne od dzierżawy pod kątem routingu, obserwowalności, rozliczeń i przeglądu zabezpieczeń, nawet jeśli dostawcy utrzymują własne mechanizmy kontroli izolacji.
Jaka jest najczęstsza przyczyna niskiej liczby trafień w pamięci podręcznej podpowiedzi?
Najczęstszym problemem projektowym jest umieszczenie zmiennej treści na początku podpowiedzi: znaczników czasu, identyfikatorów żądań, metadanych użytkownika, fragmentów pobierania lub niedeterministycznie uporządkowanych schematów narzędzi. Zmiany te zmieniają przedrostek, od którego zależy buforowanie.
Co powinno być wykazywane na fakturach dla klientów?
Oddzielne tokeny wejściowe w pamięci podręcznej, tokeny zapisu w pamięci podręcznej, tokeny odczytu pamięci podręcznej, tokeny wyjściowe oraz specyficzne dla dostawcy opłaty za TTL pamięci podręcznej lub opłaty za kontrolę pamięci podręcznej. Ułatwia to wyjaśnienie, dlaczego podobne wnioski mogą wiązać się z różnymi kosztami.