diff --git a/src/api/providers/__tests__/bedrock.spec.ts b/src/api/providers/__tests__/bedrock.spec.ts index 97f3b62b3e..d93b2a6f12 100644 --- a/src/api/providers/__tests__/bedrock.spec.ts +++ b/src/api/providers/__tests__/bedrock.spec.ts @@ -1416,10 +1416,10 @@ describe("AwsBedrockHandler", () => { const modelConfig = customArnHandler.getModel() expect(modelConfig.info.supportsPromptCache).toBe(true) - expect((modelConfig.info as any).cachableFields).toBeDefined() - expect((modelConfig.info as any).cachableFields).toContain("system") - expect((modelConfig.info as any).cachableFields).toContain("messages") - expect((modelConfig.info as any).cachableFields).toContain("tools") + expect(modelConfig.info.cachableFields).toBeDefined() + expect(modelConfig.info.cachableFields).toContain("system") + expect(modelConfig.info.cachableFields).toContain("messages") + expect(modelConfig.info.cachableFields).toContain("tools") }) }) }) diff --git a/src/api/providers/bedrock.ts b/src/api/providers/bedrock.ts index 5101be8f07..083632b14f 100644 --- a/src/api/providers/bedrock.ts +++ b/src/api/providers/bedrock.ts @@ -1176,10 +1176,7 @@ export class AwsBedrockHandler extends BaseProvider implements SingleCompletionH private supportsAwsPromptCache(modelConfig: { id: BedrockModelId | string; info: ModelInfo }): boolean | undefined { // Check if the model supports prompt cache - // The cachableFields property is not part of the ModelInfo type in schemas - // but it's used in the bedrockModels object in shared/api.ts - const hasCachableFields = - (modelConfig?.info as any)?.cachableFields && (modelConfig?.info as any)?.cachableFields?.length > 0 + const hasCachableFields = modelConfig?.info?.cachableFields && modelConfig.info.cachableFields.length > 0 if (modelConfig?.info?.supportsPromptCache && hasCachableFields) { return true @@ -1194,7 +1191,7 @@ export class AwsBedrockHandler extends BaseProvider implements SingleCompletionH // simply ignores cache points without erroring. if (this.options.awsCustomArn && this.options.awsUsePromptCache !== false) { if (!hasCachableFields) { - ;(modelConfig.info as any).cachableFields = ["system", "messages", "tools"] + modelConfig.info.cachableFields = ["system", "messages", "tools"] } modelConfig.info.supportsPromptCache = true return true