qnabot-on-aws  by aws-solutions

Chatbot for answering customer questions across multiple channels

created 8 years ago
430 stars

Top 70.1% on sourcepulse

GitHubView on GitHub
Project Summary

QnABot on AWS provides a multi-channel, multi-language conversational AI solution for customer support and engagement. It targets businesses looking to enhance customer experience, reduce call center load, and leverage ML for human-like chatbot interactions across chat, voice, SMS, and Alexa.

How It Works

This solution leverages AWS services like Amazon Lex for natural language understanding, Amazon OpenSearch for knowledge base storage, and AWS Lambda for business logic. It supports both traditional keyword matching and advanced LLM-based approaches using Amazon Bedrock for text embeddings and generation. Guardrails are integrated for input and output safety, with fallback options to Amazon Kendra or Bedrock Knowledge Bases for enhanced retrieval.

Quick Start & Requirements

  • Install: Deploy via AWS CloudFormation templates.
  • Prerequisites: AWS account, Linux (tested on Amazon Linux 2), Node.js (>20.X.X), npm (>10.0.0), Git LFS, Python (>=3.10), Poetry.
  • Setup: Detailed instructions are provided in the README for deployment and custom builds.
  • Links: Implementation Guide, Workshop

Highlighted Details

  • Supports multi-channel deployment (chat, voice, SMS, Alexa).
  • Integrates with Amazon Bedrock for LLM features (text generation, embeddings).
  • Includes configurable guardrails for input/output safety.
  • Offers fallback to Amazon Kendra or Bedrock Knowledge Bases.

Maintenance & Community

  • Actively maintained by AWS Solutions.
  • Latest version (v7.0.5) uses Node.js 20 and Python 3.10 runtimes.
  • Older versions (pre-v5.2.1) are undeployable due to Lambda runtime deprecations.

Licensing & Compatibility

  • Licensed under the Apache License, Version 2.0.
  • Permits commercial use and integration with closed-source systems.

Limitations & Caveats

  • Older versions (pre-v5.2.1) are undeployable due to Lambda runtime deprecations.
  • Vue 2 support ended; versions v5.5.0+ use Vue 3.
  • Specific versions (e.g., v5.5.0, v5.4.x) have noted issues with testall functionality.
Health Check
Last commit

2 days ago

Responsiveness

1 week

Pull Requests (30d)
2
Issues (30d)
1
Star History
14 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.