Добавление меток к речевым фрагментам в Language Studio

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

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

Предварительные требования

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

Дополнительные сведения см. в статье о жизненном цикле разработки проекта.

Рекомендации по маркировке данных

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

Добавляя речевые фрагменты и размечая их, помните о следующем:

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

  • Точность, согласованность и полнота данных с метками являются ключевыми факторами для определения производительности модели.

    • Метка точно. Пометка каждого намерения и сущности к нужному типу всегда. Добавляйте только то, что вы хотите классифицировать и извлекать, избегайте ненужных данных в метках.
    • Добавляйте метки согласованно. У одной сущности должна быть одна и та же метка во всех речевых фрагментах.
    • Метка полностью. Предоставьте разнообразные речевые фрагменты для каждого намерения. Пометьте все экземпляры сущности во всех речевых фрагментах.

Четко помечайте речевые фрагменты

  • Убедитесь, что понятия, на которые ссылаются ваши сущности, четко определены и отделимы. Проверьте, можете ли вы легко определить различия надежно. Если вы не можете, это может быть признаком того, что изученный компонент также будет испытывать трудности.

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

    Например, если вы создали модель для бронирования авиабилетов, пользователь может использовать фразу типа "Я хочу рейс из Бостона в Сиэтл". Ожидается, что город источника и город назначения для таких речевых фрагментов будут похожими. Сигналом к различию "Город происхождения" может быть то, что перед ним часто стоит слово "от".

  • Убедитесь, что вы помечаете все экземпляры каждой сущности в данных для обучения и тестирования. Одним из подходов является использование функции поиска для поиска всех экземпляров слова или фразы в данных, чтобы проверка, если они правильно помечены.

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

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

    • "Set a meeting with Matt and Kevintomorrow at 12 PM." (Назначить встречу с Мэттом и Кевином завтра в 12:00) (английский язык)
    • "Reply as tentative to the weekly update meeting." (Ответить "под вопросом" на еженедельную планерку) (английский язык)
    • "Cancelar mi próxima reunión." (Отменить мою следующую встречу) (испанский язык)

Маркировка речевых фрагментов

Чтобы добавить метки к речевым фрагментам, выполните указанные ниже действия.

  1. Перейдите к странице проекта в Language Studio.

  2. В меню слева выберите Маркировка данных. На этой странице можно приступить к добавлению речевых фрагментов и их маркировке. Вы также можете отправить речевой фрагмент напрямую: выберите Отправить файл речевых фрагментов в верхнем меню и убедитесь, что он соответствует допустимому формату.

  3. В верхней сводке можно выбрать в качестве представления набор для обучения или набор для тестирования. Узнайте больше о наборах для обучения и тестирования, а также о том, как они используются для обучения и оценки моделей.

    Снимок экрана: страница для добавления тегов к речевым фрагментам в Language Studio.

    Совет

    Если вы планируете использовать автоматическое разделение проверочных данных и обучающих данных, добавьте все речевые фрагменты в обучающий набор.

  4. В раскрывающемся меню Выбор намерения выберите одно из намерений, язык речевого фрагмента (для мультиязычных проектов) и сам речевой фрагмент. Нажмите клавишу ВВОД в текстовом поле речевого фрагмента, чтобы добавить речевой фрагмент.

  5. Разметить сущности в речевом фрагменте можно двумя способами:

    Параметр Описание
    Добавление метки с помощью кисти Выберите значок кисти рядом с сущностью в области справа, а затем выделите в речевом фрагменте текст, к которому требуется добавить метку.
    Добавление метки с помощью встроенного меню Выделите слово, которое нужно пометить меткой как сущность, и появится меню. Выберите сущность, которой вы хотите пометить эти слова.
  6. В боковой области справа под сводкой Метки представлены все типы сущностей в проекте и количество экземпляров с метками для каждого из них.

  7. В сводке Распределение можно просмотреть распределение по наборам для обучения и тестирования. Доступны два варианта просмотра.

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

Снимок экрана: распределение сущностей в Language Studio.

Примечание

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

Чтобы удалить метку:

  1. В речевом фрагменте выберите сущность, для которой нужно удалить метку.
  2. прокрутите появившееся меню и выберите пункт Удалить метку.

