orq-ai-sdk 4.2.0rc28__py3-none-any.whl → 4.2.6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. orq_ai_sdk/_hooks/globalhook.py +0 -1
  2. orq_ai_sdk/_version.py +3 -3
  3. orq_ai_sdk/audio.py +30 -0
  4. orq_ai_sdk/basesdk.py +20 -6
  5. orq_ai_sdk/chat.py +22 -0
  6. orq_ai_sdk/completions.py +332 -0
  7. orq_ai_sdk/contacts.py +43 -855
  8. orq_ai_sdk/deployments.py +61 -0
  9. orq_ai_sdk/edits.py +258 -0
  10. orq_ai_sdk/embeddings.py +238 -0
  11. orq_ai_sdk/generations.py +272 -0
  12. orq_ai_sdk/identities.py +1037 -0
  13. orq_ai_sdk/images.py +28 -0
  14. orq_ai_sdk/models/__init__.py +5341 -737
  15. orq_ai_sdk/models/actionreviewedstreamingevent.py +18 -1
  16. orq_ai_sdk/models/actionreviewrequestedstreamingevent.py +44 -1
  17. orq_ai_sdk/models/agenterroredstreamingevent.py +18 -1
  18. orq_ai_sdk/models/agentinactivestreamingevent.py +168 -70
  19. orq_ai_sdk/models/agentmessagecreatedstreamingevent.py +18 -2
  20. orq_ai_sdk/models/agentresponsemessage.py +18 -2
  21. orq_ai_sdk/models/agentstartedstreamingevent.py +127 -2
  22. orq_ai_sdk/models/agentthoughtstreamingevent.py +178 -211
  23. orq_ai_sdk/models/conversationresponse.py +31 -20
  24. orq_ai_sdk/models/conversationwithmessagesresponse.py +31 -20
  25. orq_ai_sdk/models/createagentrequestop.py +1922 -384
  26. orq_ai_sdk/models/createagentresponse.py +147 -91
  27. orq_ai_sdk/models/createagentresponserequestop.py +111 -2
  28. orq_ai_sdk/models/createchatcompletionop.py +1375 -861
  29. orq_ai_sdk/models/createchunkop.py +46 -19
  30. orq_ai_sdk/models/createcompletionop.py +1890 -0
  31. orq_ai_sdk/models/createcontactop.py +45 -56
  32. orq_ai_sdk/models/createconversationop.py +61 -39
  33. orq_ai_sdk/models/createconversationresponseop.py +68 -4
  34. orq_ai_sdk/models/createdatasetitemop.py +424 -80
  35. orq_ai_sdk/models/createdatasetop.py +19 -2
  36. orq_ai_sdk/models/createdatasourceop.py +92 -26
  37. orq_ai_sdk/models/createembeddingop.py +384 -0
  38. orq_ai_sdk/models/createevalop.py +552 -24
  39. orq_ai_sdk/models/createidentityop.py +176 -0
  40. orq_ai_sdk/models/createimageeditop.py +504 -0
  41. orq_ai_sdk/models/createimageop.py +208 -117
  42. orq_ai_sdk/models/createimagevariationop.py +486 -0
  43. orq_ai_sdk/models/createknowledgeop.py +186 -121
  44. orq_ai_sdk/models/creatememorydocumentop.py +50 -1
  45. orq_ai_sdk/models/creatememoryop.py +34 -21
  46. orq_ai_sdk/models/creatememorystoreop.py +34 -1
  47. orq_ai_sdk/models/createmoderationop.py +521 -0
  48. orq_ai_sdk/models/createpromptop.py +2748 -1252
  49. orq_ai_sdk/models/creatererankop.py +416 -0
  50. orq_ai_sdk/models/createresponseop.py +2567 -0
  51. orq_ai_sdk/models/createspeechop.py +316 -0
  52. orq_ai_sdk/models/createtoolop.py +537 -12
  53. orq_ai_sdk/models/createtranscriptionop.py +562 -0
  54. orq_ai_sdk/models/createtranslationop.py +540 -0
  55. orq_ai_sdk/models/datapart.py +18 -1
  56. orq_ai_sdk/models/deletechunksop.py +34 -1
  57. orq_ai_sdk/models/{deletecontactop.py → deleteidentityop.py} +9 -9
  58. orq_ai_sdk/models/deletepromptop.py +26 -0
  59. orq_ai_sdk/models/deploymentcreatemetricop.py +362 -76
  60. orq_ai_sdk/models/deploymentgetconfigop.py +635 -194
  61. orq_ai_sdk/models/deploymentinvokeop.py +168 -173
  62. orq_ai_sdk/models/deploymentsop.py +195 -58
  63. orq_ai_sdk/models/deploymentstreamop.py +652 -304
  64. orq_ai_sdk/models/errorpart.py +18 -1
  65. orq_ai_sdk/models/filecontentpartschema.py +18 -1
  66. orq_ai_sdk/models/filegetop.py +19 -2
  67. orq_ai_sdk/models/filelistop.py +35 -2
  68. orq_ai_sdk/models/filepart.py +50 -1
  69. orq_ai_sdk/models/fileuploadop.py +51 -2
  70. orq_ai_sdk/models/generateconversationnameop.py +31 -20
  71. orq_ai_sdk/models/get_v2_evaluators_id_versionsop.py +34 -1
  72. orq_ai_sdk/models/get_v2_tools_tool_id_versions_version_id_op.py +18 -1
  73. orq_ai_sdk/models/get_v2_tools_tool_id_versionsop.py +34 -1
  74. orq_ai_sdk/models/getallmemoriesop.py +34 -21
  75. orq_ai_sdk/models/getallmemorydocumentsop.py +42 -1
  76. orq_ai_sdk/models/getallmemorystoresop.py +34 -1
  77. orq_ai_sdk/models/getallpromptsop.py +1690 -230
  78. orq_ai_sdk/models/getalltoolsop.py +325 -8
  79. orq_ai_sdk/models/getchunkscountop.py +34 -1
  80. orq_ai_sdk/models/getevalsop.py +395 -43
  81. orq_ai_sdk/models/getonechunkop.py +14 -19
  82. orq_ai_sdk/models/getoneknowledgeop.py +116 -96
  83. orq_ai_sdk/models/getonepromptop.py +1673 -230
  84. orq_ai_sdk/models/getpromptversionop.py +1670 -216
  85. orq_ai_sdk/models/imagecontentpartschema.py +50 -1
  86. orq_ai_sdk/models/internal/globals.py +18 -1
  87. orq_ai_sdk/models/invokeagentop.py +140 -2
  88. orq_ai_sdk/models/invokedeploymentrequest.py +418 -80
  89. orq_ai_sdk/models/invokeevalop.py +160 -131
  90. orq_ai_sdk/models/listagentsop.py +793 -166
  91. orq_ai_sdk/models/listchunksop.py +32 -19
  92. orq_ai_sdk/models/listchunkspaginatedop.py +46 -19
  93. orq_ai_sdk/models/listconversationsop.py +18 -1
  94. orq_ai_sdk/models/listdatasetdatapointsop.py +252 -42
  95. orq_ai_sdk/models/listdatasetsop.py +35 -2
  96. orq_ai_sdk/models/listdatasourcesop.py +35 -26
  97. orq_ai_sdk/models/{listcontactsop.py → listidentitiesop.py} +89 -79
  98. orq_ai_sdk/models/listknowledgebasesop.py +132 -96
  99. orq_ai_sdk/models/listmodelsop.py +1 -0
  100. orq_ai_sdk/models/listpromptversionsop.py +1684 -216
  101. orq_ai_sdk/models/parseop.py +161 -17
  102. orq_ai_sdk/models/partdoneevent.py +19 -2
  103. orq_ai_sdk/models/post_v2_router_ocrop.py +408 -0
  104. orq_ai_sdk/models/publiccontact.py +27 -4
  105. orq_ai_sdk/models/publicidentity.py +62 -0
  106. orq_ai_sdk/models/reasoningpart.py +19 -2
  107. orq_ai_sdk/models/refusalpartschema.py +18 -1
  108. orq_ai_sdk/models/remoteconfigsgetconfigop.py +34 -1
  109. orq_ai_sdk/models/responsedoneevent.py +114 -84
  110. orq_ai_sdk/models/responsestartedevent.py +18 -1
  111. orq_ai_sdk/models/retrieveagentrequestop.py +787 -166
  112. orq_ai_sdk/models/retrievedatapointop.py +236 -42
  113. orq_ai_sdk/models/retrievedatasetop.py +19 -2
  114. orq_ai_sdk/models/retrievedatasourceop.py +17 -26
  115. orq_ai_sdk/models/{retrievecontactop.py → retrieveidentityop.py} +38 -41
  116. orq_ai_sdk/models/retrievememorydocumentop.py +18 -1
  117. orq_ai_sdk/models/retrievememoryop.py +18 -21
  118. orq_ai_sdk/models/retrievememorystoreop.py +18 -1
  119. orq_ai_sdk/models/retrievetoolop.py +309 -8
  120. orq_ai_sdk/models/runagentop.py +1451 -197
  121. orq_ai_sdk/models/searchknowledgeop.py +108 -1
  122. orq_ai_sdk/models/security.py +18 -1
  123. orq_ai_sdk/models/streamagentop.py +93 -2
  124. orq_ai_sdk/models/streamrunagentop.py +1428 -195
  125. orq_ai_sdk/models/textcontentpartschema.py +34 -1
  126. orq_ai_sdk/models/thinkingconfigenabledschema.py +18 -1
  127. orq_ai_sdk/models/toolcallpart.py +18 -1
  128. orq_ai_sdk/models/tooldoneevent.py +18 -1
  129. orq_ai_sdk/models/toolexecutionfailedstreamingevent.py +50 -1
  130. orq_ai_sdk/models/toolexecutionfinishedstreamingevent.py +34 -1
  131. orq_ai_sdk/models/toolexecutionstartedstreamingevent.py +34 -1
  132. orq_ai_sdk/models/toolresultpart.py +18 -1
  133. orq_ai_sdk/models/toolreviewrequestedevent.py +18 -1
  134. orq_ai_sdk/models/toolstartedevent.py +18 -1
  135. orq_ai_sdk/models/updateagentop.py +1951 -404
  136. orq_ai_sdk/models/updatechunkop.py +46 -19
  137. orq_ai_sdk/models/updateconversationop.py +61 -39
  138. orq_ai_sdk/models/updatedatapointop.py +424 -80
  139. orq_ai_sdk/models/updatedatasetop.py +51 -2
  140. orq_ai_sdk/models/updatedatasourceop.py +17 -26
  141. orq_ai_sdk/models/updateevalop.py +577 -16
  142. orq_ai_sdk/models/{updatecontactop.py → updateidentityop.py} +78 -68
  143. orq_ai_sdk/models/updateknowledgeop.py +234 -190
  144. orq_ai_sdk/models/updatememorydocumentop.py +50 -1
  145. orq_ai_sdk/models/updatememoryop.py +50 -21
  146. orq_ai_sdk/models/updatememorystoreop.py +66 -1
  147. orq_ai_sdk/models/updatepromptop.py +2844 -1450
  148. orq_ai_sdk/models/updatetoolop.py +592 -9
  149. orq_ai_sdk/models/usermessagerequest.py +18 -2
  150. orq_ai_sdk/moderations.py +218 -0
  151. orq_ai_sdk/orq_completions.py +660 -0
  152. orq_ai_sdk/orq_responses.py +398 -0
  153. orq_ai_sdk/prompts.py +28 -36
  154. orq_ai_sdk/rerank.py +232 -0
  155. orq_ai_sdk/router.py +89 -641
  156. orq_ai_sdk/sdk.py +3 -0
  157. orq_ai_sdk/speech.py +251 -0
  158. orq_ai_sdk/transcriptions.py +326 -0
  159. orq_ai_sdk/translations.py +298 -0
  160. orq_ai_sdk/utils/__init__.py +13 -1
  161. orq_ai_sdk/variations.py +254 -0
  162. orq_ai_sdk-4.2.6.dist-info/METADATA +888 -0
  163. orq_ai_sdk-4.2.6.dist-info/RECORD +263 -0
  164. {orq_ai_sdk-4.2.0rc28.dist-info → orq_ai_sdk-4.2.6.dist-info}/WHEEL +2 -1
  165. orq_ai_sdk-4.2.6.dist-info/top_level.txt +1 -0
  166. orq_ai_sdk-4.2.0rc28.dist-info/METADATA +0 -867
  167. orq_ai_sdk-4.2.0rc28.dist-info/RECORD +0 -233
