Страница семантических ID

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

Открытие страницы

Страница находится по адресу /semantic-ids в боковой панели и полезна только тогда, когда в вашей организации есть модель эмбеддингов и хотя бы одна схема с семантическим ID — концепты создаются обогащениями, а не самой страницей.

Кто и что может делать

  • •Редактор — просмотр, сравнение, экспорт, проверка текста, добавление концепта, удаление концептов.
  • •Владелец / администратор — дополнительно: создание понятий через импорт (в том числе открытие нового типа понятий, если этого требует файл), очистка типов понятий целиком и миграция модели эмбеддингов.

Как читать таблицу концептов

Каждая строка — это один концепт: его канонический текст (идентифицирующий текст, которым он был впервые создан), его тип концепта (пространство, в котором он существует, — по умолчанию имя типа сущности), сколько записей используют его и когда он был создан. Фильтруйте по тексту, по любому числу типов концептов, по схемам, которые в них пишут, или по минимальному числу использований, чтобы найти элементы, заслуживающие вашего внимания. Выбор схем — это быстрый способ выбрать их типы концептов, а поскольку тип является общим, отображаются также концепты, созданные в этом же типе другой схемой. Экспортировать вид выгружает ровно то, что показывают фильтры.

  1. 1Число псевдонимов в канонической строке
  2. 2Написание, поглощённое судьёй идентичности
Чип +1 — это число псевдонимов: одна концепция, несколько написаний, один общий счётчик использования. Форма, которую поглотил арбитр, помечена auto — арбитр оплачивается лишь однажды для каждой формы написания.
При выборе строки колонка «Сходство» начинает измерять сходство с ней, а сам концепт открывается справа.

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

Добавление терминов: цикл курирования

Иногда словарь известен ещё до того, как появятся данные, — список блюд, статусов, товарных групп. Панель Курирование создана как раз для того, чтобы набрать такой список: один раз ограничьте её типом концепта — область попадает в адрес страницы, поэтому /semantic-ids/<concept type> — это ссылка сразу на нужный срез, — а дальше повторяйте ввести значение → Проверить → Добавить. Enter проверяет, второй Enter добавляет, поле очищается и сохраняет фокус, так что словарь из пятидесяти терминов — это несколько минут набора без единого касания мыши.

Ничто не разрешает этот текст выше порога, поэтому кнопка Добавить концепт активна. Теперь таблица ранжирует все концепты по сходству с введённым текстом.

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

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

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

Словарь тоже не обязательно начинать с обогащения: Новый тип концепта… (на панели инструментов страницы, для роли «редактор» и выше) задаёт имя типа и выбирает модель эмбеддингов, в которой будут жить его концепты, — по умолчанию модель вашей организации. Панель курирования сразу ограничивается этим типом, и тип попадает в словарь вместе с первым добавленным концептом; уже существующий тип сохраняет свою модель, поскольку для переноса словаря между моделями предназначена миграция.

Модель эмбеддингов — единственный вопрос, который нельзя отложить: тип навсегда сохраняет модель, с которой был создан, а её смена — это миграция.

Очередь проверки

В раздел Проверка ничего не попадает лишь из-за внешнего сходства. Каждая пара здесь — это решение судьи тождества, оставленное вам: он не смог определить (Не уверен), нашёл два ваших концепта, равных одному входящему тексту (Похоже на дубликат), или разделил два почти одинаковых по метрике (Разделены) — последнее показано, чтобы вы подтвердили, что очевидный кандидат не был упущен. В каждой строке приведена фраза самого судьи с объяснением решения.

Два совершенно разных вердикта рядом: два названия одного блюда из тюрбо и два действительно разных шоколадных десерта. Судья находит вопросы — вы на них отвечаете.

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

Последствия подсчитываются до подтверждения: сколько записей будет перепривязано и какие изменения слияние поставит в очередь для базы данных.

Просмотр отдельного концепта

На правой панели отображаются ID концепта (его можно скопировать — именно по нему связываются данные в вашей базе), его нормализованный текст, лежащая в основе модель эмбеддингов и записи, сопоставленные с ним. Выбранный концепт входит в адрес страницы, поэтому URL в адресной строке — прямая ссылка на него: ею можно поделиться с коллегой или сохранить её в тикете. Два представления показывают концепт в окружении соседних.

Орбита — расстояние от центра и есть схожесть, поэтому пунктирное кольцо — это сам порог: всё, что внутри него, будет разрешено в этот концепт.
Карта концептов (3D) — необязательная раскладка всего пространства. Измерение передаёт цвет; положение лишь намекает на форму кластеров — поэтому сфера порога не рисуется.

Почему позиция — это не истина

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

Связанные записи

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

Импорт и экспорт словаря

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

Прогон только на сопоставление ничего не записывает, поэтому он точно показывает, что сделает ваше следующее обогащение с теми же значениями.
РезультатЧто это значит
exactТакой же текст после нормализации уже существует — бесплатно, без вызова модели.
matchedИная формулировка разрешилась в существующий концепт выше порога.
would_mintНичего достаточно близкого не нашлось; обогащение создало бы здесь новый концепт.
mintedТот же случай с включённым созданием — концепт теперь существует (только для владельца).

Тип понятия вводится вручную, а не выбирается из списка. Файл — вполне обычный способ начать словарь, поэтому поле подсказывает уже существующие пространства, но принимает и новое имя — и помечает егоновое, когда это действительно так. Новое имя требует ответа на единственный вопрос, который нельзя задать позже: в какой модели эмбеддингов будут жить его понятия. Ответьте на него здесь — и пространство будет создано вместе с первым значением, которое создаст импорт; после этого перенос словаря между моделями — уже миграция.

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

Разрешённые строки скачиваются отдельным CSV, поэтому импорт можно использовать и просто как аудит: какие из наших 900 названий поставщиков уже известны, а какие создадут новую идентичность? Экспорт работает в обратную сторону и называет файл по применённым фильтрам, так что папка с экспортами остаётся самоописательной.

Удаление концептов

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

Каждый тип указывает пространство эмбеддингов, в котором он существует: два типа на разных моделях несопоставимы — именно поэтому подсчёт разбит таким образом.
Записи сохраняют уже присвоенный им ID; новые обогащения того же объекта создадут другой. Для подключённых баз данных это будет новая строка.

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

Смена модели эмбеддингов

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

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

Сначала пробный прогон

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

Без пауз и без окна, за которым нужно следить

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

Сколько стоит эта страница

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