Skip to content

Commit a7781c3

Browse files
authored
Merge pull request #459 from Scale3-Labs/ali/bedrock-session
add support for `Session.client` bedrock to handle langchain
2 parents 47f0d94 + 488d140 commit a7781c3

File tree

4 files changed

+20
-2
lines changed

4 files changed

+20
-2
lines changed

src/examples/awsbedrock_examples/__init__.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from examples.awsbedrock_examples.converse import (
22
use_invoke_model_anthropic,
3+
init_bedrock_langchain,
34
use_invoke_model_titan,
45
use_invoke_model_llama,
56
)
@@ -15,4 +16,5 @@ def run(self):
1516
# use_invoke_model_anthropic(stream=True)
1617
# use_invoke_model_cohere()
1718
# use_invoke_model_llama(stream=False)
18-
use_invoke_model_titan(stream=False)
19+
# use_invoke_model_titan(stream=False)
20+
init_bedrock_langchain()

src/examples/awsbedrock_examples/converse.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from langtrace_python_sdk import langtrace
44
from dotenv import load_dotenv
55
import botocore
6+
from langchain_aws import ChatBedrock
67

78
load_dotenv()
89
langtrace.init(write_spans_to_console=False)
@@ -186,3 +187,13 @@ def use_invoke_model_cohere():
186187
response = brt.invoke_model(body=body, modelId=model_id)
187188
response_body = json.loads(response.get("body").read())
188189
print(response_body)
190+
191+
192+
def init_bedrock_langchain(temperature=0.1):
193+
chat = ChatBedrock(
194+
model_id="anthropic.claude-v2",
195+
streaming=True,
196+
model_kwargs={"temperature": temperature},
197+
region_name="us-east-1",
198+
)
199+
return chat.invoke("What is the capital of France?")

src/langtrace_python_sdk/instrumentation/aws_bedrock/instrumentation.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,11 @@ def _instrument(self, **kwargs):
4242
name="client",
4343
wrapper=patch_aws_bedrock(tracer, version),
4444
)
45+
_W(
46+
module="boto3.session",
47+
name="Session.client",
48+
wrapper=patch_aws_bedrock(tracer, version),
49+
)
4550

4651
def _uninstrument(self, **kwargs):
4752
pass
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = "3.3.25"
1+
__version__ = "3.3.26"

0 commit comments

Comments
 (0)