File size: 755 Bytes
dc84669
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from anthropic import AnthropicBedrock
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", "us-east-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