denim2x / web-knowledge-assistant

An engaging virtual assistant capable of answering arbitrary open-ended questions

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Web Knowledge Assistant

An engaging virtual assistant capable of answering arbitrary open-ended questions

Architecture

Workflow

  • the user is greeted with an introductory message from QnA Maker
  • the user may submit a message (usually a question) using the input area
  • the server sends the question to QnA Maker and obtains a preliminary list of answers
  • if there are no relevant answers in the list, the query is first searched in the database, according to a specialized similarity metric
  • if any relevant entries are found then the best answer is shown; otherwise the query is forwarded to Answer Search
  • the search results are then sorted according to the same similarity metric against the query together with the previous answer's caption (if available)
  • the best answer, if available, is shown to the user
  • this process can be repeated indefinitely

Setup

Requirements

  • <project root>/config.yaml with the following:
azure:
  storage:
    account: ...
    key: <admin key>
  qna_maker:
    host: ...
    kb: ...
    key: ...
  cognitive:
    answer_search: <api_key>

MIT License

About

An engaging virtual assistant capable of answering arbitrary open-ended questions

License:MIT License


Languages

Language:Python 74.1%Language:CSS 11.9%Language:JavaScript 9.2%Language:HTML 4.7%