QAnswer System Architecture Introduction

Introduction

To install QAnswer on premise, contact us at info@the-qa-company.com to obtain a license key and the credentials required to follow this guide.

Architecture of the application

Here is a diagram explaining the overall architecture of the QAnswer application:

qanswer architecture

QAnswer contains the following software components:

  • a React front-end web-app to allow access and interact with APIs via an intuitive user interface;
  • a Spring Boot Java back-end. This application is serving and securing all APIs;
  • a fast API python back-end that is responsible for the machine learning functionalities;
  • a fast API python back-end that is serving a language model;
  • an ElasticSearch instance;
  • a Redis server for caching;
  • a Selenium server to scrape websites;
  • a transcription server for speech to text;
  • a Postgres database that stores user information.

Requirements

To run QAnswer you need:

  • a linux distribution (we use Ubuntu by default)
  • A GPU with at least 48GB of memory (we recommend NVIDIA® L40S)
  • Docker / Podman

(This supports 7 to 13 concurrent users depending on RAG or Chat workload. Contact us at info@the-qa-company.com for help sizing your infrastructure.)