Использование шаблонов для различения похожих речевых фрагментов

Завершено

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

Рассмотрим следующие речевые фрагменты:

  • "Включи освещение на кухне"
  • "Освещение не кухне включено?"
  • "Выключи освещение на кухне"

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

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

  • TurnOnDevice:
    • "Включить {DeviceName}"
    • "Включить {DeviceName}"
    • "Включи {DeviceName}"
  • GetDeviceStatus:
    • "{DeviceName} включено[?]"
  • TurnOffDevice:
    • "Выключи {DeviceName}"
    • "Отключить {DeviceName}"
    • "Выключить {DeviceName}"

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