aws-solutions / serverless-bot-framework

A solution which enables a multilingual conversational platform, facilitating the creation of applications using voice and text
https://aws.amazon.com/answers/machine-learning/serverless-bot-framework/
Other
43 stars 26 forks source link

Serverless bot framework vs QnAbot #16

Closed traverse-elastictier closed 3 years ago

traverse-elastictier commented 3 years ago

Describe the issue

What is the difference between this project and QnAbot. Which is strategic and supported if you were to build on either? https://github.com/aws-samples/aws-ai-qna-bot

mohsenari commented 3 years ago

Hi @traverse-elastictier it depends on your use case. We're adding clarification points to Serverless Bot Framework's Implementation Guide on its next update to address the cases where it's more suitable to use QnA bot.

Difference between this project and QnAbot: Serverless Bot Framework solution is a good starting point if you are building your own transactional bot, say to provide self service workflows with different intents and multi-turn conversations to elicit slot values. Like ordering a product, booking an appointment, etc. Whereas the QnABot is ideal if your bots are focused mostly on Q&A or FAQ use cases.

Which is strategic and supported? Both projects are supported and teams in AWS are working on updating both projects. Serverless Bot Framework is published as an AWS Solution which means it is listed on the AWS Solutions web site and it has official implementation guide. QnAbot at the moment is not published as an AWS Solution but it has a guide which is published as a blog post here: https://aws.amazon.com/blogs/machine-learning/creating-a-question-and-answer-bot-with-amazon-lex-and-amazon-alexa/

traverse-elastictier commented 3 years ago

Thanks for the response @mohsenari! What are the commercial use rights for serverless bot framework? If it is used as the basis of a commercial product, are there any legalese or use rights to be aware of?

Also, is there guidance for updating and patching serverless bot framework when operating in a production setting?

mohsenari commented 3 years ago

@traverse-elastictier Serverless Bot Framework as well as other AWS Solutions operate on Apache License 2.0. It is an open source license, so anyone can use Serverless Bot Framework, for commercial or non-commercial purpose. You can see the solution's License.txt file to check if there are any legal matters you need to be aware of. The solution itself is free, you only pay for the AWS services you use inside Serverless Bot Framework's architecture (e.g., S3, Lambda, API Gateway, etc.).

Regarding updating and patching, we don't have specific guidance for how to approach it. It depends on the user and there are multiple ways someone would want to approach updating their workload. As a general guideline, the solution is presented as a Cloudformation template. Cloudformation has update and rollback support. You can update Cloudformation stacks directly or through a change set. Take a look at updating stacks directly and updating stacks through change sets.

Alternatively, this solution also uses API Gateway, so if you want to make changes to the backend (i.e., Amazon Lex, AWS Lambda functions, etc.) you can create those changes and make use of API Gateway's canary deployment to reroute your traffic to a new workload in production.

aassadza commented 3 years ago

Hi @traverse-elastictier, thank you for your inquiry. Please let us know if you need additional assistance here. Closing this issue for now.