@@ -0,0 +1,272 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from .basesdk import BaseSDK
4
+ from orq_ai_sdk import models, utils
5
+ from orq_ai_sdk._hooks import HookContext
6
+ from orq_ai_sdk.models import createimageop as models_createimageop
7
+ from orq_ai_sdk.types import OptionalNullable, UNSET
8
+ from orq_ai_sdk.utils import get_security_from_env
9
+ from orq_ai_sdk.utils.unmarshal_json_response import unmarshal_json_response
10
+ from typing import Mapping, Optional, Union
11
+
12
+
13
+ class Generations(BaseSDK):
14
+ def create(
15
+ self,
16
+ *,
17
+ prompt: str,
18
+ model: str,
19
+ background: OptionalNullable[models_createimageop.Background] = UNSET,
20
+ moderation: OptionalNullable[models_createimageop.Moderation] = UNSET,
21
+ n: OptionalNullable[int] = 1,
22
+ output_compression: OptionalNullable[int] = UNSET,
23
+ output_format: OptionalNullable[models_createimageop.OutputFormat] = UNSET,
24
+ quality: OptionalNullable[models_createimageop.Quality] = UNSET,
25
+ response_format: OptionalNullable[
26
+ models_createimageop.CreateImageResponseFormat
27
+ ] = UNSET,
28
+ size: OptionalNullable[str] = UNSET,
29
+ style: OptionalNullable[models_createimageop.Style] = UNSET,
30
+ orq: Optional[
31
+ Union[
32
+ models_createimageop.CreateImageOrq,
33
+ models_createimageop.CreateImageOrqTypedDict,
34
+ ]
35
+ ] = None,
36
+ retries: OptionalNullable[utils.RetryConfig] = UNSET,
37
+ server_url: Optional[str] = None,
38
+ timeout_ms: Optional[int] = None,
39
+ http_headers: Optional[Mapping[str, str]] = None,
40
+ ) -> models.CreateImageResponseBody:
41
+ r"""Create image
42
+
43
+ Create an Image
44
+
45
+ :param prompt: A text description of the desired image(s).
46
+ :param model: The model to use for image generation. One of `openai/dall-e-2`, `openai/dall-e-3`, or `openai/gpt-image-1`.
47
+ :param background: Allows to set transparency for the background of the generated image(s). This parameter is only supported for `openai/gpt-image-1`.
48
+ :param moderation: Control the content-moderation level for images generated by `gpt-image-1`. Must be either `low` or `auto`.
49
+ :param n: The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only `n=1` is supported.
50
+ :param output_compression: The compression level (0-100%) for the generated images. This parameter is only supported for `gpt-image-1` with the `webp` or `jpeg` output formats.
51
+ :param output_format: The format in which the generated images are returned. This parameter is only supported for `openai/gpt-image-1`.
52
+ :param quality: The quality of the image that will be generated. `auto` will automatically select the best quality for the given model.
53
+ :param response_format: The format in which generated images are returned. Must be one of `url` or `b64_json`. This parameter isn't supported for `gpt-image-1` which will always return base64-encoded images.
54
+ :param size: The size of the generated images. Must be one of the specified sizes for each model.
55
+ :param style: The style of the generated images. This parameter is only supported for `openai/dall-e-3`. Must be one of `vivid` or `natural`.
56
+ :param orq:
57
+ :param retries: Override the default retry configuration for this method
58
+ :param server_url: Override the default server URL for this method
59
+ :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
60
+ :param http_headers: Additional headers to set or replace on requests.
61
+ """
62
+ base_url = None
63
+ url_variables = None
64
+ if timeout_ms is None:
65
+ timeout_ms = self.sdk_configuration.timeout_ms
66
+
67
+ if timeout_ms is None:
68
+ timeout_ms = 600000
69
+
70
+ if server_url is not None:
71
+ base_url = server_url
72
+ else:
73
+ base_url = self._get_url(base_url, url_variables)
74
+
75
+ request = models.CreateImageRequestBody(
76
+ prompt=prompt,
77
+ background=background,
78
+ model=model,
79
+ moderation=moderation,
80
+ n=n,
81
+ output_compression=output_compression,
82
+ output_format=output_format,
83
+ quality=quality,
84
+ response_format=response_format,
85
+ size=size,
86
+ style=style,
87
+ orq=utils.get_pydantic_model(orq, Optional[models.CreateImageOrq]),
88
+ )
89
+
90
+ req = self._build_request(
91
+ method="POST",
92
+ path="/v2/router/images/generations",
93
+ base_url=base_url,
94
+ url_variables=url_variables,
95
+ request=request,
96
+ request_body_required=True,
97
+ request_has_path_params=False,
98
+ request_has_query_params=True,
99
+ user_agent_header="user-agent",
100
+ accept_header_value="application/json",
101
+ http_headers=http_headers,
102
+ security=self.sdk_configuration.security,
103
+ get_serialized_body=lambda: utils.serialize_request_body(
104
+ request, False, False, "json", models.CreateImageRequestBody
105
+ ),
106
+ allow_empty_value=None,
107
+ timeout_ms=timeout_ms,
108
+ )
109
+
110
+ if retries == UNSET:
111
+ if self.sdk_configuration.retry_config is not UNSET:
112
+ retries = self.sdk_configuration.retry_config
113
+
114
+ retry_config = None
115
+ if isinstance(retries, utils.RetryConfig):
116
+ retry_config = (retries, ["429", "500", "502", "503", "504"])
117
+
118
+ http_res = self.do_request(
119
+ hook_ctx=HookContext(
120
+ config=self.sdk_configuration,
121
+ base_url=base_url or "",
122
+ operation_id="createImage",
123
+ oauth2_scopes=None,
124
+ security_source=get_security_from_env(
125
+ self.sdk_configuration.security, models.Security
126
+ ),
127
+ ),
128
+ request=req,
129
+ error_status_codes=["4XX", "5XX"],
130
+ retry_config=retry_config,
131
+ )
132
+
133
+ if utils.match_response(http_res, "200", "application/json"):
134
+ return unmarshal_json_response(models.CreateImageResponseBody, http_res)
135
+ if utils.match_response(http_res, "4XX", "*"):
136
+ http_res_text = utils.stream_to_text(http_res)
137
+ raise models.APIError("API error occurred", http_res, http_res_text)
138
+ if utils.match_response(http_res, "5XX", "*"):
139
+ http_res_text = utils.stream_to_text(http_res)
140
+ raise models.APIError("API error occurred", http_res, http_res_text)
141
+
142
+ raise models.APIError("Unexpected response received", http_res)
143
+
144
+ async def create_async(
145
+ self,
146
+ *,
147
+ prompt: str,
148
+ model: str,
149
+ background: OptionalNullable[models_createimageop.Background] = UNSET,
150
+ moderation: OptionalNullable[models_createimageop.Moderation] = UNSET,
151
+ n: OptionalNullable[int] = 1,
152
+ output_compression: OptionalNullable[int] = UNSET,
153
+ output_format: OptionalNullable[models_createimageop.OutputFormat] = UNSET,
154
+ quality: OptionalNullable[models_createimageop.Quality] = UNSET,
155
+ response_format: OptionalNullable[
156
+ models_createimageop.CreateImageResponseFormat
157
+ ] = UNSET,
158
+ size: OptionalNullable[str] = UNSET,
159
+ style: OptionalNullable[models_createimageop.Style] = UNSET,
160
+ orq: Optional[
161
+ Union[
162
+ models_createimageop.CreateImageOrq,
163
+ models_createimageop.CreateImageOrqTypedDict,
164
+ ]
165
+ ] = None,
166
+ retries: OptionalNullable[utils.RetryConfig] = UNSET,
167
+ server_url: Optional[str] = None,
168
+ timeout_ms: Optional[int] = None,
169
+ http_headers: Optional[Mapping[str, str]] = None,
170
+ ) -> models.CreateImageResponseBody:
171
+ r"""Create image
172
+
173
+ Create an Image
174
+
175
+ :param prompt: A text description of the desired image(s).
176
+ :param model: The model to use for image generation. One of `openai/dall-e-2`, `openai/dall-e-3`, or `openai/gpt-image-1`.
177
+ :param background: Allows to set transparency for the background of the generated image(s). This parameter is only supported for `openai/gpt-image-1`.
178
+ :param moderation: Control the content-moderation level for images generated by `gpt-image-1`. Must be either `low` or `auto`.
179
+ :param n: The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only `n=1` is supported.
180
+ :param output_compression: The compression level (0-100%) for the generated images. This parameter is only supported for `gpt-image-1` with the `webp` or `jpeg` output formats.
181
+ :param output_format: The format in which the generated images are returned. This parameter is only supported for `openai/gpt-image-1`.
182
+ :param quality: The quality of the image that will be generated. `auto` will automatically select the best quality for the given model.
183
+ :param response_format: The format in which generated images are returned. Must be one of `url` or `b64_json`. This parameter isn't supported for `gpt-image-1` which will always return base64-encoded images.
184
+ :param size: The size of the generated images. Must be one of the specified sizes for each model.
185
+ :param style: The style of the generated images. This parameter is only supported for `openai/dall-e-3`. Must be one of `vivid` or `natural`.
186
+ :param orq:
187
+ :param retries: Override the default retry configuration for this method
188
+ :param server_url: Override the default server URL for this method
189
+ :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
190
+ :param http_headers: Additional headers to set or replace on requests.
191
+ """
192
+ base_url = None
193
+ url_variables = None
194
+ if timeout_ms is None:
195
+ timeout_ms = self.sdk_configuration.timeout_ms
196
+
197
+ if timeout_ms is None:
198
+ timeout_ms = 600000
199
+
200
+ if server_url is not None:
201
+ base_url = server_url
202
+ else:
203
+ base_url = self._get_url(base_url, url_variables)
204
+
205
+ request = models.CreateImageRequestBody(
206
+ prompt=prompt,
207
+ background=background,
208
+ model=model,
209
+ moderation=moderation,
210
+ n=n,
211
+ output_compression=output_compression,
212
+ output_format=output_format,
213
+ quality=quality,
214
+ response_format=response_format,
215
+ size=size,
216
+ style=style,
217
+ orq=utils.get_pydantic_model(orq, Optional[models.CreateImageOrq]),
218
+ )
219
+
220
+ req = self._build_request_async(
221
+ method="POST",
222
+ path="/v2/router/images/generations",
223
+ base_url=base_url,
224
+ url_variables=url_variables,
225
+ request=request,
226
+ request_body_required=True,
227
+ request_has_path_params=False,
228
+ request_has_query_params=True,
229
+ user_agent_header="user-agent",
230
+ accept_header_value="application/json",
231
+ http_headers=http_headers,
232
+ security=self.sdk_configuration.security,
233
+ get_serialized_body=lambda: utils.serialize_request_body(
234
+ request, False, False, "json", models.CreateImageRequestBody
235
+ ),
236
+ allow_empty_value=None,
237
+ timeout_ms=timeout_ms,
238
+ )
239
+
240
+ if retries == UNSET:
241
+ if self.sdk_configuration.retry_config is not UNSET:
242
+ retries = self.sdk_configuration.retry_config
243
+
244
+ retry_config = None
245
+ if isinstance(retries, utils.RetryConfig):
246
+ retry_config = (retries, ["429", "500", "502", "503", "504"])
247
+
248
+ http_res = await self.do_request_async(
249
+ hook_ctx=HookContext(
250
+ config=self.sdk_configuration,
251
+ base_url=base_url or "",
252
+ operation_id="createImage",
253
+ oauth2_scopes=None,
254
+ security_source=get_security_from_env(
255
+ self.sdk_configuration.security, models.Security
256
+ ),
257
+ ),
258
+ request=req,
259
+ error_status_codes=["4XX", "5XX"],
260
+ retry_config=retry_config,
261
+ )
262
+
263
+ if utils.match_response(http_res, "200", "application/json"):
264
+ return unmarshal_json_response(models.CreateImageResponseBody, http_res)
265
+ if utils.match_response(http_res, "4XX", "*"):
266
+ http_res_text = await utils.stream_to_text_async(http_res)
267
+ raise models.APIError("API error occurred", http_res, http_res_text)
268
+ if utils.match_response(http_res, "5XX", "*"):
269
+ http_res_text = await utils.stream_to_text_async(http_res)
270
+ raise models.APIError("API error occurred", http_res, http_res_text)
271
+
272
+ raise models.APIError("Unexpected response received", http_res)