|
@@ -1,11 +1,19 @@
|
|
|
+from collections.abc import Mapping
|
|
|
+
|
|
|
import boto3
|
|
|
from botocore.config import Config
|
|
|
|
|
|
+from core.model_runtime.errors.invoke import InvokeBadRequestError
|
|
|
+
|
|
|
+
|
|
|
+def get_bedrock_client(service_name: str, credentials: Mapping[str, str]):
|
|
|
+ region_name = credentials.get("aws_region")
|
|
|
+ if not region_name:
|
|
|
+ raise InvokeBadRequestError("aws_region is required")
|
|
|
+ client_config = Config(region_name=region_name)
|
|
|
+ aws_access_key_id = credentials.get("aws_access_key_id")
|
|
|
+ aws_secret_access_key = credentials.get("aws_secret_access_key")
|
|
|
|
|
|
-def get_bedrock_client(service_name, credentials=None):
|
|
|
- client_config = Config(region_name=credentials["aws_region"])
|
|
|
- aws_access_key_id = credentials["aws_access_key_id"]
|
|
|
- aws_secret_access_key = credentials["aws_secret_access_key"]
|
|
|
if aws_access_key_id and aws_secret_access_key:
|
|
|
|
|
|
client = boto3.client(
|