ym88659208ym87991671
Векторное представление текста | Документация для разработчиков

Векторное представление текста

Обновлено 26 марта 2024

Эмбеддинг (англ. embedding) — это вектор, представленный в виде массива чисел, который получается в результате преобразования данных, например, текста. Комбинация этих чисел, составляющих вектор, действует как многомерная карта для измерения сходства.

Использование векторных представлений (эмбеддингов) позволяет:

  • уменьшить размерность данных — с помощью эмбеддингов вы можете представить текстовые запросы в виде числовых векторов, что позволяет снизить размерность данных и ускорить их обработку;

  • улучшить качество поиска — эмбеддинги позволяют оценивать сходство между текстовыми запросами на основе расстояния между соответствующими векторами. Это позволяет улучшить качество поиска и релевантность результатов;

  • обеспечить универсальность — эмбеддинги можно использовать для различных задач обработки естественного языка, таких как Retrieval Augmented Generation (RAG), классификация текстов, кластеризация и других.

    Ознакомьтесь с примером реализации RAG в github-репозитории.

Для преобразования строк в эмбеддинги в GigaChat API есть метод POST /embeddings. Запрос выполняется к модели Embeddings ("model": "Embeddings") и авторизуется с помощью токена доступа. Вы также можете создавать эмбеддинги с помощью GigaChain.

Создание эмбеддингов оплачивается отдельно от генерации текста.

Подробнее в разделе Тарифы и оплата.

Пример запроса на создание эмбеддинга:

curl https://gigachat.devices.sberbank.ru/api/v1/embeddings \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <токен доступа>' \
--data '{
"model": "Embeddings",
"input": [
"Расскажи о современных технологиях",
"Какие новинки в мире IT?"
]
}'

Параметры запроса:

model
string
Default: "Embeddings"

Название модели, которая будет использована для создания эмбеддинга.

input
required
Array of strings

Строка или массив строк, которые будут использованы для генерации эмбеддинга.

{
  • "model": "Embeddings",
  • "input": [
    ]
}

Пример ответа:

{
"object": "list",
"data": [
{
"object": "embedding",
"embedding": [
0.0023064255,
-0.009327292,
...
-0.0028842222
],
"index": 0
}
],
"model": "Embeddings"
}

Параметры ответа:

object
required
string
Default: "list"

Формат структуры данных.

required
Array of objects[ items ]
model
string

Название модели, которая используется для вычисления эмбеддинга.

{
  • "object": "list",
  • "data": [
    ],
  • "model": "Embeddings"
}
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.