Это действительно зависит от того, сколько вопросов есть в FAQ, и насколько разнообразными могут быть вопросы. Предположим, у вас есть только 4 разных ответа в вашем FAQ, и у каждого вопроса есть свое ключевое слово: тогда вы можете просто ввести простой оператор switch на Activity.Text.Contains(keyword)
и вернуть один из 4 ответов на основе этого.
Вы также можете создать своего рода дерево тем с карточками и кнопками, которые переходят к темам, в конечном итоге предоставляя ответ на вопрос пользователя, не вводя вопрос.
Как правило, бот QnA или FAQ, как ожидается, будет умным и предоставит ответы на разнообразные тексты вопросов. Написание того, что достаточно понимает человеческий язык, чтобы интерпретировать обобщенное или разнообразное словосочетание и понять, что именно задают, - задача не из легких. Если бы это было чем-то, что разработчик мог бы собрать вместе без особой работы, не было бы платных услуг с этим в качестве бизнес-модели.