API Gemini поддерживает создание контента с использованием изображений, аудио, кода, инструментов и многого другого. Подробнее о каждой из этих функций читайте далее и изучите примеры кода, ориентированные на конкретные задачи, или ознакомьтесь с подробными руководствами.
- Генерация текста
- Зрение
- Аудио
- Вложения
- Длинный контекст
- Выполнение кода
- Режим JSON
- Вызов функции
- Системные инструкции
Метод: models.generateContent
Генерирует ответ модели на основе входных данных GenerateContentRequest
. Подробную информацию об использовании см. в руководстве по генерации текста . Возможности ввода различаются в зависимости от модели, включая настроенные модели. Подробную информацию см. в руководстве по моделям и руководстве по настройке .
Конечная точка
постhttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateContent
Параметры пути
string
model
Обязательно. Имя Model
, используемой для создания дополнения.
Формат: models/{model}
. Он имеет вид models/{model}
.
Текст запроса
Тело запроса содержит данные со следующей структурой:
tools[]
object ( Tool
)
Необязательно. Список Tools
Model
может использовать для генерации следующего ответа.
Tool
— это фрагмент кода, позволяющий системе взаимодействовать с внешними системами для выполнения действия или набора действий, выходящих за рамки знаний и области действия Model
. Поддерживаемые Tool
: Function
и codeExecution
. Подробнее см. в руководствах по вызову функций и выполнению кода .
toolConfig
object ( ToolConfig
)
Необязательно. Конфигурация инструмента для любого Tool
, указанного в запросе. Пример использования см. в руководстве по вызову функций .
safetySettings[]
object ( SafetySetting
)
Необязательно. Список уникальных экземпляров SafetySetting
для блокировки небезопасного контента.
Это будет применяться к GenerateContentRequest.contents
и GenerateContentResponse.candidates
. Для каждого типа SafetyCategory
не должно быть более одной настройки. API будет блокировать любой контент и ответы, не соответствующие пороговым значениям, установленным этими настройками. Этот список переопределяет настройки по умолчанию для каждой SafetyCategory
, указанной в safetySettings. Если в списке нет SafetySetting
для заданной SafetyCategory
, API будет использовать настройку безопасности по умолчанию для этой категории. Поддерживаются категории вреда HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY. Подробную информацию о доступных настройках безопасности см. в руководстве . Также см. руководство по безопасности , чтобы узнать, как учитывать вопросы безопасности в ваших приложениях ИИ.
object ( Content )
systemInstruction
Необязательно. Системные инструкции, заданные разработчиком. В настоящее время доступен только текст.
object ( GenerationConfig )
generationConfig
Необязательно. Параметры конфигурации для создания модели и вывода данных.
string
cachedContent
Необязательно. Имя кэшированного контента, который будет использоваться в качестве контекста для прогнозирования. Формат: cachedContents/{cachedContent}
Пример запроса
Текст
Питон
Node.js
Идти
Оболочка
Ява
Изображение
Питон
Node.js
Идти
Оболочка
Ява
Аудио
Питон
Node.js
Идти
Оболочка
Видео
Питон
Node.js
Идти
Оболочка
Питон
Идти
Оболочка
Чат
Питон
Node.js
Идти
Оболочка
Ява
Кэш
Питон
Node.js
Идти
Настроенная модель
Питон
Режим JSON
Питон
Node.js
Идти
Оболочка
Ява
Выполнение кода
Питон
Идти
Ява
Вызов функции
Питон
Идти
Node.js
Оболочка
Ява
Конфигурация генерации
Питон
Node.js
Идти
Оболочка
Ява
Настройки безопасности
Питон
Node.js
Идти
Оболочка
Ява
Системная инструкция
Питон
Node.js
Идти
Оболочка
Ява
Тело ответа
В случае успеха тело ответа содержит экземпляр GenerateContentResponse
.
Метод: models.streamGenerateContent
Формирует потоковый ответ из модели, получив входные данные GenerateContentRequest
.
Конечная точка
постhttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:streamGenerateContent
Параметры пути
string
model
Обязательно. Имя Model
, используемой для создания дополнения.
Формат: models/{model}
. Он имеет вид models/{model}
.
Текст запроса
Тело запроса содержит данные со следующей структурой:
tools[]
object ( Tool
)
Необязательно. Список Tools
Model
может использовать для генерации следующего ответа.
Tool
— это фрагмент кода, позволяющий системе взаимодействовать с внешними системами для выполнения действия или набора действий, выходящих за рамки знаний и области действия Model
. Поддерживаемые Tool
: Function
и codeExecution
. Подробнее см. в руководствах по вызову функций и выполнению кода .
toolConfig
object ( ToolConfig
)
Необязательно. Конфигурация инструмента для любого Tool
, указанного в запросе. Пример использования см. в руководстве по вызову функций .
safetySettings[]
object ( SafetySetting
)
Необязательно. Список уникальных экземпляров SafetySetting
для блокировки небезопасного контента.
Это будет применяться к GenerateContentRequest.contents
и GenerateContentResponse.candidates
. Для каждого типа SafetyCategory
не должно быть более одной настройки. API будет блокировать любой контент и ответы, не соответствующие пороговым значениям, установленным этими настройками. Этот список переопределяет настройки по умолчанию для каждой SafetyCategory
, указанной в safetySettings. Если в списке нет SafetySetting
для заданной SafetyCategory
, API будет использовать настройку безопасности по умолчанию для этой категории. Поддерживаются категории вреда HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY. Подробную информацию о доступных настройках безопасности см. в руководстве . Также см. руководство по безопасности , чтобы узнать, как учитывать вопросы безопасности в ваших приложениях ИИ.
object ( Content )
systemInstruction
Необязательно. Системные инструкции, заданные разработчиком. В настоящее время доступен только текст.
object ( GenerationConfig )
generationConfig
Необязательно. Параметры конфигурации для создания модели и вывода данных.
string
cachedContent
Необязательно. Имя кэшированного контента, который будет использоваться в качестве контекста для прогнозирования. Формат: cachedContents/{cachedContent}
Пример запроса
Текст
Питон
Node.js
Идти
Оболочка
Ява
Изображение
Питон
Node.js
Идти
Оболочка
Ява
Аудио
Питон
Идти
Оболочка
Видео
Питон
Node.js
Идти
Оболочка
Питон
Идти
Оболочка
Чат
Питон
Node.js
Идти
Оболочка
Тело ответа
В случае успеха тело ответа содержит поток экземпляров GenerateContentResponse
.
GenerateContentResponse
Ответ модели, поддерживающей несколько возможных ответов.
Рейтинги безопасности и фильтрация контента отображаются как для запроса в GenerateContentResponse.prompt_feedback
, так и для каждого кандидата в finishReason
и safetyRatings
. API: - Возвращает либо всех запрошенных кандидатов, либо ни одного. - Не возвращает ни одного кандидата, только если в запросе есть ошибка (проверьте promptFeedback
). - Сообщает отзывы по каждому кандидату в finishReason
и safetyRatings
.
candidates[]
object ( Candidate
)
Ответы кандидатов от модели.
object ( PromptFeedback )
promptFeedback
Возвращает обратную связь по подсказке, связанную с фильтрами контента.
usageMetadata
object ( UsageMetadata
)
Только вывод. Метаданные об использовании токенов запросов на генерацию.
string
modelVersion
Только выходные данные. Версия модели, использованная для генерации ответа.
string
responseId
Только вывод. responseId используется для идентификации каждого ответа.
JSON-представление |
---|
{ "candidates": [ { object ( |
PromptFeedback
Набор метаданных обратной связи, указанный в приглашении GenerateContentRequest.content
.
blockReason
enum ( BlockReason
)
Необязательно. Если установлено, запрос был заблокирован, и кандидаты не возвращаются. Перефразируйте запрос.
safetyRatings[]
object ( SafetyRating
)
Оценки безопасности подсказки. В каждой категории может быть не более одной оценки.
JSON-представление |
---|
{ "blockReason": enum ( |
BlockReason
Указывает причину, по которой запрос был заблокирован.
Перечисления | |
---|---|
BLOCK_REASON_UNSPECIFIED | Значение по умолчанию. Это значение не используется. |
SAFETY | Запрос был заблокирован по соображениям безопасности. Проверьте safetyRatings , чтобы понять, какая категория безопасности его заблокировала. |
OTHER | Запрос был заблокирован по неизвестным причинам. |
BLOCKLIST | Запрос был заблокирован из-за терминов, включенных в список заблокированных терминов. |
PROHIBITED_CONTENT | Запрос был заблокирован из-за запрещенного контента. |
IMAGE_SAFETY | Кандидаты заблокированы из-за небезопасного контента, создающего изображения. |
ИспользованиеМетаданных
Метаданные об использовании токена запроса на генерацию.
promptTokenCount
integer
Количество токенов в запросе. Если задано значение cachedContent
, это по-прежнему общий эффективный размер запроса, то есть он включает количество токенов в кэшированном контенте.
cachedContentTokenCount
integer
Количество токенов в кэшированной части приглашения (кэшированное содержимое)
candidatesTokenCount
integer
Общее количество токенов среди всех сгенерированных кандидатов на ответы.
toolUsePromptTokenCount
integer
Только вывод. Количество токенов, присутствующих в подсказках по использованию инструментов.
thoughtsTokenCount
integer
Только вывод. Количество токенов мыслей для моделей мышления.
totalTokenCount
integer
Общее количество токенов для запроса на генерацию (подсказка + кандидаты на ответ).
promptTokensDetails[]
object ( ModalityTokenCount
)
Только вывод. Список модальностей, обработанных при вводе запроса.
cacheTokensDetails[]
object ( ModalityTokenCount
)
Только вывод. Список модальностей кэшированного содержимого во входных данных запроса.
candidatesTokensDetails[]
object ( ModalityTokenCount
)
Только вывод. Список модальностей, возвращенных в ответе.
toolUsePromptTokensDetails[]
object ( ModalityTokenCount
)
Только вывод. Список модальностей, обработанных для входных данных запросов на использование инструментов.
JSON-представление |
---|
{ "promptTokenCount": integer, "cachedContentTokenCount": integer, "candidatesTokenCount": integer, "toolUsePromptTokenCount": integer, "thoughtsTokenCount": integer, "totalTokenCount": integer, "promptTokensDetails": [ { object ( |
Кандидат
- JSON-представление
- FinishReason
- GroundingAttribution
- AttributionSourceId
- GroundingPassageId
- SemanticRetrieverChunk
- GroundingMetadata
- SearchEntryPoint
- GroundingChunk
- Интернет
- GroundingSupport
- Сегмент
- ИзвлечениеМетаданных
- LogprobsResult
- Лучшие кандидаты
- Кандидат
- UrlContextMetadata
- UrlMetadata
- UrlRetrievalStatus
Кандидат на ответ, сгенерированный на основе модели.
content
object ( Content
)
Только вывод. Сгенерированный контент, возвращаемый моделью.
finishReason
enum ( FinishReason
)
Необязательно. Только вывод. Причина, по которой модель перестала генерировать токены.
Если пусто, модель не прекратила генерацию токенов.
safetyRatings[]
object ( SafetyRating
)
Список оценок безопасности кандидата на ответ.
В каждой категории может быть максимум один рейтинг.
object ( CitationMetadata )
citationMetadata
Только вывод. Информация о цитировании для кандидата, сгенерированного моделью.
Это поле может быть заполнено информацией о декламации любого текста, входящего в content
. Это отрывки, декламируемые из материалов, защищенных авторским правом, в базовых учебных материалах LLM.
tokenCount
integer
Только вывод. Количество токенов для этого кандидата.
groundingAttributions[]
object ( GroundingAttribution
)
Только выходные данные. Информация об источниках, которые способствовали обоснованному ответу.
Это поле заполняется для вызовов GenerateAnswer
.
object ( GroundingMetadata )
groundingMetadata
Только вывод. Базовые метаданные для кандидата.
Это поле заполняется для вызовов GenerateContent
.
number
avgLogprobs
Только вывод. Средний логарифм вероятности кандидата.
object ( LogprobsResult )
logprobsResult
Только выходные данные. Логарифмические оценки правдоподобия для токенов ответов и топовых токенов.
object ( UrlContextMetadata )
urlContextMetadata
Только вывод. Метаданные, относящиеся к инструменту извлечения контекста URL.
index
integer
Только вывод. Индекс кандидата в списке кандидатов на ответ.
JSON-представление |
---|
{ "content": { object ( |
FinishReason
Определяет причину, по которой модель прекратила генерацию токенов.
Перечисления | |
---|---|
FINISH_REASON_UNSPECIFIED | Значение по умолчанию. Это значение не используется. |
STOP | Естественная точка остановки модели или предусмотренная последовательность останова. |
MAX_TOKENS | Достигнуто максимальное количество токенов, указанное в запросе. |
SAFETY | Содержание кандидата на ответ было помечено по соображениям безопасности. |
RECITATION | Содержание кандидата на ответ было помечено по причине декламации. |
LANGUAGE | Содержимое варианта ответа было помечено как использующее неподдерживаемый язык. |
OTHER | Причина неизвестна. |
BLOCKLIST | Генерация токенов остановлена, поскольку контент содержит запрещенные термины. |
PROHIBITED_CONTENT | Генерация токенов остановлена из-за потенциального содержания запрещенного контента. |
SPII | Генерация токенов остановлена, поскольку контент потенциально содержит конфиденциальную персональную информацию (SPII). |
MALFORMED_FUNCTION_CALL | Вызов функции, сгенерированный моделью, недействителен. |
IMAGE_SAFETY | Генерация токенов остановлена, поскольку сгенерированные изображения содержат нарушения безопасности. |
UNEXPECTED_TOOL_CALL | Модель сгенерировала вызов инструмента, но в запросе не было включено ни одного инструмента. |
TOO_MANY_TOOL_CALLS | Модель вызвала слишком много инструментов подряд, поэтому система прекратила выполнение. |
GroundingAttribution
Указание источника, способствовавшего получению ответа.
sourceId
object ( AttributionSourceId
)
Только вывод. Идентификатор источника, способствующего этой атрибуции.
content
object ( Content
)
Обоснование исходного контента, составляющего эту атрибуцию.
JSON-представление |
---|
{ "sourceId": { object ( |
AttributionSourceId
Идентификатор источника, способствующего данной атрибуции.
Union type
source
source
может быть только одним из следующих: object ( GroundingPassageId )
groundingPassage
Идентификатор встроенного отрывка.
object ( SemanticRetrieverChunk )
semanticRetrieverChunk
Идентификатор Chunk
, полученного с помощью семантического ретривера.
JSON-представление |
---|
{ // source "groundingPassage": { object ( |
GroundingPassageId
Идентификатор части внутри GroundingPassage
.
string
passageId
Только вывод. Идентификатор прохода, соответствующий GroundingPassage.id
GenerateAnswerRequest
.
partIndex
integer
Только вывод. Индекс части в GroundingPassage.content
GenerateAnswerRequest
.
JSON-представление |
---|
{ "passageId": string, "partIndex": integer } |
SemanticRetrieverChunk
Идентификатор Chunk
, полученного с помощью Semantic Retriever, указанный в GenerateAnswerRequest
с использованием SemanticRetrieverConfig
.
source
string
Только вывод. Имя источника, соответствующее SemanticRetrieverConfig.source
запроса. Пример: corpora/123
или corpora/123/documents/abc
chunk
string
Только вывод. Имя Chunk
содержащего атрибутированный текст. Пример: corpora/123/documents/abc/chunks/xyz
JSON-представление |
---|
{ "source": string, "chunk": string } |
GroundingMetadata
Метаданные возвращаются клиенту при включении заземления.
groundingChunks[]
object ( GroundingChunk
)
Список подтверждающих ссылок, полученных из указанного источника заземления.
groundingSupports[]
object ( GroundingSupport
)
Список заземляющих опор.
webSearchQueries[]
string
Запросы веб-поиска для последующего веб-поиска.
object ( SearchEntryPoint )
searchEntryPoint
Необязательно. Запись в поисковой системе Google для последующих веб-поисков.
object ( RetrievalMetadata )
retrievalMetadata
Метаданные, связанные с поиском в заземляющем потоке.
JSON-представление |
---|
{ "groundingChunks": [ { object ( |
SearchEntryPoint
Точка входа в поиск Google.
string
renderedContent
Необязательно. Фрагмент веб-контента, который можно встроить в веб-страницу или веб-представление приложения.
sdkBlob
string ( bytes format)
Необязательно. JSON-код в кодировке Base64, представляющий собой массив кортежей <поисковый запрос, URL поиска>.
Строка в кодировке base64.
JSON-представление |
---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
Кусок заземления.
chunk_type
Union type
chunk_type
может быть только одним из следующих:web
object ( Web
)
Заземляющий кусок из сети.
JSON-представление |
---|
{
// chunk_type
"web": {
object ( |
Интернет
Фрагмент из интернета.
string
uri
URI-ссылка фрагмента.
string
title
Название фрагмента.
JSON-представление |
---|
{ "uri": string, "title": string } |
GroundingSupport
Поддержка заземления.
groundingChunkIndices[]
integer
Список индексов (в «grounding_chunk»), указывающих ссылки, связанные с утверждением. Например, [1,3,4] означает, что grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] — это извлеченный контент, относящийся к утверждению.
number
confidenceScores[]
Уровень уверенности в опорных данных. Диапазон значений — от 0 до 1. 1 — максимальная уверенность. Этот список должен иметь тот же размер, что и groundingChunkIndices.
segment
object ( Segment
)
Сегмент контента, к которому принадлежит эта поддержка.
JSON-представление |
---|
{
"groundingChunkIndices": [
integer
],
"confidenceScores": [
number
],
"segment": {
object ( |
Сегмент
Сегмент контента.
partIndex
integer
Только вывод. Индекс объекта Part внутри его родительского объекта Content.
startIndex
integer
Только вывод. Начальный индекс в заданной части, измеряется в байтах. Смещение от начала части включительно, начиная с нуля.
endIndex
integer
Только вывод. Конечный индекс в заданной части, измеряется в байтах. Смещение от начала части, не включая её, начиная с нуля.
text
string
Только вывод. Текст, соответствующий сегменту ответа.
JSON-представление |
---|
{ "partIndex": integer, "startIndex": integer, "endIndex": integer, "text": string } |
ИзвлечениеМетаданных
Метаданные, связанные с поиском в заземляющем потоке.
number
googleSearchDynamicRetrievalScore
Необязательно. Оценка, указывающая вероятность того, что информация из поиска Google может помочь в ответе на запрос. Оценка находится в диапазоне [0, 1], где 0 — наименьшая вероятность, а 1 — наибольшая. Эта оценка рассчитывается только при включенном поиске Google Grounding и динамическом поиске. Она будет сравниваться с пороговым значением для определения необходимости запуска поиска Google.
JSON-представление |
---|
{ "googleSearchDynamicRetrievalScore": number } |
LogprobsResult
Результат логпроб
topCandidates[]
object ( TopCandidates
)
Длина = общее количество шагов декодирования.
chosenCandidates[]
object ( Candidate
)
Длина = общее количество шагов декодирования. Выбранные кандидаты могут быть в списке topCandidates, а могут и не быть.
JSON-представление |
---|
{ "topCandidates": [ { object ( |
Лучшие кандидаты
Кандидаты с наивысшими логарифмическими вероятностями на каждом этапе декодирования.
candidates[]
object ( Candidate
)
Сортировано по логарифмической вероятности в порядке убывания.
JSON-представление |
---|
{
"candidates": [
{
object ( |
Кандидат
Кандидат на получение токена и оценки logprobs.
string
token
Значение строки токена кандидата.
tokenId
integer
Значение идентификатора токена кандидата.
number
logProbability
Логарифм вероятности кандидата.
JSON-представление |
---|
{ "token": string, "tokenId": integer, "logProbability": number } |
UrlContextMetadata
Метаданные, связанные с инструментом извлечения контекста URL.
object ( UrlMetadata )
urlMetadata[]
Список контекстов URL.
JSON-представление |
---|
{
"urlMetadata": [
{
object ( |
UrlMetadata
Контекст поиска по одному URL.
retrievedUrl
string
URL-адрес, полученный инструментом.
urlRetrievalStatus
enum ( UrlRetrievalStatus
)
Статус получения URL.
JSON-представление |
---|
{
"retrievedUrl": string,
"urlRetrievalStatus": enum ( |
UrlRetrievalStatus
Статус получения URL.
Перечисления | |
---|---|
URL_RETRIEVAL_STATUS_UNSPECIFIED | Значение по умолчанию. Это значение не используется. |
URL_RETRIEVAL_STATUS_SUCCESS | Получение URL прошло успешно. |
URL_RETRIEVAL_STATUS_ERROR | Не удалось получить URL из-за ошибки. |
URL_RETRIEVAL_STATUS_PAYWALL | Не удалось получить URL, так как контент находится за платным доступом. |
URL_RETRIEVAL_STATUS_UNSAFE | Не удалось получить URL, так как содержимое небезопасно. |
CitationMetadata
Коллекция ссылок на источники фрагмента контента.
citationSources[]
object ( CitationSource
)
Ссылки на источники для конкретного ответа.
JSON-представление |
---|
{
"citationSources": [
{
object ( |
Источник цитаты
Ссылка на источник части конкретного ответа.
startIndex
integer
Необязательно. Начало сегмента ответа, относящегося к этому источнику.
Индекс указывает начало сегмента, измеряемое в байтах.
endIndex
integer
Необязательно. Конец атрибутированного сегмента, эксклюзивный.
string
uri
Необязательно. URI, который указывается как источник части текста.
string
license
Необязательно. Лицензия на проект GitHub, указанный в качестве источника сегмента.
Для цитирования кода необходима информация о лицензии.
JSON-представление |
---|
{ "startIndex": integer, "endIndex": integer, "uri": string, "license": string } |
GenerationConfig
- JSON-представление
- Модальность
- SpeechConfig
- VoiceConfig
- Предварительно созданная голосовая конфигурация
- MultiSpeakerVoiceConfig
- SpeakerVoiceConfig
- ThinkingConfig
- MediaResolution
Параметры конфигурации для создания модели и выходных данных. Не все параметры можно настроить для каждой модели.
stopSequences[]
string
Необязательный. Набор последовательностей символов (до 5), которые остановят генерацию вывода. Если указано, API остановит работу при первом появлении stop_sequence
. Последовательность stop не будет включена в ответ.
string
responseMimeType
Необязательно. MIME-тип сгенерированного текста-кандидата. Поддерживаемые MIME-типы: text/plain
: текстовый вывод (по умолчанию). application/json
: ответ JSON в ответах-кандидатах. text/x.enum
: ENUM в виде строкового ответа в ответах-кандидатах. Список всех поддерживаемых MIME-типов текста см. в документации .
object ( Schema )
responseSchema
Необязательно. Выходная схема сгенерированного текста-кандидата. Схемы должны быть подмножеством схемы OpenAPI и могут быть объектами, примитивами или массивами.
Если задано, также необходимо задать совместимый responseMimeType
. Совместимые типы MIME: application/json
— схема для ответа JSON. Подробнее см. в руководстве по генерации текста JSON .
responseJsonSchema
value ( Value
format)
Необязательно. Схема выходных данных сгенерированного ответа. Это альтернатива responseSchema
, которая принимает JSON-схему .
Если установлено, responseSchema
необходимо опустить, но responseMimeType
обязателен.
Хотя возможна отправка полной JSON-схемы, поддерживаются не все функции. В частности, поддерживаются только следующие свойства:
-
$id
-
$defs
-
$ref
-
$anchor
-
type
-
format
-
title
-
description
-
enum
(для строк и чисел) -
items
-
prefixItems
-
minItems
-
maxItems
-
minimum
-
maximum
-
anyOf
-
oneOf
(интерпретируется так же, какanyOf
) -
properties
-
additionalProperties
-
required
Также может быть установлено нестандартное свойство propertyOrdering
.
Циклические ссылки развертываются в ограниченной степени и, как таковые, могут использоваться только в необязательных свойствах. (Свойства, допускающие значение NULL, недостаточны.) Если $ref
задан для подсхемы, то никакие другие свойства, за исключением тех, которые начинаются с $
, не могут быть заданы.
responseModalities[]
enum ( Modality
)
Необязательный параметр. Запрошенные модальности ответа. Представляет набор модальностей, которые модель может вернуть и которые следует ожидать в ответе. Это точное совпадение с модальностями ответа.
Модель может иметь несколько комбинаций поддерживаемых модальностей. Если запрошенные модальности не соответствуют ни одной из поддерживаемых комбинаций, будет возвращена ошибка.
Пустой список эквивалентен запросу только текста.
candidateCount
integer
Необязательно. Количество возвращаемых сгенерированных ответов. Если не задано, по умолчанию будет 1. Обратите внимание, что это не работает для моделей предыдущего поколения (семейство Gemini 1.0).
maxOutputTokens
integer
Необязательно. Максимальное количество токенов для включения в вариант ответа.
Примечание: значение по умолчанию зависит от модели, см. атрибут Model.output_token_limit
Model
, возвращаемой функцией getModel
.
temperature
number
Необязательно. Управляет случайностью выходных данных.
Примечание: значение по умолчанию зависит от модели, см. атрибут Model.temperature
Model
, возвращаемый функцией getModel
.
Значения могут находиться в диапазоне [0,0, 2,0].
number
topP
Необязательно. Максимальная кумулятивная вероятность токенов, учитываемая при выборке.
Модель использует комбинированную выборку Top-k и Top-p (ядро).
Токены сортируются на основе присвоенных им вероятностей, так что рассматриваются только наиболее вероятные токены. Выборка Top-k напрямую ограничивает максимальное количество рассматриваемых токенов, в то время как выборка Nucleus ограничивает количество токенов на основе кумулятивной вероятности.
Примечание: Значение по умолчанию зависит от Model
и определяется атрибутом Model.top_p
, возвращаемым функцией getModel
. Пустой атрибут topK
указывает, что модель не применяет выборку top-k и не позволяет устанавливать topK
для запросов.
topK
integer
Необязательно. Максимальное количество токенов, учитываемых при выборке.
Модели Gemini используют выборку Top-p (ядерную) или комбинацию выборки Top-k и ядерной выборки. Выборка Top-k учитывает набор наиболее вероятных токенов topK
. Модели, работающие с выборкой ядра, не позволяют настраивать topK.
Примечание: Значение по умолчанию зависит от Model
и определяется атрибутом Model.top_p
, возвращаемым функцией getModel
. Пустой атрибут topK
указывает, что модель не применяет выборку top-k и не позволяет устанавливать topK
для запросов.
seed
integer
Необязательно. Начальное значение, используемое при декодировании. Если не задано, запрос использует случайно сгенерированное начальное значение.
presencePenalty
number
Необязательно. Штраф за присутствие применяется к logprob-запросам следующего токена, если токен уже был замечен в ответе.
Этот штраф включается/выключается двоичным способом и не зависит от количества использований токена (после первого). Используйте frequencyPenalty
для штрафа, который увеличивается с каждым использованием.
Положительный штраф будет препятствовать использованию токенов, которые уже были использованы в ответе, расширяя словарный запас.
Отрицательный штраф будет стимулировать использование токенов, которые уже были использованы в ответе, уменьшая словарный запас.
frequencyPenalty
number
Необязательно. Штраф за частоту применяется к logprob следующего токена, умноженный на количество раз, когда каждый токен встречался в ответе на данный момент.
Положительный штраф будет препятствовать использованию токенов, которые уже были использованы, пропорционально количеству раз, когда токен был использован: чем больше токен используется, тем сложнее модели использовать его снова, увеличивая словарь ответов.
Внимание: Отрицательный штраф будет стимулировать модель к повторному использованию токенов пропорционально количеству использований токена. Небольшие отрицательные значения сократят словарный запас ответа. Большие отрицательные значения приведут к тому, что модель начнёт повторять один и тот же токен, пока не достигнет лимита maxOutputTokens
.
responseLogprobs
boolean
Необязательно. Если задано значение true, экспортировать результаты logprobs в ответ.
logprobs
integer
Необязательно. Действительно только при responseLogprobs=True
. Задаёт количество лучших logprobs, возвращаемых на каждом этапе декодирования в Candidate.logprobs_result
. Число должно находиться в диапазоне [1, 5].
enableEnhancedCivicAnswers
boolean
Необязательно. Включает расширенные ответы на гражданские вопросы. Может быть доступно не для всех моделей.
object ( SpeechConfig )
speechConfig
Необязательно. Конфигурация генерации речи.
thinkingConfig
object ( ThinkingConfig
)
Необязательно. Конфигурация для функций мышления. Если это поле задано для моделей, не поддерживающих мышление, будет возвращена ошибка.
mediaResolution
enum ( MediaResolution
)
Необязательно. Если указано, будет использоваться указанное разрешение носителя.
JSON-представление |
---|
{ "stopSequences": [ string ], "responseMimeType": string, "responseSchema": { object ( |
Модальность
Поддерживаемые модальности реагирования.
Перечисления | |
---|---|
MODALITY_UNSPECIFIED | Значение по умолчанию. |
TEXT | Указывает, что модель должна возвращать текст. |
IMAGE | Указывает, что модель должна возвращать изображения. |
AUDIO | Указывает, что модель должна возвращать звук. |
SpeechConfig
Конфигурация генерации речи.
object ( VoiceConfig )
voiceConfig
Конфигурация в случае одноголосного вывода.
multiSpeakerVoiceConfig
object ( MultiSpeakerVoiceConfig
)
Необязательный. Конфигурация для настройки с несколькими динамиками. Это взаимно эксклюзив с полем VoiceConfig.
string
languageCode
Необязательный. Языковой код (в формате BCP 47, например, «En-US») для синтеза речи.
Допустимые значения: 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-k-in, ml-in, mr-in, ta-in, nl-nl, ko-kn-pl, ru-in, pl-pl, ru-in, pl-pl, pl-r и th-й.
JSON-представление |
---|
{ "voiceConfig": { object ( |
VoiceConfig
Конфигурация для использования голоса.
voice_config
Union type
voice_config
может быть только одним из следующих: prebuiltVoiceConfig
object ( PrebuiltVoiceConfig
)
Конфигурация для предварительного голоса для использования.
JSON-представление |
---|
{
// voice_config
"prebuiltVoiceConfig": {
object ( |
Prebuiltvoiceconfig
Конфигурация для предварительного динамика для использования.
voiceName
string
Название предустановленного голоса для использования.
JSON-представление |
---|
{ "voiceName": string } |
MultiSpeakerVoiceConfig
Конфигурация для настройки с несколькими динамиками.
speakerVoiceConfigs[]
object ( SpeakerVoiceConfig
)
Требуется Все включенные голоса динамиков.
JSON-представление |
---|
{
"speakerVoiceConfigs": [
{
object ( |
SpeakervoiceConfig
Конфигурация для одного динамика в настройке нескольких динамиков.
speaker
string
Требуется Название динамика для использования. Должен быть таким же, как в подсказке.
voiceConfig
object ( VoiceConfig
)
Требуется Конфигурация для использования голоса.
JSON-представление |
---|
{
"speaker": string,
"voiceConfig": {
object ( |
ThinkingConfig
Конфигурация для мышления функций.
includeThoughts
boolean
Указывает, включать ли мысли в ответ. Если это правда, мысли возвращаются только тогда, когда они доступны.
thinkingBudget
integer
Количество токенов мыслей, которые должна генерировать модель.
JSON-представление |
---|
{ "includeThoughts": boolean, "thinkingBudget": integer } |
Медиарезолюция
Разрешение медиа для входных носителей.
Перечисления | |
---|---|
MEDIA_RESOLUTION_UNSPECIFIED | Резолюция СМИ не была установлена. |
MEDIA_RESOLUTION_LOW | Разрешение медиа установлена на низкий (64 токена). |
MEDIA_RESOLUTION_MEDIUM | Разрешение медиа, установленное на среднее (256 токенов). |
MEDIA_RESOLUTION_HIGH | Разрешение средств массовой информации установлено на высокое (масштабированное переосмысление с 256 токенами). |
Категория вреда
Категория рейтинга.
Эти категории охватывают различные виды вреда, которые разработчики могут пожелать приспособиться.
Перечисления | |
---|---|
HARM_CATEGORY_UNSPECIFIED | Категория не определена. |
HARM_CATEGORY_DEROGATORY | Palm - отрицательные или вредные комментарии, нацеленные на личность и/или защищенный атрибут. |
HARM_CATEGORY_TOXICITY | Palm - Содержание, которое является грубым, неуважительным или мягким. |
HARM_CATEGORY_VIOLENCE | PALM - описывает сценарии, изображающие насилие в отношении отдельного человека или группы, или общие описания крови. |
HARM_CATEGORY_SEXUAL | PALM - содержит ссылки на сексуальные действия или другое непристойное содержание. |
HARM_CATEGORY_MEDICAL | Palm - продвигает неконтролируемые медицинские советы. |
HARM_CATEGORY_DANGEROUS | PALM - Опасное содержание, которое продвигает, облегчает или поощряет вредные действия. |
HARM_CATEGORY_HARASSMENT | Близнецы - содержание домогательств. |
HARM_CATEGORY_HATE_SPEECH | Близнецы - ненавистная речь и содержание. |
HARM_CATEGORY_SEXUALLY_EXPLICIT | Близнецы - Откровенно откровенное содержание. |
HARM_CATEGORY_DANGEROUS_CONTENT | Близнецы - опасное содержание. |
HARM_CATEGORY_CIVIC_INTEGRITY | Близнецы - содержание, которое может использоваться для нанесения вреда гражданской целостности. Унижен: Используйте вместо этого EnableNhancecivicanswers. |
ModalityTokenCount
Представляет информацию о подсчете токена для единой модальности.
modality
enum ( Modality
)
Модальность, связанная с этим токеном.
tokenCount
integer
Количество токенов.
JSON-представление |
---|
{
"modality": enum ( |
Модальность
Контент Части модальности
Перечисления | |
---|---|
MODALITY_UNSPECIFIED | Неопределенная модальность. |
TEXT | Простой текст. |
IMAGE | Изображение. |
VIDEO | Видео. |
AUDIO | Аудио. |
DOCUMENT | Документ, например, PDF. |
Рейтинг безопасности
Рейтинг безопасности для части контента.
Рейтинг безопасности содержит категорию вреда и уровень вероятности вреда в этой категории для части содержания. Содержание классифицируется по безопасности по ряду категорий вреда, и здесь включена вероятность классификации вреда.
category
enum ( HarmCategory
)
Требуется Категория для этого рейтинга.
probability
enum ( HarmProbability
)
Требуется Вероятность вреда для этого контента.
blocked
boolean
Был ли этот контент заблокирован из -за этого рейтинга?
JSON-представление |
---|
{ "category": enum ( |
Harmprobobility
Вероятность того, что часть контента вредна.
Система классификации дает вероятность того, что содержание небезопасно. Это не указывает на серьезность вреда для части содержания.
Перечисления | |
---|---|
HARM_PROBABILITY_UNSPECIFIED | Вероятность не указана. |
NEGLIGIBLE | Контент имеет незначительный шанс быть небезопасным. |
LOW | Контент имеет низкий шанс быть небезопасным. |
MEDIUM | Контент имеет средний шанс быть небезопасным. |
HIGH | Контент имеет высокий шанс быть небезопасным. |
SafetySetting
Установка безопасности, влияя на поведение блокировки безопасности.
Передача настройки безопасности для категории изменяет разрешенную вероятность того, что содержание блокируется.
category
enum ( HarmCategory
)
Требуется Категория для этой настройки.
threshold
enum ( HarmBlockThreshold
)
Требуется Управляет порогом вероятности, при котором вред заблокирован.
JSON-представление |
---|
{ "category": enum ( |
HARMBLOCKTHRESHOLD
Блок на за пределами определенной вероятности вреда.
Перечисления | |
---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED | Порог не указан. |
BLOCK_LOW_AND_ABOVE | Содержание с незначительным будет разрешено. |
BLOCK_MEDIUM_AND_ABOVE | Содержание с незначительным и низким будет разрешено. |
BLOCK_ONLY_HIGH | Содержание с незначительным, низким и средним будет разрешено. |
BLOCK_NONE | Весь контент будет разрешен. |
OFF | Выключите фильтр безопасности. |