Closed Peter-Lankton closed 1 month ago
In case anyone else experiences this issue...
aws s3 . --recursively s3://<copied-bucket-from-step-5>
Now the app has the Knowledge DB with your docs.
By default the knowledge db is provisioned with 10 OCUs for indexing and 10 OCUs for searching which is the max and is about 1000 USD a month...
However, you can go to AWS open search > server less > dashboard > configure units > set both to 2 OCUs which should lower bill to 350 USD a month!
If you don't then by default you might end up paying 700 USD.
But, per this article https://aws.amazon.com/about-aws/whats-new/2024/06/amazon-opensearch-serverless-entry-cost-half-collection-types/
It should be able to get the price lower... I'll play around with deleting docs (~5 GB) to see what to get the cheaper half collection types implemented for those other cost conscious solo founders out there...
When the option to use the Knowledge Base (KB) is enabled, the KB instance is created at a different timing than the application deployment. Specifically, it is created simultaneously when you create a bot, so please be aware of this. It should not be related to whether Mistral is enabled or disabled. If you still experience any issues after the "sync is complete," we would appreciate it if you could report the details again.
When the option to use the Knowledge Base (KB) is enabled, the KB instance is created at a different timing than the application deployment. Specifically, it is created simultaneously when you create a bot, so please be aware of this. It should not be related to whether Mistral is enabled or disabled. If you still experience any issues after the "sync is complete," we would appreciate it if you could report the details again.
ah ok that makes sense. thank you for clarifying I'll close issue
Describe the bug
KnowledgeBase Bedrock doesn't seem to be working with CDK Deploy and updating cdk.json on branch 'v1'.
To Reproduce
I followed the directions for
CDK deploy
and updated the cdk.json file for"useBedrockKnowledgeBaseForRag": true
but when I log into my AWS Account I don't see that a KnowledgeDB has been provisioned under BedrockKnowledgeBase, after runningcdk deploy
.I also have
"mistralEnabled:true"
, so not sure if that could be the reason as well...Additionally, whenever I add my S3 URL for syncing to presumably BedrockKnowledge it 'syncs' but doesn't create a KnowledgeDB either-- It also doesn't create one with the 'upload files' either.
Which brings me to the issue of when chatting with a bot created with an S3 or uploaded files I get a persistent 'An error occurred while responding' message in my chat.
However, if I create a bot without any uploaded files or s3 url then the chat still works, just not a RAG based one.
Update: Tried it with "mistralEnabled:False" and the KnowledgeBase DB was provisioned but the RAG functionality still doesn't seem to work.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Logs from sync failure
An error occurred while synchronizing Knowledge. Please check the following message: {"SdkHttpMetadata":{"AllHttpHeaders":{"x-amzn-RequestId":["abe8850e-2358-4bcf-bf5a-d622b828d44c"],"Content-Length":["5136"],"Date":["Tue, 17 Sep 2024 19:59:03 GMT"],"Content-Type":["application/x-amz-json-1.1"]},"HttpHeaders":{"Content-Length":"5136","Content-Type":"application/x-amz-json-1.1","Date":"Tue, 17 Sep 2024 19:59:03 GMT","x-amzn-RequestId":"abe8850e-2358-4bcf-bf5a-d622b828d44c"},"HttpStatusCode":200},"SdkResponseMetadata":{"RequestId":"abe8850e-2358-4bcf-bf5a-d622b828d44c"},"Build":{"Arn":"arn:aws:codebuild:us-east-1::build/BedrockKnowledgeBaseCodebui-fKfwiQY9GZbi:0af204b1-421b-4333-bf51-ba5cb38d92d4","Artifacts":{"Location":""},"BuildComplete":true,"BuildNumber":1,"BuildStatus":"FAILED","Cache":{"Type":"NO_CACHE"},"CurrentPhase":"COMPLETED","EncryptionKey":"arn:aws:kms:us-east-1::alias/aws/s3","EndTime":1726603140271,"Environment":{"ComputeType":"BUILD_GENERAL1_SMALL","EnvironmentVariables":[{"Name":"KNOWLEDGE","Type":"PLAINTEXT","Value":"{\"sitemap_urls\":{\"L\":[]},\"s3_urls\":{\"L\":[{\"S\":\"s/\"}]},\"filenames\":{\"L\":[]},\"source_urls\":{\"L\":[]}}"},{"Name":"PK","Type":"PLAINTEXT","Value":""},{"Name":"SK","Type":"PLAINTEXT","Value":""},{"Name":"BEDROCK_KNOWLEDGE_BASE","Type":"PLAINTEXT","Value":"{\"chunking_strategy\":{\"S\":\"default\"},\"max_tokens\":{\"NULL\":true},\"search_params\":{\"M\":{\"max_results\":{\"N\":\"20\"},\"search_type\":{\"S\":\"hybrid\"}}},\"overlap_percentage\":{\"NULL\":true},\"data_source_ids\":{\"NULL\":true},\"open_search\":{\"M\":{\"analyzer\":{\"NULL\":true}}},\"knowledge_base_id\":{\"NULL\":true},\"embeddings_model\":{\"S\":\"titan_v1\"}}"},{"Name":"BEDROCK_CLAUDE_CHAT_DOCUMENT_BUCKET_NAME","Type":"PLAINTEXT","Value":"bedrockchatstack-documentbucketae41e5a9-o748lw7yj94a"}],"Image":"aws/codebuild/standard:7.0","ImagePullCredentialsType":"CODEBUILD","PrivilegedMode":true,"Type":"LINUX_CONTAINER"},"Id":"BedrockKnowledgeBaseCodebui-fKfwiQY9GZbi:0af204b1-421b-4333-bf51-ba5cb38d92d4","Initiator":"states/EmbeddingStateMachine79E88DC2-SQ7YMpu83nBt","Logs":{"CloudWatchLogsArn":"arn:aws:logs:us-east-1::log-group:/aws/codebuild/BedrockKnowledgeBaseCodebui-fKfwiQY9GZbi:log-stream:0af204b1-421b-4333-bf51-ba5cb38d92d4","DeepLink":"","GroupName":"/aws/codebuild/BedrockKnowledgeBaseCodebui-fKfwiQY9GZbi","StreamName":"0af204b1-421b-4333-bf51-ba5cb38d92d4"},"Phases":[{"DurationInSeconds":0,"EndTime":1726602997529,"PhaseStatus":"SUCCEEDED","PhaseType":"SUBMITTED","StartTime":1726602997469},{"DurationInSeconds":0,"EndTime":1726602998224,"PhaseStatus":"SUCCEEDED","PhaseType":"QUEUED","StartTime":1726602997529},{"Contexts":[{"Message":"","StatusCode":""}],"DurationInSeconds":10,"EndTime":1726603009011,"PhaseStatus":"SUCCEEDED","PhaseType":"PROVISIONING","StartTime":1726602998224},{"Contexts":[{"Message":"","StatusCode":""}],"DurationInSeconds":16,"EndTime":1726603025936,"PhaseStatus":"SUCCEEDED","PhaseType":"DOWNLOAD_SOURCE","StartTime":1726603009011},{"Contexts":[{"Message":"","StatusCode":""}],"DurationInSeconds":18,"EndTime":1726603044746,"PhaseStatus":"SUCCEEDED","PhaseType":"INSTALL","StartTime":1726603025936},{"Contexts":[{"Message":"","StatusCode":""}],"DurationInSeconds":0,"EndTime":1726603044781,"PhaseStatus":"SUCCEEDED","PhaseType":"PRE_BUILD","StartTime":1726603044746},{"Contexts":[{"Message":"Error while executing command: cdk deploy --require-approval never BrChatKbStack$BOT_ID. Reason: exit status 1","StatusCode":"COMMAND_EXECUTION_ERROR"}],"DurationInSeconds":94,"EndTime":1726603139746,"PhaseStatus":"FAILED","PhaseType":"BUILD","StartTime":1726603044781},{"Contexts":[{"Message":"","StatusCode":""}],"DurationInSeconds":0,"EndTime":1726603139782,"PhaseStatus":"SUCCEEDED","PhaseType":"POST_BUILD","StartTime":1726603139746},{"Contexts":[{"Message":"","StatusCode":""}],"DurationInSeconds":0,"EndTime":1726603139981,"PhaseStatus":"SUCCEEDED","PhaseType":"UPLOAD_ARTIFACTS","StartTime":1726603139782},{"Contexts":[{"Message":"","StatusCode":""}],"DurationInSeconds":0,"EndTime":1726603140271,"PhaseStatus":"SUCCEEDED","PhaseType":"FINALIZING","StartTime":1726603139981},{"PhaseType":"COMPLETED","StartTime":1726603140271}],"ProjectName":"BedrockKnowledgeBaseCodebui-fKfwiQY9GZbi","QueuedTimeoutInMinutes":480,"SecondarySourceVersions":[],"SecondarySources":[],"ServiceRole":"arn:aws:iam::481665089962:role/BedrockChatStack-BedrockKnowledgeBaseCodebuildProje-kQr6lEy6kH7k","Source":{"Buildspec":"{\n \"version\": \"0.2\",\n \"phases\": {\n \"install\": {\n \"runtime-versions\": {\n \"nodejs\": \"18\"\n },\n \"commands\": [\n \"npm install -g aws-cdk\"\n ],\n \"on-failure\": \"ABORT\"\n },\n \"build\": {\n \"commands\": [\n \"cd cdk\",\n \"npm ci\",\n \"export BOT_ID=$(echo $SK | awk -F'#' '{print $3}')\",\n \"sed -i 's|bin/bedrock-chat.ts|bin/bedrock-knowledge-base.ts|' cdk.json\",\n \"cdk deploy --require-approval never BrChatKbStack$BOT_ID\"\n ]\n }\n }\n}","InsecureSsl":false,"Location":"bedrockchatstack-sourcebucketforcodebuildbc729025-oeeeoowsuivi/","Type":"S3"},"StartTime":1726602997469,"TimeoutInMinutes":45}}