Краткое руководство. Распознавание разговорной речи

Используйте эту статью, чтобы приступить к работе с распознаванием разговорной речи с помощью Language Studio и REST API. Чтобы испытать пример, выполните следующие действия.

Необходимые компоненты

Вход в Language Studio

  1. Перейдите в Language Studio и войдите в учетную запись Azure.

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

    Сведения об экземпляре Обязательное значение
    Подписка Azure. Вашу подписку Azure.
    Группа ресурсов Azure Имя вашей группы ресурсов Azure.
    Имя ресурса Azure Имя ресурса Azure.
    Местонахождение Один из поддерживаемых регионов для ресурса языковых служб. Например, "Запад США 2".
    Ценовая категория Одна из допустимых ценовых категорий для ресурса языковых служб. Вы можете использовать уровень "Бесплатный" (F0), чтобы поработать со службой.

    A screenshot showing the resource selection screen in Language Studio.

Создание проекта распознавания устной речи

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

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

  1. В Language Studio найдите раздел Распознавание вопросов и устной речи и выберите Распознавание устной речи .

    A screenshot showing the location of Custom Language Understanding in the Language Studio landing page.

  2. Откроется страница Проекты распознавания устной речи. Рядом с кнопкой "Создать проект " нажмите кнопку "Импорт".

    A screenshot showing the conversation project page in Language Studio.

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

После завершения отправки вы получите страницу определения схемы. В этом кратком руководстве схема уже создана, а речевые фрагменты уже помечены намерениями и сущностями.

Обучение модели

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

Чтобы обучить модель, необходимо запустить задание обучения. Выходные данные успешного задания обучения — это обученная модель.

Чтобы начать обучение модели в студии службы "Язык", сделайте следующее:

  1. Выберите Train model (Обучение модели) в меню слева.

  2. В верхнем меню выберите Запустить задание на обучение.

  3. Выберите "Обучение новой модели" и введите новое имя модели в текстовом поле. В противном случае для замены существующей модели моделью, обученной на новых данных, выберите "Перезаписать существующую модель " и выберите существующую модель. Перезапись обученной модели необратима, но это не повлияет на развернутые модели до тех пор, пока вы не развернете новую модель.

  4. Выберите режим обучения. Вы можете выбрать Стандартное обучение для более быстрого обучения, но оно доступно только на английском языке. Кроме того, можно выбрать Расширенное обучение, которое поддерживается для других языков и многоязычных проектов, но оно предусматривает более длительное время обучения. Узнайте больше о режимах обучения.

  5. Выберите метод разделения данных. Вы можете выбрать вариант Автоматическое выделение тестового набора из обучающих данных, при котором система разделит данные с метками на обучающий и тестовый наборы в указанной вами пропорции. Кроме того, можно использовать разделение данных обучения и тестирования вручную. Этот вариант доступен только в том случае, если вы добавили речевые фрагменты в набор тестирования во время маркировки речевых фрагментов.

  6. Нажмите кнопку Обучить.

    A screenshot showing the training page in Language Studio.

  7. Выберите идентификатор задания обучения в списке. Откроется панель, где можно проверка ход обучения, состояние задания и другие сведения для этого задания.

    Примечание.

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

Развертывание модели

Обычно после обучения модели изучаются сведения о ее оценке. В этом кратком руководстве вы просто развернете модель и предоставите себе к ней доступ в Language Studio. Можно также вызвать API прогнозирования.

Чтобы развернуть модель в студии службы "Язык", выполните следующие действия.

  1. В меню слева выберите Развертывание модели.

  2. Выберите " Добавить развертывание", чтобы запустить мастер добавления развертывания .

    A screenshot showing the model deployment button in Language Studio.

  3. Выберите "Создать новое имя развертывания", чтобы создать новое развертывание и назначить обученную модель из раскрывающегося списка ниже. В противном случае можно выбрать перезаписать существующее имя развертывания, чтобы эффективно заменить модель, используемую существующим развертыванием.

    Примечание.

    Для перезаписи существующего развертывания не требуется вносить изменения в вызов API прогнозирования, но полученные результаты будут основаны на новой назначенной модели.

    A screenshot showing the screen for adding a new deployment in Language Studio.

  4. Выберите обученную модель в раскрывающемся списке "Модель ".

  5. Выберите "Развернуть" , чтобы запустить задание развертывания.

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

