В сухом остатке, постановка задачи такова.
TQ - шаблонные вопросы, TA - шаблонные ответы, Q - обрабатываемый вопрос, A - список возможных ответов.
Имеем базу пар "шаблонный вопрос-шаблонный ответ", введенный вопрос и список возможных ответов (отсюда дискриминация - выбор ответа из имеющихся, а не генерация ответа).
Надо брать ответ среди A, наиболее развернуто отвечающий на вопрос Q.