diff --git a/src/openlayer/lib/integrations/bedrock_tracer.py b/src/openlayer/lib/integrations/bedrock_tracer.py index 255b0e31..e1dca78c 100644 --- a/src/openlayer/lib/integrations/bedrock_tracer.py +++ b/src/openlayer/lib/integrations/bedrock_tracer.py @@ -156,8 +156,11 @@ def handle_non_streaming_invoke( ) # Reset response body for return (since we read it) + response_bytes = json.dumps(response_data).encode("utf-8") response["body"] = type( - "MockBody", (), {"read": lambda: json.dumps(response_data).encode("utf-8")} + "MockBody", + (), + {"read": lambda size=-1: response_bytes[:size] if size > 0 else response_bytes}, )() return response