Тестирование развернутой модели

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

  1. В меню слева выберите Testing deployments (Тестирование развертываний).

  2. Для многоязычных проектов в раскрывающемся списке "Выбор текста " выберите язык проверяемого фрагмента.

  3. В раскрывающемся списке "Имя развертывания" выберите имя развертывания, соответствующее модели, которую требуется протестировать. Можно тестировать только модели, назначенные развертываниям.

  4. В текстовом поле введите речевой фрагмент для проверки. Например, если вы создали приложение для речевых фрагментов, связанных с электронной почтой, можно ввести этот адрес.

  5. В верхней части страницы выберите "Запустить тест".

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

Очистка ресурсов

Если проект вам больше не нужен, вы можете удалить его с помощью Студии Языка. Выберите "Проекты " в меню навигации слева, выберите проект, который нужно удалить, а затем выберите "Удалить " в верхнем меню.

Необходимые компоненты

Создание ресурса на портале Azure

  1. Войдите в портал Azure, чтобы создать новый ресурс языка искусственного интеллекта Azure.

  2. Выберите " Создать новый ресурс"

  3. В появившемся окне выполните поиск по ключевым словам Служба Языка.

  4. Нажмите кнопку Создать

  5. Создайте ресурс службы "Язык" с приведенными ниже сведениями.

    Сведения об экземпляре Обязательное значение
    Регион Один из поддерживаемых регионов для ресурса языковых служб.
    Имя Требуемое имя для ресурса языкового ресурса
    Ценовая категория Одна из допустимых ценовых категорий для ресурса "Язык".

Получение ключей и конечной точки ресурса

  1. Перейдите на страницу обзора ресурса на портале Azure.

  2. В меню слева выберите Ключи и конечная точка. Конечная точка и ключ вам понадобятся для запросов API.

    A screenshot showing the key and endpoint page in the Azure portal

Импорт нового примера проекта CLU

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

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

Активация задания проекта импорта

Отправьте запрос POST, используя указанный ниже URL-адрес, заголовки и текст JSON, чтобы импортировать проект.

Запросить URL-адрес

При создании запроса API используйте следующий URL-адрес. Замените значения заполнителей собственными значениями.

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:import?api-version={API-VERSION}
Заполнитель Значение Пример
{ENDPOINT} Конечная точка для проверки подлинности запроса API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Имя проекта. Это значение учитывает регистр и должно соответствовать имени проекта в импортируемом файле JSON. EmailAppDemo
{API-VERSION} Версия вызываемого API. 2023-04-01

Заголовки

Используйте следующий заголовок для проверки подлинности запроса.

Ключ Стоимость
Ocp-Apim-Subscription-Key Ключ к ресурсу. Используется для проверки подлинности запросов API.

Текст

Текст JSON, который вы отправляете, аналогичен следующему примеру. Дополнительные сведения об объекте JSON см. в справочной документации .

{
  "projectFileVersion": "{API-VERSION}",
  "stringIndexType": "Utf16CodeUnit",
  "metadata": {
    "projectKind": "Conversation",
    "settings": {
      "confidenceThreshold": 0.7
    },
    "projectName": "{PROJECT-NAME}",
    "multilingual": true,
    "description": "Trying out CLU",
    "language": "{LANGUAGE-CODE}"
  },
  "assets": {
    "projectKind": "Conversation",
    "intents": [
      {
        "category": "intent1"
      },
      {
        "category": "intent2"
      }
    ],
    "entities": [
      {
        "category": "entity1"
      }
    ],
    "utterances": [
      {
        "text": "text1",
        "dataset": "{DATASET}",
        "intent": "intent1",
        "entities": [
          {
            "category": "entity1",
            "offset": 5,
            "length": 5
          }
        ]
      },
      {
        "text": "text2",
        "language": "{LANGUAGE-CODE}",
        "dataset": "{DATASET}",
        "intent": "intent2",
        "entities": []
      }
    ]
  }
}

