fix(amazon-bedrock): skip auto memory embeddings without credentials (#71245)

Co-authored-by: bitloi <raphaelaloi.eth@gmail.com>
This commit is contained in:
Peter Steinberger
2026-04-25 02:28:06 +01:00
parent 42ec7a868f
commit f70e439699
6 changed files with 289 additions and 13 deletions

View File

@@ -5,6 +5,7 @@ import {
import {
createBedrockEmbeddingProvider,
DEFAULT_BEDROCK_EMBEDDING_MODEL,
hasAwsCredentials,
} from "./embedding-provider.js";
export const bedrockMemoryEmbeddingProviderAdapter: MemoryEmbeddingProviderAdapter = {
@@ -16,6 +17,15 @@ export const bedrockMemoryEmbeddingProviderAdapter: MemoryEmbeddingProviderAdapt
allowExplicitWhenConfiguredAuto: true,
shouldContinueAutoSelection: isMissingEmbeddingApiKeyError,
create: async (options) => {
if (!(await hasAwsCredentials())) {
throw new Error(
'No API key found for provider "bedrock". ' +
"AWS credentials are not available. " +
"Set AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY, AWS_PROFILE, or AWS_BEARER_TOKEN_BEDROCK, " +
"configure an EC2/ECS/EKS role, " +
"or set agents.defaults.memorySearch.provider to another provider.",
);
}
const { provider, client } = await createBedrockEmbeddingProvider({
...options,
provider: "bedrock",