Interfejs Gemini API obsługuje generowanie treści z obrazami, dźwiękiem, kodem, narzędziami i innymi elementami. Aby dowiedzieć się więcej o każdej z tych funkcji, czytaj dalej i zapoznaj się z przykładowym kodem dotyczącym konkretnych zadań lub przeczytaj szczegółowe przewodniki.
- Generowanie tekstu
- Wzrok
- Dźwięk
- Wektory dystrybucyjne
- Długi kontekst
- Wykonanie kodu
- Tryb JSON
- Wywoływanie funkcji
- Instrukcje systemowe
Metoda: models.generateContent
Generuje odpowiedź modelu na podstawie danych wejściowych GenerateContentRequest. Szczegółowe informacje o korzystaniu z niej znajdziesz w przewodniku po generowaniu tekstu. Możliwości wprowadzania danych różnią się w zależności od modelu, w tym modeli dostrojonych. Szczegółowe informacje znajdziesz w przewodniku po modelach i przewodniku po dostrajaniu.
Punkt końcowy
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateContent
Parametry ścieżki
model
string
Wymagane. Nazwa Model, który ma zostać użyty do wygenerowania uzupełnienia.
Format: models/{model}. Ma on postać models/{model}.
Treść żądania
Treść żądania zawiera dane o następującej strukturze:
tools[]
object (Tool)
Opcjonalnie: Lista Tools, których Model może użyć do wygenerowania następnej odpowiedzi.
Tool to fragment kodu, który umożliwia systemowi interakcję z systemami zewnętrznymi w celu wykonania działania lub zestawu działań poza wiedzą i zakresem Model. Obsługiwane wartości Tool to Function i codeExecution. Więcej informacji znajdziesz w przewodnikach dotyczących wywoływania funkcji i wykonywania kodu.
toolConfig
object (ToolConfig)
Opcjonalnie: Konfiguracja narzędzia dla dowolnego elementu Tool określonego w żądaniu. Przykład użycia znajdziesz w przewodniku po wywoływaniu funkcji.
safetySettings[]
object (SafetySetting)
Opcjonalnie: Lista unikalnych instancji SafetySetting do blokowania niebezpiecznych treści.
Będzie to egzekwowane w przypadku GenerateContentRequest.contents i GenerateContentResponse.candidates. Nie powinno być więcej niż 1 ustawienia dla każdego typu SafetyCategory. Interfejs API będzie blokować wszelkie treści i odpowiedzi, które nie spełniają progów określonych w tych ustawieniach. Ta lista zastępuje domyślne ustawienia każdej kategorii SafetyCategory określonej w safetySettings. Jeśli na liście nie ma podanej wartości SafetySetting dla danej kategorii SafetyCategory, interfejs API użyje domyślnego ustawienia bezpieczeństwa dla tej kategorii. Obsługiwane są kategorie szkodliwych treści HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY, HARM_CATEGORY_JAILBREAK. Szczegółowe informacje o dostępnych ustawieniach bezpieczeństwa znajdziesz w przewodniku. Zapoznaj się też ze wskazówkami dotyczącymi bezpieczeństwa, aby dowiedzieć się, jak uwzględnić kwestie bezpieczeństwa w aplikacjach AI.
continuationToken
string (bytes format)
Opcjonalnie: Nieprzejrzysty token kontynuacji używany do wznowienia generowania z poprzedniej odpowiedzi models.generateContent lub models.streamGenerateContent, która została zatrzymana, gdy parametr finishReason był ustawiony na CONTINUATION. Pamiętaj, że parametr contents jest obowiązkowy i musi dokładnie odzwierciedlać prompta i historię rozmowy z początkowego żądania, gdy w żądaniu podany jest token kontynuacji.
Ciąg znaków zakodowany w formacie base64.
labels
map (key: string, value: string)
Opcjonalnie: Etykiety z metadanymi zdefiniowanymi przez użytkownika dla żądania.
Opcjonalnie: Etykiety muszą spełniać standardowe wymagania dotyczące ujednoliconych etykiet Cloud: – klucze etykiet muszą zaczynać się od litery. – Klucze i wartości etykiet nie mogą być dłuższe niż 63 znaki (punkty kodowe Unicode). Mogą zawierać tylko małe litery, cyfry, podkreślenia i myślniki. - Znaki międzynarodowe są dozwolone.
Sposób użycia: identyfikatory bezpieczeństwa od agregatorów: użyj klucza safety_identifier (np. {"safety_identifier": "user_session_123"})
Obiekt zawierający listę par "key": value. Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" }
systemInstruction
object (Content)
Opcjonalnie: Instrukcje systemowe ustawione przez dewelopera. Obecnie tylko tekst.
generationConfig
object (GenerationConfig)
Opcjonalnie: Opcje konfiguracji generowania i danych wyjściowych modelu.
cachedContent
string
Opcjonalnie: Nazwa treści zapisanych w pamięci podręcznej, które mają być używane jako kontekst do wygenerowania podpowiedzi. Format: cachedContents/{cachedContent}
serviceTier
enum (ServiceTier)
Opcjonalnie: Poziom usługi żądania.
store
boolean
Opcjonalnie: Konfiguruje zachowanie logowania dla danego żądania. Jeśli jest ustawiona, ma pierwszeństwo przed konfiguracją logowania na poziomie projektu.
Przykładowe żądanie
Tekst
Python
Node.js
Go
Muszla
Java
Obraz
Python
Node.js
Go
Muszla
Java
Audio
Python
Node.js
Go
Muszla
Wideo
Python
Node.js
Go
Muszla
Python
Go
Muszla
Czat
Python
Node.js
Go
Muszla
Java
Cache (Pamięć podręczna)
Python
Node.js
Go
Dostrojony model
Python
Tryb JSON
Python
Node.js
Go
Muszla
Java
Wykonanie kodu
Python
Go
Java
Wywoływanie funkcji
Python
Go
Node.js
Muszla
Java
Konfiguracja generowania
Python
Node.js
Go
Muszla
Java
Ustawienia bezpieczeństwa
Python
Node.js
Go
Muszla
Java
Instrukcja systemowa
Python
Node.js
Go
Muszla
Java
Treść odpowiedzi
W przypadku powodzenia treść odpowiedzi obejmuje wystąpienie elementu GenerateContentResponse.
Metoda: models.streamGenerateContent
Generuje odpowiedź strumieniową z modelu na podstawie danych wejściowych GenerateContentRequest.
Punkt końcowy
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:streamGenerateContent
Parametry ścieżki
model
string
Wymagane. Nazwa Model, który ma zostać użyty do wygenerowania uzupełnienia.
Format: models/{model}. Ma on postać models/{model}.
Treść żądania
Treść żądania zawiera dane o następującej strukturze:
tools[]
object (Tool)
Opcjonalnie: Lista Tools, których Model może użyć do wygenerowania następnej odpowiedzi.
Tool to fragment kodu, który umożliwia systemowi interakcję z systemami zewnętrznymi w celu wykonania działania lub zestawu działań poza wiedzą i zakresem Model. Obsługiwane wartości Tool to Function i codeExecution. Więcej informacji znajdziesz w przewodnikach dotyczących wywoływania funkcji i wykonywania kodu.
toolConfig
object (ToolConfig)
Opcjonalnie: Konfiguracja narzędzia dla dowolnego elementu Tool określonego w żądaniu. Przykład użycia znajdziesz w przewodniku po wywoływaniu funkcji.
safetySettings[]
object (SafetySetting)
Opcjonalnie: Lista unikalnych instancji SafetySetting do blokowania niebezpiecznych treści.
Będzie to egzekwowane w przypadku GenerateContentRequest.contents i GenerateContentResponse.candidates. Nie powinno być więcej niż 1 ustawienia dla każdego typu SafetyCategory. Interfejs API będzie blokować wszelkie treści i odpowiedzi, które nie spełniają progów określonych w tych ustawieniach. Ta lista zastępuje domyślne ustawienia każdej kategorii SafetyCategory określonej w safetySettings. Jeśli na liście nie ma podanej wartości SafetySetting dla danej kategorii SafetyCategory, interfejs API użyje domyślnego ustawienia bezpieczeństwa dla tej kategorii. Obsługiwane są kategorie szkodliwych treści HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY, HARM_CATEGORY_JAILBREAK. Szczegółowe informacje o dostępnych ustawieniach bezpieczeństwa znajdziesz w przewodniku. Zapoznaj się też ze wskazówkami dotyczącymi bezpieczeństwa, aby dowiedzieć się, jak uwzględnić kwestie bezpieczeństwa w aplikacjach AI.
continuationToken
string (bytes format)
Opcjonalnie: Nieprzejrzysty token kontynuacji używany do wznowienia generowania z poprzedniej odpowiedzi models.generateContent lub models.streamGenerateContent, która została zatrzymana, gdy parametr finishReason był ustawiony na CONTINUATION. Pamiętaj, że parametr contents jest obowiązkowy i musi dokładnie odzwierciedlać prompta i historię rozmowy z początkowego żądania, gdy w żądaniu podany jest token kontynuacji.
Ciąg znaków zakodowany w formacie base64.
labels
map (key: string, value: string)
Opcjonalnie: Etykiety z metadanymi zdefiniowanymi przez użytkownika dla żądania.
Opcjonalnie: Etykiety muszą spełniać standardowe wymagania dotyczące ujednoliconych etykiet Cloud: – klucze etykiet muszą zaczynać się od litery. – Klucze i wartości etykiet nie mogą być dłuższe niż 63 znaki (punkty kodowe Unicode). Mogą zawierać tylko małe litery, cyfry, podkreślenia i myślniki. - Znaki międzynarodowe są dozwolone.
Sposób użycia: identyfikatory bezpieczeństwa od agregatorów: użyj klucza safety_identifier (np. {"safety_identifier": "user_session_123"})
Obiekt zawierający listę par "key": value. Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" }
systemInstruction
object (Content)
Opcjonalnie: Instrukcje systemowe ustawione przez dewelopera. Obecnie tylko tekst.
generationConfig
object (GenerationConfig)
Opcjonalnie: Opcje konfiguracji generowania i danych wyjściowych modelu.
cachedContent
string
Opcjonalnie: Nazwa treści zapisanych w pamięci podręcznej, które mają być używane jako kontekst do wygenerowania podpowiedzi. Format: cachedContents/{cachedContent}
serviceTier
enum (ServiceTier)
Opcjonalnie: Poziom usługi żądania.
store
boolean
Opcjonalnie: Konfiguruje zachowanie logowania dla danego żądania. Jeśli jest ustawiona, ma pierwszeństwo przed konfiguracją logowania na poziomie projektu.
Przykładowe żądanie
Tekst
Python
Node.js
Go
Muszla
Java
Obraz
Python
Node.js
Go
Muszla
Java
Audio
Python
Go
Muszla
Wideo
Python
Node.js
Go
Muszla
Python
Go
Muszla
Czat
Python
Node.js
Go
Muszla
Treść odpowiedzi
Jeśli operacja się uda, treść odpowiedzi będzie zawierała strumień instancji GenerateContentResponse.
GenerateContentResponse
Odpowiedź modelu obsługującego wiele odpowiedzi kandydujących.
Oceny bezpieczeństwa i filtrowanie treści są raportowane zarówno w przypadku promptu w GenerateContentResponse.prompt_feedback, jak i każdego kandydata w finishReason i safetyRatings. Interfejs API: – zwraca wszystkie żądane odpowiedzi kandydujące lub żadną z nich; – nie zwraca żadnych odpowiedzi kandydujących tylko wtedy, gdy wystąpił problem z promptem (sprawdź promptFeedback); – zgłasza opinie o każdej odpowiedzi kandydującej w finishReason i safetyRatings.
candidates[]
object (Candidate)
Odpowiedzi kandydujące z modelu.
promptFeedback
object (PromptFeedback)
Zwraca opinię dotyczącą prompta związaną z filtrami treści.
usageMetadata
object (UsageMetadata)
Tylko dane wyjściowe. Metadane dotyczące wykorzystania tokenów przez żądania generowania.
modelVersion
string
Tylko dane wyjściowe. Wersja modelu użyta do wygenerowania odpowiedzi.
responseId
string
Tylko dane wyjściowe. responseId służy do identyfikowania każdej odpowiedzi.
modelStatus
object (ModelStatus)
Tylko dane wyjściowe. Bieżący stan tego modelu.
| Zapis JSON |
|---|
{ "candidates": [ { object ( |
PromptFeedback
Zestaw metadanych opinii określonych w prompcie w: GenerateContentRequest.content.
blockReason
enum (BlockReason)
Opcjonalnie: Jeśli jest ustawiona, prompt został zablokowany i nie są zwracane żadne odpowiedzi. Przeformułuj prompta.
safetyRatings[]
object (SafetyRating)
Oceny bezpieczeństwa prompta. W każdej kategorii może być maksymalnie 1 ocena.
| Zapis JSON |
|---|
{ "blockReason": enum ( |
BlockReason
Określa powód zablokowania prompta.
| Wartości w polu enum | |
|---|---|
BLOCK_REASON_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
SAFETY |
Prompt został zablokowany ze względów bezpieczeństwa. Sprawdź safetyRatings, aby dowiedzieć się, która kategoria bezpieczeństwa spowodowała blokadę. |
OTHER |
Prompt został zablokowany z nieznanych powodów. |
BLOCKLIST |
Prompt został zablokowany z powodu haseł, które znajdują się na liście zablokowanych terminów. |
PROHIBITED_CONTENT |
Prompt został zablokowany z powodu niedozwolonych treści. |
IMAGE_SAFETY |
Kandydaci zablokowani z powodu niebezpiecznych treści do generowania obrazów. |
UsageMetadata
Metadane dotyczące wykorzystania tokenów przez żądanie generowania.
promptTokenCount
integer
Liczba tokenów w prompcie. Gdy ustawiona jest wartość cachedContent, jest to nadal łączny efektywny rozmiar promptu, co oznacza, że obejmuje on liczbę tokenów w treściach zapisanych w pamięci podręcznej.
cachedContentTokenCount
integer
Liczba tokenów w części promptu zapisanej w pamięci podręcznej (treści zapisane w pamięci podręcznej)
candidatesTokenCount
integer
Łączna liczba tokenów we wszystkich wygenerowanych odpowiedziach.
toolUsePromptTokenCount
integer
Tylko dane wyjściowe. Liczba tokenów obecnych w promptach dotyczących korzystania z narzędzi.
thoughtsTokenCount
integer
Tylko dane wyjściowe. Liczba tokenów myśli w przypadku modeli myślących.
totalTokenCount
integer
Łączna liczba tokenów w żądaniu generowania (prompt + prompt dotyczący użycia narzędzia + myśli + kandydaci do odpowiedzi).
promptTokensDetails[]
object (ModalityTokenCount)
Tylko dane wyjściowe. Lista modalności, które zostały przetworzone w danych wejściowych żądania.
cacheTokensDetails[]
object (ModalityTokenCount)
Tylko dane wyjściowe. Lista modalności treści zapisanych w pamięci podręcznej w danych wejściowych żądania.
candidatesTokensDetails[]
object (ModalityTokenCount)
Tylko dane wyjściowe. Lista modalności zwróconych w odpowiedzi.
toolUsePromptTokensDetails[]
object (ModalityTokenCount)
Tylko dane wyjściowe. Lista modalności, które zostały przetworzone na potrzeby danych wejściowych żądania użycia narzędzia.
serviceTier
enum (ServiceTier)
Tylko dane wyjściowe. Typ usług żądania.
| Zapis JSON |
|---|
{ "promptTokenCount": integer, "cachedContentTokenCount": integer, "candidatesTokenCount": integer, "toolUsePromptTokenCount": integer, "thoughtsTokenCount": integer, "totalTokenCount": integer, "promptTokensDetails": [ { object ( |
ModelStatus
Stan modelu bazowego. Służy do wskazywania etapu modelu podstawowego i czasu wycofania (jeśli dotyczy).
modelStage
enum (ModelStage)
Etap modelu bazowego.
retirementTime
string (Timestamp format)
Czas, w którym model zostanie wycofany.
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".
message
string
Komunikat wyjaśniający stan modelu.
| Zapis JSON |
|---|
{
"modelStage": enum ( |
ModelStage
Określa etap modelu podstawowego.
| Wartości w polu enum | |
|---|---|
MODEL_STAGE_UNSPECIFIED |
Nieokreślony etap modelu. |
UNSTABLE_EXPERIMENTAL |
Model bazowy podlega wielu dostrojeniom. |
EXPERIMENTAL |
Modele na tym etapie służą wyłącznie do celów eksperymentalnych. |
PREVIEW |
Modele na tym etapie są bardziej dojrzałe niż modele eksperymentalne. |
STABLE |
Modele na tym etapie są uważane za stabilne i gotowe do użycia w środowisku produkcyjnym. |
LEGACY |
Jeśli model jest na tym etapie, oznacza to, że w najbliższej przyszłości zostanie wycofany. Z tego modelu mogą korzystać tylko obecni klienci. |
DEPRECATED |
Modele na tym etapie są wycofane. Nie można używać tych modeli. |
RETIRED |
Modele na tym etapie są wycofane. Nie można używać tych modeli. |
Kandydat
- Zapis JSON
- FinishReason
- GroundingAttribution
- AttributionSourceId
- GroundingPassageId
- SemanticRetrieverChunk
- GroundingMetadata
- SearchEntryPoint
- GroundingChunk
- Przeglądarka
- Obraz
- RetrievedContext
- CustomMetadata
- StringList
- Mapy
- PlaceAnswerSources
- ReviewSnippet
- GroundingSupport
- Segment
- RetrievalMetadata
- LogprobsResult
- TopCandidates
- Kandydat
- UrlContextMetadata
- UrlMetadata
- UrlRetrievalStatus
Odpowiedź kandydująca wygenerowana przez model.
content
object (Content)
Tylko dane wyjściowe. Wygenerowane treści zwrócone przez model.
finishReason
enum (FinishReason)
Opcjonalnie: Tylko dane wyjściowe. Powód, dla którego model przestał generować tokeny.
Jeśli jest puste, model nie przestał generować tokenów.
safetyRatings[]
object (SafetyRating)
Lista ocen bezpieczeństwa kandydującej odpowiedzi.
W każdej kategorii może być maksymalnie 1 ocena.
citationMetadata
object (CitationMetadata)
Tylko dane wyjściowe. Informacje o cytowaniu dotyczące kandydata wygenerowanego przez model.
To pole może zawierać informacje o recytacji dowolnego tekstu zawartego w elemencie content. Są to fragmenty „cytowane” z materiałów chronionych prawem autorskim, które znajdują się w danych treningowych podstawowego LLM.
tokenCount
integer
Tylko dane wyjściowe. Liczba tokenów dla tego kandydata.
groundingAttributions[]
object (GroundingAttribution)
Tylko dane wyjściowe. Informacje o atrybucji źródeł, które przyczyniły się do udzielenia odpowiedzi opartej na źródłach.
To pole jest wypełniane w przypadku wywołań GenerateAnswer.
groundingMetadata
object (GroundingMetadata)
Tylko dane wyjściowe. Metadane groundingu dla kandydata.
To pole jest wypełniane w przypadku wywołań GenerateContent.
avgLogprobs
number
Tylko dane wyjściowe. Średni wynik prawdopodobieństwa logarytmicznego kandydata.
logprobsResult
object (LogprobsResult)
Tylko dane wyjściowe. wyniki logarytmicznej wiarygodności dla tokenów odpowiedzi i najważniejszych tokenów;
urlContextMetadata
object (UrlContextMetadata)
Tylko dane wyjściowe. Metadane związane z narzędziem do pobierania kontekstu adresu URL.
continuationToken
string (bytes format)
Opcjonalny nieprzejrzysty token kontynuacji zwracany, gdy finishReason ma wartość CONTINUATION. Klienci mogą przekazać ten token w kolejnym wywołaniu GenerateContentRequest, aby kontynuować generowanie.
Ciąg znaków zakodowany w formacie base64.
index
integer
Tylko dane wyjściowe. Indeks kandydata na liście kandydatów do odpowiedzi.
finishMessage
string
Opcjonalnie: Tylko dane wyjściowe. Szczegółowe informacje o powodzie, dla którego model przestał generować tokeny. To pole jest wypełniane tylko wtedy, gdy ustawiono finishReason.
| Zapis JSON |
|---|
{ "content": { object ( |
FinishReason
Określa powód, dla którego model przestał generować tokeny.
| Wartości w polu enum | |
|---|---|
FINISH_REASON_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
STOP |
Naturalny punkt zatrzymania modelu lub podana sekwencja zatrzymania. |
MAX_TOKENS |
Osiągnięto maksymalną liczbę tokenów określoną w żądaniu. |
SAFETY |
Treść odpowiedzi została oznaczona ze względów bezpieczeństwa. |
RECITATION |
Treść odpowiedzi została oznaczona ze względu na cytowanie. |
LANGUAGE |
Treść odpowiedzi została oznaczona jako używająca nieobsługiwanego języka. |
OTHER |
Nieznana przyczyna. |
BLOCKLIST |
Generowanie tokenów zostało zatrzymane, ponieważ treści zawierają niedozwolone hasła. |
PROHIBITED_CONTENT |
Generowanie tokenów zostało zatrzymane, ponieważ mogą one zawierać niedozwolone treści. |
SPII |
Generowanie tokena zostało zatrzymane, ponieważ treść może zawierać informacje poufne umożliwiające identyfikację. |
MALFORMED_FUNCTION_CALL |
Wywołanie funkcji wygenerowane przez model jest nieprawidłowe. |
IMAGE_SAFETY |
Generowanie tokenów zostało zatrzymane, ponieważ wygenerowane obrazy naruszają zasady bezpieczeństwa. |
IMAGE_PROHIBITED_CONTENT |
Generowanie obrazów zostało zatrzymane, ponieważ wygenerowane obrazy zawierają inne niedozwolone treści. |
IMAGE_OTHER |
Generowanie obrazu zostało zatrzymane z powodu innego problemu. |
NO_IMAGE |
Model miał wygenerować obraz, ale go nie wygenerował. |
IMAGE_RECITATION |
Generowanie obrazu zostało zatrzymane z powodu cytowania. |
UNEXPECTED_TOOL_CALL |
Model wygenerował wywołanie narzędzia, ale w żądaniu nie włączono żadnych narzędzi. |
TOO_MANY_TOOL_CALLS |
Model wywołał zbyt wiele narzędzi po kolei, więc system zakończył wykonywanie. |
MISSING_THOUGHT_SIGNATURE |
W żądaniu brakuje co najmniej 1 podpisu myśli. |
MALFORMED_RESPONSE |
Zakończono z powodu nieprawidłowej odpowiedzi. |
ESCALATION |
Żądanie zostało odfiltrowane przez regułę przekazywania. |
PUP_LIMITED_DISABLED |
Wskazuje, że generowanie tokenów zostało zatrzymane, ponieważ konto użytkownika jest ograniczone lub wyłączone z powodu naruszenia zasad dotyczących niedozwolonych zastosowań. |
CONTINUATION |
Generowanie tokenów zostało zatrzymane, ponieważ odpowiedź osiągnęła limit tokenów na żądanie, ale generowanie nie zostało jeszcze zakończone. Odpowiedź modelu można kontynuować za pomocą kolejnego żądania, używając zwróconego parametru continuationToken. Uwaga: parametr maxOutputTokens jest kumulowany w ramach kolejnych przeskoków i musi być monotonicznie zwiększany lub pomijany. |
GroundingAttribution
Atrybucja źródła, które przyczyniło się do udzielenia odpowiedzi.
sourceId
object (AttributionSourceId)
Tylko dane wyjściowe. Identyfikator źródła, które przyczyniło się do tej atrybucji.
content
object (Content)
Treści źródłowe, na których opiera się to źródło.
| Zapis JSON |
|---|
{ "sourceId": { object ( |
AttributionSourceId
Identyfikator źródła, które przyczyniło się do tej atrybucji.
source
Union type
groundingPassage
object (GroundingPassageId)
Identyfikator fragmentu wbudowanego.
semanticRetrieverChunk
object (SemanticRetrieverChunk)
Identyfikator Chunk pobranego za pomocą semantycznego systemu pobierania.
| Zapis JSON |
|---|
{ // source "groundingPassage": { object ( |
GroundingPassageId
Identyfikator części w obiekcie GroundingPassage.
passageId
string
Tylko dane wyjściowe. Identyfikator fragmentu pasującego do GroundingPassage.id elementu GenerateAnswerRequest.
partIndex
integer
Tylko dane wyjściowe. Indeks części w GroundingPassage.content GenerateAnswerRequest.
| Zapis JSON |
|---|
{ "passageId": string, "partIndex": integer } |
SemanticRetrieverChunk
Identyfikator Chunk pobrany za pomocą semantycznego pobierania określonego w GenerateAnswerRequest przy użyciu SemanticRetrieverConfig.
source
string
Tylko dane wyjściowe. Nazwa źródła odpowiadająca wartości SemanticRetrieverConfig.source w żądaniu. Przykład: corpora/123 lub corpora/123/documents/abc
chunk
string
Tylko dane wyjściowe. Nazwa Chunk zawierającego tekst, do którego przypisano atrybucję. Przykład: corpora/123/documents/abc/chunks/xyz
| Zapis JSON |
|---|
{ "source": string, "chunk": string } |
GroundingMetadata
Metadane zwracane do klienta, gdy grounding jest włączony.
groundingChunks[]
object (GroundingChunk)
Lista źródeł potwierdzających pobranych z określonego źródła informacji. W przypadku strumieniowania zawiera tylko fragmenty źródeł, które nie zostały uwzględnione w metadanych źródeł poprzednich odpowiedzi.
groundingSupports[]
object (GroundingSupport)
Lista obsługiwanych źródeł informacji.
webSearchQueries[]
string
Zapytania do wyszukiwarki Google na potrzeby kolejnego wyszukiwania w internecie.
imageSearchQueries[]
string
Zapytania wyszukiwania obrazów używane do groundingu.
searchEntryPoint
object (SearchEntryPoint)
Opcjonalnie: Wpis w wyszukiwarce Google dotyczący kolejnych wyszukiwań w internecie.
retrievalMetadata
object (RetrievalMetadata)
Metadane związane z pobieraniem w procesie groundingu.
googleMapsWidgetContextToken
string
Opcjonalnie: Nazwa zasobu tokena kontekstowego widżetu Map Google, którego można używać z widżetem PlacesContextElement do renderowania danych kontekstowych. Wypełniane tylko wtedy, gdy włączone jest powiązanie ze źródłami informacji przy użyciu Map Google.
| Zapis JSON |
|---|
{ "groundingChunks": [ { object ( |
SearchEntryPoint
Punkt wejścia wyszukiwarki Google.
renderedContent
string
Opcjonalnie: Fragment treści z internetu, który można umieścić na stronie internetowej lub w komponencie WebView aplikacji.
sdkBlob
string (bytes format)
Opcjonalnie: Zakodowany w systemie Base64 obiekt JSON reprezentujący tablicę krotek <search term, search url>.
Ciąg znaków zakodowany w formacie base64.
| Zapis JSON |
|---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
GroundingChunk reprezentuje segment dowodów potwierdzających, na których opiera się odpowiedź modelu. Może to być fragment z internetu, kontekst pobrany z pliku lub informacje z Map Google.
chunk_type
Union type
web
object (Web)
Fragment z internetu użyty do groundingu.
image
object (Image)
Opcjonalnie: Fragment z wyszukiwarki grafiki.
retrievedContext
object (RetrievedContext)
Opcjonalnie: Fragment źródłowy z kontekstu pobranego przez narzędzie do wyszukiwania plików.
maps
object (Maps)
Opcjonalnie: Fragment powiązany ze źródłem informacji z Map Google.
| Zapis JSON |
|---|
{ // chunk_type "web": { object ( |
Sieć
Fragment z internetu.
uri
string
Tylko dane wyjściowe. Identyfikator URI fragmentu.
title
string
Tylko dane wyjściowe. Tytuł fragmentu.
| Zapis JSON |
|---|
{ "uri": string, "title": string } |
Obraz
Fragment z wyszukiwania obrazów.
sourceUri
string
Identyfikator URI strony internetowej na potrzeby atrybucji.
imageUri
string
Adres URL komponentu z obrazem.
title
string
Tytuł strony internetowej, z której pochodzi obraz.
domain
string
Domena główna strony internetowej, z której pochodzi obraz, np. „example.com”.
| Zapis JSON |
|---|
{ "sourceUri": string, "imageUri": string, "title": string, "domain": string } |
RetrievedContext
Fragment z kontekstu pobranego przez narzędzie do wyszukiwania plików.
customMetadata[]
object (CustomMetadata)
Opcjonalnie: Metadane dotyczące pobranego kontekstu podane przez użytkownika.
uri
string
Opcjonalnie: Identyfikator URI dokumentu pobierania semantycznego.
title
string
Opcjonalnie: Tytuł dokumentu.
text
string
Opcjonalnie: Tekst fragmentu.
fileSearchStore
string
Opcjonalnie: Nazwa FileSearchStore zawierającego dokument. Przykład: fileSearchStores/123
pageNumber
integer
Opcjonalnie: Numer strony pobranego kontekstu (jeśli dotyczy).
mediaId
string
Opcjonalnie: Nazwa zasobu obiektu blob multimediów dla wyników wyszukiwania plików multimodalnych. Format: fileSearchStores/{file_search_store_id}/media/{blobId}
| Zapis JSON |
|---|
{
"customMetadata": [
{
object ( |
CustomMetadata
Metadane dotyczące GroundingFact podane przez użytkownika.
key
string
Klucz metadanych.
value
Union type
stringValue
string
Opcjonalnie: Wartość ciągu przypisana do metadanych.
stringListValue
object (StringList)
Opcjonalnie: Lista wartości ciągów znaków dla metadanych.
numericValue
number
Opcjonalnie: Wartość liczbowa metadanych. Oczekiwany zakres tej wartości zależy od konkretnego używanego modelu key.
| Zapis JSON |
|---|
{
"key": string,
// value
"stringValue": string,
"stringListValue": {
object ( |
StringList
Lista wartości w formie ciągu znaków.
values[]
string
Wartości ciągu na liście.
| Zapis JSON |
|---|
{ "values": [ string ] } |
Mapy
Fragment z Map Google użyty do groundingu. Fragment mapy odpowiada jednemu miejscu.
uri
string
Identyfikator URI miejsca.
title
string
Nazwa miejsca.
text
string
Tekstowy opis odpowiedzi dotyczącej miejsca.
placeId
string
Identyfikator miejsca w formacie places/{placeId}. Użytkownik może użyć tego identyfikatora, aby wyszukać to miejsce.
placeAnswerSources
object (PlaceAnswerSources)
Źródła, które zawierają odpowiedzi na pytania o cechy danego miejsca w Mapach Google.
| Zapis JSON |
|---|
{
"uri": string,
"title": string,
"text": string,
"placeId": string,
"placeAnswerSources": {
object ( |
PlaceAnswerSources
Zbiór źródeł, które zawierają odpowiedzi na pytania o funkcje danego miejsca w Mapach Google. Każdy komunikat PlaceAnswerSources odpowiada konkretnemu miejscu w Mapach Google. Narzędzie Map Google korzystało z tych źródeł, aby odpowiadać na pytania dotyczące cech miejsca (np. „Czy w Barze Foo jest Wi-Fi?” lub „Czy Foo Bar jest dostępny dla osób na wózkach?”). Obecnie jako źródła obsługujemy tylko fragmenty opinii.
reviewSnippets[]
object (ReviewSnippet)
Fragmenty opinii, które są używane do generowania odpowiedzi na pytania o cechy danego miejsca w Mapach Google.
| Zapis JSON |
|---|
{
"reviewSnippets": [
{
object ( |
ReviewSnippet
Zawiera fragment opinii użytkownika, który odpowiada na pytanie o cechy konkretnego miejsca w Mapach Google.
reviewId
string
Identyfikator fragmentu opinii.
googleMapsUri
string
Link, który odpowiada opinii użytkownika w Mapach Google.
title
string
Tytuł opinii.
| Zapis JSON |
|---|
{ "reviewId": string, "googleMapsUri": string, "title": string } |
GroundingSupport
Obsługa groundingu.
groundingChunkIndices[]
integer
Opcjonalnie: Lista indeksów (w polu „grounding_chunk” w response.candidate.grounding_metadata) określających cytaty powiązane z twierdzeniem. Na przykład [1,3,4] oznacza, że grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] to pobrane treści przypisane do twierdzenia. Jeśli odpowiedź jest przesyłana strumieniowo, groundingChunkIndices odnosi się do indeksów we wszystkich odpowiedziach. Klient jest odpowiedzialny za gromadzenie fragmentów źródeł ze wszystkich odpowiedzi (przy zachowaniu tej samej kolejności).
confidenceScores[]
number
Opcjonalnie: Wskaźnik ufności materiałów pomocniczych. Zakres od 0 do 1. 1 to najwyższy poziom pewności. Ta lista musi mieć taki sam rozmiar jak groundingChunkIndices.
renderedParts[]
integer
Tylko dane wyjściowe. Indeksy w polu parts treści kandydata. Te indeksy określają, które wyrenderowane części są powiązane z tym źródłem pomocy.
segment
object (Segment)
Segment treści, do którego należy ta pomoc.
| Zapis JSON |
|---|
{
"groundingChunkIndices": [
integer
],
"confidenceScores": [
number
],
"renderedParts": [
integer
],
"segment": {
object ( |
Segment
Segment treści.
partIndex
integer
Indeks obiektu Part w nadrzędnym obiekcie Content.
startIndex
integer
Indeks początkowy w danej części, mierzony w bajtach. Przesunięcie od początku części (włącznie), zaczynając od zera.
endIndex
integer
Indeks końcowy w danej części, mierzony w bajtach. Przesunięcie od początku części (wykluczając najwyższą wartość), zaczynając od zera.
text
string
Tekst odpowiadający segmentowi z odpowiedzi.
| Zapis JSON |
|---|
{ "partIndex": integer, "startIndex": integer, "endIndex": integer, "text": string } |
RetrievalMetadata
Metadane związane z pobieraniem w procesie groundingu.
googleSearchDynamicRetrievalScore
number
Opcjonalnie: Wynik wskazujący, jak bardzo informacje z wyszukiwarki Google mogą pomóc w odpowiedzi na prompta. Wynik mieści się w zakresie [0, 1], gdzie 0 oznacza najmniejsze prawdopodobieństwo, a 1 – największe. Ten wynik jest wypełniany tylko wtedy, gdy włączone jest powiązanie ze źródłem informacji przy użyciu wyszukiwarki Google i dynamiczne pobieranie. Będzie ona porównywana z progiem, aby określić, czy należy uruchomić wyszukiwarkę Google.
| Zapis JSON |
|---|
{ "googleSearchDynamicRetrievalScore": number } |
LogprobsResult
Wynik logprobs
topCandidates[]
object (TopCandidates)
Długość = łączna liczba kroków dekodowania.
chosenCandidates[]
object (Candidate)
Długość = łączna liczba kroków dekodowania. Wybrani kandydaci mogą, ale nie muszą, znajdować się w topCandidates.
logProbabilitySum
number
Suma prawdopodobieństw logarytmicznych wszystkich tokenów.
| Zapis JSON |
|---|
{ "topCandidates": [ { object ( |
TopCandidates
Kandydaci z najwyższymi prawdopodobieństwami logarytmicznymi na każdym etapie dekodowania.
candidates[]
object (Candidate)
Posortowane według prawdopodobieństwa logarytmicznego w kolejności malejącej.
| Zapis JSON |
|---|
{
"candidates": [
{
object ( |
Kandydat
Kandydat na token i wynik logprobs.
token
string
Wartość ciągu tokena kandydata.
tokenId
integer
Wartość identyfikatora tokena kandydata.
logProbability
number
Prawdopodobieństwo logarytmiczne kandydata.
| Zapis JSON |
|---|
{ "token": string, "tokenId": integer, "logProbability": number } |
UrlContextMetadata
Metadane związane z narzędziem do pobierania kontekstu adresu URL.
urlMetadata[]
object (UrlMetadata)
Lista kontekstów adresów URL.
| Zapis JSON |
|---|
{
"urlMetadata": [
{
object ( |
UrlMetadata
Kontekst pobierania pojedynczego adresu URL.
retrievedUrl
string
Adres URL pobrany przez narzędzie.
urlRetrievalStatus
enum (UrlRetrievalStatus)
Stan pobierania adresu URL.
| Zapis JSON |
|---|
{
"retrievedUrl": string,
"urlRetrievalStatus": enum ( |
UrlRetrievalStatus
Stan pobierania adresu URL.
| Wartości w polu enum | |
|---|---|
URL_RETRIEVAL_STATUS_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
URL_RETRIEVAL_STATUS_SUCCESS |
Pobieranie adresu URL zakończyło się powodzeniem. |
URL_RETRIEVAL_STATUS_ERROR |
Nie udało się pobrać adresu URL z powodu błędu. |
URL_RETRIEVAL_STATUS_PAYWALL |
Nie udało się pobrać adresu URL, ponieważ treść znajduje się za paywallem. |
URL_RETRIEVAL_STATUS_UNSAFE |
Nie udało się pobrać adresu URL, ponieważ treść jest niebezpieczna. |
CitationMetadata
Zbiór atrybucji źródeł dla fragmentu treści.
citationSources[]
object (CitationSource)
cytaty ze źródeł w przypadku konkretnej odpowiedzi;
| Zapis JSON |
|---|
{
"citationSources": [
{
object ( |
CitationSource
cytat ze źródła dotyczący części konkretnej odpowiedzi.
startIndex
integer
Opcjonalnie: Początek segmentu odpowiedzi przypisanego do tego źródła.
Indeks wskazuje początek segmentu (mierzony w bajtach).
endIndex
integer
Opcjonalnie: Koniec przypisanego segmentu (wyłącznie).
uri
string
Opcjonalnie: Identyfikator URI, który jest przypisany jako źródło części tekstu.
license
string
Opcjonalnie: Licencja na projekt GitHub, który jest przypisany jako źródło segmentu.
W przypadku cytatów z kodem wymagane są informacje o licencji.
| Zapis JSON |
|---|
{ "startIndex": integer, "endIndex": integer, "uri": string, "license": string } |
HarmCategory
Kategoria oceny.
Te kategorie obejmują różne rodzaje szkód, które deweloperzy mogą chcieć dostosować.
| Wartości w polu enum | |
|---|---|
HARM_CATEGORY_UNSPECIFIED |
Kategoria nie została określona. |
HARM_CATEGORY_DEROGATORY |
PaLM – negatywne lub szkodliwe komentarze dotyczące tożsamości innej osoby lub cech chronionych. WYCOFANE: kategoria tylko dla PaLM, nieobsługiwana przez modele Gemini. |
HARM_CATEGORY_TOXICITY |
PaLM – treści, które są nieuprzejme, obraźliwe lub wulgarne. WYCOFANE: kategoria tylko dla PaLM, nieobsługiwana przez modele Gemini. |
HARM_CATEGORY_VIOLENCE |
PaLM – opisuje scenariusze przedstawiające przemoc wobec osoby lub grupy albo ogólne opisy przemocy. WYCOFANE: kategoria tylko dla PaLM, nieobsługiwana przez modele Gemini. |
HARM_CATEGORY_SEXUAL |
PaLM – treści zawierające odniesienia do aktów seksualnych lub innych lubieżnych treści. WYCOFANE: kategoria tylko dla PaLM, nieobsługiwana przez modele Gemini. |
HARM_CATEGORY_MEDICAL |
PaLM – promuje niesprawdzone porady medyczne. WYCOFANE: kategoria tylko dla PaLM, nieobsługiwana przez modele Gemini. |
HARM_CATEGORY_DANGEROUS |
PaLM – treści niebezpieczne, które promują, wspierają lub ułatwiają podejmowanie szkodliwych działań. WYCOFANE: kategoria tylko dla PaLM, nieobsługiwana przez modele Gemini. |
HARM_CATEGORY_HARASSMENT |
Gemini – treści związane z nękaniem. |
HARM_CATEGORY_HATE_SPEECH |
Gemini – szerzenie nienawiści i treści nawołujące do nienawiści. |
HARM_CATEGORY_SEXUALLY_EXPLICIT |
Gemini – treści o charakterze jednoznacznie seksualnym. |
HARM_CATEGORY_DANGEROUS_CONTENT |
Gemini – treści niebezpieczne. |
HARM_CATEGORY_CIVIC_INTEGRITY |
Gemini – treści, które mogą zostać wykorzystane do naruszenia uczciwości obywatelskiej. WYCOFANE: zamiast tego użyj enableEnhancedCivicAnswers. |
HARM_CATEGORY_JAILBREAK |
Gemini – prompty próbujące obejść lub naruszyć wskazówki dotyczące bezpieczeństwa modelu (próby jailbreaku). |
ModalityTokenCount
Reprezentuje informacje o liczbie tokenów dla pojedynczej modalności.
modality
enum (Modality)
Modalność powiązana z tą liczbą tokenów.
tokenCount
integer
Liczba tokenów.
| Zapis JSON |
|---|
{
"modality": enum ( |
Modalność
Modalność części treści
| Wartości w polu enum | |
|---|---|
MODALITY_UNSPECIFIED |
Nieokreślony sposób. |
TEXT |
Zwykły tekst. |
IMAGE |
Obraz. |
VIDEO |
Film. |
AUDIO |
Dźwięk |
DOCUMENT |
Dokument, np. PDF. |
SafetyRating
Ocena bezpieczeństwa fragmentu treści.
Ocena bezpieczeństwa zawiera kategorię szkody i poziom prawdopodobieństwa szkody w tej kategorii dla danego fragmentu treści. Treści są klasyfikowane pod kątem bezpieczeństwa w kilku kategoriach szkód, a prawdopodobieństwo klasyfikacji szkody jest podane tutaj.
category
enum (HarmCategory)
Wymagane. Kategoria tej oceny.
probability
enum (HarmProbability)
Wymagane. Prawdopodobieństwo, że te treści są szkodliwe.
blocked
boolean
Czy te treści zostały zablokowane z powodu tej oceny?
| Zapis JSON |
|---|
{ "category": enum ( |
HarmProbability
prawdopodobieństwo, że dany materiał jest szkodliwy;
System klasyfikacji podaje prawdopodobieństwo, że treści są niebezpieczne. Nie wskazuje to na stopień szkodliwości treści.
| Wartości w polu enum | |
|---|---|
HARM_PROBABILITY_UNSPECIFIED |
Prawdopodobieństwo nie zostało określone. |
NEGLIGIBLE |
Istnieje znikome prawdopodobieństwo, że treści są niebezpieczne. |
LOW |
Istnieje niewielkie prawdopodobieństwo, że treść jest niebezpieczna. |
MEDIUM |
Istnieje średnie prawdopodobieństwo, że treść jest niebezpieczna. |
HIGH |
Istnieje duże prawdopodobieństwo, że treści są niebezpieczne. |
SafetySetting
Ustawienie bezpieczeństwa, które wpływa na zachowanie blokowania ze względów bezpieczeństwa.
Przekazanie ustawienia bezpieczeństwa dla kategorii zmienia dozwolone prawdopodobieństwo zablokowania treści.
category
enum (HarmCategory)
Wymagane. Kategoria tego ustawienia.
threshold
enum (HarmBlockThreshold)
Wymagane. Określa próg prawdopodobieństwa, przy którym szkodliwe treści są blokowane.
| Zapis JSON |
|---|
{ "category": enum ( |
HarmBlockThreshold
Blokuj, gdy prawdopodobieństwo wystąpienia szkodliwych treści jest równe określonej wartości lub wyższe.
| Wartości w polu enum | |
|---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
Próg nie został określony. |
BLOCK_LOW_AND_ABOVE |
Treści z poziomem NEGLIGIBLE będą dozwolone. |
BLOCK_MEDIUM_AND_ABOVE |
Treści o poziomie NIEZNACZNYM i NISKIM będą dozwolone. |
BLOCK_ONLY_HIGH |
Treści o poziomie ryzyka NIEZNACZNY, NISKI i ŚREDNI będą dozwolone. |
BLOCK_NONE |
Wszystkie treści będą dozwolone. |
OFF |
Wyłącz filtr bezpieczeństwa. |
ServiceTier
Typ usług żądania.
| Wartości w polu enum | |
|---|---|
unspecified |
Domyślny typ usługi, czyli standardowy. |
standard |
Typ usług Standard. |
flex |
Typ usług Flex. |
priority |
Poziom usług priorytetowych. |
Treść
- Zapis JSON
- Część
- Blob
- FunctionCall
- FunctionResponse
- FunctionResponsePart
- FunctionResponseBlob
- Planowanie
- FileData
- ExecutableCode
- Język
- CodeExecutionResult
- Wynik
- ToolCall
- ToolType
- ToolResponse
- VideoMetadata
- MediaResolution
- Poziom
- MediaProcessing
- AudioTranscription
- WordInfo
- SpeechMetadata
Podstawowy uporządkowany typ danych zawierający wieloczęściową treść wiadomości.
Content zawiera pole role, które wskazuje producenta Content, oraz pole parts, które zawiera wieloczęściowe dane z treścią tury wiadomości.
parts[]
object (Part)
Uporządkowane elementy Parts, które stanowią pojedynczą wiadomość. Części mogą mieć różne typy MIME.
role
string
Opcjonalnie: Producent treści. Musi to być „user” lub „model”.
Przydatne w przypadku rozmów wieloetapowych. W przeciwnym razie można pozostawić puste lub nieustawione.
| Zapis JSON |
|---|
{
"parts": [
{
object ( |
Część
Typ danych zawierający multimedia, które są częścią wieloczęściowej wiadomości Content.
Part składa się z danych, które mają powiązany typ danych. Pole Part może zawierać tylko jeden z akceptowanych typów w Part.data.
Jeśli pole inlineData jest wypełnione nieprzetworzonymi bajtami, Part musi mieć stały typ MIME IANA, który identyfikuje typ i podtyp multimediów.
thought
boolean
Opcjonalnie: Wskazuje, czy część jest przemyślana przez model.
thoughtSignature
string (bytes format)
Opcjonalnie: Nieprzezroczysty podpis myśli, dzięki któremu można go użyć ponownie w kolejnych żądaniach.
Ciąg znaków zakodowany w formacie base64.
partMetadata
object (Struct format)
Niestandardowe metadane powiązane z częścią. Agenty używające genai.Part jako reprezentacji treści mogą potrzebować śledzenia dodatkowych informacji. Może to być na przykład nazwa pliku lub źródła, z którego pochodzi część, albo sposób multipleksowania wielu strumieni części.
mediaResolution
object (MediaResolution)
Opcjonalnie: Rozdzielczość multimediów wejściowych.
mediaProcessing
enum (MediaProcessing)
Opcjonalnie: Jak model przetwarza multimedia w tej części, aby je zrozumieć. Ma znaczenie tylko w przypadku części wideo (inlineData lub fileData z typem MIME wideo). W przypadku części innych niż wideo to pole jest ignorowane.
audioTranscription
object (AudioTranscription)
Opcjonalnie: transkrypcja dźwięku (wejściowego lub wyjściowego); Ta właściwość jest ustawiana tylko wtedy, gdy ta część zawiera dane audio.
speechMetadata
object (SpeechMetadata)
Opcjonalnie: Metadane stosowane do części tekstu w celu dostosowania sposobu ich wypowiadania lub syntezy, np. określenia tożsamości rozmówcy lub stylu mówienia.
data
Union type
text
string
Tekst wbudowany.
inlineData
object (Blob)
Bajty multimediów w tekście.
functionCall
object (FunctionCall)
Przewidywana wartość FunctionCall zwrócona z modelu, która zawiera ciąg znaków reprezentujący FunctionDeclaration.name z argumentami i ich wartościami.
functionResponse
object (FunctionResponse)
Wynik działania funkcji FunctionCall, który zawiera ciąg znaków reprezentujący FunctionDeclaration.name i uporządkowany obiekt JSON zawierający dane wyjściowe funkcji, jest używany jako kontekst dla modelu.
fileData
object (FileData)
Dane oparte na identyfikatorach URI.
executableCode
object (ExecutableCode)
Kod wygenerowany przez model, który ma zostać wykonany.
codeExecutionResult
object (CodeExecutionResult)
Wynik wykonania ExecutableCode.
toolCall
object (ToolCall)
Wywołanie narzędzia po stronie serwera. To pole jest wypełniane, gdy model przewiduje wywołanie narzędzia, które powinno zostać wykonane na serwerze. Klient powinien odesłać tę wiadomość z powrotem do interfejsu API.
toolResponse
object (ToolResponse)
Dane wyjściowe wykonania ToolCall po stronie serwera. To pole jest wypełniane przez klienta wynikami wykonania odpowiedniego ToolCall.
metadata
Union type
inline_data lub file_data, aby skonfigurować wstępne przetwarzanie statycznych multimediów dla poszczególnych części. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:videoMetadata
object (VideoMetadata)
Opcjonalnie: Metadane filmu. Metadane należy podawać tylko wtedy, gdy dane wideo są prezentowane w polu inlineData lub fileData.
| Zapis JSON |
|---|
{ "thought": boolean, "thoughtSignature": string, "partMetadata": { object }, "mediaResolution": { object ( |
Blob
Nieprzetworzone bajty multimediów.
Tekst nie powinien być wysyłany jako nieprzetworzone bajty. Użyj pola „text”.
mimeType
string
Standardowy typ MIME IANA danych źródłowych. Przykłady obsługiwanych typów: - Obrazy: image/png, image/jpeg, image/jpg, image/webp, image/heic, image/heif, image/gif, image/avif - Audio: audio/*, video/audio/s16le, video/audio/wav - Wideo: video/* - Tekst: text/plain, text/html, text/css, text/javascript, text/x-typescript, text/csv, text/markdown, text/x-python, text/xml, text/rtf, video/text/timestamp - Aplikacje: application/x-javascript, application/x-typescript, application/x-python-code, application/json, application/x-ipynb+json, application/rtf, application/pdf Dodatkowe informacje znajdziesz w artykule Obsługiwane formaty plików. //
data
string (bytes format)
Nieprzetworzone bajty w przypadku formatów multimedialnych.
Ciąg znaków zakodowany w formacie base64.
displayName
string
Opcjonalnie: Określa nazwę używaną do odwoływania się do tego obiektu blob w modelu (np. „my_blob.png”). Używany jako identyfikator odwołania do obiektu blob, gdy właściwość verbalizationMode jest ustawiona na REFERENCE_ONLY.
| Zapis JSON |
|---|
{ "mimeType": string, "data": string, "displayName": string } |
FunctionCall
Przewidywana wartość FunctionCall zwrócona z modelu, która zawiera ciąg znaków reprezentujący FunctionDeclaration.name z argumentami i ich wartościami.
id
string
Opcjonalnie: Unikalny identyfikator wywołania funkcji. Jeśli to pole jest wypełnione, klient powinien wykonać functionCall i zwrócić odpowiedź z pasującym id.
name
string
Wymagane. Nazwa funkcji do wywołania. Może zawierać znaki a–z, A–Z, 0–9, podkreślenia i łączniki. Maksymalna długość to 128 znaków.
args
object (Struct format)
Opcjonalnie: Parametry i wartości funkcji w formacie obiektu JSON.
| Zapis JSON |
|---|
{ "id": string, "name": string, "args": { object } } |
FunctionResponse
Wynik z FunctionCall, który zawiera ciąg znaków reprezentujący FunctionDeclaration.name i uporządkowany obiekt JSON zawierający dane wyjściowe z funkcji, jest używany jako kontekst dla modelu. Powinien zawierać wynik FunctionCall na podstawie prognozy modelu.
id
string
Opcjonalnie: Identyfikator wywołania funkcji, którego dotyczy ta odpowiedź. Wypełniane przez klienta w celu dopasowania do odpowiedniego wywołania funkcji id.
name
string
Wymagane. Nazwa funkcji do wywołania. Może zawierać znaki a–z, A–Z, 0–9, podkreślenia i łączniki. Maksymalna długość to 128 znaków.
response
object (Struct format)
Wymagane. Odpowiedź funkcji w formacie obiektu JSON. Wywołujący mogą używać dowolnych kluczy, które pasują do składni funkcji, aby zwracać dane wyjściowe funkcji, np. „output”, „result” itp. W szczególności, jeśli nie udało się wykonać wywołania funkcji, odpowiedź może zawierać klucz „error”, który zwraca szczegóły błędu do modelu.
Multimedia można dołączyć, używając podobiektu zawierającego pojedynczy klucz „$ref”, którego wartością jest inlineData.display_name obiektu FunctionResponsePart zawierającego multimedia. Więcej informacji znajdziesz na stronie https://ai.google.dev/gemini-api/docs/function-calling#multimodal.
parts[]
object (FunctionResponsePart)
Opcjonalnie: Uporządkowane elementy Parts, które stanowią odpowiedź funkcji. Części mogą mieć różne typy MIME IANA.
willContinue
boolean
Opcjonalnie: Sygnalizuje, że wywołanie funkcji jest kontynuowane i zostanie zwróconych więcej odpowiedzi, co przekształca wywołanie funkcji w generator. Ma zastosowanie tylko do wywołań funkcji NON_BLOCKING, w przeciwnym razie jest ignorowana. Jeśli ma wartość Fałsz, przyszłe odpowiedzi nie będą brane pod uwagę. Można zwrócić pusty obiekt response z willContinue=False, aby zasygnalizować, że wywołanie funkcji zostało zakończone. Może to nadal powodować generowanie modelu. Aby uniknąć uruchomienia generowania i zakończyć wywołanie funkcji, dodatkowo ustaw scheduling na SILENT.
scheduling
enum (Scheduling)
Opcjonalnie: Określa, jak odpowiedź powinna być zaplanowana w rozmowie. Dotyczy tylko wywołań funkcji NON_BLOCKING, w innym przypadku jest ignorowane. Domyślna wartość to WHEN_IDLE.
| Zapis JSON |
|---|
{ "id": string, "name": string, "response": { object }, "parts": [ { object ( |
FunctionResponsePart
Typ danych zawierający multimedia, które są częścią wiadomości FunctionResponse.
FunctionResponsePart składa się z danych, które mają powiązany typ danych. Pole FunctionResponsePart może zawierać tylko jeden z akceptowanych typów w FunctionResponsePart.data.
Jeśli pole inlineData jest wypełnione nieprzetworzonymi bajtami, FunctionResponsePart musi mieć stały typ MIME IANA identyfikujący typ i podtyp multimediów.
data
Union type
inlineData
object (FunctionResponseBlob)
Bajty multimediów w tekście.
| Zapis JSON |
|---|
{
// data
"inlineData": {
object ( |
FunctionResponseBlob
Nieprzetworzone bajty multimediów dla odpowiedzi funkcji.
Tekst nie powinien być wysyłany jako nieprzetworzone bajty. Użyj pola „FunctionResponse.response”.
mimeType
string
Standardowy typ MIME IANA danych źródłowych. Przykłady: - image/png - image/jpeg Jeśli podasz nieobsługiwany typ MIME, zostanie zwrócony błąd. Pełną listę obsługiwanych typów znajdziesz w artykule Obsługiwane formaty plików.
data
string (bytes format)
Nieprzetworzone bajty w przypadku formatów multimedialnych.
Ciąg znaków zakodowany w formacie base64.
| Zapis JSON |
|---|
{ "mimeType": string, "data": string } |
Harmonogram
Określa, jak odpowiedź powinna być zaplanowana w rozmowie.
| Wartości w polu enum | |
|---|---|
SCHEDULING_UNSPECIFIED |
Ta wartość nie jest używana. |
SILENT |
Dodaj wynik tylko do kontekstu rozmowy, nie przerywaj ani nie aktywuj generowania. |
WHEN_IDLE |
dodać wynik do kontekstu rozmowy i wygenerować prompt bez przerywania trwającego procesu generowania. |
INTERRUPT |
Dodaj wynik do kontekstu rozmowy, przerwij trwające generowanie i wyświetl prompt, aby wygenerować dane wyjściowe. |
FileData
Dane oparte na identyfikatorze URI.
mimeType
string
Opcjonalnie: Standardowy typ MIME IANA danych źródłowych.
fileUri
string
Wymagane. URI.
displayName
string
Opcjonalnie: Określa nazwę używaną do odwoływania się do tego pliku w modelu (np. „mój_plik.pdf”). Używany jako identyfikator pliku referencyjnego, gdy parametr verbalizationMode ma wartość REFERENCE_ONLY.
| Zapis JSON |
|---|
{ "mimeType": string, "fileUri": string, "displayName": string } |
ExecutableCode
Kod wygenerowany przez model, który ma zostać wykonany, i wynik zwrócony do modelu.
Są generowane tylko podczas korzystania z narzędzia CodeExecution, w którym kod zostanie automatycznie wykonany, a odpowiedni CodeExecutionResult zostanie również wygenerowany.
id
string
Opcjonalnie: Unikalny identyfikator części ExecutableCode. Serwer zwraca CodeExecutionResult z pasującym id.
language
enum (Language)
Wymagane. Język programowania code.
code
string
Wymagane. Kod do wykonania.
| Zapis JSON |
|---|
{
"id": string,
"language": enum ( |
Język
Obsługiwane języki programowania dla wygenerowanego kodu.
| Wartości w polu enum | |
|---|---|
LANGUAGE_UNSPECIFIED |
Nieokreślony język. Nie należy używać tej wartości. |
PYTHON |
Python >= 3.10 z dostępnymi bibliotekami numpy i simpy. Domyślnym językiem jest Python. |
CodeExecutionResult
Wynik wykonania ExecutableCode.
Generowane tylko wtedy, gdy używane jest narzędzie CodeExecution.
id
string
Opcjonalnie: Identyfikator części ExecutableCode, której dotyczy ten wynik. Wypełniane tylko wtedy, gdy odpowiedni element ExecutableCode ma identyfikator.
outcome
enum (Outcome)
Wymagane. Wynik wykonania kodu.
output
string
Opcjonalnie: Zawiera stdout, gdy wykonanie kodu się powiedzie, lub stderr albo inny opis w przeciwnym razie.
| Zapis JSON |
|---|
{
"id": string,
"outcome": enum ( |
Wynik
Wyliczenie możliwych wyników wykonania kodu.
| Wartości w polu enum | |
|---|---|
OUTCOME_UNSPECIFIED |
Stan nieokreślony. Nie należy używać tej wartości. |
OUTCOME_OK |
Wykonanie kodu zakończyło się pomyślnie. output zawiera standardowe wyjście (jeśli jest dostępne). |
OUTCOME_FAILED |
Nie udało się wykonać kodu. output zawiera stderr i stdout, jeśli istnieją. |
OUTCOME_DEADLINE_EXCEEDED |
Wykonywanie kodu trwało zbyt długo i zostało anulowane. Może być obecny częściowy element output. |
ToolCall
Przewidywana wartość ToolCall po stronie serwera zwrócona przez model. Ta wiadomość zawiera informacje o narzędziu, które model chce wywołać. Klient NIE powinien wykonywać tego ToolCall. Zamiast tego klient powinien przekazać ten ToolCall z powrotem do interfejsu API w kolejnej turze w wiadomości Content wraz z odpowiednim ToolResponse.
id
string
Opcjonalnie: Unikalny identyfikator wywołania narzędzia. Serwer zwraca odpowiedź narzędzia z pasującym identyfikatorem id.
toolName
string
Opcjonalnie: Nazwa wywołanego narzędzia.
toolType
enum (ToolType)
Wymagane. Typ wywołanego narzędzia.
args
object (Struct format)
Opcjonalnie: Argumenty wywołania narzędzia. Przykład: {"arg1" : "value1", "arg2" : "value2" , ...}
| Zapis JSON |
|---|
{
"id": string,
"toolName": string,
"toolType": enum ( |
ToolType
Typ narzędzia w wywołaniu funkcji.
| Wartości w polu enum | |
|---|---|
TOOL_TYPE_UNSPECIFIED |
Nieokreślony typ narzędzia. |
GOOGLE_SEARCH_WEB |
Narzędzie wyszukiwarki Google, mapowane na Tool.google_search.search_types.web_search. |
GOOGLE_SEARCH_IMAGE |
Narzędzie do wyszukiwania grafiki, mapowane na Tool.google_search.search_types.image_search. |
URL_CONTEXT |
Narzędzie kontekstu adresu URL, mapowane na Tool.url_context. |
GOOGLE_MAPS |
Narzędzie Map Google, mapowane na Tool.google_maps. |
FILE_SEARCH |
Narzędzie do wyszukiwania plików, mapowane na Tool.file_search. |
ToolResponse
Dane wyjściowe wykonania ToolCall po stronie serwera. Ta wiadomość zawiera wyniki wywołania narzędzia, które zostało zainicjowane przez ToolCall z modelu. Klient powinien przekazać ten ToolResponse z powrotem do interfejsu API w kolejnej turze w wiadomości Content wraz z odpowiednim ToolCall.
id
string
Opcjonalnie: Identyfikator wywołania narzędzia, którego dotyczy ta odpowiedź.
toolType
enum (ToolType)
Wymagane. Typ wywołanego narzędzia, który odpowiada toolType w odpowiednim ToolCall.
response
object (Struct format)
Opcjonalnie: Odpowiedź narzędzia.
| Zapis JSON |
|---|
{
"id": string,
"toolType": enum ( |
VideoMetadata
Metadane opisują wejściowe treści wideo. Ustaw to w polu Part.video_metadata lub FunctionResponsePart.video_metadata, gdy pole inlineData lub fileData zawiera film, aby skonfigurować wstępne przetwarzanie statycznego filmu (np. przycinanie czasu, liczbę klatek, maksymalną liczbę klatek lub wyodrębnione warstwy treści).
startOffset
string (Duration format)
Opcjonalnie: Przesunięcie początku filmu.
Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony literą „s”. Przykład: "3.5s".
endOffset
string (Duration format)
Opcjonalnie: Przesunięcie końca filmu.
Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony literą „s”. Przykład: "3.5s".
fps
number
Opcjonalnie: Liczba klatek filmu wysłanego do modelu. Jeśli nie zostanie określona, domyślna wartość to 1,0. Zakres liczby klatek na sekundę to (0,0, 24,0].
| Zapis JSON |
|---|
{ "startOffset": string, "endOffset": string, "fps": number } |
MediaResolution
Rozdzielczość multimediów na potrzeby tokenizacji.
value
Union type
level
enum (Level)
Jakość tokenizacji używana w przypadku danych multimediów.
| Zapis JSON |
|---|
{
// value
"level": enum ( |
Poziom
Poziom rozdzielczości multimediów.
| Wartości w polu enum | |
|---|---|
MEDIA_RESOLUTION_UNSPECIFIED |
Nie ustawiono rozdzielczości multimediów. |
MEDIA_RESOLUTION_LOW |
Rozdzielczość multimediów jest ustawiona na niską. |
MEDIA_RESOLUTION_MEDIUM |
Ustawiono średnią rozdzielczość multimediów. |
MEDIA_RESOLUTION_HIGH |
Ustawiono wysoką rozdzielczość multimediów. |
MEDIA_RESOLUTION_ULTRA_HIGH |
Rozdzielczość multimediów ustawiona na bardzo wysoką. |
MediaProcessing
Jak model przetwarza wejściowe multimedia, aby je zrozumieć.
| Wartości w polu enum | |
|---|---|
MEDIA_PROCESSING_UNSPECIFIED |
Domyślnie jest to przetwarzanie zależne od modelu. |
STATIC |
Wyodrębnianie klatek ze stałą częstotliwością. Wszystkie klatki umieszczone w kontekście. |
AGENTIC |
Nawigacja dynamiczna oparta na modelu. Zalecany do większości zastosowań. |
AudioTranscription
Transkrypcja części audio. W przypadku dźwięku z wieloma rozmówcami każdy segment rozmówcy jest osobną częścią z własnym obiektem AudioTranscription zawierającym etykietę speakerLabel.
text
string
Wymagane. Transkrypcja tego segmentu audio.
speakerLabel
string
Opcjonalnie: Etykieta identyfikująca rozmówcę w tym segmencie audio (np. „spk_1”, „spk_2”). Występuje, gdy ustawiona jest diaryzacja.
words[]
object (WordInfo)
Opcjonalnie: szczegółowe transkrypcje na poziomie słów i informacje o czasie; Występuje, gdy ustawiono parametr wordTimestamp.
| Zapis JSON |
|---|
{
"text": string,
"speakerLabel": string,
"words": [
{
object ( |
WordInfo
Informacje o pojedynczym rozpoznanym słowie.
word
string
Wymagane. Transkrypcja słowa.
startOffset
string (Duration format)
Opcjonalnie: Przesunięcie początku słowa względem początku dźwięku.
Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony literą „s”. Przykład: "3.5s".
endOffset
string (Duration format)
Opcjonalnie: Przesunięcie końca słowa w czasie względem początku dźwięku.
Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony literą „s”. Przykład: "3.5s".
| Zapis JSON |
|---|
{ "word": string, "startOffset": string, "endOffset": string } |
SpeechMetadata
Metadane mowy dla text części.
speaker
string
Opcjonalnie: Opcjonalna nazwa rozmówcy na potrzeby syntezy wielu rozmówców.
style
string
Opcjonalnie: Opcjonalne instrukcje dotyczące stylu syntezy mowy.
| Zapis JSON |
|---|
{ "speaker": string, "style": string } |
Środowisko
Środowisko wykonawcze agenta.
id
string
Wymagane. Tylko dane wyjściowe. Identyfikator środowiska.
sources[]
object (Source)
Źródła do zamontowania w środowisku.
created
string
Tylko dane wyjściowe. Czas utworzenia środowiska w formacie ISO 8601 (RRRR-MM-DDThh:mm:ssZ).
updated
string
Tylko dane wyjściowe. Czas ostatniej aktualizacji środowiska w formacie ISO 8601 (RRRR-MM-DDThh:mm:ssZ).
lastAccessed
string
Tylko dane wyjściowe. Czas ostatniego dostępu do środowiska w formacie ISO 8601 (RRRR-MM-DDThh:mm:ssZ).
status
enum (Status)
Tylko dane wyjściowe. Stan kontenera środowiska.
fileCount
string (int64 format)
Tylko dane wyjściowe. Liczba plików w środowisku, tylko dane wyjściowe.
sizeBytes
string (int64 format)
Tylko dane wyjściowe. Łączny rozmiar plików środowiska w bajtach, tylko dane wyjściowe.
network
Union type
networkAllowlist
object (EnvironmentNetworkEgressAllowlist)
Zezwalaj tylko na określone domeny.
networkMode
enum (NetworkMode)
Tryb ruchu wychodzącego z sieci.
| Zapis JSON |
|---|
{ "id": string, "sources": [ { object ( |
Stan
Stan środowiska.
| Wartości w polu enum | |
|---|---|
STATUS_UNSPECIFIED |
|
ACTIVE |
|
EXPIRED |
|
NetworkMode
Tryb ruchu wychodzącego z sieci w przypadku konfiguracji spoza listy dozwolonych.
| Wartości w polu enum | |
|---|---|
NETWORK_MODE_UNSPECIFIED |
Wartość domyślna. Nieużywane. |
DISABLED |
Cały ruch wychodzący z sieci jest blokowany. |
Schemat
Obiekt Schema umożliwia definiowanie typów danych wejściowych i wyjściowych. Te typy mogą być obiektami, ale też elementami podstawowymi i tablicami. Reprezentuje wybrany podzbiór obiektu schematu OpenAPI 3.0.
type
enum (Type)
Wymagane. Typ danych.
format
string
Opcjonalnie: Format danych. Dozwolona jest dowolna wartość, ale większość z nich nie aktywuje żadnych specjalnych funkcji.
title
string
Opcjonalnie: Tytuł schematu.
description
string
Opcjonalnie: Krótki opis parametru. Może zawierać przykłady użycia. Opis parametru może być sformatowany jako Markdown.
nullable
boolean
Opcjonalnie: Wskazuje, czy wartość może być pusta.
enum[]
string
Opcjonalnie: Możliwe wartości elementu Type.STRING w formacie typu wyliczeniowego. Możemy na przykład zdefiniować typ wyliczeniowy Direction jako : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]}
maxItems
string (int64 format)
Opcjonalnie: Maksymalna liczba elementów dla Type.ARRAY.
minItems
string (int64 format)
Opcjonalnie: Minimalna liczba elementów dla typu Type.ARRAY.
properties
map (key: string, value: object (Schema))
Opcjonalnie: Właściwości typu Type.OBJECT.
Obiekt zawierający listę par "key": value. Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" }
required[]
string
Opcjonalnie: Wymagane właściwości Type.OBJECT.
minProperties
string (int64 format)
Opcjonalnie: Minimalna liczba właściwości dla Type.OBJECT.
maxProperties
string (int64 format)
Opcjonalnie: Maksymalna liczba właściwości dla Type.OBJECT.
minLength
string (int64 format)
Opcjonalnie: POLA SCHEMATU DLA TYPU STRING Minimalna długość typu STRING
maxLength
string (int64 format)
Opcjonalnie: Maksymalna długość typu Type.STRING
pattern
string
Opcjonalnie: Wzorzec typu Type.STRING, który ogranicza ciąg znaków do wyrażenia regularnego.
example
value (Value format)
Opcjonalnie: Przykład obiektu. Wypełniane tylko wtedy, gdy obiekt jest elementem głównym.
anyOf[]
object (Schema)
Opcjonalnie: Wartość powinna zostać zweryfikowana pod kątem dowolnego (jednego lub kilku) podschematu na liście.
propertyOrdering[]
string
Opcjonalnie: Kolejność właściwości. Nie jest to standardowe pole w specyfikacji OpenAPI. Służy do określania kolejności właściwości w odpowiedzi.
default
value (Value format)
Opcjonalnie: Wartość domyślna pola. Zgodnie ze schematem JSON to pole jest przeznaczone dla generatorów dokumentacji i nie wpływa na weryfikację. Dlatego jest on tutaj uwzględniony i ignorowany, aby deweloperzy, którzy wysyłają schematy z polem default, nie otrzymywali błędów dotyczących nieznanego pola.
items
object (Schema)
Opcjonalnie: Schemat elementów typu Type.ARRAY.
minimum
number
Opcjonalnie: POLA SCHEMATU DLA TYPU INTEGER i NUMBER Minimalna wartość dla Type.INTEGER i Type.NUMBER
maximum
number
Opcjonalnie: Maksymalna wartość typu Type.INTEGER i Type.NUMBER
| Zapis JSON |
|---|
{ "type": enum ( |
Typ
Typ zawiera listę typów danych OpenAPI zdefiniowanych na stronie https://spec.openapis.org/oas/v3.0.3#data-types.
| Wartości w polu enum | |
|---|---|
TYPE_UNSPECIFIED |
Nie określono, nie należy używać. |
STRING |
Typ ciągu znaków. |
NUMBER |
Typ numeru. |
INTEGER |
Typ liczby całkowitej. |
BOOLEAN |
Typ logiczny. |
ARRAY |
Typ tablicy. |
OBJECT |
Typ obiektu. |
NULL |
Typ Null. |
Narzędzie
- Zapis JSON
- FunctionDeclaration
- Zachowanie
- GoogleSearchRetrieval
- DynamicRetrievalConfig
- Tryb
- CodeExecution
- GoogleSearch
- Interwał
- SearchTypes
- WebSearch
- ImageSearch
- ComputerUse
- środowisko.
- SafetyPolicy
- UrlContext
- FileSearch
- McpServer
- StreamableHttpTransport
- GoogleMaps
Szczegóły narzędzia, których model może użyć do wygenerowania odpowiedzi.
Tool to fragment kodu, który umożliwia systemowi interakcję z systemami zewnętrznymi w celu wykonania działania lub zestawu działań poza wiedzą i zakresem modelu.
functionDeclarations[]
object (FunctionDeclaration)
Opcjonalnie: Lista FunctionDeclarations dostępnych dla modelu, których można używać do wywoływania funkcji.
Model lub system nie wykonuje funkcji. Zamiast tego zdefiniowana funkcja może zostać zwrócona jako FunctionCall z argumentami po stronie klienta do wykonania. Model może zdecydować o wywołaniu podzbioru tych funkcji, wypełniając FunctionCall w odpowiedzi. Następna tura rozmowy może zawierać FunctionResponse z kontekstem generowania Content.role „funkcja” dla następnej tury modelu.
googleSearchRetrieval
object (GoogleSearchRetrieval)
Opcjonalnie: Narzędzie do pobierania danych, które jest obsługiwane przez wyszukiwarkę Google.
codeExecution
object (CodeExecution)
Opcjonalnie: Umożliwia modelowi wykonywanie kodu w ramach generowania.
googleSearch
object (GoogleSearch)
Opcjonalnie: Typ narzędzia GoogleSearch. Narzędzie do obsługi wyszukiwarki Google w modelu. Technologia Google.
computerUse
object (ComputerUse)
Opcjonalnie: Narzędzie, które umożliwia modelowi bezpośrednią interakcję z komputerem. Jeśli ta opcja jest włączona, automatycznie wypełnia deklaracje funkcji dotyczące korzystania z komputera.
urlContext
object (UrlContext)
Opcjonalnie: Narzędzie do pobierania kontekstu adresu URL.
fileSearch
object (FileSearch)
Opcjonalnie: Typ narzędzia FileSearch. Narzędzie do pobierania wiedzy z korpusów wyszukiwania semantycznego.
mcpServers[]
object (McpServer)
Opcjonalnie: Serwery MCP, z którymi można się połączyć.
googleMaps
object (GoogleMaps)
Opcjonalnie: Narzędzie, które umożliwia ugruntowanie odpowiedzi modelu za pomocą kontekstu geoprzestrzennego związanego z zapytaniem użytkownika.
| Zapis JSON |
|---|
{ "functionDeclarations": [ { object ( |
FunctionDeclaration
Ustrukturyzowana reprezentacja deklaracji funkcji zgodnie ze specyfikacją OpenAPI 3.03. Deklaracja zawiera nazwę funkcji i parametry. Ta deklaracja FunctionDeclaration reprezentuje blok kodu, który może być używany przez model jako Tool i wykonywany przez klienta.
name
string
Wymagane. Nazwa funkcji. Musi zawierać znaki a–z, A–Z, 0–9 lub podkreślenia, dwukropki, kropki i myślniki. Maksymalna długość to 128 znaków.
description
string
Wymagane. Krótki opis funkcji.
behavior
enum (Behavior)
Opcjonalnie: Określa zachowanie funkcji. Obecnie obsługiwane tylko przez metodę BidiGenerateContent.
parameters
object (Schema)
Opcjonalnie: Opisuje parametry tej funkcji. Odzwierciedla ciąg znaków klucza obiektu parametru Open API 3.03: nazwa parametru. W nazwach parametrów wielkość liter ma znaczenie, Wartość schematu: schemat definiujący typ używany dla parametru.
parametersJsonSchema
value (Value format)
Opcjonalnie: Opisuje parametry funkcji w formacie schematu JSON. Schemat musi opisywać obiekt, którego właściwości są parametrami funkcji. Na przykład:
{
"type": "object",
"properties": {
"name": { "type": "string" },
"age": { "type": "integer" }
},
"additionalProperties": false,
"required": ["name", "age"],
"propertyOrdering": ["name", "age"]
}
To pole wyklucza się z polem parameters.
response
object (Schema)
Opcjonalnie: Opisuje dane wyjściowe tej funkcji w formacie schematu JSON. Odzwierciedla obiekt odpowiedzi Open API 3.03. Schemat definiuje typ używany dla wartości odpowiedzi funkcji.
responseJsonSchema
value (Value format)
Opcjonalnie: Opisuje dane wyjściowe tej funkcji w formacie schematu JSON. Wartość określona przez schemat jest wartością odpowiedzi funkcji.
To pole wyklucza się wzajemnie z polem response.
Zachowanie
Definiuje zachowanie funkcji. Domyślna wartość to BLOCKING.
| Wartości w polu enum | |
|---|---|
UNSPECIFIED |
Ta wartość nie jest używana. |
BLOCKING |
Jeśli jest ustawiona, system będzie czekać na odpowiedź funkcji, zanim będzie kontynuować rozmowę. |
NON_BLOCKING |
Jeśli ta opcja jest ustawiona, system nie będzie czekać na odpowiedź funkcji. Zamiast tego będzie próbować obsługiwać odpowiedzi funkcji, gdy staną się dostępne, zachowując rozmowę między użytkownikiem a modelem. |
GoogleSearchRetrieval
Narzędzie do pobierania publicznych danych internetowych na potrzeby groundingu, oparte na technologii Google.
dynamicRetrievalConfig
object (DynamicRetrievalConfig)
Określa konfigurację dynamicznego pobierania dla danego źródła.
| Zapis JSON |
|---|
{
"dynamicRetrievalConfig": {
object ( |
DynamicRetrievalConfig
Opisuje opcje dostosowywania dynamicznego pobierania.
mode
enum (Mode)
Tryb predyktora, który ma być używany w dynamicznym pobieraniu.
dynamicThreshold
number
Próg, który ma być używany w przypadku dynamicznego pobierania. Jeśli nie zostanie ustawiona, używana jest domyślna wartość systemowa.
| Zapis JSON |
|---|
{
"mode": enum ( |
Tryb
Tryb predyktora, który ma być używany w dynamicznym pobieraniu.
| Wartości w polu enum | |
|---|---|
MODE_UNSPECIFIED |
Zawsze aktywuj pobieranie. |
MODE_DYNAMIC |
Uruchamiaj pobieranie tylko wtedy, gdy system uzna, że jest to konieczne. |
CodeExecution
Ten typ nie ma pól.
Narzędzie, które wykonuje kod wygenerowany przez model i automatycznie zwraca wynik do modelu.
Zobacz też ExecutableCode i CodeExecutionResult, które są generowane tylko podczas korzystania z tego narzędzia.
GoogleSearch
Typ narzędzia GoogleSearch. Narzędzie do obsługi wyszukiwarki Google w modelu. Technologia Google.
timeRangeFilter
object (Interval)
Opcjonalnie: Filtrowanie wyników wyszukiwania według określonego zakresu czasu. Jeśli klienci ustawią czas rozpoczęcia, muszą też ustawić czas zakończenia (i odwrotnie).
searchTypes
object (SearchTypes)
Opcjonalnie: Zestaw typów wyszukiwania do włączenia. Jeśli nie jest ustawiona, wyszukiwanie w internecie jest domyślnie włączone.
| Zapis JSON |
|---|
{ "timeRangeFilter": { object ( |
Interwał
Reprezentuje przedział czasu zakodowany jako sygnatura czasowa rozpoczęcia (włącznie) i sygnatura czasowa zakończenia (wyłącznie).
Wartość początkowa musi być mniejsza lub równa wartości końcowej. Gdy czas rozpoczęcia jest równy czasowi zakończenia, przedział czasu jest pusty (nie pasuje do żadnego czasu). Jeśli nie podasz ani początku, ani końca, przedział będzie pasować do dowolnego czasu.
startTime
string (Timestamp format)
Opcjonalnie: Początek przedziału (włącznie).
Jeśli została określona, sygnatura czasowa pasująca do tego przedziału musi być taka sama jak data rozpoczęcia lub późniejsza.
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".
endTime
string (Timestamp format)
Opcjonalne. Koniec przedziału (wyłącznie).
Jeśli jest określona, sygnatura czasowa pasująca do tego przedziału musi być wcześniejsza niż czas zakończenia.
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".
| Zapis JSON |
|---|
{ "startTime": string, "endTime": string } |
SearchTypes
Różne typy wyszukiwania, które można włączyć w narzędziu GoogleSearch.
webSearch
object (WebSearch)
Opcjonalnie: Włącza wyszukiwanie w internecie. Zwracane są tylko wyniki tekstowe.
imageSearch
object (ImageSearch)
Opcjonalnie: Włącza wyszukiwanie obrazów. Zwracane są bajty obrazu.
| Zapis JSON |
|---|
{ "webSearch": { object ( |
WebSearch
Ten typ nie ma pól.
Standardowe wyszukiwanie w internecie na potrzeby powiązania ze źródłem informacji i powiązanych konfiguracji.
ImageSearch
Ten typ nie ma pól.
Wyszukiwanie obrazów na potrzeby groundingu i powiązanych konfiguracji.
ComputerUse
Typ narzędzia: korzystanie z komputera.
environment
enum (Environment)
Wymagane. Środowisko, na którym wykonywana jest operacja.
excludedPredefinedFunctions[]
string
Opcjonalnie: Domyślnie wstępnie zdefiniowane funkcje są uwzględniane w ostatecznym wywołaniu modelu. Niektóre z nich można wyraźnie wykluczyć z automatycznego uwzględniania. Może to służyć 2 celom: 1. użycie bardziej ograniczonej lub innej przestrzeni działań; 2. ulepszenie definicji i instrukcji dotyczących wstępnie zdefiniowanych funkcji;
enablePromptInjectionDetection
boolean
Opcjonalnie: Określa, czy włączyć sprawdzanie wykrywania wstrzykiwania promptów w przypadku żądania użycia komputera.
disabledSafetyPolicies[]
enum (SafetyPolicy)
Opcjonalnie: Wyłączone zasady bezpieczeństwa dotyczące korzystania z komputera.
| Zapis JSON |
|---|
{ "environment": enum ( |
Środowisko
Reprezentuje środowisko, w którym działa, np. przeglądarkę internetową.
| Wartości w polu enum | |
|---|---|
ENVIRONMENT_UNSPECIFIED |
Domyślna wartość to browser. |
ENVIRONMENT_BROWSER |
Działa w przeglądarce. |
ENVIRONMENT_MOBILE |
Działa w środowisku mobilnym. |
ENVIRONMENT_DESKTOP |
Działa w środowisku komputera. |
SafetyPolicy
Wstępnie zdefiniowane zasady bezpieczeństwa dotyczące korzystania z komputera.
| Wartości w polu enum | |
|---|---|
SAFETY_POLICY_UNSPECIFIED |
Nieokreślona zasada bezpieczeństwa. |
FINANCIAL_TRANSACTIONS |
Zasady bezpieczeństwa dotyczące transakcji finansowych. |
SENSITIVE_DATA_MODIFICATION |
Zasady bezpieczeństwa dotyczące modyfikacji danych wrażliwych. |
COMMUNICATION_TOOL |
zasady bezpieczeństwa dotyczące narzędzi do komunikacji (np. Gmaila, Google Chat, Meet); |
ACCOUNT_CREATION |
Zasady bezpieczeństwa dotyczące tworzenia konta. |
DATA_MODIFICATION |
Zasady bezpieczeństwa dotyczące modyfikacji danych. |
USER_CONSENT_MANAGEMENT |
Zasady bezpieczeństwa dotyczące zarządzania zgodą użytkowników. |
LEGAL_TERMS_AND_AGREEMENTS |
Zasady bezpieczeństwa dotyczące warunków prawnych i umów. |
UrlContext
Ten typ nie ma pól.
Narzędzie do pobierania kontekstu adresu URL.
FileSearch
Narzędzie FileSearch, które pobiera wiedzę z korpusów Semantic Retrieval. Pliki są importowane do korpusów Semantic Retrieval za pomocą interfejsu ImportFile API.
fileSearchStoreNames[]
string
Wymagane. Nazwy magazynów fileSearchStore, z których mają zostać pobrane dane. Przykład: fileSearchStores/my-file-search-store-123
metadataFilter
string
Opcjonalnie: Filtr metadanych, który ma być stosowany do dokumentów i fragmentów pobierania semantycznego.
topK
integer
Opcjonalnie: Liczba fragmentów do pobrania semantycznego.
| Zapis JSON |
|---|
{ "fileSearchStoreNames": [ string ], "metadataFilter": string, "topK": integer } |
McpServer
MCPServer to serwer, który może być wywoływany przez model w celu wykonywania działań. Jest to serwer, który implementuje protokół MCP.
name
string
Nazwa serwera MCP.
transport
Union type
streamableHttpTransport
object (StreamableHttpTransport)
Transport, który może przesyłać strumieniowo żądania i odpowiedzi HTTP.
| Zapis JSON |
|---|
{
"name": string,
// transport
"streamableHttpTransport": {
object ( |
StreamableHttpTransport
Transport, który może przesyłać strumieniowo żądania i odpowiedzi HTTP.
url
string
Pełny adres URL punktu końcowego MCPServer. Przykład: „https://api.example.com/mcp”
headers
map (key: string, value: string)
Opcjonalnie: pola nagłówków uwierzytelniania, limitów czasu itp. (w razie potrzeby).
Obiekt zawierający listę par "key": value. Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" }
timeout
string (Duration format)
Limit czasu HTTP dla zwykłych operacji.
Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony literą „s”. Przykład: "3.5s".
sseReadTimeout
string (Duration format)
Limit czasu operacji odczytu SSE.
Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony literą „s”. Przykład: "3.5s".
terminateOnClose
boolean
Określa, czy sesja klienta ma zostać zamknięta po zamknięciu transportu.
| Zapis JSON |
|---|
{ "url": string, "headers": { string: string, ... }, "timeout": string, "sseReadTimeout": string, "terminateOnClose": boolean } |
GoogleMaps
Narzędzie Mapy Google, które zapewnia kontekst geoprzestrzenny dla zapytania użytkownika.
enableWidget
boolean
Opcjonalnie: Określa, czy w GroundingMetadata odpowiedzi ma być zwracany token kontekstowy widżetu. Deweloperzy mogą używać tokena kontekstowego widżetu do renderowania widżetu Map Google z kontekstem geoprzestrzennym powiązanym z miejscami, do których model odwołuje się w odpowiedzi.
| Zapis JSON |
|---|
{ "enableWidget": boolean } |
Zasób REST: auth_tokens
- Zasób: AuthToken
- BidiGenerateContentSetup
- GenerationConfig
- Modality
- SpeechConfig
- VoiceConfig
- PrebuiltVoiceConfig
- MultiSpeakerVoiceConfig
- SpeakerVoiceConfig
- ThinkingConfig
- ThinkingLevel
- ImageConfig
- MediaResolution
- ResponseFormatConfig
- TextResponseFormat
- MimeType
- AudioResponseFormat
- MimeType
- Dostawa
- ImageResponseFormat
- MimeType
- Dostawa
- AspectRatio
- ImageSize
- TranslationConfig
- AudioTranscriptionConfig
- LanguageAuto
- LanguageHints
- Tryb
- RealtimeInputConfig
- AutomaticActivityDetection
- StartSensitivity
- EndSensitivity
- ActivityHandling
- TurnCoverage
- SessionResumptionConfig
- ContextWindowCompressionConfig
- SlidingWindow
- HistoryConfig
- Metody
Zasób: AuthToken
Żądanie utworzenia tymczasowego tokena uwierzytelniania.
name
string
Tylko dane wyjściowe. Identyfikator. Sam token.
expireTime
string (Timestamp format)
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Opcjonalny czas, po którym wiadomości w sesjach BidiGenerateContent będą odrzucane, gdy używany będzie wynikowy token. (Po tym czasie Gemini może zamknąć sesję).
Jeśli nie jest ustawiony, domyślnie jest to 30 minut w przyszłości. Jeśli ta wartość jest ustawiona, musi być mniejsza niż 20 godzin w przyszłości.
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".
newSessionExpireTime
string (Timestamp format)
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Czas, po którym nowe sesje Live API korzystające z tokena wynikającego z tego żądania będą odrzucane.
Jeśli nie jest ustawiony, przyjmuje się domyślnie 60 sekund w przyszłości. Jeśli ta wartość jest ustawiona, musi być mniejsza niż 20 godzin w przyszłości.
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".
fieldMask
string (FieldMask format)
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Jeśli pole fieldMask jest puste i nie ma pola bidiGenerateContentSetup, obowiązujący komunikat BidiGenerateContentSetup jest pobierany z połączenia z Live API.
Jeśli pole fieldMask jest puste i bidiGenerateContentSetup jest obecne, to efektywny komunikat BidiGenerateContentSetup jest pobierany w całości z bidiGenerateContentSetup w tym żądaniu. Komunikat konfiguracji z połączenia z interfejsem Live API jest ignorowany.
Jeśli pole fieldMask nie jest puste, odpowiednie pola z bidiGenerateContentSetup zastąpią pola z komunikatu konfiguracji w połączeniu z interfejsem Live API.
Jest to rozdzielona przecinkami lista pełnych i jednoznacznych nazw pól. Przykład: "user.displayName,photo".
config
Union type
bidiGenerateContentSetup
object (BidiGenerateContentSetup)
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Konfiguracja dotycząca BidiGenerateContent.
uses
integer
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Liczba możliwych użyć tokena. Jeśli ta wartość wynosi 0, limit nie jest stosowany. Wznowienie sesji Live API nie jest liczone jako użycie. Jeśli nie zostanie określona, domyślnie będzie to 1.
| Zapis JSON |
|---|
{
"name": string,
"expireTime": string,
"newSessionExpireTime": string,
"fieldMask": string,
// config
"bidiGenerateContentSetup": {
object ( |
BidiGenerateContentSetup
Wiadomość, która zostanie wysłana w pierwszym (i tylko w pierwszym) BidiGenerateContentClientMessage. Zawiera konfigurację, która będzie obowiązywać przez cały czas trwania strumieniowego wywołania RPC.
Klient powinien poczekać na wiadomość BidiGenerateContentSetupComplete, zanim wyśle kolejne wiadomości.
model
string
Wymagane. Nazwa zasobu modelu. Służy on jako identyfikator modelu.
Format: models/{model}
generationConfig
object (GenerationConfig)
Opcjonalnie: Konfiguracja generowania.
Te pola nie są obsługiwane:
responseLogprobsresponseMimeTypelogprobsresponseSchemaresponseJsonSchemastop_sequenceskipResponseCacherouting_configaudio_timestamp
systemInstruction
object (Content)
Opcjonalnie: Użytkownik podał instrukcje systemowe dla modelu.
Uwaga: w częściach należy używać tylko tekstu, a treść w każdej części będzie znajdować się w osobnym akapicie.
tools[]
object (Tool)
Opcjonalnie: Lista Tools, których model może użyć do wygenerowania kolejnej odpowiedzi.
Tool to fragment kodu, który umożliwia systemowi interakcję z systemami zewnętrznymi w celu wykonania działania lub zestawu działań poza wiedzą i zakresem modelu.
realtimeInputConfig
object (RealtimeInputConfig)
Opcjonalnie: Konfiguruje obsługę danych wejściowych w czasie rzeczywistym.
sessionResumption
object (SessionResumptionConfig)
Opcjonalnie: Konfiguruje mechanizm wznawiania sesji.
Jeśli zostanie uwzględniony, serwer wyśle wiadomości SessionResumptionUpdate.
contextWindowCompression
object (ContextWindowCompressionConfig)
Opcjonalnie: Konfiguruje mechanizm kompresji okna kontekstu.
Jeśli zostanie uwzględniony, serwer automatycznie zmniejszy rozmiar kontekstu, gdy przekroczy on skonfigurowaną długość.
inputAudioTranscription
object (AudioTranscriptionConfig)
Opcjonalnie: Jeśli zasada jest skonfigurowana, umożliwia transkrypcję głosową. Transkrypcja jest zgodna z językiem wejściowym dźwięku, jeśli został on skonfigurowany.
outputAudioTranscription
object (AudioTranscriptionConfig)
Opcjonalnie: Jeśli jest ustawiona, umożliwia transkrypcję wyjścia audio modelu. Transkrypcja jest zgodna z kodem języka określonym dla wyjściowego dźwięku, jeśli został on skonfigurowany.
historyConfig
object (HistoryConfig)
Opcjonalnie: Konfiguruje wymianę historii między klientem a serwerem.
labels
map (key: string, value: string)
Opcjonalnie: Etykiety z metadanymi zdefiniowanymi przez użytkownika dla żądania.
Opcjonalnie: Etykiety muszą spełniać standardowe wymagania dotyczące ujednoliconych etykiet Cloud: – klucze etykiet muszą zaczynać się od litery. – Klucze i wartości etykiet nie mogą być dłuższe niż 63 znaki (punkty kodowe Unicode). Mogą zawierać tylko małe litery, cyfry, podkreślenia i myślniki. - Znaki międzynarodowe są dozwolone.
Sposób użycia: identyfikatory bezpieczeństwa od agregatorów: użyj klucza safety_identifier (np. {"safety_identifier": "user_session_123"})
Obiekt zawierający listę par "key": value. Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" }
| Zapis JSON |
|---|
{ "model": string, "generationConfig": { object ( |
GenerationConfig
Opcje konfiguracji generowania i danych wyjściowych modelu. Nie wszystkie parametry można konfigurować w przypadku każdego modelu.
stopSequences[]
string
Opcjonalnie: Zestaw sekwencji znaków (maksymalnie 5), które zatrzymają generowanie danych wyjściowych. Jeśli zostanie określony, interfejs API zatrzyma się przy pierwszym wystąpieniu stop_sequence. Sekwencja zatrzymania nie będzie częścią odpowiedzi.
responseMimeType
string
Opcjonalnie: Typ MIME wygenerowanego tekstu kandydującego. Obsługiwane typy MIME: text/plain: (domyślny) dane wyjściowe w formacie tekstowym. application/json: odpowiedź JSON w kandydatach do odpowiedzi. text/x.enum: ENUM jako odpowiedź w postaci ciągu znaków w odpowiedziach kandydujących. Listę wszystkich obsługiwanych typów MIME tekstu znajdziesz w dokumentacji.
responseSchema
(deprecated)
object (Schema)
Opcjonalnie: Schemat wyjściowy wygenerowanego tekstu kandydującego. Schematy muszą być podzbiorem schematu OpenAPI i mogą być obiektami, elementami podstawowymi lub tablicami.
Jeśli jest ustawiona, musi być też ustawiona zgodna zasada responseMimeType. Zgodne typy MIME: application/json: schemat odpowiedzi JSON. Więcej informacji znajdziesz w przewodniku po generowaniu tekstu w formacie JSON.
Rola wycofana. Użyj w zamian zasady responseFormat.
_responseJsonSchema
(deprecated)
value (Value format)
Opcjonalnie: Schemat wyjściowy wygenerowanej odpowiedzi. Jest to alternatywa dla responseSchema, która akceptuje schemat JSON.
Jeśli jest ustawiony, należy pominąć responseSchema, ale wymagany jest responseMimeType.
Można wysłać pełny schemat JSON, ale nie wszystkie funkcje są obsługiwane. Obsługiwane są tylko te właściwości:
$id$defs$ref$anchortypeformattitledescriptionenum(w przypadku ciągów znaków i liczb)itemsprefixItemsminItemsmaxItemsminimummaximumanyOfoneOf(interpretowane tak samo jakanyOf)propertiesadditionalPropertiesrequired
Można też ustawić niestandardową właściwość propertyOrdering.
Odwołania cykliczne są rozwijane w ograniczonym stopniu i dlatego można ich używać tylko we właściwościach, które nie są wymagane. (Właściwości, które mogą mieć wartość null, nie są wystarczające). Jeśli w schemacie podrzędnym ustawiono $ref, nie można ustawić żadnych innych właściwości oprócz tych, które zaczynają się od $.
Rola wycofana. Użyj w zamian zasady responseFormat.
responseJsonSchema
value (Value format)
Opcjonalnie: Szczegóły wewnętrzne. Zamiast tego pola użyj właściwości responseJsonSchema.
responseModalities[]
enum (Modality)
Opcjonalnie: Żądane modalności odpowiedzi. Reprezentuje zestaw modalności, które model może zwrócić i których należy oczekiwać w odpowiedzi. Jest to dokładne dopasowanie do modalności odpowiedzi.
Model może mieć wiele kombinacji obsługiwanych modalności. Jeśli żądane modalności nie pasują do żadnej z obsługiwanych kombinacji, zostanie zwrócony błąd.
Pusta lista odpowiada żądaniu tylko tekstu.
candidateCount
integer
Opcjonalnie: Liczba wygenerowanych odpowiedzi do zwrócenia. Jeśli nie ustawisz tej wartości, domyślnie zostanie użyta wartość 1. Pamiętaj, że nie działa to w przypadku modeli poprzedniej generacji (rodzina Gemini 1.0).
maxOutputTokens
integer
Opcjonalnie: Maksymalna liczba tokenów, które mają być uwzględnione w odpowiedzi kandydującej.
Uwaga: wartość domyślna różni się w zależności od modelu. Zobacz atrybut Model.output_token_limit obiektu Model zwracanego przez funkcję getModel.
temperature
number
Opcjonalnie: Określa losowość danych wyjściowych.
Uwaga: wartość domyślna różni się w zależności od modelu. Zobacz atrybut Model.temperature obiektu Model zwracanego przez funkcję getModel.
Wartości mogą mieścić się w zakresie [0,0; 2,0].
To pole nie jest już obsługiwane i jest ignorowane w Gemini 3.6 Flash i nowszych modelach.
topP
number
Opcjonalnie: Maksymalne skumulowane prawdopodobieństwo tokenów, które należy uwzględnić podczas próbkowania.
Model używa połączonego próbkowania Top-k i Top-p (nucleus).
Tokeny są sortowane na podstawie przypisanych im prawdopodobieństw, dzięki czemu brane są pod uwagę tylko najbardziej prawdopodobne tokeny. Próbkowanie top-k bezpośrednio ogranicza maksymalną liczbę tokenów do rozważenia, podczas gdy próbkowanie jądra ogranicza liczbę tokenów na podstawie skumulowanego prawdopodobieństwa.
Uwaga: wartość domyślna różni się w zależności od Model i jest określana przez atrybut Model.top_p zwracany przez funkcję getModel. Pusty atrybut topK oznacza, że model nie stosuje próbkowania top-k i nie zezwala na ustawianie topK w żądaniach.
To pole nie jest już obsługiwane i jest ignorowane w Gemini 3.6 Flash i nowszych modelach.
topK
integer
Opcjonalnie: Maksymalna liczba tokenów, które mają być uwzględniane podczas próbkowania.
Modele Gemini używają próbkowania Top-p (nucleus) lub kombinacji próbkowania Top-k i nucleus. Próbkowanie Top-K uwzględnia zbiór topK najbardziej prawdopodobnych tokenów. Modele działające z próbkowaniem jądra nie zezwalają na ustawienie topK.
Uwaga: wartość domyślna różni się w zależności od Model i jest określana przez atrybut Model.top_p zwracany przez funkcję getModel. Pusty atrybut topK oznacza, że model nie stosuje próbkowania top-k i nie zezwala na ustawianie topK w żądaniach.
To pole nie jest już obsługiwane i jest ignorowane w Gemini 3.6 Flash i nowszych modelach.
seed
integer
Opcjonalnie: Ziarno używane podczas dekodowania. Jeśli nie zostanie ustawiony, żądanie użyje losowo wygenerowanego ziarna.
presencePenalty
number
Opcjonalnie: Kara za obecność zastosowana do logprobs następnego tokena, jeśli token został już wyświetlony w odpowiedzi.
Ta kara jest binarna (włączona/wyłączona) i nie zależy od liczby użyć tokena (po pierwszym użyciu). Użyj frequencyPenalty, aby kara zwiększała się z każdym użyciem.
Dodatnia kara zniechęca do używania tokenów, które zostały już użyte w odpowiedzi, co zwiększa zasób słownictwa.
Ujemna kara zachęca do używania tokenów, które zostały już użyte w odpowiedzi, co zmniejsza słownictwo.
frequencyPenalty
number
Opcjonalnie: Kara za częstotliwość stosowana do logprobs następnego tokena, pomnożona przez liczbę wystąpień każdego tokena w odpowiedzi do tej pory.
Dodatnia kara zniechęca do używania tokenów, które zostały już użyte, proporcjonalnie do liczby użyć tokena: im częściej token jest używany, tym trudniej jest modelowi użyć go ponownie, co zwiększa słownictwo odpowiedzi.
Uwaga: ujemna kara zachęci model do ponownego używania tokenów proporcjonalnie do liczby przypadków użycia tokena. Niewielkie wartości ujemne zmniejszą słownictwo odpowiedzi. Większe wartości ujemne spowodują, że model zacznie powtarzać popularny token, dopóki nie osiągnie limitu maxOutputTokens.
responseLogprobs
boolean
Opcjonalnie: Jeśli ma wartość prawda, wyeksportuj wyniki logprobs w odpowiedzi.
logprobs
integer
Opcjonalnie: Prawidłowe tylko wtedy, gdy responseLogprobs=True. Ustawia liczbę najwyższych wartości logprobs, w tym wybranego kandydata, które mają być zwracane na każdym etapie dekodowania w Candidate.logprobs_result. Liczba musi mieścić się w zakresie [0, 20].
enableEnhancedCivicAnswers
boolean
Opcjonalnie: Włącza ulepszone odpowiedzi obywatelskie. Może nie być dostępna we wszystkich modelach.
speechConfig
object (SpeechConfig)
Opcjonalnie: Konfiguracja generowania mowy.
thinkingConfig
object (ThinkingConfig)
Opcjonalnie: Konfiguracja funkcji myślenia. Jeśli to pole zostanie ustawione w przypadku modeli, które nie obsługują rozumowania, zostanie zwrócony błąd.
imageConfig
object (ImageConfig)
Opcjonalnie: Konfiguracja generowania obrazów. Jeśli to pole zostanie ustawione w przypadku modeli, które nie obsługują tych opcji konfiguracji, zostanie zwrócony błąd.
mediaResolution
enum (MediaResolution)
Opcjonalnie: Jeśli zostanie określona, używana będzie określona rozdzielczość multimediów.
enableAffectiveDialog
boolean
Opcjonalnie: Jeśli ta opcja jest włączona, model będzie wykrywać emocje i odpowiednio dostosowywać swoje odpowiedzi.
responseFormat
object (ResponseFormatConfig)
Opcjonalnie: Konfiguracja formatu odpowiedzi. Umożliwia określenie konfiguracji wyjściowej dla każdego typu treści (tekst, dźwięk, obraz) w płaskiej strukturze.
translationConfig
object (TranslationConfig)
Opcjonalnie: Konfiguracja translacji.
audioTranscriptionConfig
object (AudioTranscriptionConfig)
Opcjonalnie: Konfiguracja transkrypcji dźwięku (rozpoznawania mowy).
| Zapis JSON |
|---|
{ "stopSequences": [ string ], "responseMimeType": string, "responseSchema": { object ( |
Modalność
Obsługiwane modalności odpowiedzi.
| Wartości w polu enum | |
|---|---|
MODALITY_UNSPECIFIED |
Wartość domyślna. |
TEXT |
Wskazuje, że model powinien zwrócić tekst. |
IMAGE |
Wskazuje, że model powinien zwracać obrazy. |
AUDIO |
Wskazuje, że model powinien zwrócić dźwięk. |
SpeechConfig
Konfiguracja generowania i transkrypcji mowy.
voiceConfig
object (VoiceConfig)
Konfiguracja w przypadku wyjścia z jednym głosem.
multiSpeakerVoiceConfig
object (MultiSpeakerVoiceConfig)
Opcjonalnie: Konfiguracja konfiguracji z wieloma głośnikami. Wyklucza się z polem voiceConfig.
languageCode
string
Opcjonalnie: Kod języka IETF BCP-47, który użytkownik skonfigurował w aplikacji. Służy do rozpoznawania i syntezy mowy.
Prawidłowe wartości to: de-DE, en-AU, en-GB, en-IN, en-US, es-US, fr-FR, hi-IN, pt-BR, ar-XA, es-ES, fr-CA, id-ID, it-IT, ja-JP, tr-TR, vi-VN, bn-IN, gu-IN, kn-IN, ml-IN, mr-IN, ta-IN, te-IN, nl-NL, ko-KR, cmn-CN, pl-PL, ru-RU i th-TH.
| Zapis JSON |
|---|
{ "voiceConfig": { object ( |
VoiceConfig
Konfiguracja głosu, który ma być używany.
voice_config
Union type
prebuiltVoiceConfig
object (PrebuiltVoiceConfig)
Konfiguracja gotowego głosu, który ma być używany.
voice
string
Opcjonalnie: Identyfikator mówcy na potrzeby syntezy. Obsługiwane formaty:
- Nazwa lektora w przypadku gotowych głosów (np.
OruslubKore). - Identyfikator głosu w przypadku zapisanych głosów (np.
voice_xxx). - Klucz replikacji głosu (na przykład
voicekey_xxx).
| Zapis JSON |
|---|
{
// voice_config
"prebuiltVoiceConfig": {
object ( |
PrebuiltVoiceConfig
Konfiguracja gotowego głośnika, którego chcesz użyć.
voiceName
string
Opcjonalnie: Nazwa gotowego głosu, którego chcesz użyć.
| Zapis JSON |
|---|
{ "voiceName": string } |
MultiSpeakerVoiceConfig
Konfiguracja konfiguracji z wieloma głośnikami.
speakerVoiceConfigs[]
object (SpeakerVoiceConfig)
Wymagane. Wszystkie włączone głosy rozmówców.
| Zapis JSON |
|---|
{
"speakerVoiceConfigs": [
{
object ( |
SpeakerVoiceConfig
Konfiguracja pojedynczego głośnika w konfiguracji z wieloma głośnikami.
speaker
string
Wymagane. Nazwa głośnika, którego chcesz użyć. Powinien być taki sam jak w prompcie.
voiceConfig
object (VoiceConfig)
Wymagane. Konfiguracja głosu, który ma być używany.
| Zapis JSON |
|---|
{
"speaker": string,
"voiceConfig": {
object ( |
ThinkingConfig
Konfiguracja funkcji myślenia.
includeThoughts
boolean
Wskazuje, czy w odpowiedzi mają być uwzględniane myśli. Jeśli ma wartość true, procesy myślowe są zwracane tylko wtedy, gdy są dostępne.
thinkingBudget
integer
Liczba tokenów myśli, które model powinien wygenerować.
thinkingLevel
enum (ThinkingLevel)
Opcjonalnie: Określa maksymalną głębokość wewnętrznego procesu rozumowania modelu przed wygenerowaniem odpowiedzi. Wartość domyślna zależy od modelu. Więcej informacji znajdziesz w przewodniku po poziomach myślenia. Zalecane w przypadku modeli Gemini 3 lub nowszych. Użycie go z wcześniejszymi modelami powoduje błąd.
| Zapis JSON |
|---|
{
"includeThoughts": boolean,
"thinkingBudget": integer,
"thinkingLevel": enum ( |
ThinkingLevel
Zezwalaj użytkownikowi na określanie, jak długo model ma myśleć, za pomocą typu wyliczeniowego zamiast budżetu w postaci liczby całkowitej.
| Wartości w polu enum | |
|---|---|
THINKING_LEVEL_UNSPECIFIED |
Wartość domyślna. |
MINIMAL |
Brak lub niski poziom myślenia. |
LOW |
Podstawowy poziom myślenia. |
MEDIUM |
Średni poziom myślenia. |
HIGH |
Myślenie rozszerzone. |
ImageConfig
Konfiguracja funkcji generowania obrazów.
aspectRatio
string
Opcjonalnie: Format obrazu, który ma zostać wygenerowany. Obsługiwane formaty obrazu: 1:1, 1:4, 4:1, 1:8, 8:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9 lub 21:9.
Jeśli nie zostanie on określony, model wybierze domyślny format obrazu na podstawie dostarczonych obrazów referencyjnych.
imageSize
string
Opcjonalnie: Określa rozmiar wygenerowanych obrazów. Obsługiwane wartości to 512, 1K, 2K, 4K. Jeśli nie zostanie określona, model użyje wartości domyślnej 1K.
| Zapis JSON |
|---|
{ "aspectRatio": string, "imageSize": string } |
MediaResolution
Rozdzielczość multimediów wejściowych.
| Wartości w polu enum | |
|---|---|
MEDIA_RESOLUTION_UNSPECIFIED |
Nie ustawiono rozdzielczości multimediów. |
MEDIA_RESOLUTION_LOW |
Rozdzielczość multimediów ustawiona na niską (64 tokeny). |
MEDIA_RESOLUTION_MEDIUM |
Rozdzielczość multimediów ustawiona na średnią (256 tokenów). |
MEDIA_RESOLUTION_HIGH |
Rozdzielczość multimediów ustawiona na wysoką (powiększone kadrowanie z 256 tokenami). |
ResponseFormatConfig
Konfiguracja formatu odpowiedzi. Jest to płaski obiekt, w którym każde opcjonalne pole podrzędne konfiguruje konkretny rodzaj danych wyjściowych.
text
object (TextResponseFormat)
Opcjonalnie: Konfiguracja formatu wyjściowego tekstu.
audio
object (AudioResponseFormat)
Opcjonalnie: Konfiguracja formatu wyjściowego dźwięku.
image
object (ImageResponseFormat)
Opcjonalnie: Konfiguracja formatu wyjściowego obrazu.
| Zapis JSON |
|---|
{ "text": { object ( |
TextResponseFormat
Konfiguracja formatu wyjściowego tekstu.
mimeType
enum (MimeType)
Opcjonalnie: Typ MIME wyjściowego tekstu.
schema
value (Value format)
Opcjonalnie: Schemat JSON, z którym powinny być zgodne dane wyjściowe. Ma zastosowanie tylko wtedy, gdy mimeType to APPLICATION_JSON.
| Zapis JSON |
|---|
{
"mimeType": enum ( |
MimeType
Obsługiwane typy MIME dla danych wyjściowych w formie tekstu.
| Wartości w polu enum | |
|---|---|
MIME_TYPE_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
APPLICATION_JSON |
Format danych wyjściowych JSON. |
TEXT_PLAIN |
Format wyjściowy zwykłego tekstu. |
AudioResponseFormat
Konfiguracja formatu wyjściowego dźwięku.
mimeType
enum (MimeType)
Opcjonalnie: Typ MIME wyjścia audio.
delivery
enum (Delivery)
Opcjonalnie: Tryb wyświetlania wyjścia audio.
sampleRate
integer
Opcjonalnie: Częstotliwość próbkowania w Hz.
bitRate
integer
Opcjonalnie: Szybkość transmisji bitów w bitach na sekundę (b/s). Dotyczy tylko formatów skompresowanych (MP3, Opus).
MimeType
Obsługiwane typy MIME dla wyjściowego dźwięku.
| Wartości w polu enum | |
|---|---|
MIME_TYPE_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
AUDIO_MP3 |
Format audio MP3. |
AUDIO_OGG_OPUS |
Format audio OGG Opus. |
AUDIO_L16 |
Nieprzetworzony format audio PCM (L16). |
AUDIO_WAV |
Format audio WAV. |
AUDIO_ALAW |
Format audio A-law. |
AUDIO_MULAW |
Format audio Mu-law. |
Dostawa
Tryb wyświetlania wyjścia audio.
| Wartości w polu enum | |
|---|---|
DELIVERY_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
INLINE |
Dane audio są zwracane w odpowiedzi. |
URI |
Dane audio są zwracane jako identyfikator URI. |
ImageResponseFormat
Konfiguracja formatu wyjściowego obrazu.
mimeType
enum (MimeType)
Opcjonalnie: Typ MIME wygenerowanego obrazu.
delivery
enum (Delivery)
Opcjonalnie: Tryb wyświetlania obrazu wyjściowego.
aspectRatio
enum (AspectRatio)
Opcjonalnie: Format obrazu wyjściowego.
imageSize
enum (ImageSize)
Opcjonalnie: Rozmiar wygenerowanego obrazu.
| Zapis JSON |
|---|
{ "mimeType": enum ( |
MimeType
Obsługiwane typy MIME dla obrazów wyjściowych.
| Wartości w polu enum | |
|---|---|
MIME_TYPE_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
IMAGE_JPEG |
Format pliku graficznego JPEG. |
Dostawa
Tryb wyświetlania obrazu wyjściowego.
| Wartości w polu enum | |
|---|---|
DELIVERY_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
INLINE |
Dane obrazu są zwracane w odpowiedzi. |
URI |
Dane obrazu są zwracane jako identyfikator URI. |
Współczynnik proporcji
Obsługiwane formaty obrazu wyjściowego.
| Wartości w polu enum | |
|---|---|
ASPECT_RATIO_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
ASPECT_RATIO_ONE_BY_ONE |
Format obrazu 1:1. |
ASPECT_RATIO_TWO_BY_THREE |
Format obrazu 2:3. |
ASPECT_RATIO_THREE_BY_TWO |
Format obrazu 3:2. |
ASPECT_RATIO_THREE_BY_FOUR |
Format obrazu 3:4. |
ASPECT_RATIO_FOUR_BY_THREE |
Format obrazu 4:3. |
ASPECT_RATIO_FOUR_BY_FIVE |
Format obrazu 4:5. |
ASPECT_RATIO_FIVE_BY_FOUR |
Format obrazu 5:4. |
ASPECT_RATIO_NINE_BY_SIXTEEN |
Format obrazu 9:16. |
ASPECT_RATIO_SIXTEEN_BY_NINE |
Format obrazu 16:9. |
ASPECT_RATIO_TWENTY_ONE_BY_NINE |
Format obrazu 21:9. |
ASPECT_RATIO_ONE_BY_EIGHT |
Format obrazu 1:8. |
ASPECT_RATIO_EIGHT_BY_ONE |
Format obrazu 8:1. |
ASPECT_RATIO_ONE_BY_FOUR |
Format obrazu 1:4. |
ASPECT_RATIO_FOUR_BY_ONE |
Format obrazu 4:1. |
ImageSize
Obsługiwane rozmiary obrazów wyjściowych.
| Wartości w polu enum | |
|---|---|
IMAGE_SIZE_UNSPECIFIED |
Wartość domyślna. Ta wartość nie jest używana. |
IMAGE_SIZE_FIVE_TWELVE |
Rozmiar obrazu: 512 pikseli. |
IMAGE_SIZE_ONE_K |
Rozmiar obrazu: 1K. |
IMAGE_SIZE_TWO_K |
Rozmiar obrazu 2K. |
IMAGE_SIZE_FOUR_K |
Rozmiar obrazu 4K. |
TranslationConfig
Konfiguracja funkcji tłumaczenia.
targetLanguageCode
string
Wymagane. Język docelowy tłumaczenia. Obsługiwane wartości to kody języków w standardzie BCP-47 (np. „en”, „es”, „fr”).
echoTargetLanguage
boolean
Opcjonalnie: Jeśli ustawiona jest wartość „prawda”, model będzie generować dźwięk, gdy język docelowy jest językiem mówionym, czyli będzie powtarzać dane wejściowe. Jeśli ma wartość false, nie będziemy generować dźwięku w języku docelowym.
| Zapis JSON |
|---|
{ "targetLanguageCode": string, "echoTargetLanguage": boolean } |
AudioTranscriptionConfig
Konfiguracja transkrypcji dźwięku.
languageCodes[]
string
Opcjonalnie: Kody języków w standardzie BCP-47, które zawierają wskazówki dotyczące języków występujących w dźwięku. Jeśli zostanie pominięty lub pozostanie pusty, domyślnie zostanie użyte automatyczne wykrywanie języka.
adaptationPhrases[]
(deprecated)
string
Opcjonalnie: Lista wyrażeń używanych do adaptacji mowy, która wpływa na model ASR, aby poprawić rozpoznawanie tych konkretnych terminów.
customVocabulary[]
string
Opcjonalnie: Lista niestandardowych wyrażeń, które mają nakierować model rozpoznawania mowy na rozpoznawanie konkretnych terminów (nazw produktów, nazw własnych, żargonu).
wordTimestamp
boolean
Opcjonalnie: Konfiguruje generowanie sygnatur czasowych na poziomie słów.
diarization
boolean
Opcjonalnie: Konfiguruje rozdzielanie rozmówców.
mode
enum (Mode)
Opcjonalnie: Konfiguruje tryb transkrypcji. Obsługiwane wartości: VERBATIM, SMART. Jeśli nie określono inaczej, domyślnie jest to transkrypcja VERBATIM. W trybie SMART model usuwa pauzy i wtrącenia (wypełniacze, powtórzenia i falstarty), wprowadza drobne poprawki gramatyczne, automatycznie formatuje tekst (akapity, wypunktowania, listy numerowane) i wprowadza drobne zmiany użytkownika (wbudowane autokorekty). Sygnatury czasowe i diaryzacja są niezgodne z trybem SMART.
language_config
Union type
language_codes najwyższego poziomu. Poniżej znajduje się lista pól, które wzajemnie się wykluczają. W odpowiedzi zostanie ustawione co najwyżej jedno z tych pól:languageAuto
(deprecated)
object (LanguageAuto)
Opcjonalnie: Model automatycznie wykryje język.
languageHints
(deprecated)
object (LanguageHints)
Opcjonalnie: Określa co najmniej 1 język w ścieżce audio.
| Zapis JSON |
|---|
{ "languageCodes": [ string ], "adaptationPhrases": [ string ], "customVocabulary": [ string ], "wordTimestamp": boolean, "diarization": boolean, "mode": enum ( |
LanguageAuto
Ten typ nie ma pól.
Wskazuje, że język dźwięku powinien zostać wykryty automatycznie.
LanguageHints
Dostarcza modelowi wskazówek dotyczących możliwych języków występujących w nagraniu audio.
languageCodes[]
(deprecated)
string
Wymagane. Kody języków w standardzie BCP-47.
| Zapis JSON |
|---|
{ "languageCodes": [ string ] } |
Tryb
Tryb transkrypcji.
| Wartości w polu enum | |
|---|---|
MODE_UNSPECIFIED |
Nieokreślony tryb transkrypcji. |
VERBATIM |
Tryb transkrypcji dosłownej. |
SMART |
Tryb inteligentnej transkrypcji. |
RealtimeInputConfig
Konfiguruje działanie danych wejściowych w czasie rzeczywistym w usłudze BidiGenerateContent.
automaticActivityDetection
object (AutomaticActivityDetection)
Opcjonalnie: Jeśli nie zostanie skonfigurowana, automatyczne wykrywanie aktywności będzie domyślnie włączone. Jeśli automatyczne wykrywanie głosu jest wyłączone, klient musi wysyłać sygnały aktywności.
activityHandling
enum (ActivityHandling)
Opcjonalnie: Określa, jaki efekt ma aktywność.
turnCoverage
enum (TurnCoverage)
Opcjonalnie: Określa, które dane wejściowe są uwzględniane w turze użytkownika.
interimTranscriptTimestampEnabled
boolean
Opcjonalnie: Konfiguruje sygnatury czasowe transkrypcji tymczasowej.
| Zapis JSON |
|---|
{ "automaticActivityDetection": { object ( |
AutomaticActivityDetection
Konfiguruje automatyczne wykrywanie aktywności.
disabled
boolean
Opcjonalnie: Jeśli ta opcja jest włączona (domyślnie), wykryte dane głosowe i tekstowe są traktowane jako aktywność. Jeśli ta opcja jest wyłączona, klient musi wysyłać sygnały aktywności.
startOfSpeechSensitivity
enum (StartSensitivity)
Opcjonalnie: Określa prawdopodobieństwo wykrycia mowy.
prefixPaddingMs
integer
Opcjonalnie: Wymagany czas trwania wykrytej mowy przed zatwierdzeniem początku mowy. Im niższa jest ta wartość, tym bardziej czułe jest wykrywanie początku mowy i tym krótsze wypowiedzi mogą być rozpoznawane. Zwiększa to jednak prawdopodobieństwo wystąpienia wyników fałszywie dodatnich.
endOfSpeechSensitivity
enum (EndSensitivity)
Opcjonalnie: Określa prawdopodobieństwo zakończenia wykrytej mowy.
silenceDurationMs
integer
Opcjonalnie: Wymagany czas trwania wykrytego braku mowy (np. ciszy) przed zakończeniem mowy. Im większa jest ta wartość, tym dłuższe mogą być przerwy w mowie bez przerywania aktywności użytkownika, ale zwiększy to czas oczekiwania modelu.
| Zapis JSON |
|---|
{ "disabled": boolean, "startOfSpeechSensitivity": enum ( |
StartSensitivity
Określa, jak wykrywany jest początek wypowiedzi.
| Wartości w polu enum | |
|---|---|
START_SENSITIVITY_UNSPECIFIED |
Wartość domyślna to START_SENSITIVITY_HIGH. |
START_SENSITIVITY_HIGH |
Automatyczne wykrywanie będzie częściej wykrywać początek mowy. |
START_SENSITIVITY_LOW |
Automatyczne wykrywanie będzie rzadziej wykrywać początek mowy. |
EndSensitivity
Określa sposób wykrywania końca wypowiedzi.
| Wartości w polu enum | |
|---|---|
END_SENSITIVITY_UNSPECIFIED |
Wartość domyślna to END_SENSITIVITY_HIGH. |
END_SENSITIVITY_HIGH |
Automatyczne wykrywanie częściej kończy mowę. |
END_SENSITIVITY_LOW |
Automatyczne wykrywanie rzadziej kończy mowę. |
ActivityHandling
różne sposoby obsługi aktywności użytkownika;
| Wartości w polu enum | |
|---|---|
ACTIVITY_HANDLING_UNSPECIFIED |
Jeśli nie określono inaczej, działanie domyślne to START_OF_ACTIVITY_INTERRUPTS. |
START_OF_ACTIVITY_INTERRUPTS |
Jeśli ma wartość „true”, rozpoczęcie aktywności przerwie odpowiedź modelu (tzw. „wtrącenie”). Bieżąca odpowiedź modelu zostanie przerwana w momencie przerwania. Jest to zachowanie domyślne. |
NO_INTERRUPTION |
Odpowiedź modelu nie zostanie przerwana. |
TurnCoverage
Opcje dotyczące danych wejściowych uwzględnianych w turze użytkownika.
| Wartości w polu enum | |
|---|---|
TURN_COVERAGE_UNSPECIFIED |
Jeśli nie zostanie określone, działanie domyślne zostanie wybrane na podstawie modelu. Na przykład w przypadku Gemini 2.5 domyślna wartość to TURN_INCLUDES_ONLY_ACTIVITY, a w przypadku Gemini 3.1 i nowszych – TURN_INCLUDES_AUDIO_ACTIVITY_AND_ALL_VIDEO. |
TURN_INCLUDES_ONLY_ACTIVITY |
Obejmuje aktywność od ostatniej tury, z wyłączeniem braku aktywności (np. ciszy w strumieniu audio). |
TURN_INCLUDES_ALL_INPUT |
Obejmuje wszystkie dane wejściowe w czasie rzeczywistym od ostatniej tury, w tym brak aktywności (np. ciszę w strumieniu audio). |
TURN_INCLUDES_AUDIO_ACTIVITY_AND_ALL_VIDEO |
Obejmuje aktywność związaną z dźwiękiem i wszystkie filmy od ostatniej tury. W przypadku automatycznego wykrywania aktywności aktywność audio oznacza mowę i wyklucza ciszę. |
SessionResumptionConfig
Konfiguracja wznawiania sesji.
Ta wiadomość jest uwzględniona w konfiguracji sesji jako BidiGenerateContentSetup.session_resumption. Jeśli serwer jest skonfigurowany, będzie wysyłać wiadomości SessionResumptionUpdate.
handle
string
Uchwyt poprzedniej sesji. Jeśli nie jest obecny, tworzona jest nowa sesja.
Uchwyty sesji pochodzą z wartości SessionResumptionUpdate.token w poprzednich połączeniach.
| Zapis JSON |
|---|
{ "handle": string } |
ContextWindowCompressionConfig
Włącza kompresję okna kontekstu – mechanizm zarządzania oknem kontekstu modelu, dzięki któremu nie przekracza ono określonej długości.
compression_mechanism
Union type
slidingWindow
object (SlidingWindow)
Mechanizm przesuwanego okna.
triggerTokens
string (int64 format)
Liczba tokenów (przed uruchomieniem tury) wymagana do aktywowania kompresji okna kontekstu.
Można to wykorzystać do zrównoważenia jakości i czasu oczekiwania, ponieważ krótsze okna kontekstu mogą skutkować szybszymi odpowiedziami modelu. Każda operacja kompresji powoduje jednak tymczasowy wzrost opóźnienia, dlatego nie należy jej uruchamiać zbyt często.
Jeśli nie jest ustawiona, domyślnie wynosi 80% limitu okna kontekstu modelu. Pozostawia to 20% na następne żądanie użytkownika lub odpowiedź modelu.
| Zapis JSON |
|---|
{
// compression_mechanism
"slidingWindow": {
object ( |
SlidingWindow
Metoda SlidingWindow polega na odrzucaniu treści na początku okna kontekstu. Wynikowy kontekst zawsze zaczyna się od początku tury roli USER. Instrukcje systemowe i wszelkie BidiGenerateContentSetup.prefix_turns zawsze pozostaną na początku wyniku.
targetTokens
string (int64 format)
Docelowa liczba tokenów do zachowania. Wartość domyślna to triggerTokens/2.
Odrzucanie części okna kontekstu powoduje tymczasowe zwiększenie czasu oczekiwania, dlatego tę wartość należy skalibrować, aby uniknąć częstych operacji kompresji.
| Zapis JSON |
|---|
{ "targetTokens": string } |
HistoryConfig
Konfiguracja historii.
Ta wiadomość jest uwzględniona w konfiguracji sesji jako BidiGenerateContentSetup.history_config. Konfiguruje wymianę wiadomości z historii.
initialHistoryInClientContent
boolean
Opcjonalnie: Jeśli ustawiona jest wartość „prawda”, po wysłaniu setupComplete serwer będzie czekać i najpierw przetworzy wiadomości clientContent, dopóki turnComplete nie będzie true. Ta początkowa historia nie spowoduje wywołania modelu i może zakończyć się rolą MODEL. Po true turnComplete klient może rozpocząć rozmowę w czasie rzeczywistym przez realtimeInput.
| Zapis JSON |
|---|
{ "initialHistoryInClientContent": boolean } |
Metoda: auth_tokens.create
Tworzy token, którego można użyć do ograniczenia działania sesji BidiGenerateContent.
Punkt końcowy
posthttps: / /generativelanguage.googleapis.com /v1beta /auth_tokens
Treść żądania
Treść żądania zawiera wystąpienie elementu AuthToken.
expireTime
string (Timestamp format)
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Opcjonalny czas, po którym wiadomości w sesjach BidiGenerateContent będą odrzucane, jeśli używany będzie wynikowy token. (Po tym czasie Gemini może zamknąć sesję).
Jeśli nie jest ustawiony, domyślnie jest to 30 minut w przyszłości. Jeśli ta wartość jest ustawiona, musi być mniejsza niż 20 godzin w przyszłości.
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".
newSessionExpireTime
string (Timestamp format)
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Czas, po którym nowe sesje Live API korzystające z tokena wynikającego z tego żądania będą odrzucane.
Jeśli nie jest ustawiony, przyjmuje się domyślnie 60 sekund w przyszłości. Jeśli ta wartość jest ustawiona, musi być mniejsza niż 20 godzin w przyszłości.
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".
fieldMask
string (FieldMask format)
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Jeśli pole fieldMask jest puste i nie ma pola bidiGenerateContentSetup, obowiązujący komunikat BidiGenerateContentSetup jest pobierany z połączenia z Live API.
Jeśli pole fieldMask jest puste i bidiGenerateContentSetup jest obecne, to efektywny komunikat BidiGenerateContentSetup jest pobierany w całości z bidiGenerateContentSetup w tym żądaniu. Komunikat konfiguracji z połączenia z interfejsem Live API jest ignorowany.
Jeśli pole fieldMask nie jest puste, odpowiednie pola z bidiGenerateContentSetup zastąpią pola z komunikatu konfiguracji w połączeniu z interfejsem Live API.
Jest to rozdzielona przecinkami lista pełnych i jednoznacznych nazw pól. Przykład: "user.displayName,photo".
config
Union type
bidiGenerateContentSetup
object (BidiGenerateContentSetup)
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Konfiguracja dotycząca BidiGenerateContent.
uses
integer
Opcjonalnie: Tylko dane wejściowe. Wartość niezmienna. Liczba możliwych użyć tokena. Jeśli ta wartość wynosi 0, limit nie jest stosowany. Wznowienie sesji Live API nie jest liczone jako użycie. Jeśli nie zostanie określona, domyślnie będzie to 1.
Treść odpowiedzi
W przypadku powodzenia treść odpowiedzi obejmuje nowo utworzone wystąpienie elementu AuthToken.