Ключ Заполнитель Значение Пример
{API-VERSION} Версия вызываемого API. 2023-04-01
projectName {PROJECT-NAME} Имя проекта. Это значение учитывает регистр. EmailAppDemo
language {LANGUAGE-CODE} Строка, указывающая код языка для речевых фрагментов, используемых в проекте. Если проект является многоязычным, выберите код языка большинства речевых фрагментов. en-us
multilingual true Логическое значение, которое позволяет иметь документы на нескольких языках в наборе данных. При развертывании модели можно запрашивать модель на любом поддерживаемом языке , включая языки, которые не включены в учебные документы. true
dataset {DATASET} Для получения сведений о разделении данных на тестовые и обучающие наборы см. раздел Обучение модели. Возможные значения для этого поля: Train и Test. Train

При успешном запросе ответ API будет содержать заголовок с URL-адресомoperation-location, который можно использовать для проверка состояния задания импорта. Форматируется следующим образом:

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}

Получение состояния задания импорта

При отправке успешного запроса на импорт проекта полный URL-адрес запроса для проверка состояния задания импорта (включая конечную точку, имя проекта и идентификатор задания) содержится в заголовке ответаoperation-location.

Используйте указанный ниже запрос GET, чтобы проверить состояние задания на импорт. Вы можете использовать URL-адрес, полученный на предыдущем шаге, или заменить значения заполнителей собственными значениями.

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/import/jobs/{JOB-ID}?api-version={API-VERSION}
Заполнитель Значение Пример
{ENDPOINT} Конечная точка для проверки подлинности запроса API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Имя проекта. Это значение учитывает регистр. myProject
{JOB-ID} Идентификатор для поиска состояния задания импорта. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Версия вызываемого API. 2023-04-01

Заголовки

Используйте следующий заголовок для проверки подлинности запроса.

Ключ. Description Значение
Ocp-Apim-Subscription-Key Ключ к ресурсу. Используется для проверки подлинности запросов API. {YOUR-PRIMARY-RESOURCE-KEY}

Текст ответа

После отправки запроса вы получите следующий ответ. Продолжайте опрос этой конечной точки до тех пор, пока значение параметра Состояние не изменится на "Выполнено".

{
  "jobId": "xxxxx-xxxxx-xxxx-xxxxx",
  "createdDateTime": "2022-04-18T15:17:20Z",
  "lastUpdatedDateTime": "2022-04-18T15:17:22Z",
  "expirationDateTime": "2022-04-25T15:17:20Z",
  "status": "succeeded"
}

Начало обучения модели

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

Создайте запрос POST, используя указанный ниже URL-адрес, заголовки и текст JSON, чтобы запустить задание обучения.

Запросить URL-адрес

При создании запроса API используйте следующий URL-адрес. Замените значения заполнителей собственными значениями.

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/:train?api-version={API-VERSION}
Заполнитель Значение Пример
{ENDPOINT} Конечная точка для проверки подлинности запроса API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Имя проекта. Это значение учитывает регистр. EmailApp
{API-VERSION} Версия вызываемого API. 2023-04-01

Заголовки

Используйте следующий заголовок для проверки подлинности запроса.

Ключ Стоимость
Ocp-Apim-Subscription-Key Ключ к ресурсу. Используется для проверки подлинности запросов API.

Текст запроса

Используйте в запросе следующий объект. Модель будет названа после значения, используемого modelLabel для параметра после завершения обучения.

