Gemini API obsługuje generowanie treści za pomocą obrazów, dźwięku, kodu, narzędzi i innych elementów. Szczegółowe informacje o każdej z tych funkcji znajdziesz w przykładowym kodzie do wykonywania zadań lub w wyczerpujących przewodnikach.
- Generowanie tekstu
- Vision
- Dźwięk
- Długi kontekst
- Wykonywanie kodu
- Tryb JSON
- Połączenia z funkcjami
- Instrukcje dotyczące systemu
Metoda: models.generateContent
generuje odpowiedź modelu na podstawie wejścia GenerateContentRequest
. Szczegółowe informacje o korzystaniu z tej funkcji znajdziesz w przewodniku po generowaniu tekstu. Możliwości wejściowe różnią się w zależności od modelu, w tym w przypadku modeli z dodatkowymi funkcjami. Więcej informacji znajdziesz w przewodniku po modelach i przewodniku po dostrajaniu.
Punkt końcowy
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateContent
Adres URL używa składni transkodowania gRPC.
Parametry ścieżki
model
string
Wymagane. Nazwa Model
, która ma być użyta do wygenerowania zakończenia.
Format: models/{model}
. Ma ona 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 zakresem Model
. Obsługiwane wartości Tool
to Function
i codeExecution
. Więcej informacji znajdziesz w przewodniku po wywoływaniu funkcji i przewodniku po wykonywaniu 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 wymagane w przypadku znaczników GenerateContentRequest.contents
i GenerateContentResponse.candidates
. W przypadku każdego typu SafetyCategory
nie powinno być więcej niż 1 ustawienia. Interfejs API będzie blokować wszystkie treści i odpowiedzi, które nie spełniają wartości granicznych określonych przez te ustawienia. Ta lista zastępuje domyślne ustawienia każdego SafetyCategory
określonego w safetySettings. Jeśli na liście nie ma podanego 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 i HARM_CATEGORY_HARASSMENT. Szczegółowe informacje o dostępnych ustawieniach zabezpieczeń znajdziesz w przewodniku. Zapoznaj się też ze wskazówkami dotyczącymi bezpieczeństwa, aby dowiedzieć się, jak uwzględniać kwestie bezpieczeństwa w aplikacji wykorzystującej AI.
systemInstruction
object (Content
)
Opcjonalnie: Deweloper ustawił instrukcje systemowe. Obecnie tylko tekst.
generationConfig
object (GenerationConfig
)
Opcjonalnie: Opcje konfiguracji generowania modelu i wyjść.
cachedContent
string
Opcjonalnie: Nazwa treści przechowywanej w pamięci podręcznej, która ma służyć jako kontekst do wyświetlenia prognozy. Format: cachedContents/{cachedContent}
Przykładowe żądanie
Tekst
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Obraz
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Audio
Python
Node.js
Pudrowy róż
Wideo
Python
Node.js
Przeczytaj
Pudrowy róż
Python
Pudrowy róż
Czat
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Cache (Pamięć podręczna)
Python
Node.js
Dostrojony model
Python
Tryb JSON
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Wykonywanie kodu
Python
Kotlin
Java
Wywoływanie funkcji
Python
Node.js
Pudrowy róż
Kotlin
Swift
Dart
Java
Konfiguracja generacji
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Ustawienia bezpieczeństwa
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Instrukcja systemowa
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Treść odpowiedzi
W przypadku powodzenia treść odpowiedzi obejmuje wystąpienie elementu GenerateContentResponse
.
Metoda: models.streamGenerateContent
Generuje strumień odpowiedzi z modelu na podstawie danych wejściowych GenerateContentRequest
.
Punkt końcowy
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:streamGenerateContent
Adres URL używa składni transkodowania gRPC.
Parametry ścieżki
model
string
Wymagane. Nazwa Model
, która ma być użyta do wygenerowania zakończenia.
Format: models/{model}
. Ma ona 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 zakresem Model
. Obsługiwane wartości Tool
to Function
i codeExecution
. Więcej informacji znajdziesz w przewodniku po wywoływaniu funkcji i przewodniku po wykonywaniu 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 wymagane w przypadku znaczników GenerateContentRequest.contents
i GenerateContentResponse.candidates
. W przypadku każdego typu SafetyCategory
nie powinno być więcej niż 1 ustawienia. Interfejs API będzie blokować wszystkie treści i odpowiedzi, które nie spełniają wartości granicznych określonych przez te ustawienia. Ta lista zastępuje domyślne ustawienia każdego SafetyCategory
określonego w safetySettings. Jeśli na liście nie ma podanego 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 i HARM_CATEGORY_HARASSMENT. Szczegółowe informacje o dostępnych ustawieniach zabezpieczeń znajdziesz w przewodniku. Zapoznaj się też ze wskazówkami dotyczącymi bezpieczeństwa, aby dowiedzieć się, jak uwzględniać kwestie bezpieczeństwa w aplikacji wykorzystującej AI.
systemInstruction
object (Content
)
Opcjonalnie: Deweloper ustawił instrukcje systemowe. Obecnie tylko tekst.
generationConfig
object (GenerationConfig
)
Opcjonalnie: Opcje konfiguracji generowania modelu i wyjść.
cachedContent
string
Opcjonalnie: Nazwa treści przechowywanej w pamięci podręcznej, która ma służyć jako kontekst do wyświetlenia prognozy. Format: cachedContents/{cachedContent}
Przykładowe żądanie
Tekst
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Obraz
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Audio
Python
Pudrowy róż
Wideo
Python
Node.js
Przeczytaj
Pudrowy róż
Python
Pudrowy róż
Czat
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Treść odpowiedzi
Jeśli operacja się powiedzie, treść odpowiedzi będzie zawierała strumień instancji GenerateContentResponse
.
GenerateContentResponse
Odpowiedź modelu obsługującego wiele odpowiedzi kandydatów.
Oceny bezpieczeństwa i filtrowanie treści są raportowane zarówno dla promptu w GenerateContentResponse.prompt_feedback
, jak i dla każdego kandydata w finishReason
i safetyRatings
. Interfejs API: – zwraca wszystkie żądane kandydatury lub żadne; – nie zwraca żadnych kandydatur tylko wtedy, gdy coś było nie tak z promptem (sprawdź promptFeedback
); – raportuje opinie o każdym kandydacie w elementach finishReason
i safetyRatings
.
candidates[]
object (Candidate
)
Odpowiedzi kandydatów na podstawie modelu.
promptFeedback
object (PromptFeedback
)
Zwraca informacje zwrotne dotyczące prompta związane z filtrami treści.
usageMetadata
object (UsageMetadata
)
Tylko dane wyjściowe. Metadane dotyczące użycia tokena żądań generowania.
modelVersion
string
Tylko dane wyjściowe. Wersja modelu użyta do wygenerowania odpowiedzi.
Zapis JSON |
---|
{ "candidates": [ { object ( |
PromptFeedback
Zestaw metadanych opinii prompta określonego w GenerateContentRequest.content
.
blockReason
enum (BlockReason
)
Opcjonalnie: Jeśli jest ustawiony, oznacza, że prompt został zablokowany i nie zwraca żadnych kandydatów. Zmień treść 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. Sprawdź 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 haseł, które znajdują się na liście zablokowanych haseł. |
PROHIBITED_CONTENT |
Prompt został zablokowany z powodu niedozwolonych treści. |
UsageMetadata
Metadane dotyczące użycia tokena w żądaniu generowania.
promptTokenCount
integer
Liczba tokenów w prompcie. Gdy ustawisz wartość cachedContent
, nadal będzie to łączny docelowy 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 przechowywanej w pamięci podręcznej (treści w pamięci podręcznej)
candidatesTokenCount
integer
Łączna liczba tokenów we wszystkich wygenerowanych odpowiedziach.
totalTokenCount
integer
Łączna liczba tokenów w żądaniu generowania (prompt + kandydujące odpowiedzi).
Zapis JSON |
---|
{ "promptTokenCount": integer, "cachedContentTokenCount": integer, "candidatesTokenCount": integer, "totalTokenCount": integer } |
Kandydat
- Zapis JSON
- FinishReason
- GroundingAttribution
- AttributionSourceId
- GroundingPassageId
- SemanticRetrieverChunk
- GroundingMetadata
- SearchEntryPoint
- GroundingChunk
- Sieć
- GroundingSupport
- Segment
- RetrievalMetadata
- LogprobsResult
- TopCandidates
- Kandydat
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 zakończył generowania tokenów.
safetyRatings[]
object (SafetyRating
)
Lista ocen bezpieczeństwa kandydata na odpowiedź.
W każdej kategorii może być maksymalnie 1 ocena.
citationMetadata
object (CitationMetadata
)
Tylko dane wyjściowe. Informacje o cytowaniu kandydata wygenerowanego przez model.
To pole może zawierać informacje o recytacji dotyczące dowolnego tekstu zawartego w content
. Są to fragmenty „recytowane” z materiałów chronionych prawem autorskim w danych treningowych LLM.
tokenCount
integer
Tylko dane wyjściowe. Liczba tokenów dla tego kandydata.
groundingAttributions[]
object (GroundingAttribution
)
Tylko dane wyjściowe. Informacje o źródłach, które przyczyniły się do stworzenia wiarygodnej odpowiedzi.
To pole jest wypełniane w przypadku wywołań GenerateAnswer
.
groundingMetadata
object (GroundingMetadata
)
Tylko dane wyjściowe. Metadane dotyczące kandydata.
To pole jest wypełniane w przypadku wywołań GenerateContent
.
avgLogprobs
number
Tylko dane wyjściowe. Średnia wartość logarytmicznego wyniku prawdopodobieństwa kandydata.
logprobsResult
object (LogprobsResult
)
Tylko dane wyjściowe. Wyniki log-likelihood dla tokenów odpowiedzi i najczęstszych tokenów
index
integer
Tylko dane wyjściowe. Indeks kandydata na liście kandydatów do odpowiedzi.
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 kandydata została oznaczona ze względów bezpieczeństwa. |
RECITATION |
Treści odpowiedzi kandydata zostały oznaczone z powodu recytacji. |
LANGUAGE |
Treści odpowiedzi zostały oznaczone flagą z powodu użycia nieobsługiwanego języka. |
OTHER |
Nieznana przyczyna. |
BLOCKLIST |
Generowanie tokenów zostało zatrzymane, ponieważ treści zawierają zabronione hasła. |
PROHIBITED_CONTENT |
Generowanie tokena zostało zatrzymane, ponieważ zawierał on potencjalnie niedozwolone treści. |
SPII |
Generowanie tokena zostało zatrzymane, ponieważ treści mogą zawierać poufne informacje umożliwiające identyfikację. |
MALFORMED_FUNCTION_CALL |
Wywołanie funkcji wygenerowane przez model jest nieprawidłowe. |
GroundingAttribution
Informacje o źródle, które przyczyniło się do odpowiedzi.
sourceId
object (AttributionSourceId
)
Tylko dane wyjściowe. Identyfikator źródła, które przyczyniło się do atrybucji.
content
object (Content
)
Treści źródłowe, które stanowią podstawę atrybucji.
Zapis JSON |
---|
{ "sourceId": { object ( |
AttributionSourceId
Identyfikator źródła, które przyczyniło się do atrybucji.
source
Union type
source
może być tylko jednym z tych elementów:groundingPassage
object (GroundingPassageId
)
Identyfikator tekstu wstawionego.
semanticRetrieverChunk
object (SemanticRetrieverChunk
)
Identyfikator Chunk
pobierany za pomocą Semantic Retriever.
Zapis JSON |
---|
{ // source "groundingPassage": { object ( |
GroundingPassageId
Identyfikator części w GroundingPassage
.
passageId
string
Tylko dane wyjściowe. Identyfikator fragmentu tekstu pasującego do GenerateAnswerRequest
GroundingPassage.id
.
partIndex
integer
Tylko dane wyjściowe. Indeks części w sekcji GroundingPassage.content
w urządzeniu GenerateAnswerRequest
.
Zapis JSON |
---|
{ "passageId": string, "partIndex": integer } |
SemanticRetrieverChunk
Identyfikator Chunk
odzyskany za pomocą Semantic Retrievera określonego w GenerateAnswerRequest
za pomocą SemanticRetrieverConfig
.
source
string
Tylko dane wyjściowe. Nazwa źródła pasująca do SemanticRetrieverConfig.source
w żądaniu. Przykład: corpora/123
lub corpora/123/documents/abc
chunk
string
Tylko dane wyjściowe. Nazwa Chunk
zawierającego tekst przypisany. Przykład: corpora/123/documents/abc/chunks/xyz
Zapis JSON |
---|
{ "source": string, "chunk": string } |
GroundingMetadata
Metadane zwracane klientowi, gdy włączone jest uziemienie.
groundingChunks[]
object (GroundingChunk
)
Lista referencji pomocniczych pobranych ze wskazanego źródła informacji.
groundingSupports[]
object (GroundingSupport
)
Lista materiałów do uziemienia.
webSearchQueries[]
string
zapytania w wyszukiwarce Google dotyczące kolejnego wyszukiwania w internecie;
searchEntryPoint
object (SearchEntryPoint
)
Opcjonalnie: Wpis w wyszukiwarce Google dotyczący dalszych wyszukiwań w internecie.
retrievalMetadata
object (RetrievalMetadata
)
Metadane związane z wyszukiwaniem w ramach procesu wprowadzania w temat.
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 aplikacji.
sdkBlob
string (bytes format)
Opcjonalnie: Dane JSON zakodowane w formacie Base64, które reprezentują tablicę tuple’ów <wyszukiwane hasło, adres URL wyszukiwania>.
Ciąg znaków zakodowany w formacie Base64.
Zapis JSON |
---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
Fragment umocowania.
chunk_type
Union type
chunk_type
może być tylko jednym z tych elementów:web
object (Web
)
Podstawowe informacje z internetu.
Zapis JSON |
---|
{
// chunk_type
"web": {
object ( |
Sieć
Fragment z internetu.
uri
string
Identyfikator URI fragmentu.
title
string
Tytuł fragmentu.
Zapis JSON |
---|
{ "uri": string, "title": string } |
GroundingSupport
Podpięcie do podłoża.
groundingChunkIndices[]
integer
Lista indeksów (w polu „grounding_chunk”) określająca cytaty powiązane z roszczeniem. Na przykład [1,3,4] oznacza, że grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] to odzyskane treści przypisane do roszczenia.
confidenceScores[]
number
Wskaźnik ufności w informacje o kontaktach z zespołem pomocy. Ma zakres od 0 do 1. 1 to najwyższy poziom pewności. Ta lista musi mieć taki sam rozmiar jak groundingChunkIndices.
segment
object (Segment
)
Segment treści, do których należy ta pomoc.
Zapis JSON |
---|
{
"groundingChunkIndices": [
integer
],
"confidenceScores": [
number
],
"segment": {
object ( |
Segment
Segment treści.
partIndex
integer
Tylko dane wyjściowe. Indeks obiektu Część w ramach nadrzędnego obiektu Treść.
startIndex
integer
Tylko dane wyjściowe. Indeks początkowy w danym elemencie, mierzony w bajtach. Odsunięcie od początku części, włącznie, zaczynając od zera.
endIndex
integer
Tylko dane wyjściowe. Indeks końcowy w podanym fragmencie, mierzony w bajtach. Odsunięcie od początku części, 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 ramach procesu wprowadzania w temat.
googleSearchDynamicRetrievalScore
number
Opcjonalnie: Wynik wskazujący, jak prawdopodobne jest to, że informacje z wyszukiwarki Google pomogą w odpowiedzi na prompt. Wynik mieści się w zakresie [0,1], gdzie 0 to najmniej prawdopodobne, a 1 to najbardziej prawdopodobne. Ten wynik jest wypełniany tylko wtedy, gdy włączone są podstawy wyszukiwania Google i dynamiczne wyszukiwanie. Wartość ta zostanie porównana z wartością progową, aby określić, czy należy 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. Wybrane kandydatury mogą się znajdować w topCandidates lub nie.
Zapis JSON |
---|
{ "topCandidates": [ { object ( |
TopCandidates
Kandydaci o największych prawdopodobieństwach logarytmicznych na każdym etapie dekodowania.
candidates[]
object (Candidate
)
Posortowane według logarytmicznej wartości prawdopodobieństwa w kolejności malejącej.
Zapis JSON |
---|
{
"candidates": [
{
object ( |
Kandydat
Kandydat na token i wynik logprobs.
token
string
Wartość ciągu znaków tokena kandydata.
tokenId
integer
Wartość identyfikatora tokena kandydata.
logProbability
number
Logarytmiczna wartość prawdopodobieństwa kandydata.
Zapis JSON |
---|
{ "token": string, "tokenId": integer, "logProbability": number } |
CitationMetadata
Kolekcja informacji o źródłach danej treści.
citationSources[]
object (CitationSource
)
Odwołania do źródeł konkretnej odpowiedzi.
Zapis JSON |
---|
{
"citationSources": [
{
object ( |
CitationSource
Cytat z źródła, z którego pochodzi część 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 przypisany jako źródło części tekstu.
license
string
Opcjonalnie: Licencja projektu GitHub, który jest przypisany jako źródło segmentu.
W przypadku cytowania kodu wymagane są informacje o licencji.
Zapis JSON |
---|
{ "startIndex": integer, "endIndex": integer, "uri": string, "license": string } |
GenerationConfig
Opcje konfiguracji generowania modelu i wyjść. Nie wszystkie parametry można konfigurować w przypadku każdego modelu.
stopSequences[]
string
Opcjonalnie: Zestaw sekwencji znaków (do 5), który powoduje zatrzymanie generowania danych wyjściowych. Jeśli zostanie to określone, API zatrzyma się przy pierwszym wystąpieniu stop_sequence
. Sekwencja zatrzymania nie będzie uwzględniona w odpowiedzi.
responseMimeType
string
Opcjonalnie: Typ MIME wygenerowanego tekstu kandydata. Obsługiwane typy MIME: text/plain
: (domyślny) tekst wyjściowy. application/json
: odpowiedź JSON w kandydatach odpowiedzi. text/x.enum
: ENUM jako ciąg znaków w odpowiedziach. Listę wszystkich obsługiwanych typów MIME tekstu znajdziesz w dokumentacji.
responseSchema
object (Schema
)
Opcjonalnie: Schemat wyjściowy wygenerowanego tekstu kandydata. Schematy muszą być podzbiorem schematu OpenAPI i mogą być obiektami, typami prymitywnymi lub tablicami.
Jeśli jest ustawiona, musi być też skonfigurowana zgodna wartość responseMimeType
. Kompatybilne typy MIME: application/json
: schemat odpowiedzi JSON. Więcej informacji znajdziesz w przewodniku po generowaniu tekstu w formacie JSON.
candidateCount
integer
Opcjonalnie: Liczba generowanych odpowiedzi do zwrócenia.
Obecnie wartość ta może być ustawiona tylko na 1. Jeśli nie jest ustawiona, przyjmuje domyślnie wartość 1.
maxOutputTokens
integer
Opcjonalnie: Maksymalna liczba tokenów do uwzględnienia w potencjalnej odpowiedzi.
Uwaga: wartość domyślna różni się w zależności od modelu. Zobacz 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. Zobacz atrybut Model.temperature
elementu Model
zwracanego przez funkcję getModel
.
Wartości muszą mieścić się w zakresie [0,0, 2,0].
topP
number
Opcjonalnie: Maksymalne skumulowane prawdopodobieństwo tokenów do uwzględnienia podczas próbkowania.
Model wykorzystuje kombinację próbkowania Top-k i Top-p (jądro).
Tokeny są sortowane według przypisanych im prawdopodobieństw, dzięki czemu uwzględniane są tylko najbardziej prawdopodobne tokeny. Próbkowanie Top-K bezpośrednio ogranicza maksymalną liczbę tokenów do rozważenia, podczas gdy próbkowanie Nucleus 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
wskazuje, że model nie stosuje próbkowania top-k i nie pozwala na ustawienie topK
w żądaniach.
topK
integer
Opcjonalnie: Maksymalna liczba tokenów do uwzględnienia podczas próbkowania.
Modele Gemini korzystają z próbkowania Top-p (jądro) lub kombinacji próbkowania Top-k i jądra. Próbkowanie Top-K uwzględnia zbiór topK
najbardziej prawdopodobnych tokenów. Modele korzystające z próbkowania jądrowego nie obsługują ustawienia 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
wskazuje, że model nie stosuje próbkowania top-k i nie pozwala na ustawienie topK
w żądaniach.
presencePenalty
number
Opcjonalnie: Kara za obecność zastosowana do logprobs następnego tokena, jeśli token został już uwzględniony w odpowiedzi.
Ta kara jest stosowana w postaci binarnej (włącz/wyłącz) i nie zależy od liczby użyć tokena (po pierwszym użyciu). Użyj frequencyPenalty
, aby nakładać coraz wyższą karę za każde użycie.
Kara za pozytywne odpowiedzi zniechęca do używania tokenów, które zostały już użyte w odpowiedzi, co zwiększa słownictwo.
Kara za negatywne wyniki zachęci do używania tokenów, które zostały już użyte w odpowiedzi, co spowoduje zmniejszenie słownictwa.
frequencyPenalty
number
Opcjonalnie: Kara za częstotliwość stosowana do logprobów następnego elementu, pomnożona przez liczbę wystąpień każdego elementu w dotychczasowej odpowiedzi.
Pozytywne kary zniechęcą do używania tokenów, które zostały już użyte, proporcjonalnie do liczby ich użycia: im częściej używany jest token, tym trudniej jest modelowi użyć go ponownie, co zwiększa słownictwo odpowiedzi.
Uwaga: ujemna kara zachęca model do ponownego używania tokenów proporcjonalnie do liczby ich użycia. Małe wartości ujemne zmniejszają słownictwo odpowiedzi. Większe wartości ujemne spowodują, że model zacznie powtarzać wspólny element, aż osiągnie limit maxOutputTokens
.
responseLogprobs
boolean
Opcjonalnie: Jeśli wartość to prawda, wyniki logprobs zostaną wyeksportowane w odpowiedzi.
logprobs
integer
Opcjonalnie: Obowiązuje tylko wtedy, gdy responseLogprobs=True
. Określa liczbę najlepszych logprobów zwracanych na każdym kroku dekodowania w funkcji Candidate.logprobs_result
.
enableEnhancedCivicAnswers
boolean
Opcjonalnie: Umożliwia wyświetlanie ulepszonych odpowiedzi na pytania dotyczące spraw obywatelskich. Ta funkcja może nie być dostępna w przypadku niektórych modeli.
Zapis JSON |
---|
{
"stopSequences": [
string
],
"responseMimeType": string,
"responseSchema": {
object ( |
HarmCategory
Kategoria oceny.
Te kategorie obejmują różne rodzaje szkód, które deweloperzy mogą chcieć skorygować.
Wartości w polu enum | |
---|---|
HARM_CATEGORY_UNSPECIFIED |
Nie określono kategorii. |
HARM_CATEGORY_DEROGATORY |
PaLM – negatywne lub szkodliwe komentarze dotyczące tożsamości innej osoby lub cech chronionych. |
HARM_CATEGORY_TOXICITY |
PaLM – treści niegrzeczne, niekulturalne lub wulgarne. |
HARM_CATEGORY_VIOLENCE |
PaLM – opisywanie scenariuszy przedstawiających przemoc wobec osoby lub grupy albo ogólne opisy makabry. |
HARM_CATEGORY_SEXUAL |
PaLM – zawiera odniesienia do aktów seksualnych lub inne lubieżne treści. |
HARM_CATEGORY_MEDICAL |
PaLM – promuje niesprawdzone porady medyczne. |
HARM_CATEGORY_DANGEROUS |
PaLM – niebezpieczne treści, 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 – treści i wypowiedzi szerzące nienawiść. |
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. |
SafetyRating
Ocena bezpieczeństwa treści.
Ocena bezpieczeństwa zawiera kategorię szkody i poziom prawdopodobieństwa wystąpienia szkody w danej kategorii dla danej treści. Treści są klasyfikowane pod kątem bezpieczeństwa w różnych kategoriach szkody, a prawdopodobieństwo klasyfikacji szkody jest uwzględnione w danych.
category
enum (HarmCategory
)
Wymagane. Kategoria oceny.
probability
enum (HarmProbability
)
Wymagane. prawdopodobieństwo wyrządzenia szkody przez te treści;
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 oznacza to jednak, że treści są szczególnie szkodliwe.
Wartości w polu enum | |
---|---|
HARM_PROBABILITY_UNSPECIFIED |
Prawdopodobieństwo nie zostało określone. |
NEGLIGIBLE |
Treści mają znikome szanse na to, że są niebezpieczne. |
LOW |
Treści mają niską szansę na to, że będą niebezpieczne. |
MEDIUM |
Treści mają średnie prawdopodobieństwo bycia niebezpiecznymi. |
HIGH |
Treści z dużym prawdopodobieństwem są niebezpieczne. |
SafetySetting
Ustawienie bezpieczeństwa, które wpływa na zachowanie blokowania zabezpieczeń.
Przekazywanie ustawienia bezpieczeństwa dla danej 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 blokuje szkody.
Zapis JSON |
---|
{ "category": enum ( |
HarmBlockThreshold
blokowanie treści, gdy prawdopodobieństwo wystąpienia szkody jest określone 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 NIEZNACZYWALNYM poziomem reklam będą dozwolone. |
BLOCK_MEDIUM_AND_ABOVE |
Treści z ocenami NEGLIGIBLE i LOW będą dozwolone. |
BLOCK_ONLY_HIGH |
Dozwolone są treści z poziomem NEGLIGIBLE, LOW i MEDIUM. |
BLOCK_NONE |
Wszystkie treści będą dozwolone. |
OFF |
Wyłącz filtr bezpieczeństwa. |