devalbot / bedrock_client.py
gtani's picture
Refactor chat functionality and update dependencies
f904c62
raw
history blame
1.19 kB
from anthropic import AnthropicBedrock
from langchain_aws.llms.bedrock import BedrockLLM
import os
def get_anthropic_client():
return AnthropicBedrock(
aws_access_key=os.environ["AWS_ACCESS_KEY_ID"],
aws_secret_key=os.environ["AWS_SECRET_ACCESS_KEY"],
aws_region=os.environ.get("AWS_DEFAULT_REGION", "eu-central-1")
)
def claude_stream_response(messages, client):
stream = client.messages.create(
model="anthropic.claude-v2:1",
max_tokens=1024,
temperature=0.7,
messages=messages,
stream=True
)
for event in stream:
# Only yield parts that have actual text deltas
if event.type == "content_block_delta":
text = getattr(event.delta, "text", None)
if text:
yield text
claude_llm = BedrockLLM(
aws_access_key_id = os.environ["AWS_ACCESS_KEY_ID"],
aws_secret_access_key = os.environ["AWS_SECRET_ACCESS_KEY"],
region_name = "eu-central-1",
provider = "anthropic",
model_id = "anthropic.claude-v2:1",
streaming = True,
model_kwargs = {"temperature": 0.7},
)