diff --git a/llm/bedrock_client.py b/llm/bedrock_client.py new file mode 100644 index 0000000..74b8adf --- /dev/null +++ b/llm/bedrock_client.py @@ -0,0 +1,32 @@ +import boto3 +import json + +from config import AWS_REGION, BEDROCK_MODEL + + +class BedrockClient: + def __init__(self): + self.client = boto3.client( + service_name="bedrock-runtime", + region_name=AWS_REGION + ) + + async def chat(self, messages, tools=None): + """ + Converse API für Amazon Nova / Bedrock Models + """ + + request = { + "modelId": BEDROCK_MODEL, + "messages": messages, + } + + # Tools nur hinzufügen wenn vorhanden + if tools: + request["toolConfig"] = { + "tools": tools + } + + response = self.client.converse(**request) + + return response \ No newline at end of file