Skip to content

Commit 907533a

Browse files
authored
Fix docstring formatting and add safe check for empty message content (#1360)
1 parent e197187 commit 907533a

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/agents/items.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ class RunItemBase(Generic[T], abc.ABC):
6666
"""The agent whose run caused this item to be generated."""
6767

6868
raw_item: T
69-
"""The raw Responses item from the run. This will always be a either an output item (i.e.
69+
"""The raw Responses item from the run. This will always be either an output item (i.e.
7070
`openai.types.responses.ResponseOutputItem` or an input item
7171
(i.e. `openai.types.responses.ResponseInputItemParam`).
7272
"""
@@ -243,6 +243,8 @@ def extract_last_content(cls, message: TResponseOutputItem) -> str:
243243
if not isinstance(message, ResponseOutputMessage):
244244
return ""
245245

246+
if not message.content:
247+
return ""
246248
last_content = message.content[-1]
247249
if isinstance(last_content, ResponseOutputText):
248250
return last_content.text
@@ -255,6 +257,8 @@ def extract_last_content(cls, message: TResponseOutputItem) -> str:
255257
def extract_last_text(cls, message: TResponseOutputItem) -> str | None:
256258
"""Extracts the last text content from a message, if any. Ignores refusals."""
257259
if isinstance(message, ResponseOutputMessage):
260+
if not message.content:
261+
return None
258262
last_content = message.content[-1]
259263
if isinstance(last_content, ResponseOutputText):
260264
return last_content.text

0 commit comments

Comments
 (0)