Phone icon Зв'язатись з нами

ШІ та машинне навчання

Що таке ембединг (embedding)?

Ембединг (embedding) — це запис тексту, зображення чи іншого об’єкта у вигляді вектора чисел, де схожі за змістом об’єкти розташовані поруч. Саме ембединги дозволяють комп’ютеру порівнювати документи за змістом, а не за збігом слів.

Ембединг створює окрема модель: вона отримує текст і повертає список із сотень чи тисяч чисел. Самі числа людині нічого не кажуть, але відстань між двома векторами показує, наскільки схожі тексти.

Тому фрази «як повернути товар» і «умови повернення покупки» опиняються поруч, хоча не мають жодного спільного слова. На цьому побудовані семантичний пошук, рекомендації, групування схожих текстів і RAG.

Де застосовується

Ембединги стоять за більшістю «розумних» функцій продуктів: пошук за змістом у базі знань, підбір схожих товарів і статей, групування звернень за темами, пошук дублікатів, захист від спаму. У всіх випадках порівнюють вектори, а не тексти.

В AI-розробці це перший крок будь-якої системи, яка шукає у власних даних. Документи ділять на частини, перетворюють на вектори моделлю ембедингів і зберігають у векторній базі. Потім пошук знаходить потрібні фрагменти і передає їх мовній моделі.

Приклад

Запити «як повернути товар» і «оформлення повернення покупки» не мають спільних слів, але їхні вектори поруч. Звичайний пошук за ключовими словами другий запит не знайде, а пошук за ембедингами поверне потрібну інструкцію.

from sentence_transformers import SentenceTransformer, util

model = SentenceTransformer('intfloat/multilingual-e5-base')
a = model.encode('як повернути товар')
b = model.encode('оформлення повернення покупки')
print(util.cos_sim(a, b))  # близько до 1 — тексти про одне
Два тексти перетворюються на вектори, а схожість за змістом вимірюють кутом між ними.

Ембединг і векторна база: різниця

Ембединг — це сам вектор, результат роботи моделі. Векторна база даних — сховище, куди ці вектори складають, щоб швидко знаходити найближчі. Отримувати ембединги можна і без векторної бази, але шукати серед мільйонів векторів без неї незручно.

Часті запитання

Чим ембединги відрізняються від пошуку за ключовими словами?

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

Яку модель ембедингів обрати?

Для української та російської мов беруть багатомовні моделі: англомовні гірше працюють із кирилицею. Вибір залежить і від способу запуску — через API провайдера чи власну модель на своєму сервері, якщо дані не можна передавати назовні.

Чи можна відновити текст з ембединга?

Точно — ні, це не звичайне стиснення. Але вектор містить інформацію про зміст, і дослідження показують, що приблизно відновити текст можна. Тому сховище векторів захищають так само, як і самі документи.

Чи бувають ембединги не лише для тексту?

Так, так само кодують зображення, аудіо і відео. Мультимодальні моделі розміщують різні типи даних в одному просторі, тому можна шукати картинку за текстовим описом: їхні вектори опиняються поруч.

Навчання програмуванню в OWU

Опануйте професію в IT на практичних курсах із менторами та реальними проєктами.

Обрати курс