Чтобы удалить сущность, выполните приведенные далее действия.

  1. Выберите сущность, которую нужно изменить, на правой боковой панели.
  2. Щелкните три точки рядом с сущностью и выберите нужный вариант в раскрывающемся меню.

Предложение речевых фрагментов с помощью Azure OpenAI

В CLU используйте Azure OpenAI, чтобы предложить речевые фрагменты для добавления в проект с помощью моделей GPT. Сначала необходимо получить доступ и создать ресурс в Azure OpenAI. Затем необходимо создать развертывание для моделей GPT. Выполните предварительные действия, описанные здесь.

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

  • Восточная часть США
  • Центрально-южная часть США
  • Западная Европа

На странице Маркировка данных:

  1. Нажмите кнопку Предложить речевые фрагменты . Справа откроется панель с предложением выбрать ресурс и развертывание Azure OpenAI.
  2. При выборе ресурса Azure OpenAI выберите Подключиться, чтобы предоставить ресурсу Язык прямой доступ к ресурсу Azure OpenAI. Он назначает языковому ресурсу роль Cognitive Services User ресурса Azure OpenAI, что позволяет текущему языковому ресурсу иметь доступ к службе Azure OpenAI. Если подключение завершается сбоем, выполните следующие действия , чтобы вручную добавить нужную роль в ресурс Azure OpenAI.
  3. После подключения ресурса выберите развертывание. Рекомендуемая модель для развертывания Azure OpenAI — text-davinci-002.
  4. Выберите намерение, для который вы хотите получить предложения. Убедитесь, что выбранное намерение содержит по крайней мере 5 сохраненных речевых фрагментов, которые будут включены для предложений речевых фрагментов. Предложения, предоставляемые Azure OpenAI, основаны на последних речевых фрагментах , которые вы добавили для этого намерения.
  5. Выберите Создать речевые фрагменты. После завершения предлагаемые речевые фрагменты будут отображаться с пунктирной линией вокруг него с примечанием, созданным СИ. Эти предложения должны быть приняты или отклонены. Принятие предложения просто добавляет его в проект, как если бы вы добавили его самостоятельно. Если отклонить его, предложение будет полностью удалено. Только принятые речевые фрагменты будут частью проекта и будут использоваться для обучения или тестирования. Вы можете принять или отклонить, нажав зеленую кнопку проверка или красные кнопки отмены рядом с каждым высказыванием. Вы также можете использовать кнопки Accept all и Reject all на панели инструментов.

Снимок экрана: предложения речевых фрагментов в Language Studio.

Использование этой функции влечет за собой оплату ресурса Azure OpenAI за такое же количество маркеров, что и предлагаемые созданные речевые фрагменты. Подробные сведения о ценах на Azure OpenAI можно найти здесь.

Добавление необходимых конфигураций в ресурс Azure OpenAI

Если не удается подключить языковой ресурс к ресурсу Azure OpenAI, выполните следующие действия.

Включите управление удостоверениями для языкового ресурса, используя следующие параметры:

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

  1. Выберите ресурс службы "Язык".
  2. В меню слева в разделе Управление ресурсами выберите Удостоверение.
  3. На вкладке Назначаемое системой убедитесь, что для параметра Состояние установлено значение Включено.

После включения управляемого удостоверения назначьте роль Cognitive Services User ресурсу Azure OpenAI, используя управляемое удостоверение языкового ресурса.

  1. Войдите в портал Azure и перейдите к ресурсу Azure OpenAI.
  2. Выберите вкладку контроль доступа (IAM) слева.
  3. Выберите Добавить > назначение ролей.
  4. Выберите "Роли функции задания" и нажмите кнопку Далее.
  5. Выберите Cognitive Services User из списка ролей и нажмите кнопку Далее.
  6. Выберите Назначить доступ к "Управляемому удостоверению" и выберите "Выбрать участников".
  7. В разделе "Управляемое удостоверение" выберите "Язык".
  8. Найдите ресурс и выберите его. Затем нажмите кнопку Выбрать ниже и рядом с ней, чтобы завершить процесс.
  9. Просмотрите сведения и выберите Проверить и назначить.

На нескольких снимках экрана показаны шаги по добавлению необходимой роли в ресурс Azure OpenAI.

Через несколько минут обновите Language Studio, и вы сможете успешно подключиться к Azure OpenAI.

Next Steps