Interfejs Gemini API obsługuje m.in. generowanie treści przy użyciu obrazów, dźwięków, kodu i narzędzi. Aby uzyskać szczegółowe informacje o każdej z tych funkcji, przeczytaj przykładowy kod dotyczący konkretnego zadania lub przeczytaj kompleksowe przewodniki.
- Generowanie tekstu
- Wizja
- Dźwięk
- Długi kontekst
- Wykonywanie kodu
- Tryb JSON
- Wywoływanie funkcji
- Instrukcje systemowe
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 dostrojonych. Więcej informacji znajdziesz w przewodniku po modelach i przewodniku po dostrajaniu.
Punkt końcowy
post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:generateContentParametry ścieżki
model
string
Wymagane. Nazwa Model
, która ma być użyta do wygenerowania zakończenia.
Format: name=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 wiedzą i zakresem Model
. Obsługiwane elementy typu 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 dowolnych Tool
określonych w żądaniu. Przykład użycia znajdziesz w przewodniku dotyczącym wywoływania 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ć wszelkie 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 bezpieczeństwa 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 przechowywanych w pamięci podręcznej, które mają 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
Model dostrojony
Python
Tryb JSON
Python
Node.js
Przeczytaj
Pudrowy róż
Kotlin
Swift
Dart
Java
Wykonywanie kodu
Python
Kotlin
Java
Wywołanie 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: Modele.streamGenerateContent
Generuje strumień odpowiedzi z modelu na podstawie danych wejściowych GenerateContentRequest
.
Punkt końcowy
post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:streamGenerateContentParametry ścieżki
model
string
Wymagane. Nazwa Model
, która ma być użyta do wygenerowania zakończenia.
Format: name=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 wiedzą i 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
. Każdy typ SafetyCategory
powinien mieć maksymalnie 1 ustawienie. Interfejs API będzie blokować wszelkie 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. Kategorie szkodliwego działania: HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT są obsługiwane. 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ędniać kwestie bezpieczeństwa w aplikacji wykorzystującej AI.
systemInstruction
object (Content
)
Opcjonalnie: Deweloper ustawił instrukcje systemowe. Obecnie tylko tekstowe.
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 przedstawienia 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ę uda, 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 w przypadku promptów w języku GenerateContentResponse.prompt_feedback
, jak i w przypadku każdego kandydata w polu finishReason
i w 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 promptu związane z filtrami treści.
usageMetadata
object (UsageMetadata
)
Tylko dane wyjściowe. Metadane dotyczące użycia tokena żądań generowania.
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, dla którego prompt został zablokowany.
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 są zawarte na liście blokowania haseł. |
PROHIBITED_CONTENT |
Prompt został zablokowany z powodu zabronionych 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 uwzględnia 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 wśród wszystkich wygenerowanych kandydatów odpowiedzi.
totalTokenCount
integer
Łączna liczba tokenów dla żądania generowania (prompt + kandydaci do 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 przestał generować 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, które są „recytowane” z materiałów chronionych prawem autorskim w danych treningowych podstawowych 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. Podstawowe metadane kandydata.
To pole jest wypełniane w przypadku wywołań GenerateContent
.
avgLogprobs
number
Tylko dane wyjściowe.
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ść odpowiedzi została oznaczona jako nieobsługiwana, ponieważ zawierała nieobsługiwany język. |
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 tokenów zostało zatrzymane, ponieważ treść może 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 udzielenia 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.
Pole sumy source
.
source
może być tylko jednym z tych elementów:
groundingPassage
object (GroundingPassageId
)
Identyfikator tekstu wstawionego.
semanticRetrieverChunk
object (SemanticRetrieverChunk
)
Identyfikator elementu Chunk
pobranego przez moduł odbioru semantycznego.
Zapis JSON |
---|
{ // Union field |
GroundingPassageId
Identyfikator części w elemencie 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 elementu Chunk
pobranego za pomocą modułu odbioru semantycznego określonego w GenerateAnswerRequest
przy użyciu 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 z określonego źródła umocowania.
groundingSupports[]
object (GroundingSupport
)
Lista elementów dostępnych w ramach funkcji grounding.
webSearchQueries[]
string
zapytania w wyszukiwarce Google dotyczące kolejnego wyszukiwania w internecie;
searchEntryPoint
object (SearchEntryPoint
)
Opcjonalnie: Wyszukiwanie w Google dotyczące 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 do wyszukiwarki 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: Plik JSON z kodowaniem Base64 reprezentujący tablicę krotki <wyszukiwane hasło, URL wyszukiwania>.
Ciąg znaków zakodowany w formacie Base64.
Zapis JSON |
---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
Fragment umocowania.
chunk_type
. Typ fragmentu. chunk_type
może mieć tylko jedną z tych wartości:
web
object (Web
)
Podstawowe informacje z internetu.
Zapis JSON |
---|
{ // Union field |
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 Part w jego nadrzędnym obiekcie Content.
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 elemencie, 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 określający prawdopodobieństwo, że informacje z wyszukiwarki Google mogą pomóc odpowiedzieć na pytanie. 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
)
Posortowano według prawdopodobieństwa logu 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 } |
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 przypisanej 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 na projekt GitHub, która jest przypisana 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 (maksymalnie 5), który powoduje zatrzymanie generowania danych wyjściowych. Jeśli zostanie określony, interfejs API zostanie zatrzymany po pierwszym pojawieniu się parametru 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) Wyjście tekstowe. application/json
: odpowiedź JSON w kandydatach do odpowiedzi. text/x.enum
: ENUM jako ciąg znaków wśród odpowiedzi kandydatów. 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
. Zgodne typy MIME: application/json
: schemat odpowiedzi JSON. Więcej informacji znajdziesz w przewodniku po generowaniu tekstu JSON.
candidateCount
integer
Opcjonalnie: Liczba wygenerowanych 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 kandydacie do 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ść wyników.
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ę metody 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, natomiast 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
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 z 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 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.
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 pozytywna 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ę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 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
: „...the the the the the...”.
responseLogprobs
boolean
Opcjonalnie: Jeśli ma wartość true, w odpowiedzi zostanie wyeksportowany wynik logprobs.
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
.
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 innych lubieżnych 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 szerzenie 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ą naruszać uczciwość obywatelską. |
SafetyRating
Ocena bezpieczeństwa treści.
Ocena bezpieczeństwa zawiera kategorię szkody i poziom prawdopodobieństwa wystąpienia szkody w danej kategorii dla danego materiału. 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, do której należy ta ocena.
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 treść jest szkodliwa.
System klasyfikacji określa prawdopodobieństwo, że treści są niebezpieczne. Nie wskazuje to na to, jak poważne są szkody spowodowane przez treści.
Wartości w polu enum | |
---|---|
HARM_PROBABILITY_UNSPECIFIED |
Prawdopodobieństwo nie zostało określone. |
NEGLIGIBLE |
Istnieje duże prawdopodobieństwo, że treści będą niebezpieczne. |
LOW |
Treści mają niską szansę na to, że będą niebezpieczne. |
MEDIUM |
Treści mają średnie prawdopodobieństwo bycia niebezpiecznymi. |
HIGH |
Istnieje duże prawdopodobieństwo, że treści 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
Blokuj na poziomie określonego prawdopodobieństwa szkody i poza nią.
Wartości w polu enum | |
---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
Próg nie jest określony. |
BLOCK_LOW_AND_ABOVE |
Treści z NIEZNACZYWALNYM poziomem reklam będą dozwolone. |
BLOCK_MEDIUM_AND_ABOVE |
Treści oznaczone jako NIEZBĘDNE i NISKI 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. |