{"version":3,"file":"bedrock-adapter.cjs","names":["LangChainAdapter"],"sources":["../../../src/service-adapters/bedrock/bedrock-adapter.ts"],"sourcesContent":["/**\n * Copilot Runtime adapter for AWS Bedrock.\n *\n * ## Example\n *\n * ```ts\n * import { CopilotRuntime, BedrockAdapter } from \"@copilotkit/runtime\";\n *\n * const copilotKit = new CopilotRuntime();\n *\n * return new BedrockAdapter({\n *   model: \"amazon.nova-lite-v1:0\",\n *   region: \"us-east-1\",\n *   credentials: {\n *     accessKeyId: process.env.AWS_ACCESS_KEY_ID,\n *     secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY\n *   }\n * });\n * ```\n */\n\nimport { LangChainAdapter } from \"../langchain/langchain-adapter\";\n\nexport interface BedrockAdapterParams {\n  /**\n   * AWS Bedrock model ID to use.\n   * @default \"amazon.nova-lite-v1:0\"\n   */\n  model?: string;\n\n  /**\n   * AWS region where Bedrock is available.\n   * @default \"us-east-1\"\n   */\n  region?: string;\n\n  /**\n   * AWS credentials for Bedrock access.\n   */\n  credentials?: {\n    accessKeyId?: string;\n    secretAccessKey?: string;\n  };\n}\n\nconst DEFAULT_MODEL = \"amazon.nova-lite-v1:0\";\n\nexport class BedrockAdapter extends LangChainAdapter {\n  public provider = \"bedrock\";\n  public model: string = DEFAULT_MODEL;\n  constructor(options?: BedrockAdapterParams) {\n    super({\n      chainFn: async ({ messages, tools, threadId }) => {\n        // Lazy require for optional peer dependency\n        // eslint-disable-next-line @typescript-eslint/no-var-requires\n        const { ChatBedrockConverse } = require(\"@langchain/aws\");\n\n        this.model = options?.model ?? \"amazon.nova-lite-v1:0\";\n        const model = new ChatBedrockConverse({\n          model: this.model,\n          region: options?.region ?? \"us-east-1\",\n          credentials: options?.credentials\n            ? {\n                accessKeyId: options.credentials.accessKeyId,\n                secretAccessKey: options.credentials.secretAccessKey,\n              }\n            : undefined,\n        }).bindTools(tools);\n        return model.stream(messages);\n      },\n    });\n  }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA6CA,MAAM,gBAAgB;AAEtB,IAAa,iBAAb,cAAoCA,2CAAiB;CAGnD,YAAY,SAAgC;AAC1C,QAAM,EACJ,SAAS,OAAO,EAAE,UAAU,OAAO,eAAe;GAGhD,MAAM,EAAE,wBAAwB,QAAQ,iBAAiB;AAEzD,QAAK,QAAQ,SAAS,SAAS;AAW/B,UAVc,IAAI,oBAAoB;IACpC,OAAO,KAAK;IACZ,QAAQ,SAAS,UAAU;IAC3B,aAAa,SAAS,cAClB;KACE,aAAa,QAAQ,YAAY;KACjC,iBAAiB,QAAQ,YAAY;KACtC,GACD;IACL,CAAC,CAAC,UAAU,MAAM,CACN,OAAO,SAAS;KAEhC,CAAC;kBAtBc;eACK"}