Skip to content

Commit 4f5ff29

Browse files
fix(streaming): improve error messages (#1218)
#1160
1 parent d0c928a commit 4f5ff29

File tree

1 file changed

+16
-2
lines changed

1 file changed

+16
-2
lines changed

src/openai/_streaming.py

+16-2
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,15 @@ def __stream__(self) -> Iterator[_T]:
6565
if sse.event is None:
6666
data = sse.json()
6767
if is_mapping(data) and data.get("error"):
68+
message = None
69+
error = data.get("error")
70+
if is_mapping(error):
71+
message = error.get("message")
72+
if not message or not isinstance(message, str):
73+
message = "An error occurred during streaming"
74+
6875
raise APIError(
69-
message="An error occurred during streaming",
76+
message=message,
7077
request=self.response.request,
7178
body=data["error"],
7279
)
@@ -145,8 +152,15 @@ async def __stream__(self) -> AsyncIterator[_T]:
145152
if sse.event is None:
146153
data = sse.json()
147154
if is_mapping(data) and data.get("error"):
155+
message = None
156+
error = data.get("error")
157+
if is_mapping(error):
158+
message = error.get("message")
159+
if not message or not isinstance(message, str):
160+
message = "An error occurred during streaming"
161+
148162
raise APIError(
149-
message="An error occurred during streaming",
163+
message=message,
150164
request=self.response.request,
151165
body=data["error"],
152166
)

0 commit comments

Comments
 (0)