2016-06-01 9 views
2

Я пытаюсь разработать бот погоды и испытываю некоторые проблемы.wit.ai истории результаты обучения непредсказуемы?

  1. Я обучил системы рассказам и вкладке понимания. Поведение остроумия кажется мне непредсказуемым - оно объединяет истории (которые, как предполагается, я предполагаю), кажется случайным.
  2. Ценности намерения не соответствуют друг другу, даже с использованием той же истории. Я использовал отладчик, чтобы показать значение намерения. Например, я говорю: «Какая погода», предварительно настроенное значение намерения должно быть прогнозом, но иногда оно становится «чем», а иногда появляются другие сущности из других историй, например, «off_topic», созданный для неточных разговоров. Тогда бот будет вести себя иначе, чем моя учебная история.

Любое понимание? Я делаю что-то неправильно? Что я упустил? Большое спасибо за Вашу помощь!

ответ

7

Я чувствую вашу боль :)

Вы должны «силы» wit.ai в правильных историй, основанных на входе пользователя и, если нужно пользователю следить за историей до конца - вы должны держать «заставляя» их вести диалог.

Что я имею в виду следующее:

Если пользователь говорит What's the weather вы можете ввести еще один настраиваемый объект под названием wth и на вкладке Понимания делают его слова на основе и добавить строгий список ключевых слов, связанный с weather слова (прогноз ...).

Это может быть ваша «направляющая нить». Когда этот объект появляется = пользователь использовал ключевое слово, связанное с погодным вопросом = вы можете использовать этот объект wth как требование для каждого действия и ответа вашей истории (вкладка «Действия»).

В нескольких приложениях, которые у меня есть - для каждой истории я думал о том, «что делает эта история» - какова точка входа, так сказать, и придумала сущность, которая приведет пользователя к этому пути диалога, используя Вкладка «Действия» и настройка Only if ... Always if ... требования к ответам и действиям.

Этот подход очень строгий, но он дает вам достойный уровень контроля над тем, что пользователь получает от вашего «бота», чтобы вы могли предвидеть действия и ответы.

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

Также действительный, более гибкий подход, но для этого нужно очень хорошее планирование " бот отвечает «\ stories» так, что они чувствуют себя связанными логичным, разговорным способом. И да, он также нуждается в тщательном управлении контекстом, потому что, если в каждой истории будет добавлен контекст - это может стать большой кучей сущностей и значений, поэтому вам нужно будет подумать, что история A добавляет объект A1 в контекст, но если позже рассказ B пинает и добавляет объект B1 в контекст, тогда мне нужно удалить A1, потому что они противоречивы ...

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

+1

Большое спасибо за Ваш ответ! В настоящее время я избегаю действий, просто хочу, чтобы Wit захватил правильные намерения для разных выражений. Я нахожу, что использование стратегии ключевого слова для захвата намерения позволяет больше контролировать. Тем не менее, когда у вас много историй, появляются нежелательные намерения. У вас есть опыт избавления от нежелательных намерений, которые Уит берет из других историй? –

+1

BTW, в wit.ai GUI, вы должны быть в состоянии задавать вопросы команды Wit, и они сказали, что они обычно отвечают через 1 час. Но неделю назад я задал несколько вопросов, они все еще кажутся невидимыми. У кого-нибудь есть этот опыт? –

+0

@LiYe 1) Нежелательные объекты: на вкладке «Понимание» вам необходимо очистить любые объекты (удалить), которые вы не используете. и пользовательский, который вы используете, - укажите, какой тип они - ключевые слова ... черты .. – GeekSince1982

2

Я хотел прояснить концепцию импорта здесь. Контекст твой. Вит только читает его, чтобы сделать прогноз следующего шага или сгенерировать ответ Бот через переменную. Мы никогда не обновляем контекст на нашей стороне.

Вы должны использовать действие на своей стороне для обновления ключей в контексте. Эти ключи могут, в свою очередь, влиять на предсказание, основанное на рассказах. Wit использует текущий контекст (только для ключей), предыдущие состояния контекста (при взаимодействии N-1, N-2 ....), А также пользовательское сообщение (объекты признаков) для прогнозирования следующего действия.

Дополнительная информация здесь: https://wit.ai/docs/recipes#manage-context-and-session-id

 Смежные вопросы

  • Нет связанных вопросов^_^