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 | Модель сгенерировала вызов инструмента, но в запросе не было включено ни одного инструмента. |
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 из-за ошибки. |
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
.
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-IN, kn-IN, ml-IN, mr-IN, ta-IN, te-IN, nl-NL, ko-KR, cmn-CN, pl-PL, ru-RU и th-TH.
JSON-представление |
---|
{ "voiceConfig": { object ( |
VoiceConfig
Конфигурация используемого голоса.
voice_config
Union type
voice_config
может быть только одной из следующих: object ( PrebuiltVoiceConfig )
prebuiltVoiceConfig
Конфигурация для использования готового голоса.
JSON-представление |
---|
{
// voice_config
"prebuiltVoiceConfig": {
object ( |
Предварительно созданная голосовая конфигурация
Конфигурация для использования готового динамика.
string
voiceName
Название предустановленного голоса, который будет использоваться.
JSON-представление |
---|
{ "voiceName": string } |
MultiSpeakerVoiceConfig
Конфигурация для многоколоночной системы.
object ( SpeakerVoiceConfig )
speakerVoiceConfigs[]
Обязательно. Все доступные голоса дикторов.
JSON-представление |
---|
{
"speakerVoiceConfigs": [
{
object ( |
SpeakerVoiceConfig
Конфигурация для одного динамика в многоакустической системе.
speaker
string
Обязательно. Имя говорящего. Должно совпадать с именем, указанным в подсказке.
object ( VoiceConfig )
voiceConfig
Обязательно. Конфигурация используемого голоса.
JSON-представление |
---|
{
"speaker": string,
"voiceConfig": {
object ( |
ThinkingConfig
Конфигурация для функций мышления.
includeThoughts
boolean
Указывает, следует ли включать мысли в ответ. Если true, мысли возвращаются только при их наличии.
thinkingBudget
integer
Количество токенов мыслей, которые должна сгенерировать модель.
JSON-представление |
---|
{ "includeThoughts": boolean, "thinkingBudget": integer } |
MediaResolution
Разрешение носителя для входного носителя.
Перечисления | |
---|---|
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 | Gemini - Контент, который может быть использован для нанесения ущерба гражданской целостности. |
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 ( |
Вероятность вреда
Вероятность того, что фрагмент контента является вредоносным.
Система классификации определяет вероятность того, что контент небезопасен. Она не отражает степень опасности, которую может нанести контент.
Перечисления | |
---|---|
HARM_PROBABILITY_UNSPECIFIED | Вероятность не определена. |
NEGLIGIBLE | Вероятность того, что контент окажется небезопасным, ничтожно мала. |
LOW | Вероятность того, что контент окажется небезопасным, крайне мала. |
MEDIUM | Контент имеет среднюю вероятность быть небезопасным. |
HIGH | Контент имеет высокую вероятность быть небезопасным. |
Настройка безопасности
Настройка безопасности, влияющая на поведение блокировки безопасности.
Принятие параметра безопасности для категории изменяет допустимую вероятность блокировки контента.
category
enum ( HarmCategory
)
Обязательно. Категория для этого параметра.
threshold
enum ( HarmBlockThreshold
)
Обязательно. Управляет порогом вероятности, при котором вред блокируется.
JSON-представление |
---|
{ "category": enum ( |
Порог блокировки вреда
Блокировка при достижении и за пределами заданной вероятности нанесения вреда.
Перечисления | |
---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED | Порог не указан. |
BLOCK_LOW_AND_ABOVE | Контент с NEGLIGIBLE будет разрешен. |
BLOCK_MEDIUM_AND_ABOVE | Контент со значениями NEGLIGIBLE и LOW будет разрешен. |
BLOCK_ONLY_HIGH | Контент со значениями НЕЗНАЧИТЕЛЬНО, НИЗКО и СРЕДНЕ будет разрешен. |
BLOCK_NONE | Весь контент будет разрешен. |
OFF | Отключите защитный фильтр. |