Releases: aws-solutions/qnabot-on-aws
Releases · aws-solutions/qnabot-on-aws
4.7.1
4.7.1 provides performance improvements and component upgrades
- Amazon Elasticsearch version 7.10 is now utilized.
- Encrypted Elasticsearch (production) instance types now use m6g.large.elasticsearch for improved price/performance/memory.
- The QnABot fulfillment Lambda function has been optimized to reduce query response times and variability,
especially after periods of inactivity. - LexV2 built-in Elicit Response bots have been added.
- Custom settings can now be exported and imported from the Content Designer Settings page.
- Bug fix when ES_SCORE_ANSWER_FIELD is set to true. Prior to this fix, answer fields were not
utilized fully in Elasticsearch queries.
4.7.0
- QnABot now supports LexV2 with voice interaction in multiple languages.
- Two installation/update modes are now available:
- (i) LexV1 + LexV2 (default, recommended for most AWS regions.
- (ii) LexV2-only (currently recommended for AWS regions where LexV1 is not available).
- LexV2 locales are specified via a new CloudFormation parameter
- The default locales are US English, US Spanish and Canadian French.
- Two installation/update modes are now available:
- The QnABot web client now uses LexV2 and supports dynamic bot locale selection from a new title bar menu.
- Custom LexV2 Elicit Response bots are now supported. The built-in response bots still use LexV1 and are
available only when QnABot is installed in LexV1+LexV2 mode. - CloudFormation deployment is now available for Canada/Montreal region (LexV2-only mode).
- Amazon Connect integration in the Canada/Montreal region supports multiple voice languages using LexV2.
- The Content Designer 'Test All' feature now uses LexV2.
- Content Designer's "Rebuild Lex Bot" feature now rebuilds both LexV2 and LexV1 bots
- Non-English LexV2 bot locales are automatically generated with sample utterances translated from English questions using Amazon Translate.
- Content Designer's Import feature now supports Excel spreadsheets as well as the existing JSON format.
- QnABot's Elasticsearch cache is now automatically kept warm to improve query time consistency.
- Negative feedback (thumbs down) messages can now generate notifications (text, email, etc.) using Amazon SNS.
4.6.0
- Kendra integration is now fully automated during install or update when the new default Kendra Index Id parameter is provided.
- Kendra custom no_hits item required in earlier releases is no longer required to enable Kendra Fallback and should be removed, configurable confidence thresholds now available for filtering Kendra results.
- Kibana dashboard now shows additional detail on questions answered via Kendra FAQ and Kendra Fallback.
- Standard markdown is now automatically converted to Slack markdown when using Slack, Kibana dashboard logs and metrics retention period is now configurable during install or update, Lambda runtime upgraded to Node.js 12.x.
- Two new settings have been added
ALT_SEARCH_KENDRA_FALLBACK_CONFIDENCE_SCORE - Answers will only be returned that or at or above the specified confidence level when using Kendra Fallback
ALT_SEARCH_KENDRA_FAQ_CONFIDENCE_SCORE - Synchronized FAQ questions will only be matched to an ElasticSearch question if the Kendra FAQ confidence level is at or above the specified confidence level.
4.5.1
4.5.0
Version 4.5.0
- Added single click deployment support for four additional regions
- Changed unencrypted Amazon Elasticsearch instance types to be t3.small.elasticsearch
- Changed default number of nodes for Amazon Elasticsearch cluster to 4 for better production level cluster performance and resiliency. This can be changed to 2 for development clusters if desired.
- Added Personal Identifiable Information detection support using Amazon Comprehend - readme
- Added web indexing support using Amazon Kendra - readme
- Added Amazon Translate custom terminology support - readme
- Added multi-language translation with QnABot Kendra fallback processing
- Added support for signing S3 URLs for bot responses, using handlebar syntax - readme
- Added support to defining user specified custom settings
- Lambdahook responses can now be used with document chaining and are translated when multi-language support is enabled
- Improved support when contractions are used in utterances
- Fixed bugs and defects
4.4.1
[4.4.1]
- Fix for Designer UI from breaking change in highlight.js due to dependabot alert / change.
- Added support for setting 'profile' as an identity attribute from cognito federation.
- Fix syntax error introduced in 4.4.0 QNAPin and QNAPinNoConfirm bots that prevents updates from succeeding.
4.4.0
4.3.2
- Bug fixes for Kendra FAQ integration
- Support lengthy answer definition for Kendra FAQ
- Check of FAQ deletion in Kendra when FAQ content is being resynced
- Support multiple responses when using Test in content designer with Kendra FAQ enabled
- Fix for exception - "Cannot convert undefined or null to object" when Session Attributes are no provided during Lex input. #229
- Package version updates to address current github dependabot alerts
4.2.0
[4.2.0]
- New Kendra FAQ support (Beta version) using the setting KENDRA_FAQ_INDEX. New menu item in Designer UI to export Questions as a Kendra FAQ. See revised Blog Post for details.
- New GetSessionAttribute Handlebars helper to obtain session attribute. Works similar to lodash get(). Will not through exception and will return a default value.
- Enhanced handlebars to support string concatenation including handlevar 'variables' like Session Attributes and UserInfo, etc. Use case, e.g. to build a url containing a users email, eg a google calendar URL. Example of syntax now supported - in this case to dynamically build a personalized URL based on user info. {{setSessionAttr 'link' 'https://calendar.google.com/calendar/embed?src=' UserInfo.Email '&ctz=America%2FNew_York'}}
- Moved 'previous' and 'navigation' session attributes under a new 'qnabotcontext' session attribute so that Connect (and other) clients have fewer session attributes to preserve.
- Allows Chaining rule Lambda function to return a modified session object in addition to the string for chaining.
- Allows Chaining of up to 10 documents. Each document's Lambda hooks will also be invoked in sequence if defined.
- Added a new Repeat QID in the QNAUtility example package. Allows QnABot to easily repeat the last answer.
- Allow the chaining rule to specify a specific QID rather than an answer. A QID can be specified in the chaining rule by using string such as QID:: e.g. QID::Admin.001. Note, the new QID:: syntax can also be used from the webUI, say as button values if/when you prefer to target a specific QID (exact query) rather than rely on question matching.
- Fixed a defect to allow conditional chaining to be invoked after an elicit response bot failure.
- Upgrades to and installs ElasticSearch 7.7.
[4.1.0]
- Install / Upgrade now supports the option to configure S3 Buckets and Elastic Search cluster using encryption at rest
- Install / Upgrade now supports the option to require Cognito based user authorization to access the built-in full screen web UI (Public/Private parameter in template) - Public is the default
- Added two settings parameters to enforce user identity verification check, so that bot can be secured for use by authenticated users only
- ENFORCE_VERIFIED_IDENTITY. Default is false. Set to true to make QnABot require verified identity from client
- NO_VERIFIED_IDENTITY_QUESTION. The default is "no_verified_identity". If user identity cannot be verified, replace question string with this. If not verified, the system will respond to user's question with the result of searching for NO_VERIFIED_IDENTITY_QUESTION. This allows a customizable message which informs the user that they must log in. A default question with qid "no_verified_identity" is included in QNAUtility example package.
- Enhanced Kendra fallback integration to use a specific answer if there is a best answer available and bold face highlighted words from Kendra response
- Added Comprehend sentiment analysis to all utterances and text captured by the QNAFreeText elicit response bot
- Enhanced Kibana dashboard to identify Lex client channels - Connect, Web, SMS
- Improved internal use of Booleans from settings configuration
- Enhanced Connect integration
- Added session attribute named "qnabot_qid" that holds the matching question id found in elastic search
- Added session attribute "qnabot_gotanswer" that holds boolean true/fale if an answer was fround
- Encapsulating all Kendra and Elicit Response Bot session attributes into a single "qnabotcontext" attribute making it easier to store and reset in Connect contact flow
- Added new QNAYesNoExit elicit response bot which allows a user to exit the YesNoExit question using "exit", "bye", "quit", "admin", "rep","representative","stop", "help", "bye", "goodbye" which sets the Yes_No_Exit slot value / session attribute to "Exit".
- Update to 0.17.0 of embedded lex-web-ui
- Resolved additional dependabot identified security issues with dependent packages
- Fixed lambda/fulfillment unit tests
- Fixed defect where response bot was not triggered on next question when using lambda function for conditional chaining
[4.0.0]
- Update to Elasticsearch 7.4
- Update to 0.16.0 of embedded lex-web-ui
- Fix to redacting feature with respect to kibana metrics
- Fix to CustomNoHits to use configured setting
- npm audit package updates
- Improved question matching accuracy and tuning
- Tolerance for typos and minor spelling errors with fuzzy matching setting
- Easier troubleshooting when using voice or multi-language support with new debug setting
- SSML support when using Amazon Connect
- Fixes and improvements to Amazon Kendra integration, support FAQ answers
- Full upgrade support without data loss when upgrading from previous versions
- Disable response card titles in embedded lex-web-ui
- Added region launch links to README
- Fix to language responses in Language extension. Added mapping of 'Chinese' to use 'Simplified Chinese'
3.0.3
New features in 3.0.3 New content tuning Readme, Enhanced CFN Lex Resource to work with manually created Bot versions
New features in 3.0.2 New Elicit Response Bots, Lambda Functions backing conditional chaining, Lex Bot versioning use
New features in 3.0.0 ElicitResponse, Conditional Chaining, new Launch regions
Note that versions prior to 3.0.0 will not directly upgrade to this version. If running version 2.6.n,
you will need to:
- Export your old configuration to a json file and download to your system using the Designer UI
- Install this stack as a new QnABot
- Import your prior configuration to the new QnABot using the Designer UI
- If using the standalone LexWebUi, you will need to redeploy a new LexWebUi and configure
to use the new QnABot
Once you are completely satisfied with the proper operation of your new Bot and new LexWebUi, you can remove the old stacks.