Ручное тестирование чатбота постепенно становится обременительным из-за роста числа разных тем, которые поддерживает движок. В связи с этим было решено поручить "протыкивание" второму чатботу. Затем листинги бесед двух мудрецов можно просмотреть и выявить явные разрывы, нерелевантные ответы и так далее.
И важное техническое решение: средняя длина диалогов чит-чата, судя по всему, неплохо подходит в качестве оптимизируемой метрики. Простыми словами, чем дольше два бота беседуют до затыка (при отсутствии повторов реплик), тем лучше. Например, "беседа" длиной 17 реплик:
B: Привет, давай поболтаем? H: горячо приветствую B: что будем обсуждать? H: давай тебя B: Я готова отвечать на вопросы о себе. H: ты кто? B: я чатбот B: Скажи, пожалуйста, кто ты? H: я лингвист B: Отлично, мы узнали друг про друга кое-что B: Тебе нравится твоя работа? H: нет, не нравится B: я не сержусь H: тебя можно чем-то рассердить? B: Мне ничего не известно про это H: печально B: Ничего не поделаешь.
Еще одна беседа:
B: День добрый, давай поболтаем? H: ну? B: какие планы на сегодня? H: хочу задать тебе пару вопросиков B: Я готова отвечать на вопросы о себе. H: ты честная? B: я честная H: тебя легко обмануть? B: Чего не знаю, того не знаю H: ты глупая B: Ой, мне такие слова не нравятся H: а что тебе нравится? B: Я люблю детей H: за что ты их любишь? B: Я люблю людей, потому что с ними можно общаться H: нравятся ли тебе кошки? B: почему вопрос про кошек ты задаешь мне?
Полный листинг с сотней диалоговых сессий - тут.