{
  "modelLabel": "{MODEL-NAME}",
  "trainingMode": "{TRAINING-MODE}",
  "trainingConfigVersion": "{CONFIG-VERSION}",
  "evaluationOptions": {
    "kind": "percentage",
    "testingSplitPercentage": 20,
    "trainingSplitPercentage": 80
  }
}
Ключ Заполнитель Значение Пример
modelLabel {MODEL-NAME} Имя модели. Model1
trainingConfigVersion {CONFIG-VERSION} Версия модели конфигурации обучения. По умолчанию используется последняя версия модели. 2022-05-01
trainingMode {TRAINING-MODE} Используемый режим обучения. Поддерживаемые режимы — это Стандартное обучение (ускоренное обучение, доступное только на английском языке) и Расширенное обучение (поддерживающее другие языки и многоязычные проекты, но предусматривающее более длительное время обучения). Узнайте больше о режимах обучения. standard
kind percentage Методы разделения. Возможные значения: percentage и manual. Дополнительные сведения см. в статье об обучении модели. percentage
trainingSplitPercentage 80 Процент помеченных тегами данных, которые будут включены в набор для обучения. Рекомендуемое значение — 80. 80
testingSplitPercentage 20 Процент помеченных тегами данных, которые будут включены в набор для тестирования. Рекомендуемое значение — 20. 20

Примечание.

trainingSplitPercentage и testingSplitPercentage требуются только в том случае, если для Kind задано значение percentage, а сумма процентных значений должна быть равна 100.

После отправки запроса API вы получите ответ 202, указывающий на успешное выполнение. Извлеките значение operation-location из заголовков ответа. Оно будет иметь следующий формат:

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}

Этот URL-адрес позволяет получить текущее состояние задания обучения.

Получение состояния задания обучения

Обучение может занять время , иногда от 10 до 30 минут. Следующий запрос можно использовать для регулярного опроса состояния задания обучения, пока оно не будет успешно завершено.

При отправке успешного запроса на обучение полный URL-адрес запроса для проверка состояния задания (включая конечную точку, имя проекта и идентификатор задания) содержится в заголовке ответаoperation-location.

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

Запросить URL-адрес

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Заполнитель Значение Пример
{YOUR-ENDPOINT} Конечная точка для проверки подлинности запроса API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Имя проекта. Это значение учитывает регистр. EmailApp
{JOB-ID} Идентификатор для поиска состояния обучения модели. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Версия вызываемого API. 2023-04-01

Заголовки

Используйте следующий заголовок для проверки подлинности запроса.

Ключ Стоимость
Ocp-Apim-Subscription-Key Ключ к ресурсу. Используется для проверки подлинности запросов API.

Текст ответа

После отправки запроса вы получите следующий ответ. Продолжайте опрос этой конечной точки до тех пор, пока значение параметра Состояние не изменится на "Выполнено".

{
  "result": {
    "modelLabel": "{MODEL-LABEL}",
    "trainingConfigVersion": "{TRAINING-CONFIG-VERSION}",
    "trainingMode": "{TRAINING-MODE}",
    "estimatedEndDateTime": "2022-04-18T15:47:58.8190649Z",
    "trainingStatus": {
      "percentComplete": 3,
      "startDateTime": "2022-04-18T15:45:06.8190649Z",
      "status": "running"
    },
    "evaluationStatus": {
      "percentComplete": 0,
      "status": "notStarted"
    }
  },
  "jobId": "xxxxx-xxxxx-xxxx-xxxxx-xxxx",
  "createdDateTime": "2022-04-18T15:44:44Z",
  "lastUpdatedDateTime": "2022-04-18T15:45:48Z",
  "expirationDateTime": "2022-04-25T15:44:44Z",
  "status": "running"
}
Ключ Стоимость Пример
modelLabel имя модели; Model1
trainingConfigVersion Версия конфигурации обучения. По умолчанию используется последняя версия. 2022-05-01
trainingMode Выбранный режим обучения. standard
startDateTime Время начала обучения 2022-04-14T10:23:04.2598544Z
status Состояние задания обучения. running
estimatedEndDateTime Предполагаемое время завершения задания обучения. 2022-04-14T10:29:38.2598544Z
jobId Идентификатор задания обучения. xxxxx-xxxx-xxxx-xxxx-xxxxxxxxx
createdDateTime Дата и время создания задания обучения. 2022-04-14T10:22:42Z
lastUpdatedDateTime Дата и время последнего обновления задания обучения 2022-04-14T10:23:45Z
expirationDateTime Дата и время создания задания обучения 2022-04-14T10:22:42Z

