Interfejs Gemini API obsługuje generowanie treści z użyciem obrazów, dźwięku, kodu, narzędzi i innych elementów. Szczegółowe informacje o każdej z tych funkcji znajdziesz poniżej. Możesz też zapoznać się z przykładowym kodem zorientowanym na zadania lub przeczytać obszerne przewodniki.
- Generowanie tekstu
- Widzenie
- 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 tej funkcji znajdziesz w przewodniku po generowaniu tekstu. Możliwości wprowadzania danych różnią się w zależności od modelu, w tym od 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óra ma być użyta do wygenerowania dokończenia.
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órej 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ń wykraczających poza wiedzę i zakres Model
. Obsługiwane Tool
to Function
i codeExecution
. Więcej informacji znajdziesz w przewodnikach Wywoływanie funkcji i Wykonywanie kodu.
toolConfig
object (ToolConfig
)
Opcjonalnie. Konfiguracja narzędzia dla dowolnego 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ć treści i odpowiedzi, które nie spełniają progów określonych w tych ustawieniach. Ta lista zastępuje domyślne ustawienia każdego SafetyCategory
określonego w parametrze safetySettings. Jeśli na liście nie ma wartości SafetySetting
dla danego 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 i HARM_CATEGORY_CIVIC_INTEGRITY. Szczegółowe informacje o dostępnych ustawieniach bezpieczeństwa znajdziesz w przewodniku. Zapoznaj się też z wytycznymi dotyczącymi bezpieczeństwa, aby dowiedzieć się, jak uwzględniać kwestie bezpieczeństwa w aplikacjach AI.
systemInstruction
object (Content
)
Opcjonalnie. Deweloper ustawił instrukcje systemowe. Obecnie tylko tekst.
generationConfig
object (GenerationConfig
)
Opcjonalnie. Opcje konfiguracji generowania modelu i danych wyjściowych.
cachedContent
string
Opcjonalnie. Nazwa treści w pamięci podręcznej, która ma być używana jako kontekst do wyświetlania prognozy. Format: cachedContents/{cachedContent}
Przykładowe żądanie
Tekst
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
Java
Obraz
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
Java
Dźwięk
Python
Node.js
Przeczytaj
Muszla
Wideo
Python
Node.js
Przeczytaj
Muszla
Python
Przeczytaj
Muszla
Czat
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
Java
Cache (Pamięć podręczna)
Python
Node.js
Przeczytaj
Dostrojony model
Python
Tryb JSON
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
Java
Wykonanie kodu
Python
Przeczytaj
Kotlin
Java
Wywoływanie funkcji
Python
Przeczytaj
Node.js
Muszla
Kotlin
Swift
Dart
Java
Konfiguracja generowania
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
Java
Ustawienia bezpieczeństwa
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
Java
Instrukcja systemowa
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
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óra ma być użyta do wygenerowania dokończenia.
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órej 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ń wykraczających poza wiedzę i zakres Model
. Obsługiwane Tool
to Function
i codeExecution
. Więcej informacji znajdziesz w przewodnikach Wywoływanie funkcji i Wykonywanie kodu.
toolConfig
object (ToolConfig
)
Opcjonalnie. Konfiguracja narzędzia dla dowolnego 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ć treści i odpowiedzi, które nie spełniają progów określonych w tych ustawieniach. Ta lista zastępuje domyślne ustawienia każdego SafetyCategory
określonego w parametrze safetySettings. Jeśli na liście nie ma wartości SafetySetting
dla danego 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 i HARM_CATEGORY_CIVIC_INTEGRITY. Szczegółowe informacje o dostępnych ustawieniach bezpieczeństwa znajdziesz w przewodniku. Zapoznaj się też z wytycznymi dotyczącymi bezpieczeństwa, aby dowiedzieć się, jak uwzględniać kwestie bezpieczeństwa w aplikacjach AI.
systemInstruction
object (Content
)
Opcjonalnie. Deweloper ustawił instrukcje systemowe. Obecnie tylko tekst.
generationConfig
object (GenerationConfig
)
Opcjonalnie. Opcje konfiguracji generowania modelu i danych wyjściowych.
cachedContent
string
Opcjonalnie. Nazwa treści w pamięci podręcznej, która ma być używana jako kontekst do wyświetlania prognozy. Format: cachedContents/{cachedContent}
Przykładowe żądanie
Tekst
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
Java
Obraz
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
Java
Dźwięk
Python
Przeczytaj
Muszla
Wideo
Python
Node.js
Przeczytaj
Muszla
Python
Przeczytaj
Muszla
Czat
Python
Node.js
Przeczytaj
Muszla
Kotlin
Swift
Dart
Java
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ą podawane zarówno w przypadku prompta w GenerateContentResponse.prompt_feedback
, jak i każdej propozycji w finishReason
i safetyRatings
. Interfejs API: - zwraca wszystkich żądanych kandydatów lub żadnego z nich; - nie zwraca żadnych kandydatów tylko wtedy, gdy wystąpił problem z promptem (sprawdź promptFeedback
); - przekazuje opinie o każdym kandydacie w polach finishReason
i safetyRatings
.
candidates[]
object (Candidate
)
Odpowiedzi kandydujące modelu.
promptFeedback
object (PromptFeedback
)
Zwraca opinię dotyczącą promptu związaną z filtrami treści.
usageMetadata
object (UsageMetadata
)
Tylko dane wyjściowe. Metadane dotyczące wykorzystania tokenów w żądaniach generowania.
modelVersion
string
Tylko dane wyjściowe. Wersja modelu użyta do wygenerowania odpowiedzi.
responseId
string
Tylko dane wyjściowe. Identyfikator responseId służy do identyfikowania każdej odpowiedzi.
Zapis JSON |
---|
{ "candidates": [ { object ( |
PromptFeedback
Zbiór metadanych opinii, które prompt określa w GenerateContentRequest.content
.
blockReason
enum (BlockReason
)
Opcjonalnie. Jeśli ta opcja jest ustawiona, prompt został zablokowany i nie są zwracane żadne propozycje. Przeformułuj prompta.
safetyRatings[]
object (SafetyRating
)
oceny bezpieczeństwa promptu. W każdej kategorii może być maksymalnie 1 ocena.
Zapis JSON |
---|
{ "blockReason": enum ( |
BlockReason
Określa powód zablokowania promptu.
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. Kliknij safetyRatings , aby dowiedzieć się, która kategoria bezpieczeństwa spowodowała blokadę. |
OTHER |
Prompt został zablokowany z nieznanych przyczyn. |
BLOCKLIST |
Prompt został zablokowany z powodu terminów, 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 generowanych przez obraz. |
UsageMetadata
Metadane dotyczące wykorzystania tokenów w żądaniu generowania.
promptTokenCount
integer
Liczba tokenów w prompcie. Gdy ustawiona jest wartość cachedContent
, nadal jest to łączny efektywny rozmiar promptu, co oznacza, że obejmuje on liczbę tokenów w treściach w pamięci podręcznej.
cachedContentTokenCount
integer
Liczba tokenów w części prompta zapisanej w pamięci podręcznej (treści w pamięci podręcznej).
candidatesTokenCount
integer
Łączna liczba tokenów we wszystkich wygenerowanych kandydatach na odpowiedź.
toolUsePromptTokenCount
integer
Tylko dane wyjściowe. Liczba tokenów w promptach dotyczących korzystania z narzędzi.
thoughtsTokenCount
integer
Tylko dane wyjściowe. Liczba tokenów myśli w przypadku modeli myślenia.
totalTokenCount
integer
Łączna liczba tokenów w żądaniu generowania (prompt + proponowane odpowiedzi).
promptTokensDetails[]
object (ModalityTokenCount
)
Tylko dane wyjściowe. Lista rodzajów danych, które zostały przetworzone w danych wejściowych żądania.
cacheTokensDetails[]
object (ModalityTokenCount
)
Tylko dane wyjściowe. Lista rodzajów treści w pamięci podręcznej w danych wejściowych żądania.
candidatesTokensDetails[]
object (ModalityTokenCount
)
Tylko dane wyjściowe. Lista rodzajów, które zostały zwrócone w odpowiedzi.
toolUsePromptTokensDetails[]
object (ModalityTokenCount
)
Tylko dane wyjściowe. Lista rodzajów danych, które zostały przetworzone na potrzeby danych wejściowych żądania użycia narzędzia.
Zapis JSON |
---|
{ "promptTokenCount": integer, "cachedContentTokenCount": integer, "candidatesTokenCount": integer, "toolUsePromptTokenCount": integer, "thoughtsTokenCount": integer, "totalTokenCount": integer, "promptTokensDetails": [ { object ( |
Kandydat
- Zapis JSON
- FinishReason
- GroundingAttribution
- AttributionSourceId
- GroundingPassageId
- SemanticRetrieverChunk
- GroundingMetadata
- SearchEntryPoint
- GroundingChunk
- Sieć
- GroundingSupport
- Segment
- RetrievalMetadata
- LogprobsResult
- TopCandidates
- Kandydat
- UrlContextMetadata
- UrlMetadata
- UrlRetrievalStatus
Kandydat na odpowiedź wygenerowany 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 proponowanej odpowiedzi.
W każdej kategorii może być maksymalnie 1 ocena.
citationMetadata
object (CitationMetadata
)
Tylko dane wyjściowe. Informacje o cytowaniu wygenerowanego przez model kandydata.
To pole może zawierać informacje o recytacji dowolnego tekstu zawartego w content
. Są to fragmenty „recytowane” z materiałów chronionych prawem autorskim w danych treningowych podstawowego modelu LLM.
tokenCount
integer
Tylko dane wyjściowe. Liczba tokenów w przypadku tego kandydata.
groundingAttributions[]
object (GroundingAttribution
)
Tylko dane wyjściowe. Informacje o atrybucji źródeł, które przyczyniły się do powstania sprawdzonej odpowiedzi.
To pole jest wypełniane w przypadku połączeń GenerateAnswer
.
groundingMetadata
object (GroundingMetadata
)
Tylko dane wyjściowe. Metadane dotyczące kandydata.
To pole jest wypełniane w przypadku połączeń GenerateContent
.
avgLogprobs
number
Tylko dane wyjściowe. Średnia ocena logarytmicznego prawdopodobieństwa kandydata.
logprobsResult
object (LogprobsResult
)
Tylko dane wyjściowe. wyniki logarytmicznego prawdopodobieństwa dla tokenów odpowiedzi i najczęstszych tokenów;
urlContextMetadata
object (UrlContextMetadata
)
Tylko dane wyjściowe. Metadane związane z narzędziem do pobierania kontekstu adresu URL.
index
integer
Tylko dane wyjściowe. Indeks kandydata na liście kandydatów do odpowiedzi.
Zapis JSON |
---|
{ "content": { object ( |
FinishReason
Określa przyczynę, dla której 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ść proponowanej odpowiedzi została oznaczona ze względów bezpieczeństwa. |
RECITATION |
Treść proponowanej odpowiedzi została oznaczona z powodu recytacji. |
LANGUAGE |
Treść proponowanej odpowiedzi została oznaczona z powodu użycia nieobsługiwanego języka. |
OTHER |
Nieznana przyczyna. |
BLOCKLIST |
Generowanie tokenów zostało zatrzymane, ponieważ treść zawiera zabronione słowa. |
PROHIBITED_CONTENT |
Generowanie tokenów zostało wstrzymane, ponieważ mogą one zawierać niedozwolone treści. |
SPII |
Generowanie tokenów zostało zatrzymane, ponieważ treść może zawierać informacje poufne umożliwiające identyfikację (SPII). |
MALFORMED_FUNCTION_CALL |
Wywołanie funkcji wygenerowane przez model jest nieprawidłowe. |
IMAGE_SAFETY |
Generowanie tokenów zostało zatrzymane, ponieważ wygenerowane obrazy zawierają naruszenia zasad bezpieczeństwa. |
UNEXPECTED_TOOL_CALL |
Model wygenerował wywołanie narzędzia, ale w żądaniu nie włączono żadnych narzędzi. |
GroundingAttribution
Atrybucja źródła, które przyczyniło się do powstania 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 przypisanie.
Zapis JSON |
---|
{ "sourceId": { object ( |
AttributionSourceId
Identyfikator źródła, które przyczyniło się do tej atrybucji.
source
Union type
source
może mieć tylko jedną z tych wartości:groundingPassage
object (GroundingPassageId
)
Identyfikator fragmentu w tekście.
semanticRetrieverChunk
object (SemanticRetrieverChunk
)
Identyfikator Chunk
pobrany za pomocą narzędzia Semantic Retriever.
Zapis JSON |
---|
{ // source "groundingPassage": { object ( |
GroundingPassageId
Identyfikator części w GroundingPassage
.
passageId
string
Tylko dane wyjściowe. Identyfikator fragmentu pasującego do GenerateAnswerRequest
GroundingPassage.id
.
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ą narzędzia Semantic Retriever określonego w parametrze GenerateAnswerRequest
za pomocą funkcji SemanticRetrieverConfig
.
source
string
Tylko dane wyjściowe. Nazwa źródła zgodna z 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 przypisany tekst. Przykład: corpora/123/documents/abc/chunks/xyz
Zapis JSON |
---|
{ "source": string, "chunk": string } |
GroundingMetadata
Metadane zwracane do klienta, gdy włączone jest uzasadnienie.
groundingChunks[]
object (GroundingChunk
)
Lista referencji pomocniczych pobranych z określonego źródła podstawowego.
groundingSupports[]
object (GroundingSupport
)
Lista obsługiwanych podstaw.
webSearchQueries[]
string
Zapytania do wyszukiwarki Google dotyczące dalszego wyszukiwania w internecie.
searchEntryPoint
object (SearchEntryPoint
)
Opcjonalnie. Wyszukiwarka Google do dalszych wyszukiwań w internecie.
retrievalMetadata
object (RetrievalMetadata
)
Metadane związane z wyszukiwaniem w procesie ugruntowania.
Zapis JSON |
---|
{ "groundingChunks": [ { object ( |
SearchEntryPoint
Punkt wejścia w wyszukiwarce Google.
renderedContent
string
Opcjonalnie. Fragment treści internetowych, który można umieścić na stronie internetowej lub w widoku internetowym aplikacji.
sdkBlob
string (bytes format)
Opcjonalnie. Zakodowany w formacie Base64 kod JSON reprezentujący tablicę krotek <wyszukiwane hasło, adres URL wyszukiwania>.
Ciąg tekstowy zakodowany w formacie Base64.
Zapis JSON |
---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
fragment osadzania w kontekście,
chunk_type
Union type
chunk_type
może mieć tylko jedną z tych wartości:web
object (Web
)
Fragment z odpowiedzią z internetu.
Zapis JSON |
---|
{
// chunk_type
"web": {
object ( |
Sieć
Fragment z internetu.
uri
string
Odwołanie do identyfikatora URI fragmentu.
title
string
Tytuł fragmentu.
Zapis JSON |
---|
{ "uri": string, "title": string } |
GroundingSupport
Obsługa groundingu.
groundingChunkIndices[]
integer
Lista indeksów (w „grounding_chunk”) określających cytaty powiązane z roszczeniem. Na przykład [1,3,4] oznacza, że grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] to pobrane treści przypisane do danego twierdzenia.
confidenceScores[]
number
Wskaźnik ufności dotyczący źródeł informacji. Ma zakres od 0 do 1. 1 oznacza największą pewność. Ta lista musi mieć taki sam rozmiar jak lista groundingChunkIndices.
segment
object (Segment
)
Segment treści, do którego należy ten rodzaj pomocy.
Zapis JSON |
---|
{
"groundingChunkIndices": [
integer
],
"confidenceScores": [
number
],
"segment": {
object ( |
Segment
Segment treści.
partIndex
integer
Tylko dane wyjściowe. Indeks obiektu Part w obiekcie Content nadrzędnym.
startIndex
integer
Tylko dane wyjściowe. Indeks początkowy w danym elemencie Part, mierzony w bajtach. Przesunięcie od początku części, włącznie, zaczynające się od zera.
endIndex
integer
Tylko dane wyjściowe. Indeks końcowy w danym elemencie, mierzony w bajtach. Przesunięcie od początku części, z wyłączeniem początku, zaczynające się od zera.
text
string
Tylko dane wyjściowe. Tekst odpowiadający segmentowi z odpowiedzi.
Zapis JSON |
---|
{ "partIndex": integer, "startIndex": integer, "endIndex": integer, "text": string } |
RetrievalMetadata
Metadane związane z wyszukiwaniem w procesie ugruntowania.
googleSearchDynamicRetrievalScore
number
Opcjonalnie. Ocena wskazująca, na ile informacje z wyszukiwarki Google mogą pomóc w odpowiedzi na prompt. 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 są grounding z użyciem wyszukiwarki Google i dynamiczne pobieranie. Będzie ona porównywana z wartością progową, aby określić, czy uruchomić wyszukiwanie w 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ę na liście topCandidates.
Zapis JSON |
---|
{ "topCandidates": [ { object ( |
TopCandidates
Kandydaci o najwyższym prawdopodobieństwie logarytmicznym 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
Logarytmiczne prawdopodobieństwo 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 zostało zakończone. |
URL_RETRIEVAL_STATUS_ERROR |
Nie udało się pobrać adresu URL z powodu błędu. |
CitationMetadata
Zbiór atrybucji źródła dotyczących treści.
citationSources[]
object (CitationSource
)
Cytaty źródeł dla konkretnej odpowiedzi.
Zapis JSON |
---|
{
"citationSources": [
{
object ( |
CitationSource
Cytat ze źródła dotyczący fragmentu konkretnej odpowiedzi.
startIndex
integer
Opcjonalnie. Początek segmentu odpowiedzi, który jest przypisany 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 przypisany jako źródło fragmentu tekstu.
license
string
Opcjonalnie. Licencja projektu GitHub, który jest przypisany jako źródło segmentu.
W przypadku cytatów z kodu wymagane są informacje o licencji.
Zapis JSON |
---|
{ "startIndex": integer, "endIndex": integer, "uri": string, "license": string } |
GenerationConfig
- Zapis JSON
- Rodzaj
- SpeechConfig
- VoiceConfig
- PrebuiltVoiceConfig
- MultiSpeakerVoiceConfig
- SpeakerVoiceConfig
- ThinkingConfig
- MediaResolution
Opcje konfiguracji generowania modelu i danych wyjściowych. Nie wszystkie parametry można skonfigurować 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 znaku stop_sequence
. Sekwencja zatrzymania nie będzie częścią odpowiedzi.
responseMimeType
string
Opcjonalnie. Typ MIME wygenerowanego tekstu proponowanego. Obsługiwane typy MIME: text/plain
(domyślny): dane wyjściowe w formacie tekstowym. application/json
: odpowiedź JSON w proponowanych odpowiedziach. text/x.enum
: ENUM jako odpowiedź w postaci ciągu znaków w proponowanych odpowiedziach. Listę wszystkich obsługiwanych tekstowych typów MIME znajdziesz w dokumentacji.
responseSchema
object (Schema
)
Opcjonalnie. Schemat wyjściowy wygenerowanego tekstu kandydata. Schematy muszą być podzbiorem schematu OpenAPI i mogą być obiektami, typami prostymi lub tablicami.
Jeśli jest ustawiony, musi być też ustawiony zgodny atrybut responseMimeType
. Zgodne typy MIME: application/json
: schemat odpowiedzi JSON. Więcej informacji znajdziesz w przewodniku po generowaniu tekstu w formacie JSON.
responseJsonSchema
value (Value
format)
Opcjonalnie. Schemat wyjściowy wygenerowanej odpowiedzi. Jest to alternatywa dla responseSchema
, która akceptuje schemat JSON.
Jeśli jest ustawiona, wartość responseSchema
musi zostać pominięta, ale wymagana jest wartość responseMimeType
.
Możesz 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
$anchor
type
format
title
description
enum
(w przypadku ciągów znaków i liczb)items
prefixItems
minItems
maxItems
minimum
maximum
anyOf
oneOf
(interpretowane tak samo jakanyOf
)properties
additionalProperties
required
Można też ustawić niestandardową właściwość propertyOrdering
.
Odniesienia cykliczne są rozwijane w ograniczonym stopniu i dlatego mogą być używane tylko we właściwościach niewymaganych. (Właściwości dopuszczające wartość null nie wystarczą). Jeśli w podschemacie ustawiona jest wartość $ref
, nie można ustawić żadnych innych właściwości z wyjątkiem tych, które zaczynają się od $
.
responseModalities[]
enum (Modality
)
Opcjonalnie. Żądane rodzaje odpowiedzi. Reprezentuje zestaw rodzajów danych, które model może zwracać i które powinny znajdować się w odpowiedzi. Jest to dokładne dopasowanie do form odpowiedzi.
Model może obsługiwać wiele kombinacji obsługiwanych rodzajów danych. Jeśli żądane rodzaje nie pasują do żadnej z obsługiwanych kombinacji, zwracany jest błąd.
Pusta lista jest równoznaczna z żądaniem tylko tekstu.
candidateCount
integer
Opcjonalnie. Liczba wygenerowanych odpowiedzi do zwrócenia. Jeśli nie podasz tu żadnej wartości, zostanie użyta wartość domyślna 1. Pamiętaj, że ta funkcja nie działa w przypadku modeli poprzedniej generacji (Gemini 1.0).
maxOutputTokens
integer
Opcjonalnie. Maksymalna liczba tokenów, które mają być uwzględnione w proponowanej odpowiedzi.
Uwaga: wartość domyślna różni się w zależności od modelu. Sprawdź atrybut Model.output_token_limit
elementu Model
zwróconego 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. Sprawdź atrybut Model.temperature
elementu Model
zwróconego przez funkcję getModel
.
Wartości mogą mieścić się w zakresie [0,0, 2,0].
topP
number
Opcjonalnie. Maksymalne skumulowane prawdopodobieństwo tokenów, które należy wziąć pod uwagę podczas próbkowania.
Model korzysta z połączonego próbkowania Top-k i Top-p (nucleus).
Tokeny są sortowane na podstawie przypisanych im prawdopodobieństw, dzięki czemu brane pod uwagę są tylko najbardziej prawdopodobne tokeny. Próbkowanie Top-k bezpośrednio ogranicza maksymalną liczbę tokenów do rozważenia, a próbkowanie Nucleus ogranicza liczbę tokenów na podstawie skumulowanego prawdopodobieństwa.
Uwaga: wartość domyślna zależy 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 atrybutu topK
w żądaniach.
topK
integer
Opcjonalnie. Maksymalna liczba tokenów do uwzględnienia podczas próbkowania.
Modele Gemini korzystają z 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ądrowym nie zezwalają na ustawienie topK.
Uwaga: wartość domyślna zależy 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 atrybutu topK
w żądaniach.
seed
integer
Opcjonalnie. Wartość początkowa użyta do dekodowania. Jeśli nie zostanie ustawiona, żądanie używa losowo wygenerowanego ziarna.
presencePenalty
number
Opcjonalnie. Kara za obecność zastosowana do logprobs kolejnego tokena, jeśli token został już użyty w odpowiedzi.
Ta kara jest binarna (włączona lub wyłączona) i nie zależy od liczby użyć tokena (po pierwszym). Użyj frequencyPenalty
w przypadku kary, która wzrasta z każdym użyciem.
Kara dodatnia zniechęci do używania tokenów, które zostały już użyte w odpowiedzi, zwiększając słownictwo.
Ujemna kara zachęci do używania tokenów, które zostały już użyte w odpowiedzi, co zmniejszy słownictwo.
frequencyPenalty
number
Opcjonalnie. Kara za częstotliwość zastosowana do logarytmicznych prawdopodobieństw następnego tokena pomnożona przez liczbę wystąpień każdego tokena w dotychczasowej odpowiedzi.
Kara dodatnia 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 ich użyć. Małe wartości ujemne zmniejszają słownictwo odpowiedzi. Większe wartości ujemne spowodują, że model zacznie powtarzać typowy token, aż osiągnie limit maxOutputTokens
.
responseLogprobs
boolean
Opcjonalnie. Jeśli ma wartość „true”, w odpowiedzi zostaną wyeksportowane wyniki logprobs.
logprobs
integer
Opcjonalnie. Obowiązuje tylko wtedy, gdy responseLogprobs=True
. Określa liczbę najbardziej prawdopodobnych logarytmów, które mają być zwracane na każdym etapie dekodowania w Candidate.logprobs_result
.
enableEnhancedCivicAnswers
boolean
Opcjonalnie. Włącza ulepszone odpowiedzi dotyczące spraw obywatelskich. Może nie być dostępna w przypadku wszystkich modeli.
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ą myślenia, zostanie zwrócony błąd.
mediaResolution
enum (MediaResolution
)
Opcjonalnie. Jeśli zostanie określona, użyta zostanie podana rozdzielczość.
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 mowy.
voiceConfig
object (VoiceConfig
)
Konfiguracja w przypadku wyjścia z jednym głosem.
multiSpeakerVoiceConfig
object (MultiSpeakerVoiceConfig
)
Opcjonalnie. Konfiguracja systemu wielogłośnikowego. Wyklucza się wzajemnie z polem voiceConfig.
languageCode
string
Opcjonalnie. Kod języka (w formacie BCP 47, np. „en-US”) do 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órego chcesz użyć.
voice_config
Union type
voice_config
może mieć tylko jedną z tych wartości:prebuiltVoiceConfig
object (PrebuiltVoiceConfig
)
Konfiguracja gotowego głosu, którego chcesz użyć.
Zapis JSON |
---|
{
// voice_config
"prebuiltVoiceConfig": {
object ( |
PrebuiltVoiceConfig
Konfiguracja, która ma być używana w przypadku gotowego głośnika.
voiceName
string
Nazwa gotowego głosu do użycia.
Zapis JSON |
---|
{ "voiceName": string } |
MultiSpeakerVoiceConfig
Konfiguracja systemu wielogłośnikowego.
speakerVoiceConfigs[]
object (SpeakerVoiceConfig
)
Wymagane. Wszystkie włączone głosy głośnikó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 do użycia. Powinna być taka sama jak w prompcie.
voiceConfig
object (VoiceConfig
)
Wymagane. Konfiguracja głosu, którego chcesz użyć.
Zapis JSON |
---|
{
"speaker": string,
"voiceConfig": {
object ( |
ThinkingConfig
Konfiguracja funkcji myślenia.
includeThoughts
boolean
Określa, czy w odpowiedzi mają być uwzględnione przemyślenia. Jeśli wartość to prawda, myśli są zwracane tylko wtedy, gdy są dostępne.
thinkingBudget
integer
Liczba tokenów myśli, które ma wygenerować model.
Zapis JSON |
---|
{ "includeThoughts": boolean, "thinkingBudget": integer } |
MediaResolution
Rozdzielczość multimediów wejściowych.
Wartości w polu enum | |
---|---|
MEDIA_RESOLUTION_UNSPECIFIED |
Rozdzielczość multimediów nie została ustawiona. |
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ą (ponowne kadrowanie z powiększeniem z 256 tokenami). |
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 jest określona. |
HARM_CATEGORY_DEROGATORY |
PaLM – negatywne lub szkodliwe komentarze dotyczące tożsamości innej osoby lub cech chronionych. |
HARM_CATEGORY_TOXICITY |
PaLM – treści, które są niegrzeczne, obraźliwe lub wulgarne. |
HARM_CATEGORY_VIOLENCE |
PaLM – opisuje scenariusze przedstawiające przemoc wobec osoby lub grupy albo ogólne opisy drastycznych scen. |
HARM_CATEGORY_SEXUAL |
PaLM – zawiera odniesienia do aktów seksualnych lub innych lubieżnych treści. |
HARM_CATEGORY_MEDICAL |
PaLM – promuje niesprawdzone porady medyczne. |
HARM_CATEGORY_DANGEROUS |
PaLM – treści niebezpieczne, które promują, wspierają lub ułatwiają podejmowanie szkodliwych działań. |
HARM_CATEGORY_HARASSMENT |
Gemini – treści związane z nękaniem. |
HARM_CATEGORY_HATE_SPEECH |
Gemini – wypowiedzi szerzące nienawiść i treś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ą być wykorzystywane do naruszania integralności obywatelskiej. |
ModalityTokenCount
Zawiera informacje o liczbie tokenów dla jednego rodzaju danych.
modality
enum (Modality
)
Rodzaj powiązany z tą liczbą tokenów.
tokenCount
integer
Liczba tokenów.
Zapis JSON |
---|
{
"modality": enum ( |
Modalność
Rodzaj części treści
Wartości w polu enum | |
---|---|
MODALITY_UNSPECIFIED |
Nieokreślona modalność. |
TEXT |
Zwykły tekst. |
IMAGE |
Obraz. |
VIDEO |
Film. |
AUDIO |
Dźwięk |
DOCUMENT |
Dokument, np. PDF. |
SafetyRating
Ocena bezpieczeństwa treści.
Ocena bezpieczeństwa zawiera kategorię szkody i poziom prawdopodobieństwa szkody w tej kategorii dla danego materiału. Treści są klasyfikowane pod kątem bezpieczeństwa w kilku kategoriach szkód, a prawdopodobieństwo klasyfikacji szkody jest tu uwzględnione.
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 |
Treści mają znikome prawdopodobieństwo bycia niebezpiecznymi. |
LOW |
Treść ma niskie prawdopodobieństwo bycia niebezpieczną. |
MEDIUM |
Treść ma średnie prawdopodobieństwo bycia niebezpieczną. |
HIGH |
Treści z dużym prawdopodobieństwem są niebezpieczne. |
SafetySetting
Ustawienie bezpieczeństwa wpływające na blokowanie treści ze względu na bezpieczeństwo.
Przekroczenie ustawienia bezpieczeństwa w przypadku kategorii zmienia dopuszczalne 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 przy określonym prawdopodobieństwie wystąpienia szkodliwych treści i wyższym.
Wartości w polu enum | |
---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
Próg nie został określony. |
BLOCK_LOW_AND_ABOVE |
Treści z oznaczeniem NEGLIGIBLE będą dozwolone. |
BLOCK_MEDIUM_AND_ABOVE |
Treści o poziomach NEGLIGIBLE i LOW będą dozwolone. |
BLOCK_ONLY_HIGH |
Treści o poziomach ryzyka NEGLIGIBLE, LOW i MEDIUM będą dozwolone. |
BLOCK_NONE |
Wszystkie treści będą dozwolone. |
OFF |
Wyłącz filtr bezpieczeństwa. |