Zapisywanie kontekstu w pamięci podręcznej umożliwia zapisywanie i ponowne wykorzystywanie wstępnie obliczonych tokenów wejściowych, których chcesz używać wielokrotnie, np. gdy zadajesz różne pytania dotyczące tego samego pliku multimedialnego. W zależności od sposobu użycia może to przynieść oszczędności kosztów i czasu. Szczegółowe wprowadzenie znajdziesz w przewodniku Buforowanie kontekstu.
Metoda: cachedContents.create
Tworzy zasób CachedContent.
Punkt końcowy
posthttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
Treść żądania
Treść żądania zawiera wystąpienie elementu CachedContent.
contents[]
object (Content)
Opcjonalnie. Tylko dane wejściowe. Niezmienne. Treść do zapisania w pamięci podręcznej.
tools[]
object (Tool)
Opcjonalnie. Tylko dane wejściowe. Niezmienne. Lista Tools, których model może użyć do wygenerowania następnej odpowiedzi.
expiration
Union type
expiration może mieć tylko jedną z tych wartości:expireTime
string (Timestamp format)
Sygnatura czasowa UTC wskazująca, kiedy zasób jest uznawany za nieaktualny. Jest zawsze podawana na wyjściu niezależnie od tego, co zostało wysłane na wejściu.
Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
Tylko dane wejściowe. Nowy czas życia tego zasobu (tylko dane wejściowe).
Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony znakiem „s”. Przykład: "3.5s".
displayName
string
Opcjonalnie. Niezmienne. Wygenerowana przez użytkownika nazwa wyświetlana zapisanych w pamięci podręcznej treści. Maksymalnie 128 znaków Unicode.
model
string
Wymagane. Niezmienne. Nazwa Model, która ma być używana w przypadku treści w pamięci podręcznej. Format: models/{model}
systemInstruction
object (Content)
Opcjonalnie. Tylko dane wejściowe. Niezmienne. Instrukcja systemowa ustawiona przez dewelopera. Obecnie tylko tekst.
toolConfig
object (ToolConfig)
Opcjonalnie. Tylko dane wejściowe. Niezmienne. Konfiguracja narzędzia Ta konfiguracja jest udostępniana wszystkim narzędziom.
Przykładowe żądanie
Podstawowe
Python
Node.js
Go
Muszla
Nazwa nadawcy
Python
Node.js
Go
Z czatu
Python
Node.js
Go
Treść odpowiedzi
Jeśli operacja się uda, treść odpowiedzi będzie zawierała nowo utworzoną instancję CachedContent.
Metoda: cachedContents.list
Wyświetla listę CachedContents.
Punkt końcowy
gethttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
Parametry zapytania
pageSize
integer
Opcjonalnie. Maksymalna liczba treści z pamięci podręcznej do zwrócenia. Usługa może zwrócić mniej niż ta wartość. Jeśli nie podasz tej wartości, zostanie zwrócona domyślna (poniżej maksymalnej) liczba produktów. Maksymalna wartość to 1000. Wartości powyżej 1000 zostaną zmienione na 1000.
pageToken
string
Opcjonalnie. Token strony otrzymany z poprzedniego wywołania cachedContents.list. Podaj ten token, aby pobrać kolejną stronę.
Podczas paginacji wszystkie inne parametry przekazane do funkcji cachedContents.list muszą być zgodne z wywołaniem, które dostarczyło token strony.
Treść żądania
Treść żądania musi być pusta.
Treść odpowiedzi
Odpowiedź z listą CachedContents.
W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:
cachedContents[]
object (CachedContent)
Lista treści z pamięci podręcznej.
nextPageToken
string
Token, który można wysłać jako pageToken, aby pobrać następną stronę. Jeśli pominiesz to pole, nie będzie kolejnych stron.
| Zapis JSON |
|---|
{
"cachedContents": [
{
object ( |
Metoda: cachedContents.get
Odczytuje zasób CachedContent.
Punkt końcowy
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
Parametry ścieżki
name
string
Wymagane. Nazwa zasobu odnosząca się do wpisu w pamięci podręcznej treści. Format: cachedContents/{id}. Ma postać cachedContents/{cachedcontent}.
Treść żądania
Treść żądania musi być pusta.
Przykładowe żądanie
Python
Node.js
Go
Muszla
Treść odpowiedzi
W przypadku powodzenia treść odpowiedzi obejmuje wystąpienie elementu CachedContent.
Metoda: cachedContents.patch
- Punkt końcowy
- Parametry ścieżki
- Parametry zapytania
- Treść żądania
- Treść odpowiedzi
- Zakresy autoryzacji
- Przykładowe żądanie
Aktualizuje zasób CachedContent (można aktualizować tylko datę wygaśnięcia).
Punkt końcowy
patchhttps: / /generativelanguage.googleapis.com /v1beta /{cachedContent.name=cachedContents /*}
PATCH https://generativelanguage.googleapis.com/v1beta/{cachedContent.name=cachedContents/*}
Parametry ścieżki
cachedContent.name
string
Tylko dane wyjściowe. Identyfikator. Nazwa zasobu odnosząca się do treści z pamięci podręcznej. Format: cachedContents/{id}. Ma postać cachedContents/{cachedcontent}.
Parametry zapytania
updateMask
string (FieldMask format)
Lista pól do zaktualizowania.
Jest to lista w pełni kwalifikowanych nazw pól rozdzielonych przecinkami. Przykład: "user.displayName,photo".
Treść żądania
Treść żądania zawiera wystąpienie elementu CachedContent.
expiration
Union type
expiration może mieć tylko jedną z tych wartości:expireTime
string (Timestamp format)
Sygnatura czasowa UTC wskazująca, kiedy zasób jest uznawany za nieaktualny. Jest zawsze podawana na wyjściu niezależnie od tego, co zostało wysłane na wejściu.
Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
Tylko dane wejściowe. Nowy czas życia tego zasobu (tylko dane wejściowe).
Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony znakiem „s”. Przykład: "3.5s".
Przykładowe żądanie
Python
Node.js
Go
Muszla
Treść odpowiedzi
W przypadku powodzenia treść odpowiedzi obejmuje wystąpienie elementu CachedContent.
Metoda: cachedContents.delete
Usuwa zasób CachedContent.
Punkt końcowy
deletehttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
Parametry ścieżki
name
string
Wymagane. Nazwa zasobu odnosząca się do wpisu w pamięci podręcznej treści. Format: cachedContents/{id}. Ma postać cachedContents/{cachedcontent}.
Treść żądania
Treść żądania musi być pusta.
Przykładowe żądanie
Python
Node.js
Go
Muszla
Treść odpowiedzi
Jeśli operacja się uda, treść odpowiedzi będzie pustym obiektem JSON.
Zasób REST: cachedContents
- Zasób: CachedContent
- ToolConfig
- FunctionCallingConfig
- Tryb
- RetrievalConfig
- LatLng
- UsageMetadata
- Metody
Zasób: CachedContent
Treści, które zostały wstępnie przetworzone i mogą być używane w kolejnych żądaniach do usługi GenerativeService.
Treści z pamięci podręcznej mogą być używane tylko z modelem, dla którego zostały utworzone.
contents[]
object (Content)
Opcjonalnie. Tylko dane wejściowe. Niezmienne. Treść do zapisania w pamięci podręcznej.
tools[]
object (Tool)
Opcjonalnie. Tylko dane wejściowe. Niezmienne. Lista Tools, których model może użyć do wygenerowania następnej odpowiedzi.
createTime
string (Timestamp format)
Tylko dane wyjściowe. Czas utworzenia wpisu w pamięci podręcznej.
Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".
updateTime
string (Timestamp format)
Tylko dane wyjściowe. Czas ostatniej aktualizacji wpisu w pamięci podręcznej (w strefie czasowej UTC).
Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".
usageMetadata
object (UsageMetadata)
Tylko dane wyjściowe. Metadane dotyczące korzystania z treści z pamięci podręcznej.
expiration
Union type
expiration może mieć tylko jedną z tych wartości:expireTime
string (Timestamp format)
Sygnatura czasowa UTC wskazująca, kiedy zasób jest uznawany za nieaktualny. Jest zawsze podawana na wyjściu niezależnie od tego, co zostało wysłane na wejściu.
Korzysta ze standardu RFC 3339, w którym wygenerowane dane wyjściowe są zawsze znormalizowane do formatu Z i zawierają 0, 3, 6 lub 9 cyfr po przecinku. Akceptowane są też przesunięcia inne niż „Z”. Przykłady: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" lub "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
Tylko dane wejściowe. Nowy czas życia tego zasobu (tylko dane wejściowe).
Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony znakiem „s”. Przykład: "3.5s".
name
string
Tylko dane wyjściowe. Identyfikator. Nazwa zasobu odnosząca się do treści z pamięci podręcznej. Format: cachedContents/{id}
displayName
string
Opcjonalnie. Niezmienne. Wygenerowana przez użytkownika nazwa wyświetlana zapisanych w pamięci podręcznej treści. Maksymalnie 128 znaków Unicode.
model
string
Wymagane. Niezmienne. Nazwa Model, która ma być używana w przypadku treści w pamięci podręcznej. Format: models/{model}
systemInstruction
object (Content)
Opcjonalnie. Tylko dane wejściowe. Niezmienne. Instrukcja systemowa ustawiona przez dewelopera. Obecnie tylko tekst.
toolConfig
object (ToolConfig)
Opcjonalnie. Tylko dane wejściowe. Niezmienne. Konfiguracja narzędzia Ta konfiguracja jest udostępniana wszystkim narzędziom.
| Zapis JSON |
|---|
{ "contents": [ { object ( |
ToolConfig
Konfiguracja narzędzia zawierająca parametry określające użycie Tool w żądaniu.
functionCallingConfig
object (FunctionCallingConfig)
Opcjonalnie. Konfiguracja wywoływania funkcji.
retrievalConfig
object (RetrievalConfig)
Opcjonalnie. Konfiguracja pobierania.
includeServerSideToolInvocations
boolean
Opcjonalnie. Jeśli wartość to „true”, odpowiedź interfejsu API będzie zawierać wywołania narzędzi po stronie serwera i odpowiedzi w wiadomości Content. Umożliwia to klientom obserwowanie interakcji serwera z narzędziami.
| Zapis JSON |
|---|
{ "functionCallingConfig": { object ( |
FunctionCallingConfig
Konfiguracja określająca działanie wywoływania funkcji.
mode
enum (Mode)
Opcjonalnie. Określa tryb, w którym ma być wykonywane wywoływanie funkcji. Jeśli nie zostanie określona, wartością domyślną będzie AUTO.
allowedFunctionNames[]
string
Opcjonalnie. Zbiór nazw funkcji, które po podaniu ograniczają funkcje, które model będzie wywoływać.
Tę wartość należy ustawić tylko wtedy, gdy tryb to ANY lub VALIDATED. Nazwy funkcji powinny być zgodne z [FunctionDeclaration.name]. Gdy ta opcja jest ustawiona, model będzie prognozować wywołanie funkcji tylko na podstawie dozwolonych nazw funkcji.
| Zapis JSON |
|---|
{
"mode": enum ( |
Tryb
Określa sposób wykonywania wywołań funkcji przez zdefiniowanie trybu wykonywania.
| Wartości w polu enum | |
|---|---|
MODE_UNSPECIFIED |
Nieokreślony tryb wywoływania funkcji. Nie należy używać tej wartości. |
AUTO |
Domyślne działanie modelu: model decyduje, czy przewidzieć wywołanie funkcji, czy odpowiedź w języku naturalnym. |
ANY |
Model jest ograniczony do przewidywania tylko wywołań funkcji. Jeśli ustawiono parametr „allowedFunctionNames”, przewidywane wywołanie funkcji będzie ograniczone do dowolnej z funkcji „allowedFunctionNames”. W przeciwnym razie przewidywane wywołanie funkcji będzie dowolną z funkcji „functionDeclarations”. |
NONE |
Model nie będzie prognozować żadnego wywołania funkcji. Działanie modelu jest takie samo jak w przypadku, gdy nie przekazujesz żadnych deklaracji funkcji. |
VALIDATED |
Model decyduje, czy przewidzieć wywołanie funkcji, czy odpowiedź w języku naturalnym, ale będzie weryfikować wywołania funkcji za pomocą dekodowania z ograniczeniami. Jeśli ustawiono parametr „allowedFunctionNames”, przewidywane wywołanie funkcji będzie ograniczone do dowolnej z funkcji „allowedFunctionNames”. W przeciwnym razie przewidywane wywołanie funkcji będzie dowolną z funkcji „functionDeclarations”. |
RetrievalConfig
LatLng
Obiekt reprezentujący parę szerokości i długości geograficznej. Jest to para liczb zmiennoprzecinkowych podwójnej precyzji, które reprezentują stopnie szerokości i długości geograficznej. O ile nie określono inaczej, ten obiekt musi być zgodny ze standardem WGS84. Wartości muszą mieścić się w znormalizowanych zakresach.
latitude
number
Szerokość geograficzna w stopniach. Musi mieścić się w zakresie od –90,0 do +90,0.
longitude
number
Długość geograficzna w stopniach. Musi mieścić się w zakresie [-180,0, +180,0].
| Zapis JSON |
|---|
{ "latitude": number, "longitude": number } |
UsageMetadata
Metadane dotyczące korzystania z treści z pamięci podręcznej.
totalTokenCount
integer
Łączna liczba tokenów, które zużywają treści w pamięci podręcznej.
| Zapis JSON |
|---|
{ "totalTokenCount": integer } |