Skip to content

Commit be4ba42

Browse files
authored
Update to version v7.2.0
Merge pull request #839 from aws-solutions/feature/v7.2.0
2 parents 3a101a9 + 39b9d65 commit be4ba42

File tree

97 files changed

+5154
-2782
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

97 files changed

+5154
-2782
lines changed

CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,24 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [7.2.0] - 2025-11-20
9+
10+
__*Note: we recommend that you first deploy these changes in a non-production environment. This is true for all releases, but especially important for minor and major releases.*__
11+
12+
### Added
13+
14+
- Cross-region inference profile support for LLMs and Embeddings. `LLMBedrockModelId` and `BedrockKnowledgeBaseModel` now support all `TEXT` input/output modality-based [foundation](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html) and [cross-region inference models](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html)
15+
- `EmbeddingsBedrockModelId` now supports [Global Cohere Embed V4 and Amazon Nova Multimodal Embeddings Models](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html)
16+
17+
### Removed
18+
19+
- [AppRegistry](https://docs.aws.amazon.com/servicecatalog/latest/arguide/intro-app-registry.html) removal from solution
20+
21+
### Security
22+
23+
- Updated glob to `10.5.0`
24+
- Updated js-yaml to `4.1.1`
25+
826
## [7.1.3] - 2025-09-18
927

1028
### Security

NOTICE.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ This software includes third party software subject to the following copyrights:
2626
@aws-crypto/supports-web-crypto under the Apache-2.0 license
2727
@aws-crypto/util under the Apache-2.0 license
2828
@aws-sdk/client-api-gateway under the Apache-2.0 license
29+
@aws-sdk/client-bedrock under the Apache-2.0 license
2930
@aws-sdk/client-bedrock-agent-runtime under the Apache-2.0 license
3031
@aws-sdk/client-bedrock-runtime under the Apache-2.0 license
3132
@aws-sdk/client-cloudformation under the Apache-2.0 license
@@ -63,6 +64,7 @@ This software includes third party software subject to the following copyrights:
6364
@aws-sdk/credential-providers under the Apache-2.0 license
6465
@aws-sdk/endpoint-cache under the Apache-2.0 license
6566
@aws-sdk/eventstream-handler-node under the Apache-2.0 license
67+
@aws/lambda-invoke-store under the Apache-2.0 license
6668
@aws-sdk/lib-dynamodb under the Apache-2.0 license
6769
@aws-sdk/middleware-bucket-endpoint under the Apache-2.0 license
6870
@aws-sdk/middleware-endpoint-discovery under the Apache-2.0 license
@@ -79,6 +81,7 @@ This software includes third party software subject to the following copyrights:
7981
@aws-sdk/middleware-signing under the Apache-2.0 license
8082
@aws-sdk/middleware-ssec under the Apache-2.0 license
8183
@aws-sdk/middleware-user-agent under the Apache-2.0 license
84+
@aws-sdk/nested-clients under the Apache-2.0 license
8285
@aws-sdk/region-config-resolver under the Apache-2.0 license
8386
@aws-sdk/s3-request-presigner under the Apache-2.0 license
8487
@aws-sdk/signature-v4-multi-region under the Apache-2.0 license
@@ -302,6 +305,7 @@ This software includes third party software subject to the following copyrights:
302305
@smithy/util-uri-escape under the Apache-2.0 license
303306
@smithy/util-utf8 under the Apache-2.0 license
304307
@smithy/util-waiter under the Apache-2.0 license
308+
@smithy/uuid under the Apache-2.0 license
305309
@soda/friendly-errors-webpack-plugin under the MIT license
306310
@soda/get-current-script under the MIT license
307311
@tootallnate/once under the MIT license

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -361,10 +361,13 @@ As QnABot evolves over the years, it makes use of various services and functiona
361361
_Note: **Deployable solution versions** refers to the ability to deploy the version of QnABot in their AWS accounts. **Actively supported versions** for QnABot is only available for the latest version of QnABot._
362362
363363
### Deployable Versions
364+
- [v7.2.0](https://github.com/aws-solutions/qnabot-on-aws/releases/tag/v7.2.0) - [Public](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.2.0/qnabot-on-aws-main.template)/[VPC](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.2.0/qnabot-on-aws-vpc.template)
364365
- [v7.1.3](https://github.com/aws-solutions/qnabot-on-aws/releases/tag/v7.1.3) - [Public](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.1.3/qnabot-on-aws-main.template)/[VPC](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.1.3/qnabot-on-aws-vpc.template)
365366
- [v7.1.2](https://github.com/aws-solutions/qnabot-on-aws/releases/tag/v7.1.2) - [Public](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.1.2/qnabot-on-aws-main.template)/[VPC](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.1.2/qnabot-on-aws-vpc.template)
366367
- [v7.1.1](https://github.com/aws-solutions/qnabot-on-aws/releases/tag/v7.1.1) - [Public](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.1.1/qnabot-on-aws-main.template)/[VPC](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.1.1/qnabot-on-aws-vpc.template)
367368
- [v7.1.0](https://github.com/aws-solutions/qnabot-on-aws/releases/tag/v7.1.0) - [Public](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.1.0/qnabot-on-aws-main.template)/[VPC](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.1.0/qnabot-on-aws-vpc.template)
369+
- [v7.0.8-modelBackport](https://github.com/aws-solutions/qnabot-on-aws/releases/tag/v7.0.8-modelBackport) - [Public](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.0.8-modelBackport/qnabot-on-aws-main.template)/[VPC](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.0.8-modelBackport/qnabot-on-aws-vpc.template)
370+
- _Note: Recommended to use the latest deployable version of QnABot_
368371
- [v7.0.8](https://github.com/aws-solutions/qnabot-on-aws/releases/tag/v7.0.8) - [Public](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.0.8/qnabot-on-aws-main.template)/[VPC](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.0.8/qnabot-on-aws-vpc.template)
369372
- [v7.0.7](https://github.com/aws-solutions/qnabot-on-aws/releases/tag/v7.0.7) - [Public](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.0.7/qnabot-on-aws-main.template)/[VPC](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.0.7/qnabot-on-aws-vpc.template)
370373
- [v7.0.6](https://github.com/aws-solutions/qnabot-on-aws/releases/tag/v7.0.6) - [Public](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.0.6/qnabot-on-aws-main.template)/[VPC](https://solutions-reference.s3.amazonaws.com/qnabot-on-aws/v7.0.6/qnabot-on-aws-vpc.template)

source/cli/aws_solutions/qnabot/cli/qnabot_cli.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
@click.pass_context
1616
def cli(ctx) -> None:
1717
os.environ["SOLUTION_ID"] = "SO0189"
18-
os.environ["SOLUTION_VERSION"] = "v7.1.3"
18+
os.environ["SOLUTION_VERSION"] = "v7.2.0"
1919

2020

2121
@cli.command("import")

source/docs/LLM_Retrieval_and_generative_question_answering/README.md

Lines changed: 11 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -59,41 +59,23 @@ With QnABot you can use three different data sources to generate responses from:
5959

6060

6161
You can also choose which LLM to use with QnABot:
62-
1. BEDROCK: Select from several LLM models provided by Amazon Bedrock using the LLMBedrockModelId Cloudformation parameter. These models provide the best performance and operate on a pay-per-request model. For more information, please refer to [Bedrock Supported AWS Regions](https://docs.aws.amazon.com/bedrock/latest/userguide/bedrock-regions.html).
62+
1. BEDROCK: Provide any valid Bedrock foundation model ID or inference profile ID using the LLMBedrockModelId. These models provide the best performance and operate on a pay-per-request model. For more information, please refer to [Bedrock Supported AWS Regions](https://docs.aws.amazon.com/bedrock/latest/userguide/bedrock-regions.html).
6363
2. LAMBDA: LLM model from a user provided Lambda function. This option provides a custom option for advanced users who wish to deploy their own model.
6464

6565
### 1. Amazon Bedrock (PREFERRED)
66-
Utilizes one of the Amazon Bedrock foundation models to generate text. Currently, the following models are supported by QnA Bot:
67-
- [Amazon Nova Micro](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/model-catalog/serverless/amazon.nova-micro-v1:0)
68-
- [Amazon Nova Lite](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/model-catalog/serverless/amazon.nova-lite-v1:0)
69-
- [Amazon Nova Pro](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/model-catalog/serverless/amazon.nova-pro-v1:0)
70-
- [Amazon Titan Text G1 Lite](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=amazon.titan-text-lite-v1)
71-
- [Amazon Titan Text G1 Express](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=amazon.titan-text-express-v1)
72-
- [Amazon Titan Text G1 - Premier](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=amazon.titan-text-premier-v1:0)
73-
- [Anthropic Claude Instant 1.2](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-instant-v1)
74-
- [Anthropic Claude 2.1](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-v2:1)
75-
- [Anthropic Claude 3 Sonnet](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-3-sonnet-20240229-v1:0)
76-
- [Anthropic Claude 3.5 Sonnet](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-3-5-sonnet-20240620-v1:0)
77-
- [Anthropic Claude 3.5 Sonnet V2](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-3-5-sonnet-20241022-v2:0)
78-
- [Anthropic Claude 3 Haiku](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-3-haiku-20240307-v1:0)
79-
- [Anthropic Claude 3.5 Haiku V1](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/model-catalog/serverless/anthropic.claude-3-5-haiku-20241022-v1:0)
80-
- [AI21 Jambda Instruct](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=ai21.jamba-instruct-v1:0)
81-
- [Meta Llama 3 8B Instruct](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=meta.llama3-8b-instruct-v1:0)
82-
- [Meta Llama 3.1 405B Instruct](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=meta.llama3-1-405b-instruct-v1:0)
83-
- [Command R+](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=cohere.command-r-plus-v1:0)
84-
- [Mistral Large 2 (24.07)](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=mistral.mistral-large-2407-v1:0)
85-
86-
#### Requesting Access to Amazon Bedrock Models
87-
88-
**NOTE: Access must be requested for the Bedrock model that you wish to use. This step needs to be performed only once per account in the region where your QnABot is deployed. To request access, go to the [Model Access](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access.html) page in the Bedrock console. Select the models you need access to and request access.**
89-
90-
![Model Access](./images/Request_model_access.jpeg)
66+
Utilizes one of the Amazon Bedrock foundation models or inference profiles to generate text. QnABot supports any valid Bedrock foundation model ID or inference profile ID. For the complete list of supported models and their availability by region, see:
67+
68+
- [Bedrock Supported Foundation Models](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html)
69+
- [Bedrock Inference Profiles](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html)
70+
71+
> **_NOTE:_**
72+
Cross-region inference profiles are not supported when deploying QnABot via VPC template
9173

9274
#### Configuring Amazon Bedrock
9375

9476
From the Cloudformation console, set the following parameters:
9577
- set `LLMApi` to BEDROCK
96-
- set `LLMBedrockModelId` to one of the options.
78+
- set `LLMBedrockModelId` to a valid model ID or inference profile ID.
9779

9880
![CFN Params](./images/CF_Params_Bedrock.jpeg)
9981

@@ -158,7 +140,7 @@ When QnABot stack is installed, open Content Designer **Settings** page:
158140
- **LLM_GENERATE_QUERY_PROMPT_TEMPLATE:** the prompt template used to construct a prompt for the LLM to disambiguate a followup question. The template may use the placeholders:
159141
- `{history}` - placeholder for the last `LLM_CHAT_HISTORY_MAX_MESSAGES` messages in the conversational history, to provide conversational context.
160142
- `{input}` - placeholder for the current user utterance / question
161-
- **LLM_GENERATE_QUERY_MODEL_PARAMS:** parameters sent to the LLM model when disambiguating follow-up questions. Default: `{"temperature":0}`. Check model documentation for additional values that your model provider accepts.
143+
- **LLM_GENERATE_QUERY_MODEL_PARAMS:** parameters sent to the LLM model when disambiguating follow-up questions. Default: `{"temperature":0, "maxTokens":300, "topP":1}`. Check model documentation for additional values that your model provider accepts.
162144
- **LLM_QA_ENABLE:** set to true or false to enable or disable generative answers from passages retrieved via embeddings or Kendra fallback (when no FAQ match its found). NOTE LLM based generative answers are not applied when an FAQ / QID matches the question.
163145
- **LLM_QA_USE_KENDRA_RETRIEVAL_API:** set to true or false to enable or disable the use of Kendra's retrieval API. When enabled, QnABot uses Kendra's Retrieve api to retrieve semantically relevant passages of up to 200 token words from the documents in your index (not FAQs). When disabled, QnABot use the default Kendra Query API to search documents and FAQs. Takes effect only when LLM_QA_ENABLE is true. The default is true (recommended) when LLM QA is enabled. Note: this feature will only search the first configured index. See [Retrieve API](https://docs.aws.amazon.com/kendra/latest/APIReference/API_Retrieve.html) for more details.
164146
- **LLM_QA_PROMPT_TEMPLATE:** the prompt template used to construct a prompt for the LLM to generate an answer from the context of a retrieved passages (from Kendra or Embeddings). The template may use the placeholders:
@@ -167,7 +149,7 @@ When QnABot stack is installed, open Content Designer **Settings** page:
167149
- `{input}` - placeholder for the current user utterance / question
168150
- `{query}` - placeholder for the generated (disambiguated) query created by the generate query feature. NOTE the default prompt does not use `query` in the qa prompt, as it provides the conversation history and current user input instead, but you can change the prompt to use `query` instead of, or in addition to `input` and `history` to tune the LLM answers.
169151
- **LLM_QA_NO_HITS_REGEX:** when the pattern specified matches the response from the LLM, e.g. `Sorry, I don't know`, then the response is treated as no_hits, and the default `EMPTYMESSAGE` or Custom Don't Know ('no_hits') item is returned instead. Disabled by default, since enabling it prevents easy debugging of LLM don't know responses.
170-
- **LLM_QA_MODEL_PARAMS:** parameters sent to the LLM model when generating answers to questions. Default: `{"temperature":0}`. Check model documentation for additional values that your model provider accepts.
152+
- **LLM_QA_MODEL_PARAMS:** parameters sent to the LLM model when generating answers to questions. Default: `{"temperature":0, "maxTokens":300, "topP":1}`. Check model documentation for additional values that your model provider accepts.
171153
- **LLM_QA_PREFIX_MESSAGE:** Message use to prefix LLM generated answer. May be be empty.
172154
- **LLM_QA_SHOW_CONTEXT_TEXT:** set to true or false to enable or disable inclusion of the passages (from Kendra or Embeddings) used as context for LLM generated answers.
173155
- **LLM_QA_SHOW_SOURCE_LINKS:** set to true or false to enable or disable Kendra Source Links or passage refMarkdown links (doc references) in markdown answers.
101 KB
Loading
Binary file not shown.

source/docs/bedrock_knowledgebase_rag/README.md

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -14,21 +14,14 @@ With this integration, QnABot on AWS can answer a question and its follow-up fro
1414

1515

1616
## Amazon Bedrock Knowledge Base Models:
17-
- [Amazon Nova Micro](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/model-catalog/serverless/amazon.nova-micro-v1:0)
18-
- [Amazon Nova Lite](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/model-catalog/serverless/amazon.nova-lite-v1:0)
19-
- [Amazon Nova Pro](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/model-catalog/serverless/amazon.nova-pro-v1:0)
20-
- [Amazon Titan Text G1 - Premier](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=amazon.titan-text-premier-v1:0)
21-
- [Anthropic Claude Instant 1.2](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-instant-v1)
22-
- [Anthropic Claude 2.1](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-v2:1)
23-
- [Anthropic Claude 3 Haiku](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-3-haiku-20240307-v1:0)
24-
- [Anthropic Claude 3.5 Haiku V1](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/model-catalog/serverless/anthropic.claude-3-5-haiku-20241022-v1:0)
25-
- [Anthropic Claude 3 Sonnet](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-3-sonnet-20240229-v1:0)
26-
- [Anthropic Claude 3.5 Sonnet V1](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-3-5-sonnet-20240620-v1:0)
27-
- [Anthropic Claude 3.5 Sonnet V2](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=anthropic.claude-3-5-sonnet-20241022-v2:0)
28-
- [Meta Llama 3.1 405B Instruct](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=meta.llama3-1-405b-instruct-v1:0)
29-
- [Command R+](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=cohere.command-r-plus-v1:0)
30-
- [Mistral Large 2 (24.07)](https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/providers?model=mistral.mistral-large-2407-v1:0)
3117

18+
QnABot supports any valid Bedrock foundation model ID or inference profile ID for Knowledge Base integration. For the complete list of supported models and their availability by region, see:
19+
20+
- [Bedrock Supported Foundation Models](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html)
21+
- [Bedrock Inference Profiles](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html)
22+
23+
> **_NOTE:_**
24+
Cross-region inference profiles are not supported when deploying QnABot via VPC template
3225

3326
## Amazon Bedrock Knowledge Base Quick Setup:
3427
> **_NOTE:_**
@@ -59,10 +52,7 @@ Before getting started, please verify [supported regions and models for Knowledg
5952

6053
### BedrockKnowledgeBaseModel
6154

62-
**Optional** - Required if BedrockKnowledgeBaseId is not empty. Sets the preferred LLM model to use with the Bedrock knowledge base. Please ensure you have [requested model access](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access.html) in Bedrock console, before deploying.
63-
64-
![Enable Model Access](./images/model_access_for_kb.png)
65-
55+
**Optional** - Required if BedrockKnowledgeBaseId is not empty. Sets the preferred LLM model to use with the Bedrock knowledge base. Access to all Amazon Bedrock foundation models is enabled by default, however selecting Anthropic models requires customers to submit use case details [once per account](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access.html).
6656

6757

6858
## Configure settings for RAG with Amazon Bedrock Knowledge Base in Content Designer:
Binary file not shown.

0 commit comments

Comments
 (0)