Развертывание модели

Обычно после обучения модели изучаются сведения о ее оценке. В этом кратком руководстве вы просто развернете модель и вызовете API прогнозирования для запроса результатов.

Отправка задания развертывания

Создайте запрос PUT, используя следующий URL-адрес, заголовки и текст JSON, чтобы начать развертывание модели распознавания разговорной речи.

Запросить URL-адрес

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}?api-version={API-VERSION}
Заполнитель Значение Пример
{ENDPOINT} Конечная точка для проверки подлинности запроса API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Имя проекта. Это значение учитывает регистр. myProject
{DEPLOYMENT-NAME} Имя, используемое для развертывания. Это значение учитывает регистр. staging
{API-VERSION} Версия вызываемого API. 2023-04-01

Заголовки

Используйте следующий заголовок для проверки подлинности запроса.

Ключ Стоимость
Ocp-Apim-Subscription-Key Ключ к ресурсу. Используется для проверки подлинности запросов API.

Текст запроса

{
  "trainedModelLabel": "{MODEL-NAME}",
}
Ключ Заполнитель Значение Пример
trainedModelLabel {MODEL-NAME} Имя модели, которое будет назначено развертыванию. Имена можно назначить только успешно обученным моделям. Это значение учитывает регистр. myModel

После отправки запроса API вы получите ответ 202, указывающий на успешное выполнение. Извлеките значение operation-location из заголовков ответа. Оно будет иметь следующий формат:

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}

Этот URL-адрес можно использовать для получения состояния задания развертывания.

Получение состояния задания развертывания

При отправке успешного запроса развертывания полный URL-адрес запроса для проверка состояния задания (включая конечную точку, имя проекта и идентификатор задания) содержится в заголовке ответаoperation-location.

Используйте указанный ниже запрос GET для запроса состояния задания развертывания. Замените значения заполнителей собственными значениями.

Запросить URL-адрес

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/jobs/{JOB-ID}?api-version={API-VERSION}
Заполнитель Значение Пример
{ENDPOINT} Конечная точка для проверки подлинности запроса API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Имя проекта. Это значение учитывает регистр. myProject
{DEPLOYMENT-NAME} Имя, используемое для развертывания. Это значение учитывает регистр. staging
{JOB-ID} Идентификатор для поиска состояния обучения модели. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Версия вызываемого API. 2023-04-01

Заголовки

Используйте следующий заголовок для проверки подлинности запроса.

Ключ Стоимость
Ocp-Apim-Subscription-Key Ключ к ресурсу. Используется для проверки подлинности запросов API.

Текст ответа

После отправки запроса вы получите следующий ответ. Продолжайте опрос этой конечной точки до тех пор, пока значение параметра Состояние не изменится на "Выполнено".

{
    "jobId":"{JOB-ID}",
    "createdDateTime":"{CREATED-TIME}",
    "lastUpdatedDateTime":"{UPDATED-TIME}",
    "expirationDateTime":"{EXPIRATION-TIME}",
    "status":"running"
}

Модель запроса

Развернутую модель можно начать использовать для прогнозирования с помощью API прогнозирования.

По завершении развертывания можно запрашивать у проекта прогнозирование.

