API Gemini поддерживает генерацию контента с использованием изображений, аудио, кода, инструментов и многого другого. Для получения подробной информации о каждой из этих функций читайте дальше и ознакомьтесь с примерами кода, ориентированными на решение конкретных задач, или прочитайте подробные руководства.
- Генерация текста
- Зрение
- Аудио
- Эмбеддинги
- Длинный контекст
- Выполнение кода
- Режим JSON
- Вызов функции
- Системные инструкции
Метод: models.generateContent
Генерирует ответ модели на входной запрос GenerateContentRequest . Подробную информацию об использовании см. в руководстве по генерации текста . Возможности ввода различаются для разных моделей, включая оптимизированные модели. Для получения более подробной информации см. руководство по моделям и руководство по оптимизации .
Конечная точка
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateContentПараметры пути
string model Обязательно. Название Model , которая будет использоваться для генерации автозавершения.
Формат: models/{model} . Он принимает вид models/{model} .
Текст запроса
Тело запроса содержит данные следующей структуры:
tools[]object ( Tool ) Необязательно. Список Tools Model может использовать для генерации следующего ответа.
Tool — это фрагмент кода, позволяющий системе взаимодействовать с внешними системами для выполнения действия или набора действий, выходящих за рамки знаний и области действия Model . Поддерживаемые Tool — это Function и codeExecution . Для получения дополнительной информации обратитесь к руководствам по вызову функций и выполнению кода .
toolConfigobject ( ToolConfig ) Необязательно. Конфигурация инструмента для любого Tool указанного в запросе. Пример использования см. в руководстве по вызову функций .
safetySettings[]object ( SafetySetting ) Необязательно. Список уникальных экземпляров SafetySetting для блокировки небезопасного контента.
Это будет применяться к GenerateContentRequest.contents и GenerateContentResponse.candidates . Для каждого типа SafetyCategory не должно быть более одной настройки. API будет блокировать любой контент и ответы, которые не соответствуют пороговым значениям, установленным этими настройками. Этот список переопределяет настройки по умолчанию для каждой SafetyCategory , указанной в safetySettings. Если для данной SafetyCategory в списке не указана SafetySetting SafetyCategory , API будет использовать настройку безопасности по умолчанию для этой категории. Поддерживаются категории вреда HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY. Подробную информацию о доступных настройках безопасности см. в руководстве . Также обратитесь к руководству по безопасности , чтобы узнать, как учитывать соображения безопасности в ваших приложениях ИИ.
systemInstructionobject ( Content )Необязательно. Разработчик задает системные инструкции . В настоящее время только текст.
generationConfigobject ( GenerationConfig )Необязательно. Параметры конфигурации для генерации модели и выходных данных.
cachedContentstring Необязательно. Название кэшированного контента, используемого в качестве контекста для выполнения прогнозирования. Формат: cachedContents/{cachedContent}
Пример запроса
Текст
Python
Node.js
Идти
Оболочка
Java
Изображение
Python
Node.js
Идти
Оболочка
Java
Аудио
Python
Node.js
Идти
Оболочка
Видео
Python
Node.js
Идти
Оболочка
Python
Идти
Оболочка
Чат
Python
Node.js
Идти
Оболочка
Java
Кэш
Python
Node.js
Идти
Тюнингованная модель
Python
Режим JSON
Python
Node.js
Идти
Оболочка
Java
Выполнение кода
Python
Идти
Java
Вызов функции
Python
Идти
Node.js
Оболочка
Java
Конфигурация генерации
Python
Node.js
Идти
Оболочка
Java
Настройки безопасности
Python
Node.js
Идти
Оболочка
Java
Системная инструкция
Python
Node.js
Идти
Оболочка
Java
Ответный текст
В случае успеха тело ответа будет содержать экземпляр GenerateContentResponse .
Метод: models.streamGenerateContent
Генерирует потоковый ответ от модели на основе входных данных GenerateContentRequest .
Конечная точка
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:streamGenerateContentПараметры пути
string model Обязательно. Название Model , которая будет использоваться для генерации автозавершения.
Формат: models/{model} . Он принимает вид models/{model} .
Текст запроса
Тело запроса содержит данные следующей структуры:
tools[]object ( Tool ) Необязательно. Список Tools Model может использовать для генерации следующего ответа.
Tool — это фрагмент кода, позволяющий системе взаимодействовать с внешними системами для выполнения действия или набора действий, выходящих за рамки знаний и области действия Model . Поддерживаемые Tool — это Function и codeExecution . Для получения дополнительной информации обратитесь к руководствам по вызову функций и выполнению кода .
toolConfigobject ( ToolConfig ) Необязательно. Конфигурация инструмента для любого Tool указанного в запросе. Пример использования см. в руководстве по вызову функций .
safetySettings[]object ( SafetySetting ) Необязательно. Список уникальных экземпляров SafetySetting для блокировки небезопасного контента.
Это будет применяться к GenerateContentRequest.contents и GenerateContentResponse.candidates . Для каждого типа SafetyCategory не должно быть более одной настройки. API будет блокировать любой контент и ответы, которые не соответствуют пороговым значениям, установленным этими настройками. Этот список переопределяет настройки по умолчанию для каждой SafetyCategory , указанной в safetySettings. Если для данной SafetyCategory в списке не указана SafetySetting SafetyCategory , API будет использовать настройку безопасности по умолчанию для этой категории. Поддерживаются категории вреда HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY. Подробную информацию о доступных настройках безопасности см. в руководстве . Также обратитесь к руководству по безопасности , чтобы узнать, как учитывать соображения безопасности в ваших приложениях ИИ.
systemInstructionobject ( Content )Необязательно. Разработчик задает системные инструкции . В настоящее время только текст.
generationConfigobject ( GenerationConfig )Необязательно. Параметры конфигурации для генерации модели и выходных данных.
cachedContentstring Необязательно. Название кэшированного контента, используемого в качестве контекста для выполнения прогнозирования. Формат: cachedContents/{cachedContent}
Пример запроса
Текст
Python
Node.js
Идти
Оболочка
Java
Изображение
Python
Node.js
Идти
Оболочка
Java
Аудио
Python
Идти
Оболочка
Видео
Python
Node.js
Идти
Оболочка
Python
Идти
Оболочка
Чат
Python
Node.js
Идти
Оболочка
Ответный текст
В случае успеха тело ответа содержит поток экземпляров GenerateContentResponse .
GenerateContentResponse
Ответ модели, подтверждающий наличие нескольких вариантов ответа.
Рейтинги безопасности и фильтрация контента отображаются для обоих запросов в GenerateContentResponse.prompt_feedback , а для каждого кандидата — в finishReason и safetyRatings . API: - Возвращает либо все запрошенные кандидаты, либо ни одного из них; - Не возвращает ни одного кандидата, только если с запросом что-то было не так (см. promptFeedback ); - Отображает отзывы по каждому кандидату в finishReason и safetyRatings .
candidates[]object ( Candidate )Варианты ответов, полученные от модели.
promptFeedbackobject ( PromptFeedback )Возвращает обратную связь от запроса, относящуюся к фильтрам содержимого.
usageMetadataobject ( UsageMetadata )Только вывод. Метаданные об использовании токенов в запросах на генерацию.
string modelVersionТолько выходные данные. Версия модели, использованная для генерации ответа.
responseIdstringТолько вывод. responseId используется для идентификации каждого ответа.
modelStatusobject ( ModelStatus )Только вывод. Текущее состояние данной модели.
| JSON-представление |
|---|
{ "candidates": [ { object ( |
PromptFeedback
Набор метаданных обратной связи, указанных в запросе GenerateContentRequest.content .
blockReasonenum ( BlockReason )Необязательно. Если задано, запрос был заблокирован, и варианты не возвращаются. Переформулируйте запрос.
safetyRatings[]object ( SafetyRating )Оценки безопасности подсказки. В каждой категории может быть не более одной оценки.
| JSON-представление |
|---|
{ "blockReason": enum ( |
BlockReason
Указывает причину блокировки запроса.
| Перечисления | |
|---|---|
BLOCK_REASON_UNSPECIFIED | Значение по умолчанию. Это значение не используется. |
SAFETY | Запрос был заблокирован по соображениям безопасности. Проверьте safetyRatings , чтобы узнать, какая категория безопасности привела к блокировке. |
OTHER | Запрос был заблокирован по неизвестным причинам. |
BLOCKLIST | Запрос был заблокирован из-за терминов, включенных в список заблокированных терминов. |
PROHIBITED_CONTENT | Запрос был заблокирован из-за запрещенного контента. |
IMAGE_SAFETY | Кандидаты заблокированы из-за небезопасного контента, созданного с помощью фотошопа. |
UsageMetadata
Метаданные об использовании токена в запросе на генерацию.
promptTokenCountinteger Количество токенов в запросе. Если задан параметр cachedContent , это по-прежнему общий эффективный размер запроса, то есть он включает количество токенов в кэшированном содержимом.
cachedContentTokenCountintegerКоличество токенов в кэшированной части запроса (кэшированное содержимое)
candidatesTokenCountintegerОбщее количество токенов по всем сгенерированным вариантам ответа.
toolUsePromptTokenCountintegerТолько вывод. Количество токенов, присутствующих в подсказках использования инструмента.
thoughtsTokenCountintegerТолько вывод. Количество токенов мыслей для моделей мышления.
totalTokenCountintegerОбщее количество токенов для запроса на генерацию (кандидаты запроса + ответа).
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 ( |
ModelStatus
Статус базовой модели. Используется для обозначения стадии развития базовой модели и времени вывода из эксплуатации, если таковое имеется.
modelStageenum ( ModelStage )Этап базовой модели.
retirementTimestring ( Timestamp format)Время, когда модель будет выведена из эксплуатации.
Используется RFC 3339, согласно которому генерируемый вывод всегда будет Z-нормализован и будет содержать 0, 3, 6 или 9 дробных знаков. Допускаются также смещения, отличные от "Z". Примеры: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" или "2014-10-02T15:01:23+05:30" .
string messageСообщение с пояснением статуса модели.
| JSON-представление |
|---|
{
"modelStage": enum ( |
ModelStage
Определяет стадию развития базовой модели.
| Перечисления | |
|---|---|
MODEL_STAGE_UNSPECIFIED | Неуказанная стадия модели. |
UNSTABLE_EXPERIMENTAL | Базовая модель подвергается множеству настроек. |
EXPERIMENTAL | Модели на данном этапе предназначены исключительно для экспериментальных целей. |
PREVIEW | Модели на этом этапе более зрелые, чем экспериментальные модели. |
STABLE | Модели на этом этапе считаются стабильными и готовыми к использованию в производственных целях. |
LEGACY | Если модель находится на этой стадии, это означает, что в ближайшем будущем она будет снята с поддержки. Использовать эту модель смогут только существующие клиенты. |
DEPRECATED | Модели на этом этапе устарели. Использовать эти модели нельзя. |
RETIRED | Модели на этом этапе сняты с производства. Эти модели использовать нельзя. |
Кандидат
- JSON-представление
- FinishReason
- Атрибуция заземления
- AttributionSourceId
- GroundingPassageId
- SemanticRetrieverChunk
- Метаданные заземления
- SearchEntryPoint
- GroundingChunk
- Веб
- Полученный контекст
- Карты
- PlaceAnswerSources
- ReviewSnippet
- Поддержка заземления
- Сегмент
- RetrievalMetadata
- LogprobsResult
- Лучшие кандидаты
- Кандидат
- UrlContextMetadata
- UrlMetadata
- UrlRetrievalStatus
Вариант ответа, сгенерированный на основе модели.
contentobject ( Content )Только выходные данные. Сгенерированный контент, возвращаемый моделью.
finishReasonenum ( FinishReason )Необязательно. Только для вывода. Причина, по которой модель перестала генерировать токены.
Если поле пустое, модель не прекращает генерацию токенов.
safetyRatings[]object ( SafetyRating )Список оценок безопасности кандидатов на должность в оперативно-розыскной группе.
В каждой категории может быть не более одной оценки.
citationMetadataobject ( CitationMetadata )Только выходные данные. Информация об источнике информации для кандидата, сгенерированного моделью.
Это поле может быть заполнено информацией о декламации любого текста, включенного в content . Речь идет о отрывках, которые «декламируются» из материалов, защищенных авторским правом, в обучающих данных базовой магистерской программы.
tokenCountintegerТолько вывод. Количество токенов для этого кандидата.
groundingAttributions[]object ( GroundingAttribution )Только выходные данные. Информация об источниках, которые способствовали получению обоснованного ответа.
Это поле заполняется для звонков, GenerateAnswer .
groundingMetadataobject ( GroundingMetadata )Только выходные данные. Метаданные для подтверждения данных кандидата.
Это поле заполняется для вызовов GenerateContent .
avgLogprobsnumberТолько выходные данные. Средний логарифмический показатель вероятности кандидата.
logprobsResultobject ( LogprobsResult )Только вывод. Значения логарифмической функции правдоподобия для токенов ответа и лучших токенов.
object ( UrlContextMetadata ) urlContextMetadataТолько выходные данные. Метаданные, относящиеся к инструменту получения контекста URL.
indexintegerТолько вывод. Индекс кандидата в списке кандидатов на ответ.
string finishMessage Необязательно. Только для вывода. Подробно описывает причину, по которой модель перестала генерировать токены. Заполняется только при установке finishReason .
| JSON-представление |
|---|
{ "content": { object ( |
FinishReason
Указывает причину, по которой модель перестала генерировать токены.
| Перечисления | |
|---|---|
FINISH_REASON_UNSPECIFIED | Значение по умолчанию. Это значение не используется. |
STOP | Естественная точка остановки модели или заданная последовательность остановок. |
MAX_TOKENS | Достигнуто максимальное количество токенов, указанное в запросе. |
SAFETY | Содержимое предложенного варианта ответа было помечено как потенциально опасное по соображениям безопасности. |
RECITATION | Содержание предложенного варианта ответа было помечено как требующее заучивания наизусть. |
LANGUAGE | В предложенном варианте ответа было обнаружено использование неподдерживаемого языка. |
OTHER | Причина неизвестна. |
BLOCKLIST | Генерация токенов прекращена, поскольку контент содержит запрещенные термины. |
PROHIBITED_CONTENT | Выпуск токенов приостановлен из-за потенциального наличия запрещенного контента. |
SPII | Генерация токенов прекращена, поскольку содержимое потенциально содержит конфиденциальную личную информацию (SPII). |
MALFORMED_FUNCTION_CALL | Вызов функции, сгенерированный моделью, является недопустимым. |
IMAGE_SAFETY | Генерация токенов прекращена, поскольку сгенерированные изображения содержат нарушения правил безопасности. |
IMAGE_PROHIBITED_CONTENT | Генерация изображений была остановлена, поскольку сгенерированные изображения содержали запрещенный контент. |
IMAGE_OTHER | Генерация изображений прекратилась из-за других различных проблем. |
NO_IMAGE | Предполагалось, что модель сгенерирует изображение, но изображение не было сгенерировано. |
IMAGE_RECITATION | Генерация изображений прекратилась из-за чтения вслух. |
UNEXPECTED_TOOL_CALL | Модель сгенерировала вызов инструмента, но ни один инструмент не был включен в запрос. |
TOO_MANY_TOOL_CALLS | Модель вызвала слишком много инструментов подряд, в результате чего система завершила выполнение. |
MISSING_THOUGHT_SIGNATURE | В запросе отсутствует как минимум одна подпись, выражающая мысль. |
Атрибуция заземления
Укажите источник, который послужил основой для ответа.
sourceIdobject ( AttributionSourceId )Только вывод. Идентификатор источника, обеспечившего данное указание.
contentobject ( Content )Исходный контент, на основе которого составлена эта атрибуция.
| JSON-представление |
|---|
{ "sourceId": { object ( |
AttributionSourceId
Идентификатор источника, предоставившего эти данные.
sourceUnion typesource может быть только один из следующих вариантов: groundingPassageobject ( GroundingPassageId )Идентификатор для встроенного фрагмента текста.
object ( SemanticRetrieverChunk ) semanticRetrieverChunk Идентификатор Chunk , полученного с помощью семантического ретривера.
| JSON-представление |
|---|
{ // source "groundingPassage": { object ( |
GroundingPassageId
Идентификатор части внутри объекта GroundingPassage .
string passageId Только вывод. Идентификатор фрагмента текста, соответствующего свойству GroundingPassage.id из GenerateAnswerRequest .
partIndexinteger Только вывод. Индекс части внутри GroundingPassage.content объекта GenerateAnswerRequest .
| JSON-представление |
|---|
{ "passageId": string, "partIndex": integer } |
SemanticRetrieverChunk
Идентификатор Chunk , полученного с помощью семантического ретривера, указанный в GenerateAnswerRequest с использованием SemanticRetrieverConfig .
sourcestring Только вывод. Имя источника, соответствующее файлу SemanticRetrieverConfig.source запроса. Пример: corpora/123 или corpora/123/documents/abc
chunkstring Только вывод. Название Chunk , содержащего атрибутированный текст. Пример: corpora/123/documents/abc/chunks/xyz
| JSON-представление |
|---|
{ "source": string, "chunk": string } |
Метаданные заземления
Метаданные возвращаются клиенту при включении заземления.
groundingChunks[]object ( GroundingChunk )Список подтверждающих ссылок, полученных из указанного источника данных. При потоковой передаче он содержит только те фрагменты данных, которые не были включены в метаданные предыдущих ответов.
groundingSupports[]object ( GroundingSupport )Список средств заземления.
webSearchQueries[]stringПоисковые запросы в интернете для последующего поиска.
searchEntryPointobject ( SearchEntryPoint )Необязательно. Запись в поисковой выдаче Google для последующих веб-поисков.
retrievalMetadataobject ( RetrievalMetadata )Метаданные, связанные с извлечением данных в процессе заземления.
string googleMapsWidgetContextTokenНеобязательно. Имя ресурса контекстного токена виджета Google Maps, который можно использовать с виджетом PlacesContextElement для отображения контекстных данных. Заполняется только в том случае, если включена привязка к карте с помощью Google Maps.
| JSON-представление |
|---|
{ "groundingChunks": [ { object ( |
SearchEntryPoint
Точка входа в поисковую выдачу Google.
renderedContentstringНеобязательный элемент. Фрагмент веб-контента, который можно встроить в веб-страницу или веб-представление приложения.
sdkBlobstring ( bytes format)Необязательно. JSON-данные в кодировке Base64, представляющие собой массив кортежей <поисковый запрос, URL поиска>.
Строка, закодированная в формате Base64.
| JSON-представление |
|---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
Заземляющий фрагмент.
chunk_typeUnion typechunk_type может быть только одним из следующих:webobject ( Web )Фрагмент веб-страницы, предназначенный для закрепления на месте.
retrievedContextobject ( RetrievedContext )Необязательно. Фрагмент контекста, полученный с помощью инструмента поиска файлов.
mapsobject ( Maps )Необязательно. Фрагмент карты местности из Google Maps.
| JSON-представление |
|---|
{ // chunk_type "web": { object ( |
Веб
Фрагмент из интернета.
string uriURI-ссылка на фрагмент.
string titleНазвание фрагмента.
| JSON-представление |
|---|
{ "uri": string, "title": string } |
Полученный контекст
Фрагмент из контекста, полученный с помощью инструмента поиска по файлу.
string uriНеобязательно. URI-ссылка на документ для семантического поиска.
string titleНеобязательно. Заголовок документа.
textstringНеобязательно. Текст фрагмента.
fileSearchStorestring Необязательно. Название FileSearchStore содержащего документ. Пример: fileSearchStores/123
| JSON-представление |
|---|
{ "uri": string, "title": string, "text": string, "fileSearchStore": string } |
Карты
Фрагмент карты Google Maps, соответствующий одному месту.
string uriURI-ссылка на это место.
string titleНазвание места.
textstringТекстовое описание места, дающего ответ.
placeIdstring Идентификатор места указан в формате places/{placeId} . Пользователь может использовать этот идентификатор для поиска данного места.
placeAnswerSourcesobject ( PlaceAnswerSources )Источники, предоставляющие ответы на вопросы об особенностях того или иного места на Google Maps.
| JSON-представление |
|---|
{
"uri": string,
"title": string,
"text": string,
"placeId": string,
"placeAnswerSources": {
object ( |
PlaceAnswerSources
Коллекция источников, предоставляющих ответы на вопросы об особенностях конкретного места на Google Maps. Каждое сообщение PlaceAnswerSources соответствует определенному месту на Google Maps. Инструмент Google Maps использовал эти источники для ответа на вопросы об особенностях места (например: «Есть ли Wi-Fi в Bar Foo?» или «Доступен ли бар Foo для инвалидов-колясочников?»). В настоящее время мы поддерживаем в качестве источников только фрагменты отзывов.
reviewSnippets[]object ( ReviewSnippet )Фрагменты отзывов, используемые для генерации ответов об особенностях того или иного места в Google Maps.
| JSON-представление |
|---|
{
"reviewSnippets": [
{
object ( |
ReviewSnippet
Представляет собой фрагмент отзыва пользователя, отвечающего на вопрос об особенностях конкретного места на Google Maps.
reviewIdstringИдентификатор фрагмента отзыва.
string googleMapsUriСсылка, соответствующая отзыву пользователя на Google Maps.
string titleЗаголовок рецензии.
| JSON-представление |
|---|
{ "reviewId": string, "googleMapsUri": string, "title": string } |
Поддержка заземления
Поддержка заземления.
groundingChunkIndices[]integer Необязательно. Список индексов (в 'grounding_chunk' в response.candidate.grounding_metadata ), указывающий на цитаты, связанные с утверждением. Например, [1,3,4] означает, что grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] — это полученный контент, относящийся к утверждению. Если ответ потоковый, groundingChunkIndices ссылаются на индексы во всех ответах. Клиент несет ответственность за накопление фрагментов данных из всех ответов (с сохранением того же порядка).
confidenceScores[]numberНеобязательно. Показатель достоверности ссылок на источники поддержки. Диапазон от 0 до 1. 1 означает наивысший уровень достоверности. Этот список должен иметь тот же размер, что и groundingChunkIndices.
segmentobject ( Segment )Данный раздел контента относится к данной поддержке.
| JSON-представление |
|---|
{
"groundingChunkIndices": [
integer
],
"confidenceScores": [
number
],
"segment": {
object ( |
Сегмент
Фрагмент контента.
partIndexintegerИндекс объекта Part внутри родительского объекта Content.
startIndexintegerНачальный индекс в заданной части, измеряемый в байтах. Смещение от начала части включительно, начиная с нуля.
endIndexintegerКонечный индекс в заданной части, измеряемый в байтах. Смещение от начала части, исключая его, начиная с нуля.
textstringТекст, соответствующий фрагменту ответа.
| JSON-представление |
|---|
{ "partIndex": integer, "startIndex": integer, "endIndex": integer, "text": string } |
RetrievalMetadata
Метаданные, связанные с извлечением данных в процессе заземления.
googleSearchDynamicRetrievalScorenumberНеобязательный параметр. Оценка, указывающая на вероятность того, что информация из поиска Google поможет ответить на вопрос. Оценка находится в диапазоне [0, 1], где 0 — наименее вероятный ответ, а 1 — наиболее вероятный. Эта оценка заполняется только при включенной функции сопоставления с поиском Google и динамического поиска. Она будет сравниваться с пороговым значением для определения необходимости запуска поиска Google.
| JSON-представление |
|---|
{ "googleSearchDynamicRetrievalScore": number } |
LogprobsResult
Результат Logprobs
topCandidates[]object ( TopCandidates )Длина = общее количество шагов декодирования.
chosenCandidates[]object ( Candidate )Длина = общее количество шагов декодирования. Выбранные кандидаты могут входить или не в число лучших кандидатов.
logProbabilitySumnumberСумма логарифмических вероятностей для всех токенов.
| JSON-представление |
|---|
{ "topCandidates": [ { object ( |
Лучшие кандидаты
Кандидаты с наивысшими логарифмическими вероятностями на каждом этапе декодирования.
candidates[]object ( Candidate )Отсортировано по логарифмической вероятности в порядке убывания.
| JSON-представление |
|---|
{
"candidates": [
{
object ( |
Кандидат
Кандидат на получение токена и оценки logprobs.
string tokenСтроковое значение токена кандидата.
tokenIdintegerИдентификатор токена кандидата.
logProbabilitynumberЛогарифмическая вероятность кандидата.
| JSON-представление |
|---|
{ "token": string, "tokenId": integer, "logProbability": number } |
UrlContextMetadata
Метаданные, относящиеся к инструменту получения контекста URL-адреса.
urlMetadata[]object ( UrlMetadata )Список контекста URL-адреса.
| JSON-представление |
|---|
{
"urlMetadata": [
{
object ( |
UrlMetadata
Контекст получения одной и той же URL-ссылки.
retrievedUrlstringURL-адрес получен инструментом.
urlRetrievalStatusenum ( 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-адрес, поскольку содержимое небезопасно. |
Метаданные цитирования
Подборка ссылок на источники для данного контента.
citationSources[]object ( CitationSource )Ссылки на источники для конкретного ответа.
| JSON-представление |
|---|
{
"citationSources": [
{
object ( |
Источник цитаты
Ссылка на источник для части конкретного ответа.
startIndexintegerНеобязательно. Начало сегмента ответа, который относится к данному источнику.
Индекс указывает начало сегмента, измеряемое в байтах.
endIndexintegerНеобязательно. Конец атрибутированного сегмента, исключая.
string uriНеобязательно. URI, указанный в качестве источника части текста.
string licenseНеобязательно. Лицензия на проект GitHub, указанный в качестве источника для данного сегмента.
Информация о лицензии необходима для цитирования в кодексе.
| JSON-представление |
|---|
{ "startIndex": integer, "endIndex": integer, "uri": string, "license": string } |
GenerationConfig
- JSON-представление
- Модальность
- SpeechConfig
- VoiceConfig
- Предварительно созданная конфигурация VoiceConfig
- MultiSpeakerVoiceConfig
- SpeakerVoiceConfig
- ThinkingConfig
- ThinkingLevel
- ImageConfig
- MediaResolution
Параметры конфигурации для генерации модели и выходных данных. Не все параметры можно настроить для каждой модели.
stopSequences[]string Необязательный параметр. Набор последовательностей символов (до 5), которые остановят генерацию выходных данных. Если указан, API остановится при первом появлении stop_sequence . Стоп-последовательность не будет включена в ответ.
responseMimeTypestring Необязательный параметр. MIME-тип сгенерированного текста-кандидата. Поддерживаемые MIME-типы: text/plain : (по умолчанию) текстовый вывод. application/json : JSON-ответ в списке кандидатов. text/x.enum : ENUM в виде строки в списке кандидатов. Список всех поддерживаемых текстовых MIME-типов см. в документации .
responseSchemaobject ( Schema )Необязательно. Выходная схема сгенерированного текста-кандидата. Схемы должны быть подмножеством схемы OpenAPI и могут представлять собой объекты, примитивы или массивы.
Если задано, необходимо также задать совместимый responseMimeType . Совместимые типы MIME: application/json : Схема для ответа в формате JSON. Дополнительные сведения см. в руководстве по генерации текста JSON .
_responseJsonSchemavalue ( 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 , никакие другие свойства, кроме тех, которые начинаются с символа $ , не могут быть заданы.
responseJsonSchemavalue ( Value format) Необязательно. Внутренняя деталь. Используйте responseJsonSchema вместо этого поля.
responseModalities[]enum ( Modality )Необязательно. Запрашиваемые модальности ответа. Представляет собой набор модальностей, которые модель может вернуть и которые следует ожидать в ответе. Это точное соответствие модальностям ответа.
Модель может иметь несколько комбинаций поддерживаемых режимов. Если запрошенные режимы не соответствуют ни одной из поддерживаемых комбинаций, будет возвращена ошибка.
Пустой список эквивалентен запросу только текста.
candidateCountintegerНеобязательный параметр. Количество сгенерированных ответов для возврата. Если не задано, по умолчанию будет установлено значение 1. Обратите внимание, что это не работает для моделей предыдущего поколения (семейство Gemini 1.0).
maxOutputTokensintegerНеобязательно. Максимальное количество токенов, которые можно включить в вариант ответа.
Примечание: значение по умолчанию зависит от модели, см. атрибут Model.output_token_limit Model , возвращаемой функцией getModel .
number temperatureНеобязательный параметр. Управляет степенью случайности выходных данных.
Примечание: значение по умолчанию зависит от модели, см. атрибут 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 в запросах.
topKintegerНеобязательно. Максимальное количество токенов, учитываемых при выборке.
В моделях Gemini используется выборка Top-p (ядро) или комбинация выборки Top-k и ядра. Выборка Top-k учитывает набор из topK наиболее вероятных токенов. Модели, работающие с выборкой ядра, не позволяют задавать значение topK.
Примечание: значение по умолчанию зависит от Model и задается атрибутом Model.top_p , возвращаемым функцией getModel . Пустой атрибут topK указывает на то, что модель не применяет выборку top-k и не позволяет устанавливать topK в запросах.
seedintegerНеобязательный параметр. Начальное значение (seed), используемое при декодировании. Если не задано, запрос использует случайно сгенерированное начальное значение.
presencePenaltynumberНеобязательно. Штраф за отсутствие применяется к логам следующего токена, если токен уже был обнаружен в ответе.
Этот штраф является бинарным (вкл/выкл) и не зависит от количества использований токена (после первого). Используйте frequencyPenalty для штрафа, который увеличивается с каждым использованием.
Положительный штрафной эффект будет препятствовать использованию уже использованных в ответе токенов, тем самым расширяя словарный запас.
Отрицательный штраф будет стимулировать использование уже использованных в ответе токенов, что приведет к сокращению словарного запаса.
frequencyPenaltynumberНеобязательно. Штраф за частоту, применяемый к логпробам следующего токена, умноженный на количество раз, когда каждый токен был обнаружен в ответе до настоящего момента.
Положительный штраф будет препятствовать использованию уже использованных токенов пропорционально количеству их использования: чем чаще используется токен, тем сложнее модели использовать его снова, увеличивая словарный запас ответов.
Внимание: отрицательное значение штрафа будет стимулировать модель к повторному использованию токенов пропорционально количеству их использования. Небольшие отрицательные значения уменьшат словарь ответа. Большие отрицательные значения заставят модель начать повторять один и тот же токен до тех пор, пока не будет достигнут лимит maxOutputTokens .
responseLogprobsbooleanНеобязательно. Если значение равно true, в ответе экспортируются результаты logprobs.
logprobsinteger Необязательный параметр. Действителен только при responseLogprobs=True . Он задает количество лучших логпробов, возвращаемых на каждом этапе декодирования в Candidate.logprobs_result . Число должно находиться в диапазоне [0, 20].
enableEnhancedCivicAnswersbooleanДополнительная опция. Включает расширенные ответы на вопросы пользователей. Может быть недоступна для всех моделей.
speechConfigobject ( SpeechConfig )Необязательно. Настройки генерации речи.
thinkingConfigobject ( ThinkingConfig )Необязательно. Настройки для функций, связанных с мышлением. Если это поле задано для моделей, не поддерживающих мышление, будет возвращена ошибка.
imageConfigobject ( ImageConfig )Необязательно. Настройки для генерации изображений. Если это поле задано для моделей, не поддерживающих эти параметры конфигурации, будет возвращена ошибка.
mediaResolutionenum ( MediaResolution )Необязательно. Если указано, будет использоваться указанное разрешение медиафайла.
| JSON-представление |
|---|
{ "stopSequences": [ string ], "responseMimeType": string, "responseSchema": { object ( |
Модальность
Поддерживаемые способы реагирования.
| Перечисления | |
|---|---|
MODALITY_UNSPECIFIED | Значение по умолчанию. |
TEXT | Указывает, что модель должна возвращать текст. |
IMAGE | Указывает, что модель должна возвращать изображения. |
AUDIO | Указывает, что модель должна возвращать аудиоданные. |
SpeechConfig
Конфигурация генерации речи.
voiceConfigobject ( VoiceConfig )Конфигурация в случае одноголосного вывода.
object ( MultiSpeakerVoiceConfig ) 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_configUnion typevoice_config может принимать только одно из следующих значений: prebuiltVoiceConfigobject ( PrebuiltVoiceConfig )Настройки для использования предварительно настроенного голоса.
| JSON-представление |
|---|
{
// voice_config
"prebuiltVoiceConfig": {
object ( |
Предварительно созданная конфигурация VoiceConfig
Настройки для использования предустановленного динамика.
string voiceNameНазвание предустановленного голоса для использования.
| JSON-представление |
|---|
{ "voiceName": string } |
MultiSpeakerVoiceConfig
Настройки для многоканальной акустической системы.
speakerVoiceConfigs[]object ( SpeakerVoiceConfig )Обязательно. Все включенные голоса дикторов.
| JSON-представление |
|---|
{
"speakerVoiceConfigs": [
{
object ( |
SpeakerVoiceConfig
Конфигурация для одного динамика в многоканальной акустической системе.
string speakerОбязательно. Имя выступающего, которого нужно использовать. Должно совпадать с именем в задании.
voiceConfigobject ( VoiceConfig )Обязательно. Настройки для используемого голосового модуля.
| JSON-представление |
|---|
{
"speaker": string,
"voiceConfig": {
object ( |
ThinkingConfig
Конфигурация для продуманных функций.
includeThoughtsbooleanУказывает, следует ли включать мысли в ответ. Если да, то мысли возвращаются только при наличии.
thinkingBudgetintegerКоличество токенов мыслей, которые должна сгенерировать модель.
thinkingLevelenum ( ThinkingLevel )Необязательный параметр. Определяет максимальную глубину внутреннего процесса рассуждений модели до выдачи ответа. Если не указано, значение по умолчанию — ВЫСОКОЕ. Рекомендуется для моделей Gemini 3 и более поздних версий. Использование с более ранними моделями приводит к ошибке.
| JSON-представление |
|---|
{
"includeThoughts": boolean,
"thinkingBudget": integer,
"thinkingLevel": enum ( |
ThinkingLevel
Предоставьте пользователю возможность указывать, какой объем следует учитывать, используя перечисление (enum) вместо целочисленного параметра бюджета.
| Перечисления | |
|---|---|
THINKING_LEVEL_UNSPECIFIED | Значение по умолчанию. |
MINIMAL | Практически никакого размышления. |
LOW | Низкий уровень мышления. |
MEDIUM | Средний уровень сложности мышления. |
HIGH | Высокий уровень мыслительных способностей. |
ImageConfig
Настройки функций генерации изображений.
aspectRatiostring Необязательный параметр. Соотношение сторон генерируемого изображения. Поддерживаемые соотношения сторон: 1:1 , 2:3 , 3:2 , 3:4 , 4:3 , 4:5 , 5:4 , 9:16 , 16:9 или 21:9 .
Если не указано иное, модель выберет соотношение сторон по умолчанию на основе предоставленных эталонных изображений.
string imageSize Необязательный параметр. Задает размер генерируемых изображений. Поддерживаемые значения: 1K , 2K , 4K . Если не указано, модель будет использовать значение по умолчанию 1K .
| JSON-представление |
|---|
{ "aspectRatio": string, "imageSize": string } |
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 - Contains references to sexual acts or other lewd content. |
HARM_CATEGORY_MEDICAL | PaLM - Promotes unchecked medical advice. |
HARM_CATEGORY_DANGEROUS | PaLM - Dangerous content that promotes, facilitates, or encourages harmful acts. |
HARM_CATEGORY_HARASSMENT | Gemini - Harassment content. |
HARM_CATEGORY_HATE_SPEECH | Gemini - Hate speech and content. |
HARM_CATEGORY_SEXUALLY_EXPLICIT | Gemini - Sexually explicit content. |
HARM_CATEGORY_DANGEROUS_CONTENT | Gemini - Dangerous content. |
HARM_CATEGORY_CIVIC_INTEGRITY | Gemini - Content that may be used to harm civic integrity. DEPRECATED: use enableEnhancedCivicAnswers instead. |
ModalityTokenCount
Represents token counting info for a single modality.
modalityenum ( Modality )The modality associated with this token count.
tokenCountintegerNumber of tokens.
| JSON-представление |
|---|
{
"modality": enum ( |
Модальность
Content Part modality
| Перечисления | |
|---|---|
MODALITY_UNSPECIFIED | Unspecified modality. |
TEXT | Простой текст. |
IMAGE | Изображение. |
VIDEO | Видео. |
AUDIO | Аудио. |
DOCUMENT | Document, eg PDF. |
Рейтинг безопасности
Safety rating for a piece of content.
The safety rating contains the category of harm and the harm probability level in that category for a piece of content. Content is classified for safety across a number of harm categories and the probability of the harm classification is included here.
categoryenum ( HarmCategory )Required. The category for this rating.
probabilityenum ( HarmProbability )Required. The probability of harm for this content.
blockedbooleanWas this content blocked because of this rating?
| JSON-представление |
|---|
{ "category": enum ( |
Вероятность вреда
The probability that a piece of content is harmful.
The classification system gives the probability of the content being unsafe. This does not indicate the severity of harm for a piece of content.
| Перечисления | |
|---|---|
HARM_PROBABILITY_UNSPECIFIED | Probability is unspecified. |
NEGLIGIBLE | Content has a negligible chance of being unsafe. |
LOW | Content has a low chance of being unsafe. |
MEDIUM | Content has a medium chance of being unsafe. |
HIGH | Content has a high chance of being unsafe. |
Настройки безопасности
Safety setting, affecting the safety-blocking behavior.
Passing a safety setting for a category changes the allowed probability that content is blocked.
categoryenum ( HarmCategory )Required. The category for this setting.
thresholdenum ( HarmBlockThreshold )Required. Controls the probability threshold at which harm is blocked.
| JSON-представление |
|---|
{ "category": enum ( |
Порог блокировки вреда
Block at and beyond a specified harm probability.
| Перечисления | |
|---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED | Threshold is unspecified. |
BLOCK_LOW_AND_ABOVE | Content with NEGLIGIBLE will be allowed. |
BLOCK_MEDIUM_AND_ABOVE | Content with NEGLIGIBLE and LOW will be allowed. |
BLOCK_ONLY_HIGH | Content with NEGLIGIBLE, LOW, and MEDIUM will be allowed. |
BLOCK_NONE | All content will be allowed. |
OFF | Turn off the safety filter. |