Поддержка тонкой настройки API Gemini обеспечивает механизм отбора выходных данных при наличии небольшого набора данных с примерами входных и выходных данных. Подробнее см. в руководстве и учебном пособии по настройке модели .
Метод: tunedModels.create
Создаёт настроенную модель. Промежуточный ход настройки (если есть) можно проверить через сервис google.longrunning.Operations
.
Доступ к статусу и результатам через службу Operations. Пример: GET /v1/tunedModels/az2mb0bpw6i/operations/000-111-222
Конечная точка
постhttps: / /generativelanguage.googleapis.com /v1beta /tunedModels
Параметры запроса
string
tunedModelId
Необязательно. Уникальный идентификатор настроенной модели, если он указан. Это значение должно содержать до 40 символов, первый символ должен быть буквой, последний может быть буквой или цифрой. Идентификатор должен соответствовать регулярному выражению: [az]([a-z0-9-]{0,38}[a-z0-9])?
.
Текст запроса
Тело запроса содержит экземпляр TunedModel
.
string
displayName
Необязательно. Имя, которое будет отображаться в пользовательских интерфейсах. Отображаемое имя должно содержать до 40 символов, включая пробелы.
string
description
Необязательно. Краткое описание этой модели.
object ( TuningTask )
tuningTask
Обязательно. Задача настройки, создающая настроенную модель.
readerProjectNumbers[]
string ( int64 format)
Необязательно. Список номеров проектов, имеющих доступ на чтение к настроенной модели.
source_model
Union type
source_model
может быть только одной из следующих: object ( TunedModelSource )
tunedModelSource
Необязательно. TunedModel можно использовать в качестве отправной точки для обучения новой модели.
string
baseModel
Неизменяемый. Имя Model
для настройки. Пример: models/gemini-1.5-flash-001
temperature
number
Необязательно. Управляет случайностью выходных данных.
Значения могут находиться в диапазоне [0.0,1.0]
включительно. Значение, близкое к 1.0
будет давать более разнообразные ответы, тогда как значение, близкое к 0.0
обычно приводит к менее неожиданным ответам модели.
Это значение указывает значение по умолчанию, которое будет использоваться базовой моделью при создании модели.
number
topP
Необязательно. Для отбора проб ядра.
Ядерная выборка рассматривает наименьший набор токенов, сумма вероятностей которых составляет не менее topP
.
Это значение указывает значение по умолчанию, которое будет использоваться базовой моделью при создании модели.
topK
integer
Необязательно. Для выборки Top-k.
Выборка top-k учитывает набор из topK
наиболее вероятных токенов. Это значение определяет значение по умолчанию, которое будет использоваться бэкендом при вызове модели.
Это значение указывает значение по умолчанию, которое будет использоваться базовой моделью при создании модели.
Пример запроса
Питон
Тело ответа
В случае успеха тело ответа содержит вновь созданный экземпляр Operation
.
Метод: tunedModels.generateContent
Генерирует ответ модели на основе входных данных GenerateContentRequest
. Подробную информацию об использовании см. в руководстве по генерации текста . Возможности ввода различаются в зависимости от модели, включая настроенные модели. Подробную информацию см. в руководстве по моделям и руководстве по настройке .
Конечная точка
постhttps: / /generativelanguage.googleapis.com /v1beta /{model=tunedModels /*}:generateContent
Параметры пути
string
model
Обязательно. Имя Model
, используемой для создания дополнения.
Формат: models/{model}
. Он имеет вид tunedModels/{tunedmodel}
.
Текст запроса
Тело запроса содержит данные со следующей структурой:
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
.
Метод: tunedModels.streamGenerateContent
Формирует потоковый ответ из модели, получив входные данные GenerateContentRequest
.
Конечная точка
постhttps: / /generativelanguage.googleapis.com /v1beta /{model=tunedModels /*}:streamGenerateContent
Параметры пути
string
model
Обязательно. Имя Model
, используемой для создания дополнения.
Формат: models/{model}
. Он имеет вид tunedModels/{tunedmodel}
.
Текст запроса
Тело запроса содержит данные со следующей структурой:
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
.
Метод: 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 моделей на страницу, даже если вы передадите большее значение pageSize.
string
pageToken
Необязательно. Токен страницы, полученный в результате предыдущего вызова tunedModels.list
.
Предоставьте pageToken
, возвращенный одним запросом, в качестве аргумента следующему запросу для получения следующей страницы.
При пагинации все остальные параметры, предоставленные tunedModels.list
должны соответствовать вызову, который предоставил токен страницы.
string
filter
Необязательно. Фильтр — это полнотекстовый поиск по описанию и отображаемому имени настроенной модели. По умолчанию результаты не включают настроенные модели, доступные для всех.
Дополнительные операторы: - владелец:я - писатели:я - читатели:я - читатели:все
Примеры: «owner:me» возвращает все настроенные модели, для которых у вызывающего есть роль владельца. «readers:me» возвращает все настроенные модели, для которых у вызывающего есть роль читателя. «readers:everyone» возвращает все настроенные модели, которые доступны всем.
Текст запроса
Тело запроса должно быть пустым.
Пример запроса
Питон
Тело ответа
Ответ от tunedModels.list
, содержащий постраничный список моделей.
В случае успеха тело ответа содержит данные со следующей структурой:
object ( TunedModel )
tunedModels[]
Возвращенные модели.
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 =
Sentence Translator
- name =
tunedModels/sentence-translator-u3b7m
Оно имеет формуtunedModels/{tunedmodel}
.
Параметры запроса
string ( FieldMask format)
updateMask
Необязательно. Список полей для обновления.
Это список полных имён полей, разделённых запятыми. Пример: "user.displayName,photo"
.
Текст запроса
Тело запроса содержит экземпляр TunedModel
.
string
displayName
Необязательно. Имя, которое будет отображаться в пользовательских интерфейсах. Отображаемое имя должно содержать до 40 символов, включая пробелы.
string
description
Необязательно. Краткое описание этой модели.
object ( TuningTask )
tuningTask
Обязательно. Задача настройки, создающая настроенную модель.
readerProjectNumbers[]
string ( int64 format)
Необязательно. Список номеров проектов, имеющих доступ на чтение к настроенной модели.
source_model
Union type
source_model
может быть только одной из следующих: object ( TunedModelSource )
tunedModelSource
Необязательно. TunedModel можно использовать в качестве отправной точки для обучения новой модели.
temperature
number
Необязательно. Управляет случайностью выходных данных.
Значения могут находиться в диапазоне [0.0,1.0]
включительно. Значение, близкое к 1.0
будет давать более разнообразные ответы, тогда как значение, близкое к 0.0
обычно приводит к менее неожиданным ответам модели.
Это значение указывает значение по умолчанию, которое будет использоваться базовой моделью при создании модели.
number
topP
Необязательно. Для отбора проб ядра.
Ядерная выборка рассматривает наименьший набор токенов, сумма вероятностей которых составляет не менее topP
.
Это значение указывает значение по умолчанию, которое будет использоваться базовой моделью при создании модели.
topK
integer
Необязательно. Для выборки Top-k.
Выборка top-k учитывает набор из topK
наиболее вероятных токенов. Это значение определяет значение по умолчанию, которое будет использоваться бэкендом при вызове модели.
Это значение указывает значение по умолчанию, которое будет использоваться базовой моделью при создании модели.
Тело ответа
В случае успеха тело ответа содержит экземпляр TunedModel
.
Метод: tunedModels.delete
Удаляет настроенную модель.
Конечная точка
удалитьhttps: / /generativelanguage.googleapis.com /v1beta /{name=tunedModels /*}
Параметры пути
string
name
Обязательно. Имя ресурса модели. Формат: tunedModels/my-model-id
Имеет вид tunedModels/{tunedmodel}
.
Текст запроса
Тело запроса должно быть пустым.
Тело ответа
В случае успеха тело ответа представляет собой пустой объект JSON.
Ресурс REST: tunedModels
- Ресурс: TunedModel
- TunedModelSource
- Состояние
- TuningTask
- TuningSnapshot
- Набор данных
- Примеры настройки
- Пример настройки
- Гиперпараметры
- Методы
Ресурс: TunedModel
Тонко настроенная модель, созданная с помощью ModelService.CreateTunedModel.
string
name
Только вывод. Имя настроенной модели. Уникальное имя будет сгенерировано при создании. Пример: tunedModels/az2mb0bpw6i
Если displayName задано при создании, идентификатор имени будет задан путём объединения слов displayName с дефисами и добавления случайной части для уникальности.
Пример:
- displayName =
Sentence Translator
- имя =
tunedModels/sentence-translator-u3b7m
string
displayName
Необязательно. Имя, которое будет отображаться в пользовательских интерфейсах. Отображаемое имя должно содержать до 40 символов, включая пробелы.
string
description
Необязательно. Краткое описание этой модели.
state
enum ( State
)
Только вывод. Состояние настроенной модели.
createTime
string ( 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"
.
updateTime
string ( 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"
.
object ( TuningTask )
tuningTask
Обязательно. Задача настройки, создающая настроенную модель.
readerProjectNumbers[]
string ( int64 format)
Необязательно. Список номеров проектов, имеющих доступ на чтение к настроенной модели.
source_model
Union type
source_model
может быть только одной из следующих: object ( TunedModelSource )
tunedModelSource
Необязательно. TunedModel можно использовать в качестве отправной точки для обучения новой модели.
string
baseModel
Неизменяемый. Имя Model
для настройки. Пример: models/gemini-1.5-flash-001
temperature
number
Необязательно. Управляет случайностью выходных данных.
Значения могут находиться в диапазоне [0.0,1.0]
включительно. Значение, близкое к 1.0
будет давать более разнообразные ответы, тогда как значение, близкое к 0.0
обычно приводит к менее неожиданным ответам модели.
Это значение указывает значение по умолчанию, которое будет использоваться базовой моделью при создании модели.
number
topP
Необязательно. Для отбора проб ядра.
Ядерная выборка рассматривает наименьший набор токенов, сумма вероятностей которых составляет не менее topP
.
Это значение указывает значение по умолчанию, которое будет использоваться базовой моделью при создании модели.
topK
integer
Необязательно. Для выборки Top-k.
Выборка top-k учитывает набор из topK
наиболее вероятных токенов. Это значение определяет значение по умолчанию, которое будет использоваться бэкендом при вызове модели.
Это значение указывает значение по умолчанию, которое будет использоваться базовой моделью при создании модели.
JSON-представление |
---|
{ "name": string, "displayName": string, "description": string, "state": enum ( |
TunedModelSource
Настроенная модель как источник для обучения новой модели.
string
tunedModel
Неизменяемый. Имя модели TunedModel
, используемой в качестве отправной точки для обучения новой модели. Пример: tunedModels/my-tuned-model
string
baseModel
Только вывод. Имя базовой Model
, на основе которой была настроена эта TunedModel
. Пример: models/gemini-1.5-flash-001
JSON-представление |
---|
{ "tunedModel": string, "baseModel": string } |
Состояние
Состояние настроенной модели.
Перечисления | |
---|---|
STATE_UNSPECIFIED | Значение по умолчанию. Это значение не используется. |
CREATING | Модель находится в процессе создания. |
ACTIVE | Модель готова к использованию. |
FAILED | Модель не удалось создать. |
TuningTask
Задачи настройки, создающие настроенные модели.
startTime
string ( 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 ( Timestamp format)
completeTime
Только вывод. Временная метка завершения настройки этой модели.
Использует 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"
.
snapshots[]
object ( TuningSnapshot
)
Только вывод. Метрики, собранные во время настройки.
object ( Dataset )
trainingData
Обязательно. Только входные данные. Неизменяемые. Данные для обучения модели.
object ( Hyperparameters )
hyperparameters
Неизменяемые. Гиперпараметры, управляющие процессом настройки. Если не указаны, будут использованы значения по умолчанию.
JSON-представление |
---|
{ "startTime": string, "completeTime": string, "snapshots": [ { object ( |
TuningSnapshot
Запись для одного шага настройки.
step
integer
Только выход. Шаг настройки.
epoch
integer
Только вывод. Эпоха, к которой относился этот шаг.
meanLoss
number
потерьТолько вывод. Среднее значение потерь обучающих примеров для этого шага.
string ( Timestamp format)
computeTime
Только вывод. Метка времени, когда была вычислена эта метрика.
Использует 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"
.
JSON-представление |
---|
{ "step": integer, "epoch": integer, "meanLoss": number, "computeTime": string } |
Набор данных
Набор данных для обучения или проверки.
Union type
dataset
dataset
может быть только одним из следующих:examples
object ( TuningExamples
)
Необязательно. Встроенные примеры с простым вводом/выводом текста.
JSON-представление |
---|
{
// dataset
"examples": {
object ( |
Примеры настройки
Набор примеров настройки. Могут быть тренировочными или проверочными данными.
examples[]
object ( TuningExample
)
Примеры. Ввод примеров может быть текстовым или для обсуждения, но все примеры в наборе должны быть одного типа.
JSON-представление |
---|
{
"examples": [
{
object ( |
Пример настройки
Один пример для настройки.
output
string
Обязательно. Ожидаемый результат модели.
model_input
Union type
model_input
может быть только одним из следующих:textInput
string
Необязательно. Ввод текстовой модели.
JSON-представление |
---|
{ "output": string, // model_input "textInput": string // Union type } |
Гиперпараметры
Гиперпараметры, управляющие процессом настройки. Подробнее на https://ai.google.dev/docs/model_tuning_guidance
learning_rate_option
Union type
learning_rate_option
может быть только одним из следующих: number
learningRate
Необязательный. Неизменяемый. Гиперпараметр скорости обучения для настройки. Если не задан, будет рассчитано значение по умолчанию 0,001 или 0,0002 на основе количества обучающих примеров.
number
learningRateMultiplier
Необязательный. Неизменяемый. Множитель скорости обучения используется для расчета итогового значения learningRate на основе значения по умолчанию (рекомендуемого). Фактическая скорость обучения := learningRateMultiplier * скорость обучения по умолчанию. Скорость обучения по умолчанию зависит от базовой модели и размера набора данных. Если значение не задано, будет использоваться значение по умолчанию 1,0.
epochCount
integer
Неизменяемое значение. Количество эпох обучения. Эпоха — это один проход по обучающим данным. Если не задано, будет использоваться значение по умолчанию — 5.
batchSize
integer
Неизменяемый. Гиперпараметр размера партии для настройки. Если не задан, будет использоваться значение по умолчанию: 4 или 16 в зависимости от количества обучающих примеров.
JSON-представление |
---|
{ // learning_rate_option "learningRate": number, "learningRateMultiplier": number // Union type "epochCount": integer, "batchSize": integer } |