diff --git a/python/packages/openai/agent_framework_openai/_chat_client.py b/python/packages/openai/agent_framework_openai/_chat_client.py index d998875d1c..2d5cda9ee5 100644 --- a/python/packages/openai/agent_framework_openai/_chat_client.py +++ b/python/packages/openai/agent_framework_openai/_chat_client.py @@ -1997,7 +1997,11 @@ class RawOpenAIChatClient( # type: ignore[misc] metadata: dict[str, Any] = response.metadata or {} contents: list[Content] = [] local_shell_tool_name = self._get_local_shell_tool_name(options.get("tools")) - for item in response.output: # type: ignore[reportUnknownMemberType] + try: + response_outputs = response.output # type: ignore[reportUnknownMemberType] + except AttributeError: + response_outputs = [] + for item in response_outputs: # type: ignore[reportUnknownVariableType] match item.type: # types: # ParsedResponseOutputMessage[Unknown] | diff --git a/python/packages/openai/agent_framework_openai/_chat_completion_client.py b/python/packages/openai/agent_framework_openai/_chat_completion_client.py index a6878c9f2d..0fd14aa2ef 100644 --- a/python/packages/openai/agent_framework_openai/_chat_completion_client.py +++ b/python/packages/openai/agent_framework_openai/_chat_completion_client.py @@ -788,13 +788,13 @@ class RawOpenAIChatCompletionClient( # type: ignore[misc] def _get_metadata_from_chat_response(self, response: ChatCompletion) -> dict[str, Any]: """Get metadata from a chat response.""" return { - "system_fingerprint": response.system_fingerprint, + "system_fingerprint": getattr(response, "system_fingerprint", None), } def _get_metadata_from_streaming_chat_response(self, response: ChatCompletionChunk) -> dict[str, Any]: """Get metadata from a streaming chat response.""" return { - "system_fingerprint": response.system_fingerprint, + "system_fingerprint": getattr(response, "system_fingerprint", None), } def _get_metadata_from_chat_choice(self, choice: Choice | ChunkChoice) -> dict[str, Any]: