Эмбеддинги — это числовое представление входного текста, открывающее множество уникальных возможностей применения, таких как кластеризация, измерение сходства и поиск информации. Для ознакомления с ними обратитесь к руководству по эмбеддингам .
В отличие от генеративных моделей ИИ, создающих новый контент, модель Gemini Embedding предназначена только для преобразования формата ваших входных данных в числовое представление. Хотя Google отвечает за предоставление модели встраивания, которая преобразует формат ваших входных данных в запрошенный числовой формат, пользователи сохраняют полную ответственность за вводимые ими данные и полученные в результате встраивания. Используя модель Gemini Embedding, вы подтверждаете, что обладаете необходимыми правами на любой загружаемый вами контент. Не создавайте контент, нарушающий права интеллектуальной собственности или права на неприкосновенность частной жизни других лиц. Использование вами этого сервиса регулируется нашей Политикой запрещенного использования и Условиями использования Google .
Метод: models.embedContent
Generates a text embedding vector from the input Content using the specified Gemini Embedding model .
Конечная точка
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:embedContentПараметры пути
string modelRequired. The model's resource name. This serves as an ID for the Model to use.
This name should match a model name returned by the models.list method.
Format: models/{model} It takes the form models/{model} .
Текст запроса
Тело запроса содержит данные следующей структуры:
contentobject ( Content ) Required. The content to embed. Only the parts.text fields will be counted.
taskType
(deprecated)enum ( TaskType ) Optional. Deprecated: Please use EmbedContentConfig.task_type instead. Optional task type for which the embeddings will be used. Not supported on earlier models ( models/embedding-001 ).
title
(deprecated)string Optional. Deprecated: Please use EmbedContentConfig.title instead. An optional title for the text. Only applicable when TaskType is RETRIEVAL_DOCUMENT .
Note: Specifying a title for RETRIEVAL_DOCUMENT provides better quality embeddings for retrieval.
outputDimensionality
(deprecated)integer Необязательный параметр. Устарело: используйте EmbedContentConfig.output_dimensionality вместо него. Необязательный параметр уменьшения размерности для выходного встраивания. Если задан, избыточные значения в выходном встраивании будут обрезаны с конца. Поддерживается только более новыми моделями, начиная с 2024 года. Вы не можете установить это значение, если используете более раннюю модель ( models/embedding-001 ).
embedContentConfigobject ( EmbedContentConfig )Optional. Configuration for the models.embedContent request.
Пример запроса
Python
Node.js
Идти
Оболочка
Ответный текст
If successful, the response body contains an instance of EmbedContentResponse .
Метод: models.batchEmbedContents
Generates multiple embedding vectors from the input Content which consists of a batch of strings represented as EmbedContentRequest objects.
Конечная точка
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:batchEmbedContentsПараметры пути
string modelRequired. The model's resource name. This serves as an ID for the Model to use.
This name should match a model name returned by the models.list method.
Format: models/{model} It takes the form models/{model} .
Текст запроса
Тело запроса содержит данные следующей структуры:
requests[]object ( EmbedContentRequest ) Обязательно. Запросы на встраивание для пакета. Модель в каждом из этих запросов должна соответствовать модели, указанной в BatchEmbedContentsRequest.model .
Пример запроса
Python
Node.js
Идти
Оболочка
Ответный текст
Ответ на запрос BatchEmbedContentsRequest .
If successful, the response body contains data with the following structure:
embeddings[]object ( ContentEmbedding )Output only. The embeddings for each request, in the same order as provided in the batch request.
usageMetadataobject ( EmbeddingUsageMetadata )Только вывод. Метаданные об использовании запроса.
| JSON-представление |
|---|
{ "embeddings": [ { object ( |
Метод: models.asyncBatchEmbedContent
Добавляет в очередь пакет запросов models.embedContent для пакетной обработки. У нас есть обработчик models.batchEmbedContents в GenerativeService , но он был синхронизированным. Поэтому мы назвали этот обработчик Async , чтобы избежать путаницы.
Конечная точка
posthttps: / /generativelanguage.googleapis.com /v1beta /{batch.model=models /*}:asyncBatchEmbedContentПараметры пути
batch.modelstring Required. The name of the Model to use for generating the completion.
Format: models/{model} . It takes the form models/{model} .
Текст запроса
Тело запроса содержит данные следующей структуры:
batch.namestringТолько вывод. Идентификатор. Имя ресурса пакета.
Формат: batches/{batchId} .
batch.displayNamestringОбязательно. Заданное пользователем имя для этой партии.
batch.inputConfigobject ( InputEmbedContentConfig )Required. Input configuration of the instances on which batch processing are performed.
batch.outputobject ( EmbedContentBatchOutput )Только вывод. Результат пакетного запроса.
batch.createTimestring ( Timestamp format)Output only. The time at which the batch was created.
Используется 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)Output only. The time at which the batch processing completed.
Используется 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)Output only. The time at which the batch was last updated.
Используется 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.batchStatsobject ( EmbedContentBatchStats )Только вывод. Статистика по партии.
batch.stateenum ( BatchState )Только вывод. Состояние пакета.
batch.prioritystring ( int64 format)Optional. The priority of the batch. Batches with a higher priority value will be processed before batches with a lower priority value. Negative values are allowed. Default is 0.
batch.webhookConfig.uris[]stringOptional. If set, these webhook URIs will be used for webhook events instead of the registered webhooks.
Ответный текст
В случае успеха тело ответа содержит экземпляр Operation .
EmbedContentResponse
Ответ на запрос EmbedContentRequest .
embeddingobject ( ContentEmbedding )Output only. The embedding generated from the input content.
usageMetadataobject ( EmbeddingUsageMetadata )Только вывод. Метаданные об использовании запроса.
| JSON-представление |
|---|
{ "embedding": { object ( |
Встраивание контента
Список чисел с плавающей запятой, представляющих собой векторное представление.
values[]numberЗначения для встраивания. Это предназначено только для сторонних пользователей и не будет заполняться для звонков от первого лица.
shape[]integerВ этом поле хранится форма тензора мягких токенов (например, [1, 1, 256, 2048]).
| JSON-представление |
|---|
{ "values": [ number ], "shape": [ integer ] } |
TaskType
Тип задачи, для которой будет использоваться векторное представление.
| Перечисления | |
|---|---|
TASK_TYPE_UNSPECIFIED | Значение не задано, по умолчанию будет использоваться одно из других значений перечисления. |
RETRIEVAL_QUERY | Указывает, что данный текст является поисковым запросом в контексте поиска/извлечения информации. |
RETRIEVAL_DOCUMENT | Specifies the given text is a document from the corpus being searched. |
SEMANTIC_SIMILARITY | Указывает, какой текст будет использоваться для STS (Self-Through Text Scheme). |
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} .
displayNamestringОбязательно. Заданное пользователем имя для этой партии.
inputConfigobject ( InputEmbedContentConfig )Обязательно. Введите конфигурацию экземпляров, на которых выполняется пакетная обработка.
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" .
batchStatsobject ( EmbedContentBatchStats )Только вывод. Статистика по партии.
stateenum ( BatchState )Только вывод. Состояние пакета.
prioritystring ( int64 format)Необязательный параметр. Приоритет партии. Партии с более высоким приоритетом будут обрабатываться раньше партий с более низким приоритетом. Допускаются отрицательные значения. Значение по умолчанию — 0.
| JSON-представление |
|---|
{ "model": string, "name": string, "displayName": string, "inputConfig": { object ( |
InputEmbedContentConfig
Настраивает входные данные для пакетного запроса.
sourceUnion typesource может быть только одним из следующих: string fileName Имя File , содержащего входные запросы.
requestsobject ( InlinedEmbedContentRequests )Запросы, подлежащие обработке в пакетном режиме.
| 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 запроса может быть только один из следующих вариантов: errorobject ( google.rpc.Status )Только вывод. Ошибка, возникшая при обработке запроса.
responseobject ( EmbedContentResponse )Только вывод. Ответ на запрос.
| JSON-представление |
|---|
{ "metadata": { object }, // output "error": { object ( |
EmbedContentBatchStats
Статистика по партии.
requestCountstring ( int64 format)Только вывод. Количество запросов в пакете.
successfulRequestCountstring ( int64 format)Только вывод. Количество успешно обработанных запросов.
failedRequestCountstring ( int64 format)Только вывод. Количество запросов, которые не были обработаны.
pendingRequestCountstring ( int64 format)Только вывод. Количество запросов, ожидающих обработки.
| JSON-представление |
|---|
{ "requestCount": string, "successfulRequestCount": string, "failedRequestCount": string, "pendingRequestCount": string } |
EmbedContentConfig
Настройки для запроса EmbedContent.
string titleНеобязательно. Заголовок текста.
taskTypeenum ( TaskType )Необязательно. Тип задачи для встраивания.
autoTruncatebooleanНеобязательный параметр. Следует ли автоматически обрезать входное содержимое, если оно превышает максимальную длину последовательности.
outputDimensionalityintegerНеобязательный параметр. Уменьшенная размерность выходного векторного представления. Если задано, избыточные значения в выходном векторном представлении будут обрезаны с конца.
documentOcrbooleanНеобязательно. Включать ли распознавание текста (OCR) для содержимого документа.
audioTrackExtractionbooleanНеобязательно. Нужно ли извлекать аудио из видеоконтента.
| JSON-представление |
|---|
{
"title": string,
"taskType": enum ( |
EmbeddingUsageMetadata
Метаданные об использовании запроса на встраивание.
promptTokenCountintegerТолько вывод. Количество токенов в приглашении.
promptTokenDetails[]object ( ModalityTokenCount )Только выходные данные. Список модальностей, которые были обработаны во входном запросе.
| JSON-представление |
|---|
{
"promptTokenCount": integer,
"promptTokenDetails": [
{
object ( |