From ba89dfb2c8b11555899d3c67d2019b300045312d Mon Sep 17 00:00:00 2001 From: Zhichao Date: Mon, 9 Sep 2024 10:36:13 +0800 Subject: [PATCH] feat: add files to tool call trace (#230) * save * change from dict to tuple --- vision_agent/tools/tool_utils.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/vision_agent/tools/tool_utils.py b/vision_agent/tools/tool_utils.py index 67306c9d..534bc078 100644 --- a/vision_agent/tools/tool_utils.py +++ b/vision_agent/tools/tool_utils.py @@ -1,3 +1,4 @@ +from base64 import b64encode import inspect import logging import os @@ -27,6 +28,7 @@ class ToolCallTrace(BaseModel): request: MutableMapping[str, Any] response: MutableMapping[str, Any] error: Optional[Error] + files: Optional[List[tuple[str, str]]] def send_inference_request( @@ -202,12 +204,16 @@ def _call_post( files: Optional[List[Tuple[Any, ...]]] = None, function_name: str = "unknown", ) -> Any: + files_in_b64 = None + if files: + files_in_b64 = [(file[0], b64encode(file[1]).decode("utf-8")) for file in files] try: tool_call_trace = ToolCallTrace( endpoint_url=url, request=payload, response={}, error=None, + files=files_in_b64, ) if files is not None: