diff --git a/src/openai/types/responses/response.py b/src/openai/types/responses/response.py index 6bac7d65de..d28baf18bb 100644 --- a/src/openai/types/responses/response.py +++ b/src/openai/types/responses/response.py @@ -315,6 +315,10 @@ def output_text(self) -> str: if output.type == "message": for content in output.content: if content.type == "output_text": + # can be occasionally empty even if type is string, so we need to check for that + # see issue https://github.com/openai/openai-python/issues/2822 + if content.text is None: # type: ignore + continue texts.append(content.text) return "".join(texts)