Каждое обогащение, определяющее семантический ID, либо переиспользует концепт, уже известный вашей организации, либо создаёт новый. Страница Семантические ID делает этот растущий словарь наглядным: просматривайте его, измеряйте, насколько на самом деле близки две записи, добавляйте термины вручную, отвечайте на вопросы, оставленные судьёй тождества, выводите из обращения ненужное и переносите весь словарь на другую модель эмбеддингов.
Страница находится по адресу /semantic-ids в боковой панели и полезна только тогда, когда в вашей организации есть модель эмбеддингов и хотя бы одна схема с семантическим ID — концепты создаются обогащениями, а не самой страницей.
Каждая строка — это один концепт: его канонический текст (идентифицирующий текст, которым он был впервые создан), его тип концепта (пространство, в котором он существует, — по умолчанию имя типа сущности), сколько записей используют его и когда он был создан. Фильтруйте по тексту, по любому числу типов концептов, по схемам, которые в них пишут, или по минимальному числу использований, чтобы найти элементы, заслуживающие вашего внимания. Выбор схем — это быстрый способ выбрать их типы концептов, а поскольку тип является общим, отображаются также концепты, созданные в этом же типе другой схемой. Экспортировать вид выгружает ровно то, что показывают фильтры.
Схожесть измеряется только внутри одного пространства. Векторы сравнимы лишь в пределах одного и того же типа концептов и одной и той же модели эмбеддингов. Строки за пределами пространства выбранного концепта показывают —, что означает «несравнимо», а вовсе не «0%».
Иногда словарь известен ещё до того, как появятся данные, — список блюд, статусов, товарных групп. Панель Курирование создана как раз для того, чтобы набрать такой список: один раз ограничьте её типом концепта — область попадает в адрес страницы, поэтому /semantic-ids/<concept type> — это ссылка сразу на нужный срез, — а дальше повторяйте ввести значение → Проверить → Добавить. Enter проверяет, второй Enter добавляет, поле очищается и сохраняет фокус, так что словарь из пятидесяти терминов — это несколько минут набора без единого касания мыши.
Проверка — это пробный прогон настоящей лестницы разрешения — той же самой, которую выполняет обогащение, — поэтому её вердикт не является приблизительной оценкой. И раз вы уже оплатили этот вердикт, он заодно служит защитой от дубликатов: если существующий концепт покрывает ваш текст на уровне порога или выше, кнопка Добавить концепт остаётся неактивной.
Этот отказ намеренный: близнец выше порога никогда не выиграл бы разрешение и непредсказуемо делил бы будущие совпадения между двумя записями. Ползунок Порог рядом с полем определяет, где проходит эта граница при ваших проверках: поднимите его, чтобы быть строже, опустите — чтобы объединять агрессивнее.
Словарь тоже не обязательно начинать с обогащения: Новый тип концепта… (на панели инструментов страницы, для роли «редактор» и выше) задаёт имя типа и выбирает модель эмбеддингов, в которой будут жить его концепты, — по умолчанию модель вашей организации. Панель курирования сразу ограничивается этим типом, и тип попадает в словарь вместе с первым добавленным концептом; уже существующий тип сохраняет свою модель, поскольку для переноса словаря между моделями предназначена миграция.
В раздел Проверка ничего не попадает лишь из-за внешнего сходства. Каждая пара здесь — это решение судьи тождества, оставленное вам: он не смог определить (Не уверен), нашёл два ваших концепта, равных одному входящему тексту (Похоже на дубликат), или разделил два почти одинаковых по метрике (Разделены) — последнее показано, чтобы вы подтвердили, что очевидный кандидат не был упущен. В каждой строке приведена фраза самого судьи с объяснением решения.
Сравнить → возвращает вас к таблице с выбранным концептом, чтобы перед решением вы увидели, что находится рядом с ним. Объединить… вкладывает один концепт в другой — написания проигравшего становятся псевдонимами победителя, поэтому пара сходится везде и остаётся сведённой. Отклонить закрывает вопрос, если это действительно две разные вещи. Счётчики использования показывают, какой из двух вариантов данные предпочитают на самом деле.
На правой панели отображаются ID концепта (его можно скопировать — именно по нему связываются данные в вашей базе), его нормализованный текст, лежащая в основе модель эмбеддингов и записи, сопоставленные с ним. Выбранный концепт входит в адрес страницы, поэтому URL в адресной строке — прямая ссылка на него: ею можно поделиться с коллегой или сохранить её в тикете. Два представления показывают концепт в окружении соседних.
Сжатие 1536 измерений до 3 не может сохранить расстояния, а раскладка преувеличивает плотность кластеров. Оба представления окрашивают все точки по одной и той же шкале схожести, поэтому читайте цвет, а не расстояние. Первая карта за сессию строится несколько секунд, последующие появляются мгновенно.
Каждая связанная запись показывает оценку, с которой она была разрешена сюда. — означает, что ID пришёл во входных данных и был передан как есть, поэтому сравнения не было вовсе — бесплатный и однозначный путь, описанный в руководстве по семантическим ID.
Импорт и разрешение прогоняет целый столбец CSV по той же цепочке и помечает каждую строку тем, что с ней произойдёт, — ограничения на размер файла нет; большие файлы обрабатываются пакетами по 1000 с отображением хода работы. Файл разбирается прямо в браузере — отправляются только сами значения.
| Результат | Что это значит |
|---|---|
exact | Такой же текст после нормализации уже существует — бесплатно, без вызова модели. |
matched | Иная формулировка разрешилась в существующий концепт выше порога. |
would_mint | Ничего достаточно близкого не нашлось; обогащение создало бы здесь новый концепт. |
minted | Тот же случай с включённым созданием — концепт теперь существует (только для владельца). |
Тип понятия вводится вручную, а не выбирается из списка. Файл — вполне обычный способ начать словарь, поэтому поле подсказывает уже существующие пространства, но принимает и новое имя — и помечает егоновое, когда это действительно так. Новое имя требует ответа на единственный вопрос, который нельзя задать позже: в какой модели эмбеддингов будут жить его понятия. Ответьте на него здесь — и пространство будет создано вместе с первым значением, которое создаст импорт; после этого перенос словаря между моделями — уже миграция.
Две вещи не дают описке превратиться во второй словарь: если ввести имя уже существующего пространства, оно выбирается автоматически, независимо от регистра, а имя, отличающееся на одну-две буквы от существующего, отмечается с исправлением в один клик. С по-настоящему новым пространством сравнивать не с чем, поэтому запуск только на сопоставление ответит «все значения будут созданы», не вычислив ни одного эмбеддинга, — и ничего за это не спишет.
Разрешённые строки скачиваются отдельным CSV, поэтому импорт можно использовать и просто как аудит: какие из наших 900 названий поставщиков уже известны, а какие создадут новую идентичность? Экспорт работает в обратную сторону и называет файл по применённым фильтрам, так что папка с экспортами остаётся самоописательной.
Удаление здесь безопасно так, как редко бывает при удалении данных: словарь восстанавливает себя сам, ведь следующее обогащение просто создаст заново то, что ему нужно. Не вернётся другое — совпадение с уже сохранёнными у вас ID, и диалог сообщает об этом с реальными цифрами до подтверждения.
После такого изменения сохранять старые концепты — рискованный выбор, а не осторожный: идентичности, собранные из новых ключей, всё ещё могут попасть в пределы порога старых векторов и незаметно быть поглощёнными ими, оставив вас с ID, которые не означают ни того, ни другого.
Векторы двух разных моделей несопоставимы, поэтому смена модели означает повторное построение эмбеддингов для всех концептов. Если концепты уже созданы, эта миграция — единственный разрешённый способ это сделать, и именно поэтому настройка модели эмбеддингов организации не меняется сама по себе.
Предпросмотр показывает, во что обойдётся повторное построение эмбеддингов и какие пары концептов, скорее всего, столкнутся — окажутся в новом пространстве в пределах порога друг от друга и начнут разрешаться в один. Оцениваются реалистичные кандидаты, а не все пары, и об этом прямо сообщается.
Обогащения продолжают разрешаться в старом пространстве, пока рядом строятся новые векторы; концепты, созданные за это время, подхватываются последующим проходом. Переключение происходит одним шагом в конце и заодно меняет модель эмбеддингов по умолчанию для вашей организации. Прерывание безвредно: при повторном запуске работа продолжится с места остановки.
Проверки, добавления и импорт тарифицируются как любое другое использование эмбеддингов, а точные совпадения не стоят ничего, поскольку никогда не доходят до модели. Просмотр, сравнение, орбита, 3D-карта, экспорт и удаление бесплатны. Все интерактивные расходы за день сворачиваются в одну строку в истории кредитов, поэтому журнал остаётся читаемым, а не заполняется долями цента.