Udostępnij za pośrednictwem


Buforowanie monitów

Buforowanie monitów pozwala zmniejszyć ogólne opóźnienie żądań i koszt dłuższych monitów, które mają identyczną zawartość na początku monitu. Komunikat "Monit" w tym kontekście odnosi się do danych wejściowych wysyłanych do modelu w ramach żądania ukończenia czatu. Zamiast ponownie przetwarzać te same tokeny wejściowe w kóło, usługa może zachować tymczasową pamięć podręczną przetworzonych obliczeń tokenu wejściowego w celu zwiększenia ogólnej wydajności. Buforowanie monitów nie ma wpływu na zawartość wyjściową zwracaną w odpowiedzi modelu poza zmniejszenie opóźnienia i kosztów. W przypadku obsługiwanych modeli tokeny buforowane są rozliczane według rabatu na ceny tokenów wejściowych dla typów wdrożeń w warstwie Standardowa oraz do 100% rabatu na tokeny wejściowe dla typów wdrożeń aprowizowanego.

Pamięci podręczne są zwykle czyszczone w ciągu 5–10 minut braku aktywności i są zawsze usuwane w ciągu jednej godziny od ostatniego użycia pamięci podręcznej. Pamięci podręczne monitów nie są udostępniane między subskrypcjami platformy Azure.

Obsługiwane modele

Obecnie tylko następujące modele obsługują buforowanie monitów za pomocą usługi Azure OpenAI:

  • o1-2024-12-17
  • o1-preview-2024-09-12
  • o1-mini-2024-09-12
  • gpt-4o-2024-11-20
  • gpt-4o-2024-08-06
  • gpt-4o-mini-2024-07-18
  • gpt-4o-realtime-preview (wersja 2024-12-17)"

Uwaga

Buforowanie monitów jest teraz również dostępne w ramach dostrajania modelu dla gpt-4o elementów i gpt-4o-mini. Szczegółowe informacje można znaleźć w sekcji dostrajania strony cennika.

Obsługa interfejsu API

Oficjalna obsługa buforowania monitów została po raz pierwszy dodana w wersji 2024-10-01-previewinterfejsu API . Obecnie tylko rodzina modeli o1 obsługuje parametr odpowiedzi interfejsu cached_tokens API.

Wprowadzenie

Aby żądanie skorzystało z buforowania monitu, żądanie musi mieć wartość :

  • Długość co najmniej 1024 tokenów.
  • Pierwsze 1024 tokeny w wierszu polecenia muszą być identyczne.

Po znalezieniu dopasowania między obliczeniami tokenu w wierszu polecenia i bieżącą zawartością pamięci podręcznej monitów jest określany jako trafienie pamięci podręcznej. Trafienia pamięci podręcznej będą wyświetlane jako cached_tokens w obszarze prompt_tokens_details w odpowiedzi na ukończenie czatu.

{
  "created": 1729227448,
  "model": "o1-preview-2024-09-12",
  "object": "chat.completion",
  "service_tier": null,
  "system_fingerprint": "fp_50cdd5dc04",
  "usage": {
    "completion_tokens": 1518,
    "prompt_tokens": 1566,
    "total_tokens": 3084,
    "completion_tokens_details": {
      "audio_tokens": null,
      "reasoning_tokens": 576
    },
    "prompt_tokens_details": {
      "audio_tokens": null,
      "cached_tokens": 1408
    }
  }
}

Po osiągnięciu pierwszych 1024 tokenów pamięci podręcznej wystąpi dla każdego 128 dodatkowych identycznych tokenów.

Pojedyncza różnica znaków w pierwszych 1024 tokenach spowoduje pominięcie pamięci podręcznej, która charakteryzuje się wartością cached_tokens 0. Buforowanie monitów jest domyślnie włączone bez dodatkowej konfiguracji wymaganej dla obsługiwanych modeli.

Co jest buforowane?

Modele serii o1 są tylko tekstem i nie obsługują komunikatów systemowych, obrazów, używania narzędzi/wywoływania funkcji ani strukturalnych danych wyjściowych. Ogranicza to skuteczność buforowania monitów dla tych modeli do części użytkownika/asystenta tablicy komunikatów, które są mniej prawdopodobne, aby mieć identyczny prefiks tokenu 1024.

Buforowanie monitów jest obsługiwane w następujących celach:

Obsługiwane buforowanie Opis Obsługiwane modele
Komunikaty Pełna tablica komunikatów: system, użytkownik i asystent zawartości gpt-4o
gpt-4o-mini
gpt-4o-realtime-preview (wersja 2024-12-17)
Obrazy Obrazy zawarte w komunikatach użytkownika, zarówno jako linki, jak i jako dane zakodowane w formacie base64. Parametr szczegółów musi być ustawiony tak samo w żądaniach. gpt-4o
gpt-4o-mini
Użycie narzędzia Zarówno tablica komunikatów, jak i definicje narzędzi. gpt-4o
gpt-4o-mini
gpt-4o-realtime-preview (wersja 2024-12-17)
Dane wyjściowe ze strukturą Schemat danych wyjściowych ze strukturą jest dołączany jako prefiks do komunikatu systemowego. gpt-4o
gpt-4o-mini

Aby zwiększyć prawdopodobieństwo wystąpienia trafień pamięci podręcznej, należy określić strukturę żądań, tak aby powtarzała się zawartość na początku tablicy komunikatów.

Czy mogę wyłączyć buforowanie monitów?

Buforowanie monitów jest domyślnie włączone dla wszystkich obsługiwanych modeli. Brak obsługi rezygnacji z buforowania monitów.