Как объединить 2 модели LUIS?

У меня есть 2 модели LUIS. Один я использую для непроизводственного бота, а другой - для производственного бота. Я внес много изменений в приложение LUIS non-prod как часть повседневной разработки и новых навыков. Теперь мы планируем применить эти навыки в prod bot, поэтому нам понадобятся те же изменения LUIS для prod LUIS.

Я, конечно, могу обновить модель prod LUIS без использования prod, скопировав Intents и объекты, высказывания, но, конечно, это отнимает много времени и пронаблюдает ошибки

Я хотел бы знать, как лучше всего объединить две модели LUIS и / или любые другие лучшие практики, которые я мог бы использовать.

4 ответа

Просто обходной путь, если вы спешите. Вы можете просто добавить две модели luis в LuisDialog, и она автоматически выберет самый высокий балл.

    [LuisModel("Model", "secret")]
    [LuisModel("Model", "secret")]
public class RootDialog : LuisDialog<object>
    {
        [LuisIntent("None")]
        public async Task NoneRes(IDialogContext context, LuisResult result)
        {
        }
    }

Используйте диспетчерский инструмент, если эти две модели находятся в отдельных приложениях LUIS. Он объединит их в одно приложение. Если это две модели (как версии) в одном приложении, проще экспортировать обе версии, чем использовать Node.js для объединения объектов JSON.

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

Вы можете импортировать свой json-файл приложения LUIS для разработки в качестве новой версии в ваше производственное приложение LUIS и установить новую версию в качестве активной.

Лучшим сценарием в вашем случае будет клонирование вашей непроизводственной версии, присвоение ей имени новой версии, установка новой клонированной версии как активной и продолжение работы над непроизводственной версией.

Полную документацию к этому можно найти здесь

Другие вопросы по тегам