Все статьи
Нейросети · 3 мин

Эмбеддинг простыми словами: как ИИ переводит смысл в числа

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

Олег ЕмельяновДелаю продукты с помощью ИИ

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

Что это простыми словами

Представь, что у каждого слова и фразы есть координаты на карте смысла.

Слова «кошка» и «кот» окажутся на этой карте рядом. «Кошка» и «вертолёт» — далеко друг от друга.

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

Модель строит эту карту не по правилам и не вручную. Она учится на огромном количестве текстов угадывать, какие слова и фразы встречаются в похожих контекстах, и постепенно расставляет их по смыслу — так появляются координаты.

Важно: эмбеддинг — это не перевод текста на другой язык и не его сокращение. Это координаты смысла, по которым можно сравнивать совершенно разные тексты, картинки или даже звук.

Как это устроено

Раньше поиск и сравнение текстов работали по совпадению букв: искать «куртка» — находить «куртка», и ни буквой больше.

Поиск теперь ищет смысл, а не совпадение букв

Поиск по тексту · Ищем совпадение слов · Ищем совпадение смысла · совпадение смысла

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

Дальше остаётся математика: посчитать расстояние между векторами. Чем оно меньше, тем ближе смысл двух вещей друг к другу.

Этот же приём лежит в основе рекомендаций, поиска похожих картинок и того, как ИИ-агент вспоминает нужный кусок большого документа, а не перечитывает его целиком при каждом вопросе.

Пример из жизни

Человек ищет в базе статей «куртка из кожи» — а в тексте написано «кожаный плащ». Слова разные, смысл один.

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

Запрос и ответ совпадают по смыслу, а не по буквам

Поиск по смыслу · Семантический поиск · Запрос · куртка из кожи · Найти · Кожаный плащ

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

С чего начать

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

Свою модель для этого обучать не нужно: готовые сервисы уже умеют строить эмбеддинги по запросу через API.

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

Текст превращается в вектор и сохраняется в базу

Эмбеддинг · Загрузка текста · Модель строит вектор · Вектор сохранён · статья.txt

Для простого продукта — поиска по базе статей, FAQ-бота, подбора похожих карточек — этого достаточно.

Что выбрал бы я

Я бы не строил свою модель для эмбеддингов — это чужая, уже решённая задача.

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

Разбираться в эмбеддингах стоит, строить свою модель — нет

Стоит знать · Своя модель не нужна — хватает готового сервиса · good

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

Вопросы и ответы

Что такое эмбеддинг простыми словами?

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

Чем эмбеддинг отличается от токена?

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

Где применяют эмбеддинги?

В поиске по смыслу, в рекомендациях, в памяти ИИ-агентов и в сравнении картинок или звука по содержанию, а не по точному совпадению слов.

Читать ещё