Перейти к основному содержимому

Embeddings

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

  • Поиск (результаты сортируются по релевантности запросу)
  • Кластеризация (группировка текстовых строк по схожести)
  • Рекомендации (рекомендация элементов с похожими текстовыми строками)
  • Обнаружение аномалий (поиск элементов, значительно отличающихся от других)
  • Измерение разнообразия (анализ распределения схожести)
  • Классификация (классификация текстовых строк на основе их схожести с метками)

Эмбеддинг представляет собой вектор (список) чисел. Расстояние между двумя векторами измеряет степень их схожести: небольшое расстояние указывает на высокую степень схожести, а большое расстояние — на низкую.

Создание эмбеддингов для одного и нескольких текстовых объектов

# from openai import OpenAI - если у вас еще нет этого пакета

client = OpenAI(
api_key = "Ваш_API_ключ_Compressa",
base_url = "https://compressa-api.mil-team.ru/v1"
)

# Создание embedding для одного запроса
embedding = client.embeddings.create(
model="Compressa-Embedding",
input="Как приготовить борщ?",
encoding_format="float",
)

# Создание embeddings для нескольких документов
docs = [
"Борщ - это традиционный славянский суп",
"Для приготовления борща нужна свекла",
"Борщ обычно подают со сметаной",
"В борщ часто добавляют мясо",
"Борщ имеет характерный красный цвет"
]

embeddings = client.embeddings.create(
model="Compressa-Embedding",
input=docs,
encoding_format="float",
)