Эмбеддинги — это числовое представление текстового ввода, открывающее множество уникальных возможностей использования, таких как кластеризация, измерение сходства и поиск информации. Для получения вводной информации ознакомьтесь с руководством по эмбеддингам .
В отличие от генеративных моделей искусственного интеллекта, создающих новый контент, модель встраивания Gemini предназначена только для преобразования формата ваших входных данных в числовое представление. Хотя Google отвечает за предоставление модели встраивания, преобразующей формат ваших входных данных в запрошенный числовой формат, пользователи несут полную ответственность за введённые ими данные и полученные встраивания. Используя модель встраивания Gemini, вы подтверждаете наличие у вас необходимых прав на любой загружаемый вами контент. Не создавайте контент, нарушающий права интеллектуальной собственности или конфиденциальности других лиц. Использование вами этого сервиса регулируется нашей Политикой в отношении запрещённого использования и Условиями обслуживания Google .
Метод: models.embedContent
Генерирует вектор встраивания текста из входного Content используя указанную модель встраивания Gemini .
Конечная точка
постhttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:embedContentПараметры пути
string modelОбязательно. Имя ресурса модели. Служит идентификатором, который будет использовать модель.
Это имя должно совпадать с именем модели, возвращаемым методом models.list .
Формат: models/{model} Он имеет вид models/{model} .
Текст запроса
Тело запроса содержит данные со следующей структурой:
contentobject ( Content ) Обязательно. Содержимое для встраивания. Учитываются только поля parts.text .
taskTypeenum ( TaskType ) Необязательно. Необязательный тип задачи, для которой будут использоваться вложения. Не поддерживается в более ранних моделях ( models/embedding-001 ).
string title Необязательно. Необязательное название текста. Применимо только если TaskType — RETRIEVAL_DOCUMENT .
Примечание: указание title для RETRIEVAL_DOCUMENT обеспечивает более высокое качество встраивания при поиске.
outputDimensionalityinteger Необязательно. Необязательное уменьшенное измерение для выходного эмбеддинга. Если установлено, избыточные значения в выходном эмбеддинге отсекаются с конца. Поддерживается только новыми моделями с 2024 года. Вы не можете установить это значение при использовании более ранней модели ( models/embedding-001 ).
Пример запроса
Питон
Node.js
Идти
Оболочка
Тело ответа
В случае успеха тело ответа содержит экземпляр EmbedContentResponse .
Метод: models.batchEmbedContents
Генерирует несколько векторов внедрения из входного Content , состоящего из пакета строк, представленных в виде объектов EmbedContentRequest .
Конечная точка
постhttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:batchEmbedContentsПараметры пути
string modelОбязательно. Имя ресурса модели. Служит идентификатором, который будет использовать модель.
Это имя должно совпадать с именем модели, возвращаемым методом models.list .
Формат: models/{model} Он имеет вид models/{model} .
Текст запроса
Тело запроса содержит данные со следующей структурой:
requests[]object ( EmbedContentRequest ) Обязательно. Запросы на встраивание для пакета. Модель в каждом из этих запросов должна соответствовать модели, указанной в BatchEmbedContentsRequest.model .
Пример запроса
Питон
Node.js
Идти
Оболочка
Тело ответа
Ответ на BatchEmbedContentsRequest .
В случае успеха тело ответа содержит данные со следующей структурой:
object ( ContentEmbedding ) embeddings[]Только вывод. Вложения для каждого запроса в том же порядке, что и в пакетном запросе.
| JSON-представление |
|---|
{
"embeddings": [
{
object ( |
Метод: models.asyncBatchEmbedContent
Ставит в очередь пакет запросов models.embedContent для пакетной обработки. У нас есть обработчик models.batchEmbedContents в GenerativeService , но он был синхронизирован. Поэтому мы называем его Async , чтобы избежать путаницы.
Конечная точка
постhttps: / /generativelanguage.googleapis.com /v1beta /{batch.model=models /*}:asyncBatchEmbedContentПараметры пути
string batch.model Обязательно. Имя Model , используемой для создания дополнения.
Формат: models/{model} . Он имеет вид models/{model} .
Текст запроса
Тело запроса содержит данные со следующей структурой:
string batch.nameТолько вывод. Идентификатор. Имя ресурса пакета.
Формат: batches/{batchId} .
string batch.displayNameОбязательно. Имя этого пакета, заданное пользователем.
batch.inputConfigobject ( InputEmbedContentConfig )Обязательно. Введите конфигурацию экземпляров, на которых выполняется пакетная обработка.
object ( EmbedContentBatchOutput ) batch.outputТолько вывод. Вывод пакетного запроса.
batch.createTimestring ( 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" .
batch.endTimestring ( 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" .
batch.updateTimestring ( 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 ( EmbedContentBatchStats ) batch.batchStatsТолько вывод. Статистика по партии.
batch.stateenum ( BatchState )Только вывод. Состояние партии.
string ( int64 format) batch.priorityНеобязательно. Приоритет пакета. Пакеты с более высоким приоритетом будут обработаны раньше пакетов с более низким приоритетом. Допускаются отрицательные значения. Значение по умолчанию — 0.
Тело ответа
В случае успеха тело ответа содержит экземпляр Operation .
EmbedContentResponse
Ответ на EmbedContentRequest .
embeddingobject ( ContentEmbedding )Только вывод. Встраивание, сгенерированное из входного контента.
| JSON-представление |
|---|
{
"embedding": {
object ( |
Встраивание контента
Список плавающих элементов, представляющих вложение.
values[]numberВложенные значения.
| JSON-представление |
|---|
{ "values": [ number ] } |
Тип задачи
Тип задачи, для которой будет использоваться внедрение.
| Перечисления | |
|---|---|
TASK_TYPE_UNSPECIFIED | Неустановленное значение, которое по умолчанию будет равно одному из других значений перечисления. |
RETRIEVAL_QUERY | Указывает, что данный текст является запросом в настройках поиска/извлечения. |
RETRIEVAL_DOCUMENT | Указывает, что данный текст является документом из искомого корпуса. |
SEMANTIC_SIMILARITY | Указывает, что данный текст будет использоваться для STS. |
CLASSIFICATION | Указывает, что данный текст будет классифицирован. |
CLUSTERING | Указывает, что вложения будут использоваться для кластеризации. |
QUESTION_ANSWERING | Указывает, что данный текст будет использоваться для ответа на вопрос. |
FACT_VERIFICATION | Указывает, что данный текст будет использован для проверки фактов. |
CODE_RETRIEVAL_QUERY | Указывает, что данный текст будет использоваться для извлечения кода. |
EmbedContentBatch
- JSON-представление
- InputEmbedContentConfig
- InlinedEmbedContentRequests
- InlinedEmbedContentRequest
- EmbedContentBatchOutput
- InlinedEmbedContentResponses
- InlinedEmbedContentResponse
- EmbedContentBatchStats
Ресурс, представляющий пакет запросов EmbedContent .
string model Обязательно. Имя Model , используемой для создания дополнения.
Формат: models/{model} .
string nameТолько вывод. Идентификатор. Имя ресурса пакета.
Формат: batches/{batchId} .
string displayNameОбязательно. Имя этого пакета, заданное пользователем.
object ( InputEmbedContentConfig ) inputConfigОбязательно. Введите конфигурацию экземпляров, на которых выполняется пакетная обработка.
outputobject ( EmbedContentBatchOutput )Только вывод. Вывод пакетного запроса.
createTimestring ( 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" .
endTimestring ( 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" .
updateTimestring ( 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 ( EmbedContentBatchStats ) batchStatsТолько вывод. Статистика по партии.
stateenum ( BatchState )Только вывод. Состояние партии.
string ( int64 format) priorityНеобязательно. Приоритет пакета. Пакеты с более высоким приоритетом будут обработаны раньше пакетов с более низким приоритетом. Допускаются отрицательные значения. Значение по умолчанию — 0.
| JSON-представление |
|---|
{ "model": string, "name": string, "displayName": string, "inputConfig": { object ( |
InputEmbedContentConfig
Настраивает входные данные для пакетного запроса.
Union type sourcesource может быть только одним из следующих: string fileName Имя File , содержащего входные запросы.
object ( InlinedEmbedContentRequests ) requestsЗапросы, подлежащие обработке в пакете.
| JSON-представление |
|---|
{
// source
"fileName": string,
"requests": {
object ( |
InlinedEmbedContentRequests
Запросы, которые должны быть обработаны в пакете, если они предоставлены как часть запроса на создание пакета.
requests[]object ( InlinedEmbedContentRequest )Обязательно. Запросы, подлежащие пакетной обработке.
| JSON-представление |
|---|
{
"requests": [
{
object ( |
InlinedEmbedContentRequest
Запрос подлежит пакетной обработке.
requestobject ( EmbedContentRequest )Обязательно. Запрос должен быть обработан в пакетном режиме.
metadataobject ( Struct format)Необязательно. Метаданные, которые будут связаны с запросом.
| JSON-представление |
|---|
{
"request": {
object ( |
EmbedContentBatchOutput
Вывод пакетного запроса. Возвращается в AsyncBatchEmbedContentResponse или в поле EmbedContentBatch.output .
outputUnion typeoutput может быть только одним из следующих: responsesFilestring Только вывод. Идентификатор файла, содержащего ответы. Файл будет представлять собой JSONL-файл с одним ответом в каждой строке. Ответы будут представлять собой сообщения EmbedContentResponse отформатированные как JSON. Ответы будут записаны в том же порядке, что и запросы на входные данные.
inlinedResponsesobject ( InlinedEmbedContentResponses )Только выходные данные. Ответы на запросы в пакете. Возвращается, если пакет был сформирован с использованием встроенных запросов. Ответы будут располагаться в том же порядке, что и входящие запросы.
| JSON-представление |
|---|
{
// output
"responsesFile": string,
"inlinedResponses": {
object ( |
InlinedEmbedContentResponses
Ответы на запросы в пакете.
inlinedResponses[]object ( InlinedEmbedContentResponse )Только вывод. Ответы на запросы в пакете.
| JSON-представление |
|---|
{
"inlinedResponses": [
{
object ( |
InlinedEmbedContentResponse
Ответ на один запрос в пакете.
metadataobject ( Struct format)Только вывод. Метаданные, связанные с запросом.
outputUnion typeoutput может быть только одним из следующих: object ( Status ) errorТолько вывод. Ошибка, возникшая при обработке запроса.
responseobject ( EmbedContentResponse )Только вывод. Ответ на запрос.
| JSON-представление |
|---|
{ "metadata": { object }, // output "error": { object ( |
EmbedContentBatchStats
Статистика по партии.
string ( int64 format) requestCountТолько вывод. Количество запросов в пакете.
string ( int64 format) successfulRequestCountТолько вывод. Количество успешно обработанных запросов.
string ( int64 format) failedRequestCountТолько вывод. Количество запросов, которые не удалось обработать.
string ( int64 format) pendingRequestCountТолько вывод. Количество запросов, ожидающих обработки.
| JSON-представление |
|---|
{ "requestCount": string, "successfulRequestCount": string, "failedRequestCount": string, "pendingRequestCount": string } |