Текстовый эмбеддинг
Определение
Текстовый эмбеддинг — упорядоченный набор чисел (вектор), которым обученная модель представляет текст для вычислительной задачи. Его применяют, например, для поиска или классификации; полезность представления зависит от модели и задачи.
Также ищут: text embedding · sentence embedding · эмбеддинг текста · векторное представление текста · эмбеддинг предложения
Зачем это знать
Фрагмент может храниться целиком, а вектор — быть рассчитан по обрезанному входу. Вымышленный пример: оговорка «только для версии 4.2» осталась в сохранённом тексте, но не попала на вход модели векторизации. Проверяйте, какой текст кодируется, а качество поиска оценивайте на вопросах с известными ответами.
Карта понятия
Что подтверждено
В Transformers 4.44.2 input_ids содержит целочисленные идентификаторы токенов в словаре, подаваемые модели на вход. В SBERT операция pooling формирует из выхода BERT или RoBERTa вектор предложения фиксированного размера. Это разные этапы обработки текста.
Граница применимости: Редакционное сопоставление API токенизатора Transformers v4.44.2 (__call__, convert_tokens_to_ids) и архитектуры SBERT (раздел 3). Версия API не приписывается исходной реализации SBERT.
В DPR вопрос и фрагмент обрабатывают два независимых кодировщика, обученных для поиска по скалярному произведению их векторов.
Граница применимости: Karpukhin и соавторы, EMNLP 2020, разделы 3.1–3.2; совместно обучаемая пара, а не произвольные модели одной размерности.
Одинаковая размерность векторов не доказывает, что кодировщики запроса и документов предназначены для совместного поиска или дают полезную выдачу.
Граница применимости: Редакционный вывод из обучаемых представлений SBERT и DPR; совместимость пары и качество на конкретных запросах требуют отдельной проверки.
При оценке сходства аргументов SBERT показал более низкий результат на теме, исключённой из обучения, чем при перекрёстной проверке на смешанных темах.
Граница применимости: Sentence-BERT, раздел 4.3, эксперимент с корпусом AFS; результат этого исследования, а не универсальная оценка современных моделей.
В SentenceTransformer свойство max_seq_length задаёт предельную длину входной последовательности: более длинный вход обрезается. Если используется текстовый префикс prompt, он добавляется перед кодируемым текстом.
Граница применимости: Документация Sentence Transformers, прочитанная 25.10.2026: max_seq_length и prompts. Поведение этого API; другие библиотеки и сервисы могут иначе обрабатывать превышение лимита.
В SentenceTransformer параметр truncate_dim сокращает число компонентов выходного эмбеддинга. Свойство max_seq_length относится к длине входной последовательности. Это настройки разных этапов обработки.
Граница применимости: Документация Sentence Transformers, прочитанная 25.10.2026: truncate_dim и max_seq_length. Описание параметров не гарантирует сохранения качества поиска после сокращения размерности.
Карточка all-MiniLM-L6-v2 указывает размерность вектора 384 и обрезку входа длиннее 256 WordPiece-токенов по умолчанию. Первое число описывает выход модели, второе — ограничение входа.
Граница применимости: Карточка sentence-transformers/all-MiniLM-L6-v2, прочитанная 25.10.2026: описание модели и Intended uses. Это описание настроек по умолчанию, а не обещание вместить 256 слов или настройка любого способа загрузки модели.
Что проверить
- Запишите модели и версии кодировщиков запроса и документов.
- Проверьте, предназначены ли эти кодировщики для совместного поиска.
- Проверьте лимит и фактический вход модели: вместе с префиксом, заголовком и служебными токенами, если они добавляются.
- Возьмите длинный фрагмент с важной оговоркой в конце и проверьте, сохранилась ли она после подготовки входа модели.
- Сверьте способ получения вектора и метрику сравнения.
- Оцените выдачу на запросах с известными ответами.
Первоисточники
- Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
Прочитаны аннотация и PDF §§1, 3, 4, 4.3. Используются фиксированное векторное представление после pooling и зависимость результата от задачи.
- Transformers 4.44.2: Tokenizer
Проверены целочисленные идентификаторы токенов, их связь со словарём и передача через input_ids на вход модели. Формат контейнера может быть списком, массивом или тензором.
Утверждения: 01
- Dense Passage Retrieval for Open-Domain Question Answering
Разделы 2–3: отбор фрагментов и top-k retrieval accuracy. Знаменатель этой метрики — число проверенных вопросов.
- SentenceTransformer — Sentence Transformers documentation
Прочитаны описания max_seq_length, truncate_dim и prompts. Проверены разные предметы ограничений: входная последовательность и выходной вектор. Документация прочитана; локальный запуск модели не выполнялся.
- sentence-transformers/all-MiniLM-L6-v2 — model card
Прочитаны описание модели, Usage (Sentence-Transformers) и Intended uses: 384 компонента вектора и обрезка входа длиннее 256 WordPiece-токенов по умолчанию. Число не приравнивается к словам; точный бюджет пользовательского текста и иные способы загрузки не проверены.
Утверждения: 07