Метод: TunedModels.generateContent
Генерирует ответ модели с учетом входных данных GenerateContentRequest
.
Возможности ввода различаются в зависимости от модели, включая настроенные модели. Подробности см. в руководстве по модели и руководстве по настройке .
Конечная точка
опубликуйтеhttps://generativelanguage.googleapis.com/v1beta/{model=tunedModels/*}:generateContent
Параметры пути
model
string
Необходимый. Имя Model
, используемой для создания завершения.
Формат: name=models/{model}
. Он принимает форму tunedModels/{tunedmodel}
.
Тело запроса
Тело запроса содержит данные следующей структуры:
contents[]
object ( Content
)
Необходимый. Содержание текущего разговора с моделью.
Для однооборотных запросов это один экземпляр. Для многоходовых запросов это повторяющееся поле, содержащее историю разговоров + последний запрос.
tools[]
object ( Tool
)
Необязательный. Список Tools
которые модель может использовать для генерации следующего ответа.
Tool
— это часть кода, которая позволяет системе взаимодействовать с внешними системами для выполнения действия или набора действий за пределами знаний и области действия модели. В настоящее время единственным поддерживаемым инструментом является Function
.
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.
systemInstruction
object ( Content
)
Необязательный. Разработчик установил системную инструкцию. Пока только текст.
generationConfig
object ( 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
.
Метод: TunedModels.create
Создает настроенную модель. Доступ к промежуточному ходу настройки (если таковой имеется) осуществляется через сервис google.longrunning.Operations
.
Доступ к статусу и результатам можно получить через службу Operations. Пример: GET /v1/tunedModels/az2mb0bpw6i/operations/000-111-222
Конечная точка
опубликуйтеhttps://generativelanguage.googleapis.com/v1beta/tunedModels
Параметры запроса
string
tunedModelId
Необязательный. Уникальный идентификатор настроенной модели, если он указан. Это значение должно содержать до 40 символов, первый символ должен быть буквой, последний может быть буквой или цифрой. Идентификатор должен соответствовать регулярному выражению: az ?.
Тело запроса
Тело запроса содержит экземпляр TunedModel
.
Пример запроса
Питон
Тело ответа
Этот ресурс представляет собой длительную операцию, являющуюся результатом вызова сетевого API.
В случае успеха тело ответа содержит данные следующей структуры:
string
name
Имя, назначенное сервером, уникальное только в пределах той службы, которая его первоначально возвращает. Если вы используете сопоставление HTTP по умолчанию, name
должно быть именем ресурса, заканчивающимся на operations/{unique_id}
.
object
metadata
Метаданные, относящиеся к службе, связанные с операцией. Обычно он содержит информацию о ходе выполнения и общие метаданные, такие как время создания. Некоторые службы могут не предоставлять такие метаданные. Любой метод, возвращающий длительную операцию, должен документировать тип метаданных, если таковые имеются.
Объект, содержащий поля произвольного типа. Дополнительное поле "@type"
содержит URI, идентифицирующий тип. Пример: { "id": 1234, "@type": "types.example.com/standard/id" }
.
done
boolean
Если значение false
, это означает, что операция все еще выполняется. Если true
, операция завершается и доступна либо error
, либо response
.
result
поля объединения. Результат операции, который может быть либо error
, либо допустимым response
. Если done
== false
, ни error
, ни response
не устанавливаются. Если done
== true
, можно установить ровно одну error
или response
. Некоторые службы могут не предоставить результат. result
может быть только одним из следующих:error
object ( Status
)
Ошибка результата операции в случае сбоя или отмены.
object
response
Нормальный, успешный ответ на операцию. Если исходный метод не возвращает данных об успехе, например, Delete
, ответом будет google.protobuf.Empty
. Если исходный метод — стандартный Get
/ Create
/ Update
, ответом должен быть ресурс. Для других методов ответ должен иметь тип XxxResponse
, где Xxx
— исходное имя метода. Например, если исходное имя метода — TakeSnapshot()
, предполагаемый тип ответа — TakeSnapshotResponse
.
Объект, содержащий поля произвольного типа. Дополнительное поле "@type"
содержит URI, идентифицирующий тип. Пример: { "id": 1234, "@type": "types.example.com/standard/id" }
.
JSON-представление |
---|
{ "name": string, "metadata": { "@type": string, field1: ..., ... }, "done": boolean, // Union field |
Метод: TunedModels.get
Получает информацию о конкретной TunedModel.
Конечная точка
получитеhttps://generativelanguage.googleapis.com/v1beta/{name=tunedModels/*}
Параметры пути
string
name
Необходимый. Имя ресурса модели.
Формат: tunedModels/my-model-id
Он принимает форму tunedModels/{tunedmodel}
.
Тело запроса
Тело запроса должно быть пустым.
Пример запроса
Питон
Тело ответа
В случае успеха тело ответа содержит экземпляр TunedModel
.
Метод: TunedModels.list
Перечисляет настроенные модели, принадлежащие пользователю.
Конечная точка
получитьhttps://generativelanguage.googleapis.com/v1beta/tunedModels
Параметры запроса
pageSize
integer
Необязательный. Максимальное количество возвращаемых TunedModels
(на страницу). Сервис может возвращать меньше настроенных моделей.
Если не указано, будет возвращено не более 10 настроенных моделей. Этот метод возвращает не более 1000 моделей на страницу, даже если вы передаете больший размер страницы.
string
pageToken
Необязательный. Токен страницы, полученный в результате предыдущего вызова tunedModels.list
.
Предоставьте pageToken
, возвращенный одним запросом, в качестве аргумента для следующего запроса для получения следующей страницы.
При разбиении на страницы все остальные параметры, предоставленные в tunedModels.list
должны соответствовать вызову, который предоставил токен страницы.
string
filter
Необязательный. Фильтр — это полнотекстовый поиск по описанию и отображаемому названию настроенной модели. По умолчанию результаты не будут включать настроенные модели, доступные всем.
Дополнительные операторы: - владелец:я - писатели:я - читатели:я - читатели:все
Примеры: «владелец: я» возвращает все настроенные модели, для которых у вызывающего объекта есть роль владельца «читатели: я» возвращает все настроенные модели, в которых вызывающий абонент имеет роль читателя «читатели: все» возвращают все настроенные модели, которые доступны всем
Тело запроса
Тело запроса должно быть пустым.
Пример запроса
Питон
Тело ответа
Ответ от tunedModels.list
, содержащий постраничный список моделей.
В случае успеха тело ответа содержит данные следующей структуры:
tunedModels[]
object ( TunedModel
)
Возвращенные модели.
string
nextPageToken
Токен, который можно отправить как pageToken
для получения следующей страницы.
Если это поле опущено, страниц больше нет.
JSON-представление |
---|
{
"tunedModels": [
{
object ( |
Метод: TunedModels.patch
Обновляет настроенную модель.
Конечная точка
патчhttps://generativelanguage.googleapis.com/v1beta/{tunedModel.name=tunedModels/*}
PATCH https://generativelanguage.googleapis.com/v1beta/{tunedModel.name=tunedModels/*}
Параметры пути
string
tunedModel.name
Только вывод. Тюнингованное название модели. Уникальное имя будет сгенерировано при создании. Пример: tunedModels/az2mb0bpw6i
Если при создании задано значение displayName, часть идентификатора имени будет задана путем объединения слов displayName с дефисами и добавления случайной части для уникальности. Пример: displayName = «Переводчик предложений» name = «tunedModels/sentence-translator-u3b7m» Он принимает форму tunedModels/{tunedmodel}
.
Параметры запроса
updateMask
string ( FieldMask
format)
Необходимый. Список полей для обновления.
Это разделенный запятыми список полных имен полей. Пример: "user.displayName,photo"
.
Тело запроса
Тело запроса содержит экземпляр TunedModel
.
Тело ответа
В случае успеха тело ответа содержит экземпляр TunedModel
.
Метод: TunedModels.delete
Удаляет настроенную модель.
Конечная точка
удалитьhttps://generativelanguage.googleapis.com/v1beta/{name=tunedModels/*}
Параметры пути
string
name
Необходимый. Имя ресурса модели. Формат: tunedModels/my-model-id
Он принимает форму tunedModels/{tunedmodel}
.
Тело запроса
Тело запроса должно быть пустым.
Тело ответа
В случае успеха тело ответа пустое.
Ресурс REST: TunedModels
- Ресурс: TunedModel
- TunedModelSource
- Состояние
- Задача настройки
- ТюнингСнимок
- Набор данных
- Примеры настройки
- Пример настройки
- Гиперпараметры
- Методы
Ресурс: TunedModel
Точная настройка модели, созданная с помощью ModelService.CreateTunedModel.
JSON-представление |
---|
{ "name": string, "displayName": string, "description": string, "state": enum ( |
string
name
Только вывод. Тюнингованное название модели. Уникальное имя будет сгенерировано при создании. Пример: tunedModels/az2mb0bpw6i
Если при создании задано значение displayName, часть идентификатора имени будет задана путем объединения слов displayName с дефисами и добавления случайной части для уникальности. Пример: displayName = «Переводчик предложений» name = «tunedModels/sentence-translator-u3b7m»
string
displayName
Необязательный. Имя, отображаемое для этой модели в пользовательских интерфейсах. Отображаемое имя должно содержать до 40 символов, включая пробелы.
string
description
Необязательный. Краткое описание этой модели.
state
enum ( State
)
Только вывод. Состояние настроенной модели.
createTime
string ( Timestamp
format)
Только вывод. Временная метка создания этой модели.
Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z"
и "2014-10-02T15:01:23.045123456Z"
.
updateTime
string ( Timestamp
format)
Только вывод. Временная метка обновления этой модели.
Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z"
и "2014-10-02T15:01:23.045123456Z"
.
tuningTask
object ( TuningTask
)
Необходимый. Задача настройки, создающая настроенную модель.
source_model
. Модель использовалась как отправная точка для тюнинга. source_model
может быть только одним из следующих: tunedModelSource
object ( TunedModelSource
)
Необязательный. TunedModel, который будет использоваться в качестве отправной точки для обучения новой модели.
string
baseModel
Неизменный. Название Model
для настройки. Пример: models/text-bison-001
number
temperature
Необязательный. Управляет случайностью вывода.
Значения могут находиться в диапазоне от [0.0,1.0]
включительно. Значение ближе к 1.0
приведет к более разнообразным ответам, тогда как значение ближе к 0.0
обычно приводит к менее неожиданным ответам модели.
Это значение указывает, что по умолчанию используется базовая модель при ее создании.
number
topP
Необязательный. Для отбора проб ядра.
Ядерная выборка рассматривает наименьший набор токенов, сумма вероятностей которых не меньше topP
.
Это значение указывает, что по умолчанию используется базовая модель при ее создании.
integer
topK
Необязательный. Для выборки Top-k.
Выборка Top-k рассматривает набор наиболее вероятных токенов topK
. Это значение указывает, что серверная часть будет использовать значение по умолчанию при вызове модели.
Это значение указывает, что по умолчанию используется базовая модель при ее создании.
TunedModelSource
Настроенная модель как источник для обучения новой модели.
JSON-представление |
---|
{ "tunedModel": string, "baseModel": string } |
string
tunedModel
Неизменный. Имя TunedModel
, которое будет использоваться в качестве отправной точки для обучения новой модели. Пример: tunedModels/my-tuned-model
string
baseModel
Только вывод. Имя базовой Model
на основе которой была настроена эта TunedModel
. Пример: models/text-bison-001
Состояние
Состояние настроенной модели.
Перечисления | |
---|---|
STATE_UNSPECIFIED | Значение по умолчанию. Это значение не используется. |
CREATING | Модель создается. |
ACTIVE | Модель готова к использованию. |
FAILED | Модель не удалось создать. |
Задача настройки
Задачи настройки, создающие настроенные модели.
JSON-представление |
---|
{ "startTime": string, "completeTime": string, "snapshots": [ { object ( |
startTime
string ( Timestamp
format)
Только вывод. Временная метка начала настройки этой модели.
Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z"
и "2014-10-02T15:01:23.045123456Z"
.
completeTime
string ( Timestamp
format)
Только вывод. Временная метка завершения настройки этой модели.
Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z"
и "2014-10-02T15:01:23.045123456Z"
.
snapshots[]
object ( TuningSnapshot
)
Только вывод. Метрики, собранные во время настройки.
trainingData
object ( Dataset
)
Необходимый. Только ввод. Неизменный. Данные обучения модели.
hyperparameters
object ( Hyperparameters
)
Неизменный. Гиперпараметры, управляющие процессом настройки. Если они не указаны, будут использоваться значения по умолчанию.
ТюнингСнимок
Запись одного шага настройки.
JSON-представление |
---|
{ "step": integer, "epoch": integer, "meanLoss": number, "computeTime": string } |
integer
step
Только вывод. Этап настройки.
integer
epoch
Только вывод. Эпоха, частью которой был этот шаг.
meanLoss
number
потерьТолько вывод. Средняя потеря обучающих примеров для этого шага.
computeTime
string ( Timestamp
format)
Только вывод. Метка времени, когда была вычислена эта метрика.
Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z"
и "2014-10-02T15:01:23.045123456Z"
.
Набор данных
Набор данных для обучения или проверки.
JSON-представление |
---|
{ // Union field |
dataset
полей объединения. Встроенные данные или ссылка на данные. dataset
может быть только одним из следующих:examples
object ( TuningExamples
)
Необязательный. Встроенные примеры.
Примеры настройки
Набор примеров тюнинга. Это могут быть данные обучения или проверки.
JSON-представление |
---|
{
"examples": [
{
object ( |
examples[]
object ( TuningExample
)
Необходимый. Примеры. Пример ввода может быть предназначен для текста или обсуждения, но все примеры в наборе должны быть одного типа.
Пример настройки
Единственный пример для тюнинга.
JSON-представление |
---|
{ "output": string, // Union field |
output
string
Необходимый. Ожидаемый результат модели.
model_input
. Входные данные модели для этого примера. model_input
может быть только одним из следующих:textInput
string
вводаНеобязательный. Ввод текстовой модели.
Гиперпараметры
Гиперпараметры, управляющие процессом настройки. Подробнее читайте на https://ai.google.dev/docs/model_tuning_guidance.
JSON-представление |
---|
{ // Union field |
learning_rate_option
. Опции для указания скорости обучения во время настройки. learning_rate_option
может быть только одним из следующих: number
learningRate
Необязательный. Неизменный. Гиперпараметр скорости обучения для настройки. Если не установлено, значение по умолчанию 0,001 или 0,0002 будет рассчитываться на основе количества обучающих примеров.
number
learningRateMultiplier
Необязательный. Неизменный. Множитель скорости обучения используется для расчета окончательной скорости обучения на основе значения по умолчанию (рекомендуемого). Фактическая скорость обучения: = LearningRateMultiplier * Скорость обучения по умолчанию Скорость обучения по умолчанию зависит от базовой модели и размера набора данных. Если не установлено, будет использоваться значение по умолчанию 1.0.
integer
epochCount
Неизменный. Количество эпох обучения. Эпоха — это один проход по обучающим данным. Если не установлено, будет использоваться значение по умолчанию 5.
batchSize
integer
Неизменный. Гиперпараметр размера пакета для настройки. Если этот параметр не установлен, будет использоваться значение по умолчанию 4 или 16 в зависимости от количества обучающих примеров.