Эмбеддинги текста

Эмбеддинги текста — числовые векторные представления текста, создаваемые моделью эмбеддингов. Они позволяют сравнивать или организовывать тексты с помощью математических операций над векторами. Представление может отражать полезные связи между фразами, не сохраняя понятного человеку объяснения этих связей.

Автор: Ai Flowi · Опубликовано

Эмбеддинг не является ни сгенерированным ответом, ни меткой истинности. Два фрагмента могут быть близки по теме и противоречить друг другу по фактам. Для поиска сохраняйте исходный текст и его источник вместе с вектором, чтобы приложение могло проверить, что кандидат действительно утверждает.

Как текст превращается в представление?

Модель эмбеддингов принимает текст и возвращает вектор в соответствии с представлением, сформированным при обучении. Модель и её конфигурация определяют пространство, в котором эти векторы можно сравнивать. Обработка длины текста, работа с разными языками и размер представления зависят от модели, а не от общего слова «эмбеддинг».

Координаты вектора — математические значения, а не обычные поля вроде темы, автора или статуса одобрения. Не считайте, что координату можно прочитать как «разрешение выдано» или что близкие координаты означают авторитетность источника. Эти отдельные смыслы задают метаданные и проверка подтверждений.

Статья о семантическом поиске объясняет, как поисковая система использует представления для извлечения кандидатов. Эта страница рассматривает предшествующий вопрос: что такое представление и когда сравнение представлений корректно.

Совместимость пространств важнее совпадения размеров

Сохранённые векторы документов и векторы запросов должны относиться к совместимым пространствам эмбеддингов, чтобы расстояния между ними имели смысл. Простой исходный вариант — использовать одну и ту же выбранную модель и конфигурацию. При миграции нужно явно решить вопрос совместимости, а не просто проверить, что оба результата — списки чисел.

Одинаковая длина векторов не доказывает совместимость. Разные модели могут придавать разный смысл одним и тем же позициям координат. Сравнение их результатов может дать число, не имеющее полезной интерпретации для задачи поиска.

При смене модели эмбеддингов планируйте заново создать векторы документов, если документация модели не устанавливает поддерживаемый путь совместимости. Сохраняйте исходный текст и конфигурацию модели для повторной генерации. Не объединяйте новые векторы запросов со старыми векторами документов только потому, что база данных принимает передаваемые данные.

Небольшой пример перефразирования и противоречия

Рассмотрим вымышленные предложения: «Сбросьте пароль учётной записи», «Измените учётные данные» и «Не меняйте пароль учётной записи». Первые два описывают близкие действия. Третье использует ту же тему и лексику, но меняет инструкцию на противоположную.

Концептуальные связи без вымышленных значений векторов
ПараЧто исследоватьЧего близость не доказывает
Сбросить пароль / изменить учётные данныеУдачно ли выбранная модель отражает смысловую связь перефразированных фраз.Что оба фрагмента описывают одну и ту же разрешённую процедуру.
Сбросить пароль / не менять парольЗначимо ли отрицание для задачи.Что близкий по теме фрагмент согласуется с инструкцией.
Сбросить пароль / сменить владельца учётной записиНе скрывает ли близкая лексика об учётной записи разные действия.Что двум запросам подходит одна целевая категория классификации.

Для этих предложений не приводятся координаты эмбеддингов или результаты сравнения. Такие значения зависели бы от конкретного запуска модели. В примере сформулированы вопросы для проверки; он не показывает, как неуказанный поставщик ранжирует тексты.

От Message к эмбеддингам в AI Flowi Workflow

Описание Text Embedder в каталоге: Создаёт эмбеддинги для заданного сообщения с помощью указанной модели эмбеддингов. Поле message обязательно и принимает Message; embedding_model тоже обязательно и принимает Embeddings. Выход с именем embeddings имеет тип JSON.

Тип Embeddings во множественном числе здесь обозначает принимаемое подключение модели, а выход JSON — созданные данные эмбеддингов. Это разные условия интерфейса. Выход JSON с вектором нельзя считать объектом модели эмбеддингов только из-за похожих отображаемых названий.

Embedding Similarity принимает embedding_vectors— обязательный вход типов Data или JSON — и возвращает similarity_data в формате JSON. Выбираемое поле similarity_metric содержит варианты Cosine Similarity, Euclidean Distance и Manhattan Distance. Описание прямо указывает на сравнение двух векторов эмбеддингов.

Концептуальный путь: Message поступает в Text Embedder, затем для Embedding Similarity отдельно готовится пара векторов. Каталог не задаёт схему создания пары, поэтому статья не придумывает расположение ключей JSON и не заявляет о прямом выполнении цепочки. Изучите реальный выход и вход сравнения, прежде чем пытаться реализовать этот замысел.

документировано в каталоге; не проверено Ai Flowi в производственной среде

Изучите записи о представлениях в каталоге; создание векторов через внешнюю модель требует вашей собственной учётной записи для эмбеддингов и ключа API, а услуги поставщика оплачиваются дополнительно к использованию Flowi.

Что показывают меры сходства

Косинусное сходство сравнивает направления векторов; евклидово и манхэттенское расстояния измеряют удалённость разными способами. Расстояние и сходство нельзя интерпретировать с одинаковым правилом упорядочивания. Проверьте выбранную меру, прежде чем решать, какое значение указывает на более близкого кандидата.

Каталог называет меры, но не определяет схему возвращаемого JSON, поведение нормализации или порог. Не выводите эти детали только из названий. Значение сравнения становится полезным лишь после сопоставления с размеченными случаями релевантности при выбранной модели и подготовке входных данных.

Сходство также не устанавливает актуальность записи, доступность или подтверждение авторитетным источником. Эти проверки относятся к метаданным и правилам приложения. Фраза «близки в пространстве эмбеддингов» описывает связь представлений, а не полное решение.

Типичные ошибки и случаи, когда подходит другой метод

Не предполагайте, что эмбеддинги сохраняют точные идентификаторы, надёжно учитывают отрицание в любой задаче или одинаково работают на разных языках. Проверяйте фактический язык и стиль документов, которые планируете использовать. Публичные примеры должны содержать вымышленный текст, поскольку отправка чувствительных фрагментов поставщику требует отдельного решения об обработке данных.

Используйте точный поиск, когда задача — получить известный идентификатор, и обычное сопоставление текста, когда нужна буквальная фраза. Эмбеддинги полезны, когда важны смысловые связи, но добавление этапа представления к задаче точного совпадения может внести неопределённость, не помогая выполнить требование.

По вопросам хранения и поиска изучите векторную базу данных и существующее руководство по настройке базы знаний. Рассмотрите сценарии использования и компонент Agent для последующих этапов приложения. Генерация векторов — одна операция, а не подтверждение успешной проверки всего процесса поиска или ответов.