mistralai 1.5.2__py3-none-any.whl → 1.6.0__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.
- mistralai/_hooks/types.py +15 -3
- mistralai/_version.py +3 -3
- mistralai/agents.py +44 -12
- mistralai/basesdk.py +8 -0
- mistralai/chat.py +44 -12
- mistralai/classifiers.py +36 -16
- mistralai/embeddings.py +16 -6
- mistralai/files.py +36 -0
- mistralai/fim.py +32 -12
- mistralai/httpclient.py +4 -2
- mistralai/jobs.py +30 -0
- mistralai/mistral_jobs.py +24 -0
- mistralai/models/agentscompletionrequest.py +4 -0
- mistralai/models/agentscompletionstreamrequest.py +4 -0
- mistralai/models/chatcompletionrequest.py +4 -0
- mistralai/models/chatcompletionstreamrequest.py +4 -0
- mistralai/models/function.py +2 -2
- mistralai/models/jsonschema.py +1 -1
- mistralai/models_.py +66 -18
- mistralai/ocr.py +16 -6
- mistralai/sdk.py +19 -3
- mistralai/sdkconfiguration.py +4 -2
- mistralai/utils/__init__.py +2 -0
- mistralai/utils/serializers.py +10 -6
- mistralai/utils/values.py +4 -1
- {mistralai-1.5.2.dist-info → mistralai-1.6.0.dist-info}/METADATA +63 -16
- {mistralai-1.5.2.dist-info → mistralai-1.6.0.dist-info}/RECORD +80 -72
- mistralai_azure/__init__.py +10 -1
- mistralai_azure/_hooks/types.py +15 -3
- mistralai_azure/_version.py +4 -1
- mistralai_azure/basesdk.py +8 -0
- mistralai_azure/chat.py +100 -20
- mistralai_azure/httpclient.py +52 -0
- mistralai_azure/models/__init__.py +22 -0
- mistralai_azure/models/assistantmessage.py +2 -0
- mistralai_azure/models/chatcompletionrequest.py +12 -10
- mistralai_azure/models/chatcompletionstreamrequest.py +12 -10
- mistralai_azure/models/contentchunk.py +6 -2
- mistralai_azure/models/function.py +4 -1
- mistralai_azure/models/imageurl.py +53 -0
- mistralai_azure/models/imageurlchunk.py +33 -0
- mistralai_azure/models/jsonschema.py +61 -0
- mistralai_azure/models/prediction.py +25 -0
- mistralai_azure/models/responseformat.py +42 -1
- mistralai_azure/models/responseformats.py +1 -1
- mistralai_azure/models/toolcall.py +3 -0
- mistralai_azure/sdk.py +56 -14
- mistralai_azure/sdkconfiguration.py +14 -6
- mistralai_azure/utils/__init__.py +2 -0
- mistralai_azure/utils/serializers.py +10 -6
- mistralai_azure/utils/values.py +4 -1
- mistralai_gcp/__init__.py +10 -1
- mistralai_gcp/_hooks/types.py +15 -3
- mistralai_gcp/_version.py +4 -1
- mistralai_gcp/basesdk.py +8 -0
- mistralai_gcp/chat.py +101 -21
- mistralai_gcp/fim.py +61 -21
- mistralai_gcp/httpclient.py +52 -0
- mistralai_gcp/models/__init__.py +22 -0
- mistralai_gcp/models/assistantmessage.py +2 -0
- mistralai_gcp/models/chatcompletionrequest.py +12 -10
- mistralai_gcp/models/chatcompletionstreamrequest.py +12 -10
- mistralai_gcp/models/contentchunk.py +6 -2
- mistralai_gcp/models/fimcompletionrequest.py +2 -3
- mistralai_gcp/models/fimcompletionstreamrequest.py +2 -3
- mistralai_gcp/models/function.py +4 -1
- mistralai_gcp/models/imageurl.py +53 -0
- mistralai_gcp/models/imageurlchunk.py +33 -0
- mistralai_gcp/models/jsonschema.py +61 -0
- mistralai_gcp/models/prediction.py +25 -0
- mistralai_gcp/models/responseformat.py +42 -1
- mistralai_gcp/models/responseformats.py +1 -1
- mistralai_gcp/models/toolcall.py +3 -0
- mistralai_gcp/sdk.py +63 -19
- mistralai_gcp/sdkconfiguration.py +14 -6
- mistralai_gcp/utils/__init__.py +2 -0
- mistralai_gcp/utils/serializers.py +10 -6
- mistralai_gcp/utils/values.py +4 -1
- {mistralai-1.5.2.dist-info → mistralai-1.6.0.dist-info}/LICENSE +0 -0
- {mistralai-1.5.2.dist-info → mistralai-1.6.0.dist-info}/WHEEL +0 -0
mistralai/classifiers.py
CHANGED
|
@@ -40,6 +40,8 @@ class Classifiers(BaseSDK):
|
|
|
40
40
|
|
|
41
41
|
if server_url is not None:
|
|
42
42
|
base_url = server_url
|
|
43
|
+
else:
|
|
44
|
+
base_url = self._get_url(base_url, url_variables)
|
|
43
45
|
|
|
44
46
|
request = models.ClassificationRequest(
|
|
45
47
|
model=model,
|
|
@@ -75,6 +77,7 @@ class Classifiers(BaseSDK):
|
|
|
75
77
|
|
|
76
78
|
http_res = self.do_request(
|
|
77
79
|
hook_ctx=HookContext(
|
|
80
|
+
base_url=base_url or "",
|
|
78
81
|
operation_id="moderations_v1_moderations_post",
|
|
79
82
|
oauth2_scopes=[],
|
|
80
83
|
security_source=get_security_from_env(
|
|
@@ -86,12 +89,14 @@ class Classifiers(BaseSDK):
|
|
|
86
89
|
retry_config=retry_config,
|
|
87
90
|
)
|
|
88
91
|
|
|
89
|
-
|
|
92
|
+
response_data: Any = None
|
|
90
93
|
if utils.match_response(http_res, "200", "application/json"):
|
|
91
94
|
return utils.unmarshal_json(http_res.text, models.ClassificationResponse)
|
|
92
95
|
if utils.match_response(http_res, "422", "application/json"):
|
|
93
|
-
|
|
94
|
-
|
|
96
|
+
response_data = utils.unmarshal_json(
|
|
97
|
+
http_res.text, models.HTTPValidationErrorData
|
|
98
|
+
)
|
|
99
|
+
raise models.HTTPValidationError(data=response_data)
|
|
95
100
|
if utils.match_response(http_res, "4XX", "*"):
|
|
96
101
|
http_res_text = utils.stream_to_text(http_res)
|
|
97
102
|
raise models.SDKError(
|
|
@@ -141,6 +146,8 @@ class Classifiers(BaseSDK):
|
|
|
141
146
|
|
|
142
147
|
if server_url is not None:
|
|
143
148
|
base_url = server_url
|
|
149
|
+
else:
|
|
150
|
+
base_url = self._get_url(base_url, url_variables)
|
|
144
151
|
|
|
145
152
|
request = models.ClassificationRequest(
|
|
146
153
|
model=model,
|
|
@@ -176,6 +183,7 @@ class Classifiers(BaseSDK):
|
|
|
176
183
|
|
|
177
184
|
http_res = await self.do_request_async(
|
|
178
185
|
hook_ctx=HookContext(
|
|
186
|
+
base_url=base_url or "",
|
|
179
187
|
operation_id="moderations_v1_moderations_post",
|
|
180
188
|
oauth2_scopes=[],
|
|
181
189
|
security_source=get_security_from_env(
|
|
@@ -187,12 +195,14 @@ class Classifiers(BaseSDK):
|
|
|
187
195
|
retry_config=retry_config,
|
|
188
196
|
)
|
|
189
197
|
|
|
190
|
-
|
|
198
|
+
response_data: Any = None
|
|
191
199
|
if utils.match_response(http_res, "200", "application/json"):
|
|
192
200
|
return utils.unmarshal_json(http_res.text, models.ClassificationResponse)
|
|
193
201
|
if utils.match_response(http_res, "422", "application/json"):
|
|
194
|
-
|
|
195
|
-
|
|
202
|
+
response_data = utils.unmarshal_json(
|
|
203
|
+
http_res.text, models.HTTPValidationErrorData
|
|
204
|
+
)
|
|
205
|
+
raise models.HTTPValidationError(data=response_data)
|
|
196
206
|
if utils.match_response(http_res, "4XX", "*"):
|
|
197
207
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
198
208
|
raise models.SDKError(
|
|
@@ -227,7 +237,7 @@ class Classifiers(BaseSDK):
|
|
|
227
237
|
timeout_ms: Optional[int] = None,
|
|
228
238
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
229
239
|
) -> models.ClassificationResponse:
|
|
230
|
-
r"""Moderations
|
|
240
|
+
r"""Chat Moderations
|
|
231
241
|
|
|
232
242
|
:param model:
|
|
233
243
|
:param inputs: Chat to classify
|
|
@@ -244,6 +254,8 @@ class Classifiers(BaseSDK):
|
|
|
244
254
|
|
|
245
255
|
if server_url is not None:
|
|
246
256
|
base_url = server_url
|
|
257
|
+
else:
|
|
258
|
+
base_url = self._get_url(base_url, url_variables)
|
|
247
259
|
|
|
248
260
|
request = models.ChatModerationRequest(
|
|
249
261
|
model=model,
|
|
@@ -280,7 +292,8 @@ class Classifiers(BaseSDK):
|
|
|
280
292
|
|
|
281
293
|
http_res = self.do_request(
|
|
282
294
|
hook_ctx=HookContext(
|
|
283
|
-
|
|
295
|
+
base_url=base_url or "",
|
|
296
|
+
operation_id="chat_moderations_v1_chat_moderations_post",
|
|
284
297
|
oauth2_scopes=[],
|
|
285
298
|
security_source=get_security_from_env(
|
|
286
299
|
self.sdk_configuration.security, models.Security
|
|
@@ -291,12 +304,14 @@ class Classifiers(BaseSDK):
|
|
|
291
304
|
retry_config=retry_config,
|
|
292
305
|
)
|
|
293
306
|
|
|
294
|
-
|
|
307
|
+
response_data: Any = None
|
|
295
308
|
if utils.match_response(http_res, "200", "application/json"):
|
|
296
309
|
return utils.unmarshal_json(http_res.text, models.ClassificationResponse)
|
|
297
310
|
if utils.match_response(http_res, "422", "application/json"):
|
|
298
|
-
|
|
299
|
-
|
|
311
|
+
response_data = utils.unmarshal_json(
|
|
312
|
+
http_res.text, models.HTTPValidationErrorData
|
|
313
|
+
)
|
|
314
|
+
raise models.HTTPValidationError(data=response_data)
|
|
300
315
|
if utils.match_response(http_res, "4XX", "*"):
|
|
301
316
|
http_res_text = utils.stream_to_text(http_res)
|
|
302
317
|
raise models.SDKError(
|
|
@@ -331,7 +346,7 @@ class Classifiers(BaseSDK):
|
|
|
331
346
|
timeout_ms: Optional[int] = None,
|
|
332
347
|
http_headers: Optional[Mapping[str, str]] = None,
|
|
333
348
|
) -> models.ClassificationResponse:
|
|
334
|
-
r"""Moderations
|
|
349
|
+
r"""Chat Moderations
|
|
335
350
|
|
|
336
351
|
:param model:
|
|
337
352
|
:param inputs: Chat to classify
|
|
@@ -348,6 +363,8 @@ class Classifiers(BaseSDK):
|
|
|
348
363
|
|
|
349
364
|
if server_url is not None:
|
|
350
365
|
base_url = server_url
|
|
366
|
+
else:
|
|
367
|
+
base_url = self._get_url(base_url, url_variables)
|
|
351
368
|
|
|
352
369
|
request = models.ChatModerationRequest(
|
|
353
370
|
model=model,
|
|
@@ -384,7 +401,8 @@ class Classifiers(BaseSDK):
|
|
|
384
401
|
|
|
385
402
|
http_res = await self.do_request_async(
|
|
386
403
|
hook_ctx=HookContext(
|
|
387
|
-
|
|
404
|
+
base_url=base_url or "",
|
|
405
|
+
operation_id="chat_moderations_v1_chat_moderations_post",
|
|
388
406
|
oauth2_scopes=[],
|
|
389
407
|
security_source=get_security_from_env(
|
|
390
408
|
self.sdk_configuration.security, models.Security
|
|
@@ -395,12 +413,14 @@ class Classifiers(BaseSDK):
|
|
|
395
413
|
retry_config=retry_config,
|
|
396
414
|
)
|
|
397
415
|
|
|
398
|
-
|
|
416
|
+
response_data: Any = None
|
|
399
417
|
if utils.match_response(http_res, "200", "application/json"):
|
|
400
418
|
return utils.unmarshal_json(http_res.text, models.ClassificationResponse)
|
|
401
419
|
if utils.match_response(http_res, "422", "application/json"):
|
|
402
|
-
|
|
403
|
-
|
|
420
|
+
response_data = utils.unmarshal_json(
|
|
421
|
+
http_res.text, models.HTTPValidationErrorData
|
|
422
|
+
)
|
|
423
|
+
raise models.HTTPValidationError(data=response_data)
|
|
404
424
|
if utils.match_response(http_res, "4XX", "*"):
|
|
405
425
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
406
426
|
raise models.SDKError(
|
mistralai/embeddings.py
CHANGED
|
@@ -39,6 +39,8 @@ class Embeddings(BaseSDK):
|
|
|
39
39
|
|
|
40
40
|
if server_url is not None:
|
|
41
41
|
base_url = server_url
|
|
42
|
+
else:
|
|
43
|
+
base_url = self._get_url(base_url, url_variables)
|
|
42
44
|
|
|
43
45
|
request = models.EmbeddingRequest(
|
|
44
46
|
model=model,
|
|
@@ -74,6 +76,7 @@ class Embeddings(BaseSDK):
|
|
|
74
76
|
|
|
75
77
|
http_res = self.do_request(
|
|
76
78
|
hook_ctx=HookContext(
|
|
79
|
+
base_url=base_url or "",
|
|
77
80
|
operation_id="embeddings_v1_embeddings_post",
|
|
78
81
|
oauth2_scopes=[],
|
|
79
82
|
security_source=get_security_from_env(
|
|
@@ -85,12 +88,14 @@ class Embeddings(BaseSDK):
|
|
|
85
88
|
retry_config=retry_config,
|
|
86
89
|
)
|
|
87
90
|
|
|
88
|
-
|
|
91
|
+
response_data: Any = None
|
|
89
92
|
if utils.match_response(http_res, "200", "application/json"):
|
|
90
93
|
return utils.unmarshal_json(http_res.text, models.EmbeddingResponse)
|
|
91
94
|
if utils.match_response(http_res, "422", "application/json"):
|
|
92
|
-
|
|
93
|
-
|
|
95
|
+
response_data = utils.unmarshal_json(
|
|
96
|
+
http_res.text, models.HTTPValidationErrorData
|
|
97
|
+
)
|
|
98
|
+
raise models.HTTPValidationError(data=response_data)
|
|
94
99
|
if utils.match_response(http_res, "4XX", "*"):
|
|
95
100
|
http_res_text = utils.stream_to_text(http_res)
|
|
96
101
|
raise models.SDKError(
|
|
@@ -139,6 +144,8 @@ class Embeddings(BaseSDK):
|
|
|
139
144
|
|
|
140
145
|
if server_url is not None:
|
|
141
146
|
base_url = server_url
|
|
147
|
+
else:
|
|
148
|
+
base_url = self._get_url(base_url, url_variables)
|
|
142
149
|
|
|
143
150
|
request = models.EmbeddingRequest(
|
|
144
151
|
model=model,
|
|
@@ -174,6 +181,7 @@ class Embeddings(BaseSDK):
|
|
|
174
181
|
|
|
175
182
|
http_res = await self.do_request_async(
|
|
176
183
|
hook_ctx=HookContext(
|
|
184
|
+
base_url=base_url or "",
|
|
177
185
|
operation_id="embeddings_v1_embeddings_post",
|
|
178
186
|
oauth2_scopes=[],
|
|
179
187
|
security_source=get_security_from_env(
|
|
@@ -185,12 +193,14 @@ class Embeddings(BaseSDK):
|
|
|
185
193
|
retry_config=retry_config,
|
|
186
194
|
)
|
|
187
195
|
|
|
188
|
-
|
|
196
|
+
response_data: Any = None
|
|
189
197
|
if utils.match_response(http_res, "200", "application/json"):
|
|
190
198
|
return utils.unmarshal_json(http_res.text, models.EmbeddingResponse)
|
|
191
199
|
if utils.match_response(http_res, "422", "application/json"):
|
|
192
|
-
|
|
193
|
-
|
|
200
|
+
response_data = utils.unmarshal_json(
|
|
201
|
+
http_res.text, models.HTTPValidationErrorData
|
|
202
|
+
)
|
|
203
|
+
raise models.HTTPValidationError(data=response_data)
|
|
194
204
|
if utils.match_response(http_res, "4XX", "*"):
|
|
195
205
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
196
206
|
raise models.SDKError(
|
mistralai/files.py
CHANGED
|
@@ -44,6 +44,8 @@ class Files(BaseSDK):
|
|
|
44
44
|
|
|
45
45
|
if server_url is not None:
|
|
46
46
|
base_url = server_url
|
|
47
|
+
else:
|
|
48
|
+
base_url = self._get_url(base_url, url_variables)
|
|
47
49
|
|
|
48
50
|
request = models.FilesAPIRoutesUploadFileMultiPartBodyParams(
|
|
49
51
|
file=utils.get_pydantic_model(file, models.File),
|
|
@@ -83,6 +85,7 @@ class Files(BaseSDK):
|
|
|
83
85
|
|
|
84
86
|
http_res = self.do_request(
|
|
85
87
|
hook_ctx=HookContext(
|
|
88
|
+
base_url=base_url or "",
|
|
86
89
|
operation_id="files_api_routes_upload_file",
|
|
87
90
|
oauth2_scopes=[],
|
|
88
91
|
security_source=get_security_from_env(
|
|
@@ -148,6 +151,8 @@ class Files(BaseSDK):
|
|
|
148
151
|
|
|
149
152
|
if server_url is not None:
|
|
150
153
|
base_url = server_url
|
|
154
|
+
else:
|
|
155
|
+
base_url = self._get_url(base_url, url_variables)
|
|
151
156
|
|
|
152
157
|
request = models.FilesAPIRoutesUploadFileMultiPartBodyParams(
|
|
153
158
|
file=utils.get_pydantic_model(file, models.File),
|
|
@@ -187,6 +192,7 @@ class Files(BaseSDK):
|
|
|
187
192
|
|
|
188
193
|
http_res = await self.do_request_async(
|
|
189
194
|
hook_ctx=HookContext(
|
|
195
|
+
base_url=base_url or "",
|
|
190
196
|
operation_id="files_api_routes_upload_file",
|
|
191
197
|
oauth2_scopes=[],
|
|
192
198
|
security_source=get_security_from_env(
|
|
@@ -256,6 +262,8 @@ class Files(BaseSDK):
|
|
|
256
262
|
|
|
257
263
|
if server_url is not None:
|
|
258
264
|
base_url = server_url
|
|
265
|
+
else:
|
|
266
|
+
base_url = self._get_url(base_url, url_variables)
|
|
259
267
|
|
|
260
268
|
request = models.FilesAPIRoutesListFilesRequest(
|
|
261
269
|
page=page,
|
|
@@ -292,6 +300,7 @@ class Files(BaseSDK):
|
|
|
292
300
|
|
|
293
301
|
http_res = self.do_request(
|
|
294
302
|
hook_ctx=HookContext(
|
|
303
|
+
base_url=base_url or "",
|
|
295
304
|
operation_id="files_api_routes_list_files",
|
|
296
305
|
oauth2_scopes=[],
|
|
297
306
|
security_source=get_security_from_env(
|
|
@@ -361,6 +370,8 @@ class Files(BaseSDK):
|
|
|
361
370
|
|
|
362
371
|
if server_url is not None:
|
|
363
372
|
base_url = server_url
|
|
373
|
+
else:
|
|
374
|
+
base_url = self._get_url(base_url, url_variables)
|
|
364
375
|
|
|
365
376
|
request = models.FilesAPIRoutesListFilesRequest(
|
|
366
377
|
page=page,
|
|
@@ -397,6 +408,7 @@ class Files(BaseSDK):
|
|
|
397
408
|
|
|
398
409
|
http_res = await self.do_request_async(
|
|
399
410
|
hook_ctx=HookContext(
|
|
411
|
+
base_url=base_url or "",
|
|
400
412
|
operation_id="files_api_routes_list_files",
|
|
401
413
|
oauth2_scopes=[],
|
|
402
414
|
security_source=get_security_from_env(
|
|
@@ -456,6 +468,8 @@ class Files(BaseSDK):
|
|
|
456
468
|
|
|
457
469
|
if server_url is not None:
|
|
458
470
|
base_url = server_url
|
|
471
|
+
else:
|
|
472
|
+
base_url = self._get_url(base_url, url_variables)
|
|
459
473
|
|
|
460
474
|
request = models.FilesAPIRoutesRetrieveFileRequest(
|
|
461
475
|
file_id=file_id,
|
|
@@ -487,6 +501,7 @@ class Files(BaseSDK):
|
|
|
487
501
|
|
|
488
502
|
http_res = self.do_request(
|
|
489
503
|
hook_ctx=HookContext(
|
|
504
|
+
base_url=base_url or "",
|
|
490
505
|
operation_id="files_api_routes_retrieve_file",
|
|
491
506
|
oauth2_scopes=[],
|
|
492
507
|
security_source=get_security_from_env(
|
|
@@ -546,6 +561,8 @@ class Files(BaseSDK):
|
|
|
546
561
|
|
|
547
562
|
if server_url is not None:
|
|
548
563
|
base_url = server_url
|
|
564
|
+
else:
|
|
565
|
+
base_url = self._get_url(base_url, url_variables)
|
|
549
566
|
|
|
550
567
|
request = models.FilesAPIRoutesRetrieveFileRequest(
|
|
551
568
|
file_id=file_id,
|
|
@@ -577,6 +594,7 @@ class Files(BaseSDK):
|
|
|
577
594
|
|
|
578
595
|
http_res = await self.do_request_async(
|
|
579
596
|
hook_ctx=HookContext(
|
|
597
|
+
base_url=base_url or "",
|
|
580
598
|
operation_id="files_api_routes_retrieve_file",
|
|
581
599
|
oauth2_scopes=[],
|
|
582
600
|
security_source=get_security_from_env(
|
|
@@ -636,6 +654,8 @@ class Files(BaseSDK):
|
|
|
636
654
|
|
|
637
655
|
if server_url is not None:
|
|
638
656
|
base_url = server_url
|
|
657
|
+
else:
|
|
658
|
+
base_url = self._get_url(base_url, url_variables)
|
|
639
659
|
|
|
640
660
|
request = models.FilesAPIRoutesDeleteFileRequest(
|
|
641
661
|
file_id=file_id,
|
|
@@ -667,6 +687,7 @@ class Files(BaseSDK):
|
|
|
667
687
|
|
|
668
688
|
http_res = self.do_request(
|
|
669
689
|
hook_ctx=HookContext(
|
|
690
|
+
base_url=base_url or "",
|
|
670
691
|
operation_id="files_api_routes_delete_file",
|
|
671
692
|
oauth2_scopes=[],
|
|
672
693
|
security_source=get_security_from_env(
|
|
@@ -726,6 +747,8 @@ class Files(BaseSDK):
|
|
|
726
747
|
|
|
727
748
|
if server_url is not None:
|
|
728
749
|
base_url = server_url
|
|
750
|
+
else:
|
|
751
|
+
base_url = self._get_url(base_url, url_variables)
|
|
729
752
|
|
|
730
753
|
request = models.FilesAPIRoutesDeleteFileRequest(
|
|
731
754
|
file_id=file_id,
|
|
@@ -757,6 +780,7 @@ class Files(BaseSDK):
|
|
|
757
780
|
|
|
758
781
|
http_res = await self.do_request_async(
|
|
759
782
|
hook_ctx=HookContext(
|
|
783
|
+
base_url=base_url or "",
|
|
760
784
|
operation_id="files_api_routes_delete_file",
|
|
761
785
|
oauth2_scopes=[],
|
|
762
786
|
security_source=get_security_from_env(
|
|
@@ -816,6 +840,8 @@ class Files(BaseSDK):
|
|
|
816
840
|
|
|
817
841
|
if server_url is not None:
|
|
818
842
|
base_url = server_url
|
|
843
|
+
else:
|
|
844
|
+
base_url = self._get_url(base_url, url_variables)
|
|
819
845
|
|
|
820
846
|
request = models.FilesAPIRoutesDownloadFileRequest(
|
|
821
847
|
file_id=file_id,
|
|
@@ -847,6 +873,7 @@ class Files(BaseSDK):
|
|
|
847
873
|
|
|
848
874
|
http_res = self.do_request(
|
|
849
875
|
hook_ctx=HookContext(
|
|
876
|
+
base_url=base_url or "",
|
|
850
877
|
operation_id="files_api_routes_download_file",
|
|
851
878
|
oauth2_scopes=[],
|
|
852
879
|
security_source=get_security_from_env(
|
|
@@ -907,6 +934,8 @@ class Files(BaseSDK):
|
|
|
907
934
|
|
|
908
935
|
if server_url is not None:
|
|
909
936
|
base_url = server_url
|
|
937
|
+
else:
|
|
938
|
+
base_url = self._get_url(base_url, url_variables)
|
|
910
939
|
|
|
911
940
|
request = models.FilesAPIRoutesDownloadFileRequest(
|
|
912
941
|
file_id=file_id,
|
|
@@ -938,6 +967,7 @@ class Files(BaseSDK):
|
|
|
938
967
|
|
|
939
968
|
http_res = await self.do_request_async(
|
|
940
969
|
hook_ctx=HookContext(
|
|
970
|
+
base_url=base_url or "",
|
|
941
971
|
operation_id="files_api_routes_download_file",
|
|
942
972
|
oauth2_scopes=[],
|
|
943
973
|
security_source=get_security_from_env(
|
|
@@ -998,6 +1028,8 @@ class Files(BaseSDK):
|
|
|
998
1028
|
|
|
999
1029
|
if server_url is not None:
|
|
1000
1030
|
base_url = server_url
|
|
1031
|
+
else:
|
|
1032
|
+
base_url = self._get_url(base_url, url_variables)
|
|
1001
1033
|
|
|
1002
1034
|
request = models.FilesAPIRoutesGetSignedURLRequest(
|
|
1003
1035
|
file_id=file_id,
|
|
@@ -1030,6 +1062,7 @@ class Files(BaseSDK):
|
|
|
1030
1062
|
|
|
1031
1063
|
http_res = self.do_request(
|
|
1032
1064
|
hook_ctx=HookContext(
|
|
1065
|
+
base_url=base_url or "",
|
|
1033
1066
|
operation_id="files_api_routes_get_signed_url",
|
|
1034
1067
|
oauth2_scopes=[],
|
|
1035
1068
|
security_source=get_security_from_env(
|
|
@@ -1089,6 +1122,8 @@ class Files(BaseSDK):
|
|
|
1089
1122
|
|
|
1090
1123
|
if server_url is not None:
|
|
1091
1124
|
base_url = server_url
|
|
1125
|
+
else:
|
|
1126
|
+
base_url = self._get_url(base_url, url_variables)
|
|
1092
1127
|
|
|
1093
1128
|
request = models.FilesAPIRoutesGetSignedURLRequest(
|
|
1094
1129
|
file_id=file_id,
|
|
@@ -1121,6 +1156,7 @@ class Files(BaseSDK):
|
|
|
1121
1156
|
|
|
1122
1157
|
http_res = await self.do_request_async(
|
|
1123
1158
|
hook_ctx=HookContext(
|
|
1159
|
+
base_url=base_url or "",
|
|
1124
1160
|
operation_id="files_api_routes_get_signed_url",
|
|
1125
1161
|
oauth2_scopes=[],
|
|
1126
1162
|
security_source=get_security_from_env(
|
mistralai/fim.py
CHANGED
|
@@ -60,6 +60,8 @@ class Fim(BaseSDK):
|
|
|
60
60
|
|
|
61
61
|
if server_url is not None:
|
|
62
62
|
base_url = server_url
|
|
63
|
+
else:
|
|
64
|
+
base_url = self._get_url(base_url, url_variables)
|
|
63
65
|
|
|
64
66
|
request = models.FIMCompletionRequest(
|
|
65
67
|
model=model,
|
|
@@ -103,6 +105,7 @@ class Fim(BaseSDK):
|
|
|
103
105
|
|
|
104
106
|
http_res = self.do_request(
|
|
105
107
|
hook_ctx=HookContext(
|
|
108
|
+
base_url=base_url or "",
|
|
106
109
|
operation_id="fim_completion_v1_fim_completions_post",
|
|
107
110
|
oauth2_scopes=[],
|
|
108
111
|
security_source=get_security_from_env(
|
|
@@ -114,12 +117,14 @@ class Fim(BaseSDK):
|
|
|
114
117
|
retry_config=retry_config,
|
|
115
118
|
)
|
|
116
119
|
|
|
117
|
-
|
|
120
|
+
response_data: Any = None
|
|
118
121
|
if utils.match_response(http_res, "200", "application/json"):
|
|
119
122
|
return utils.unmarshal_json(http_res.text, models.FIMCompletionResponse)
|
|
120
123
|
if utils.match_response(http_res, "422", "application/json"):
|
|
121
|
-
|
|
122
|
-
|
|
124
|
+
response_data = utils.unmarshal_json(
|
|
125
|
+
http_res.text, models.HTTPValidationErrorData
|
|
126
|
+
)
|
|
127
|
+
raise models.HTTPValidationError(data=response_data)
|
|
123
128
|
if utils.match_response(http_res, "4XX", "*"):
|
|
124
129
|
http_res_text = utils.stream_to_text(http_res)
|
|
125
130
|
raise models.SDKError(
|
|
@@ -189,6 +194,8 @@ class Fim(BaseSDK):
|
|
|
189
194
|
|
|
190
195
|
if server_url is not None:
|
|
191
196
|
base_url = server_url
|
|
197
|
+
else:
|
|
198
|
+
base_url = self._get_url(base_url, url_variables)
|
|
192
199
|
|
|
193
200
|
request = models.FIMCompletionRequest(
|
|
194
201
|
model=model,
|
|
@@ -232,6 +239,7 @@ class Fim(BaseSDK):
|
|
|
232
239
|
|
|
233
240
|
http_res = await self.do_request_async(
|
|
234
241
|
hook_ctx=HookContext(
|
|
242
|
+
base_url=base_url or "",
|
|
235
243
|
operation_id="fim_completion_v1_fim_completions_post",
|
|
236
244
|
oauth2_scopes=[],
|
|
237
245
|
security_source=get_security_from_env(
|
|
@@ -243,12 +251,14 @@ class Fim(BaseSDK):
|
|
|
243
251
|
retry_config=retry_config,
|
|
244
252
|
)
|
|
245
253
|
|
|
246
|
-
|
|
254
|
+
response_data: Any = None
|
|
247
255
|
if utils.match_response(http_res, "200", "application/json"):
|
|
248
256
|
return utils.unmarshal_json(http_res.text, models.FIMCompletionResponse)
|
|
249
257
|
if utils.match_response(http_res, "422", "application/json"):
|
|
250
|
-
|
|
251
|
-
|
|
258
|
+
response_data = utils.unmarshal_json(
|
|
259
|
+
http_res.text, models.HTTPValidationErrorData
|
|
260
|
+
)
|
|
261
|
+
raise models.HTTPValidationError(data=response_data)
|
|
252
262
|
if utils.match_response(http_res, "4XX", "*"):
|
|
253
263
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
254
264
|
raise models.SDKError(
|
|
@@ -318,6 +328,8 @@ class Fim(BaseSDK):
|
|
|
318
328
|
|
|
319
329
|
if server_url is not None:
|
|
320
330
|
base_url = server_url
|
|
331
|
+
else:
|
|
332
|
+
base_url = self._get_url(base_url, url_variables)
|
|
321
333
|
|
|
322
334
|
request = models.FIMCompletionStreamRequest(
|
|
323
335
|
model=model,
|
|
@@ -361,6 +373,7 @@ class Fim(BaseSDK):
|
|
|
361
373
|
|
|
362
374
|
http_res = self.do_request(
|
|
363
375
|
hook_ctx=HookContext(
|
|
376
|
+
base_url=base_url or "",
|
|
364
377
|
operation_id="stream_fim",
|
|
365
378
|
oauth2_scopes=[],
|
|
366
379
|
security_source=get_security_from_env(
|
|
@@ -373,7 +386,7 @@ class Fim(BaseSDK):
|
|
|
373
386
|
retry_config=retry_config,
|
|
374
387
|
)
|
|
375
388
|
|
|
376
|
-
|
|
389
|
+
response_data: Any = None
|
|
377
390
|
if utils.match_response(http_res, "200", "text/event-stream"):
|
|
378
391
|
return eventstreaming.EventStream(
|
|
379
392
|
http_res,
|
|
@@ -382,8 +395,10 @@ class Fim(BaseSDK):
|
|
|
382
395
|
)
|
|
383
396
|
if utils.match_response(http_res, "422", "application/json"):
|
|
384
397
|
http_res_text = utils.stream_to_text(http_res)
|
|
385
|
-
|
|
386
|
-
|
|
398
|
+
response_data = utils.unmarshal_json(
|
|
399
|
+
http_res_text, models.HTTPValidationErrorData
|
|
400
|
+
)
|
|
401
|
+
raise models.HTTPValidationError(data=response_data)
|
|
387
402
|
if utils.match_response(http_res, "4XX", "*"):
|
|
388
403
|
http_res_text = utils.stream_to_text(http_res)
|
|
389
404
|
raise models.SDKError(
|
|
@@ -453,6 +468,8 @@ class Fim(BaseSDK):
|
|
|
453
468
|
|
|
454
469
|
if server_url is not None:
|
|
455
470
|
base_url = server_url
|
|
471
|
+
else:
|
|
472
|
+
base_url = self._get_url(base_url, url_variables)
|
|
456
473
|
|
|
457
474
|
request = models.FIMCompletionStreamRequest(
|
|
458
475
|
model=model,
|
|
@@ -496,6 +513,7 @@ class Fim(BaseSDK):
|
|
|
496
513
|
|
|
497
514
|
http_res = await self.do_request_async(
|
|
498
515
|
hook_ctx=HookContext(
|
|
516
|
+
base_url=base_url or "",
|
|
499
517
|
operation_id="stream_fim",
|
|
500
518
|
oauth2_scopes=[],
|
|
501
519
|
security_source=get_security_from_env(
|
|
@@ -508,7 +526,7 @@ class Fim(BaseSDK):
|
|
|
508
526
|
retry_config=retry_config,
|
|
509
527
|
)
|
|
510
528
|
|
|
511
|
-
|
|
529
|
+
response_data: Any = None
|
|
512
530
|
if utils.match_response(http_res, "200", "text/event-stream"):
|
|
513
531
|
return eventstreaming.EventStreamAsync(
|
|
514
532
|
http_res,
|
|
@@ -517,8 +535,10 @@ class Fim(BaseSDK):
|
|
|
517
535
|
)
|
|
518
536
|
if utils.match_response(http_res, "422", "application/json"):
|
|
519
537
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
520
|
-
|
|
521
|
-
|
|
538
|
+
response_data = utils.unmarshal_json(
|
|
539
|
+
http_res_text, models.HTTPValidationErrorData
|
|
540
|
+
)
|
|
541
|
+
raise models.HTTPValidationError(data=response_data)
|
|
522
542
|
if utils.match_response(http_res, "4XX", "*"):
|
|
523
543
|
http_res_text = await utils.stream_to_text_async(http_res)
|
|
524
544
|
raise models.SDKError(
|
mistralai/httpclient.py
CHANGED
|
@@ -94,7 +94,9 @@ class ClientOwner(Protocol):
|
|
|
94
94
|
def close_clients(
|
|
95
95
|
owner: ClientOwner,
|
|
96
96
|
sync_client: Union[HttpClient, None],
|
|
97
|
+
sync_client_supplied: bool,
|
|
97
98
|
async_client: Union[AsyncHttpClient, None],
|
|
99
|
+
async_client_supplied: bool,
|
|
98
100
|
) -> None:
|
|
99
101
|
"""
|
|
100
102
|
A finalizer function that is meant to be used with weakref.finalize to close
|
|
@@ -107,13 +109,13 @@ def close_clients(
|
|
|
107
109
|
owner.client = None
|
|
108
110
|
owner.async_client = None
|
|
109
111
|
|
|
110
|
-
if sync_client is not None:
|
|
112
|
+
if sync_client is not None and not sync_client_supplied:
|
|
111
113
|
try:
|
|
112
114
|
sync_client.close()
|
|
113
115
|
except Exception:
|
|
114
116
|
pass
|
|
115
117
|
|
|
116
|
-
if async_client is not None:
|
|
118
|
+
if async_client is not None and not async_client_supplied:
|
|
117
119
|
is_async = False
|
|
118
120
|
try:
|
|
119
121
|
asyncio.get_running_loop()
|