Создайте запрос POST, используя следующий URL-адрес, заголовки и текст JSON, чтобы начать развертывание модели распознавания разговорной речи.

Запросить URL-адрес

{ENDPOINT}/language/:analyze-conversations?api-version={API-VERSION}
Заполнитель Значение Пример
{ENDPOINT} Конечная точка для проверки подлинности запроса API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API-VERSION} Версия вызываемого API. 2023-04-01

Заголовки

Используйте следующий заголовок для проверки подлинности запроса.

Ключ Стоимость
Ocp-Apim-Subscription-Key Ключ к ресурсу. Используется для проверки подлинности запросов API.

Текст запроса

{
  "kind": "Conversation",
  "analysisInput": {
    "conversationItem": {
      "id": "1",
      "participantId": "1",
      "text": "Text 1"
    }
  },
  "parameters": {
    "projectName": "{PROJECT-NAME}",
    "deploymentName": "{DEPLOYMENT-NAME}",
    "stringIndexType": "TextElement_V8"
  }
}
Ключ Заполнитель Значение Пример
participantId {JOB-NAME} "MyJobName
id {JOB-NAME} "MyJobName
text {TEST-UTTERANCE} Речевой фрагмент, для которого требуется предсказать намерение и извлечь сущности. "Read Matt's email
projectName {PROJECT-NAME} Имя проекта. Это значение учитывает регистр. myProject
deploymentName {DEPLOYMENT-NAME} Имя развертывания. Это значение учитывает регистр. staging

После отправки запроса вы получите следующий ответ для прогнозирования

Текст ответа

{
  "kind": "ConversationResult",
  "result": {
    "query": "Text1",
    "prediction": {
      "topIntent": "inten1",
      "projectKind": "Conversation",
      "intents": [
        {
          "category": "intent1",
          "confidenceScore": 1
        },
        {
          "category": "intent2",
          "confidenceScore": 0
        },
        {
          "category": "intent3",
          "confidenceScore": 0
        }
      ],
      "entities": [
        {
          "category": "entity1",
          "text": "text1",
          "offset": 29,
          "length": 12,
          "confidenceScore": 1
        }
      ]
    }
  }
}
Ключ Образец значения Description
query "Чтение электронной почты Мэтта" текст, отправленный для запроса.
topIntent "Чтение" Прогнозируемое намерение с наивысшей оценкой достоверности.
намерения [] Список всех намерений, которые были спрогнозированы для текста запроса, с оценками их достоверности.
entities [] массив, содержащий список сущностей, извлеченных из текста запроса.

Ответ API для проекта диалогов

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

  • К таким намерениям и сущностям относится оценка доверительного уровня между 0,0 и 1,0, связанная с тем, насколько уверенно модель будет прогнозировать определенный элемент в проекте.
  • Намерение с наибольшей оценкой содержится в своем собственном параметре.
  • В ответе будут отображаться только прогнозируемые сущности.
  • Сущности указывают:
    • Текст извлеченной сущности
    • Начальное расположение, обозначенное значением смещения
    • Длина текста сущности, обозначенная значением длины.

Очистка ресурсов

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

Создайте запрос DELETE, используя следующий URL-адрес, заголовки и текст JSON, чтобы удалить проект по распознаванию устной речи.

Запросить URL-адрес

{ENDPOINT}/language/authoring/analyze-conversations/projects/{PROJECT-NAME}?api-version={API-VERSION}
Заполнитель Значение Пример
{ENDPOINT} Конечная точка для проверки подлинности запроса API. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Имя проекта. Это значение учитывает регистр. myProject
{API-VERSION} Версия вызываемого API. 2023-04-01

Заголовки

Используйте следующий заголовок для проверки подлинности запроса.

Ключ Стоимость
Ocp-Apim-Subscription-Key Ключ к ресурсу. Используется для проверки подлинности запросов API.

После отправки запроса API вы получите ответ 202, означающий успешное выполнение (развертывание удалено).

Следующие шаги