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/jobs.py
CHANGED
|
@@ -52,6 +52,8 @@ class Jobs(BaseSDK):
|
|
|
52
52
|
|
|
53
53
|
if server_url is not None:
|
|
54
54
|
base_url = server_url
|
|
55
|
+
else:
|
|
56
|
+
base_url = self._get_url(base_url, url_variables)
|
|
55
57
|
|
|
56
58
|
request = models.JobsAPIRoutesFineTuningGetFineTuningJobsRequest(
|
|
57
59
|
page=page,
|
|
@@ -91,6 +93,7 @@ class Jobs(BaseSDK):
|
|
|
91
93
|
|
|
92
94
|
http_res = self.do_request(
|
|
93
95
|
hook_ctx=HookContext(
|
|
96
|
+
base_url=base_url or "",
|
|
94
97
|
operation_id="jobs_api_routes_fine_tuning_get_fine_tuning_jobs",
|
|
95
98
|
oauth2_scopes=[],
|
|
96
99
|
security_source=get_security_from_env(
|
|
@@ -166,6 +169,8 @@ class Jobs(BaseSDK):
|
|
|
166
169
|
|
|
167
170
|
if server_url is not None:
|
|
168
171
|
base_url = server_url
|
|
172
|
+
else:
|
|
173
|
+
base_url = self._get_url(base_url, url_variables)
|
|
169
174
|
|
|
170
175
|
request = models.JobsAPIRoutesFineTuningGetFineTuningJobsRequest(
|
|
171
176
|
page=page,
|
|
@@ -205,6 +210,7 @@ class Jobs(BaseSDK):
|
|
|
205
210
|
|
|
206
211
|
http_res = await self.do_request_async(
|
|
207
212
|
hook_ctx=HookContext(
|
|
213
|
+
base_url=base_url or "",
|
|
208
214
|
operation_id="jobs_api_routes_fine_tuning_get_fine_tuning_jobs",
|
|
209
215
|
oauth2_scopes=[],
|
|
210
216
|
security_source=get_security_from_env(
|
|
@@ -290,6 +296,8 @@ class Jobs(BaseSDK):
|
|
|
290
296
|
|
|
291
297
|
if server_url is not None:
|
|
292
298
|
base_url = server_url
|
|
299
|
+
else:
|
|
300
|
+
base_url = self._get_url(base_url, url_variables)
|
|
293
301
|
|
|
294
302
|
request = models.JobIn(
|
|
295
303
|
model=model,
|
|
@@ -339,6 +347,7 @@ class Jobs(BaseSDK):
|
|
|
339
347
|
|
|
340
348
|
http_res = self.do_request(
|
|
341
349
|
hook_ctx=HookContext(
|
|
350
|
+
base_url=base_url or "",
|
|
342
351
|
operation_id="jobs_api_routes_fine_tuning_create_fine_tuning_job",
|
|
343
352
|
oauth2_scopes=[],
|
|
344
353
|
security_source=get_security_from_env(
|
|
@@ -426,6 +435,8 @@ class Jobs(BaseSDK):
|
|
|
426
435
|
|
|
427
436
|
if server_url is not None:
|
|
428
437
|
base_url = server_url
|
|
438
|
+
else:
|
|
439
|
+
base_url = self._get_url(base_url, url_variables)
|
|
429
440
|
|
|
430
441
|
request = models.JobIn(
|
|
431
442
|
model=model,
|
|
@@ -475,6 +486,7 @@ class Jobs(BaseSDK):
|
|
|
475
486
|
|
|
476
487
|
http_res = await self.do_request_async(
|
|
477
488
|
hook_ctx=HookContext(
|
|
489
|
+
base_url=base_url or "",
|
|
478
490
|
operation_id="jobs_api_routes_fine_tuning_create_fine_tuning_job",
|
|
479
491
|
oauth2_scopes=[],
|
|
480
492
|
security_source=get_security_from_env(
|
|
@@ -536,6 +548,8 @@ class Jobs(BaseSDK):
|
|
|
536
548
|
|
|
537
549
|
if server_url is not None:
|
|
538
550
|
base_url = server_url
|
|
551
|
+
else:
|
|
552
|
+
base_url = self._get_url(base_url, url_variables)
|
|
539
553
|
|
|
540
554
|
request = models.JobsAPIRoutesFineTuningGetFineTuningJobRequest(
|
|
541
555
|
job_id=job_id,
|
|
@@ -567,6 +581,7 @@ class Jobs(BaseSDK):
|
|
|
567
581
|
|
|
568
582
|
http_res = self.do_request(
|
|
569
583
|
hook_ctx=HookContext(
|
|
584
|
+
base_url=base_url or "",
|
|
570
585
|
operation_id="jobs_api_routes_fine_tuning_get_fine_tuning_job",
|
|
571
586
|
oauth2_scopes=[],
|
|
572
587
|
security_source=get_security_from_env(
|
|
@@ -626,6 +641,8 @@ class Jobs(BaseSDK):
|
|
|
626
641
|
|
|
627
642
|
if server_url is not None:
|
|
628
643
|
base_url = server_url
|
|
644
|
+
else:
|
|
645
|
+
base_url = self._get_url(base_url, url_variables)
|
|
629
646
|
|
|
630
647
|
request = models.JobsAPIRoutesFineTuningGetFineTuningJobRequest(
|
|
631
648
|
job_id=job_id,
|
|
@@ -657,6 +674,7 @@ class Jobs(BaseSDK):
|
|
|
657
674
|
|
|
658
675
|
http_res = await self.do_request_async(
|
|
659
676
|
hook_ctx=HookContext(
|
|
677
|
+
base_url=base_url or "",
|
|
660
678
|
operation_id="jobs_api_routes_fine_tuning_get_fine_tuning_job",
|
|
661
679
|
oauth2_scopes=[],
|
|
662
680
|
security_source=get_security_from_env(
|
|
@@ -716,6 +734,8 @@ class Jobs(BaseSDK):
|
|
|
716
734
|
|
|
717
735
|
if server_url is not None:
|
|
718
736
|
base_url = server_url
|
|
737
|
+
else:
|
|
738
|
+
base_url = self._get_url(base_url, url_variables)
|
|
719
739
|
|
|
720
740
|
request = models.JobsAPIRoutesFineTuningCancelFineTuningJobRequest(
|
|
721
741
|
job_id=job_id,
|
|
@@ -747,6 +767,7 @@ class Jobs(BaseSDK):
|
|
|
747
767
|
|
|
748
768
|
http_res = self.do_request(
|
|
749
769
|
hook_ctx=HookContext(
|
|
770
|
+
base_url=base_url or "",
|
|
750
771
|
operation_id="jobs_api_routes_fine_tuning_cancel_fine_tuning_job",
|
|
751
772
|
oauth2_scopes=[],
|
|
752
773
|
security_source=get_security_from_env(
|
|
@@ -806,6 +827,8 @@ class Jobs(BaseSDK):
|
|
|
806
827
|
|
|
807
828
|
if server_url is not None:
|
|
808
829
|
base_url = server_url
|
|
830
|
+
else:
|
|
831
|
+
base_url = self._get_url(base_url, url_variables)
|
|
809
832
|
|
|
810
833
|
request = models.JobsAPIRoutesFineTuningCancelFineTuningJobRequest(
|
|
811
834
|
job_id=job_id,
|
|
@@ -837,6 +860,7 @@ class Jobs(BaseSDK):
|
|
|
837
860
|
|
|
838
861
|
http_res = await self.do_request_async(
|
|
839
862
|
hook_ctx=HookContext(
|
|
863
|
+
base_url=base_url or "",
|
|
840
864
|
operation_id="jobs_api_routes_fine_tuning_cancel_fine_tuning_job",
|
|
841
865
|
oauth2_scopes=[],
|
|
842
866
|
security_source=get_security_from_env(
|
|
@@ -896,6 +920,8 @@ class Jobs(BaseSDK):
|
|
|
896
920
|
|
|
897
921
|
if server_url is not None:
|
|
898
922
|
base_url = server_url
|
|
923
|
+
else:
|
|
924
|
+
base_url = self._get_url(base_url, url_variables)
|
|
899
925
|
|
|
900
926
|
request = models.JobsAPIRoutesFineTuningStartFineTuningJobRequest(
|
|
901
927
|
job_id=job_id,
|
|
@@ -927,6 +953,7 @@ class Jobs(BaseSDK):
|
|
|
927
953
|
|
|
928
954
|
http_res = self.do_request(
|
|
929
955
|
hook_ctx=HookContext(
|
|
956
|
+
base_url=base_url or "",
|
|
930
957
|
operation_id="jobs_api_routes_fine_tuning_start_fine_tuning_job",
|
|
931
958
|
oauth2_scopes=[],
|
|
932
959
|
security_source=get_security_from_env(
|
|
@@ -986,6 +1013,8 @@ class Jobs(BaseSDK):
|
|
|
986
1013
|
|
|
987
1014
|
if server_url is not None:
|
|
988
1015
|
base_url = server_url
|
|
1016
|
+
else:
|
|
1017
|
+
base_url = self._get_url(base_url, url_variables)
|
|
989
1018
|
|
|
990
1019
|
request = models.JobsAPIRoutesFineTuningStartFineTuningJobRequest(
|
|
991
1020
|
job_id=job_id,
|
|
@@ -1017,6 +1046,7 @@ class Jobs(BaseSDK):
|
|
|
1017
1046
|
|
|
1018
1047
|
http_res = await self.do_request_async(
|
|
1019
1048
|
hook_ctx=HookContext(
|
|
1049
|
+
base_url=base_url or "",
|
|
1020
1050
|
operation_id="jobs_api_routes_fine_tuning_start_fine_tuning_job",
|
|
1021
1051
|
oauth2_scopes=[],
|
|
1022
1052
|
security_source=get_security_from_env(
|
mistralai/mistral_jobs.py
CHANGED
|
@@ -48,6 +48,8 @@ class MistralJobs(BaseSDK):
|
|
|
48
48
|
|
|
49
49
|
if server_url is not None:
|
|
50
50
|
base_url = server_url
|
|
51
|
+
else:
|
|
52
|
+
base_url = self._get_url(base_url, url_variables)
|
|
51
53
|
|
|
52
54
|
request = models.JobsAPIRoutesBatchGetBatchJobsRequest(
|
|
53
55
|
page=page,
|
|
@@ -85,6 +87,7 @@ class MistralJobs(BaseSDK):
|
|
|
85
87
|
|
|
86
88
|
http_res = self.do_request(
|
|
87
89
|
hook_ctx=HookContext(
|
|
90
|
+
base_url=base_url or "",
|
|
88
91
|
operation_id="jobs_api_routes_batch_get_batch_jobs",
|
|
89
92
|
oauth2_scopes=[],
|
|
90
93
|
security_source=get_security_from_env(
|
|
@@ -156,6 +159,8 @@ class MistralJobs(BaseSDK):
|
|
|
156
159
|
|
|
157
160
|
if server_url is not None:
|
|
158
161
|
base_url = server_url
|
|
162
|
+
else:
|
|
163
|
+
base_url = self._get_url(base_url, url_variables)
|
|
159
164
|
|
|
160
165
|
request = models.JobsAPIRoutesBatchGetBatchJobsRequest(
|
|
161
166
|
page=page,
|
|
@@ -193,6 +198,7 @@ class MistralJobs(BaseSDK):
|
|
|
193
198
|
|
|
194
199
|
http_res = await self.do_request_async(
|
|
195
200
|
hook_ctx=HookContext(
|
|
201
|
+
base_url=base_url or "",
|
|
196
202
|
operation_id="jobs_api_routes_batch_get_batch_jobs",
|
|
197
203
|
oauth2_scopes=[],
|
|
198
204
|
security_source=get_security_from_env(
|
|
@@ -260,6 +266,8 @@ class MistralJobs(BaseSDK):
|
|
|
260
266
|
|
|
261
267
|
if server_url is not None:
|
|
262
268
|
base_url = server_url
|
|
269
|
+
else:
|
|
270
|
+
base_url = self._get_url(base_url, url_variables)
|
|
263
271
|
|
|
264
272
|
request = models.BatchJobIn(
|
|
265
273
|
input_files=input_files,
|
|
@@ -298,6 +306,7 @@ class MistralJobs(BaseSDK):
|
|
|
298
306
|
|
|
299
307
|
http_res = self.do_request(
|
|
300
308
|
hook_ctx=HookContext(
|
|
309
|
+
base_url=base_url or "",
|
|
301
310
|
operation_id="jobs_api_routes_batch_create_batch_job",
|
|
302
311
|
oauth2_scopes=[],
|
|
303
312
|
security_source=get_security_from_env(
|
|
@@ -365,6 +374,8 @@ class MistralJobs(BaseSDK):
|
|
|
365
374
|
|
|
366
375
|
if server_url is not None:
|
|
367
376
|
base_url = server_url
|
|
377
|
+
else:
|
|
378
|
+
base_url = self._get_url(base_url, url_variables)
|
|
368
379
|
|
|
369
380
|
request = models.BatchJobIn(
|
|
370
381
|
input_files=input_files,
|
|
@@ -403,6 +414,7 @@ class MistralJobs(BaseSDK):
|
|
|
403
414
|
|
|
404
415
|
http_res = await self.do_request_async(
|
|
405
416
|
hook_ctx=HookContext(
|
|
417
|
+
base_url=base_url or "",
|
|
406
418
|
operation_id="jobs_api_routes_batch_create_batch_job",
|
|
407
419
|
oauth2_scopes=[],
|
|
408
420
|
security_source=get_security_from_env(
|
|
@@ -462,6 +474,8 @@ class MistralJobs(BaseSDK):
|
|
|
462
474
|
|
|
463
475
|
if server_url is not None:
|
|
464
476
|
base_url = server_url
|
|
477
|
+
else:
|
|
478
|
+
base_url = self._get_url(base_url, url_variables)
|
|
465
479
|
|
|
466
480
|
request = models.JobsAPIRoutesBatchGetBatchJobRequest(
|
|
467
481
|
job_id=job_id,
|
|
@@ -493,6 +507,7 @@ class MistralJobs(BaseSDK):
|
|
|
493
507
|
|
|
494
508
|
http_res = self.do_request(
|
|
495
509
|
hook_ctx=HookContext(
|
|
510
|
+
base_url=base_url or "",
|
|
496
511
|
operation_id="jobs_api_routes_batch_get_batch_job",
|
|
497
512
|
oauth2_scopes=[],
|
|
498
513
|
security_source=get_security_from_env(
|
|
@@ -552,6 +567,8 @@ class MistralJobs(BaseSDK):
|
|
|
552
567
|
|
|
553
568
|
if server_url is not None:
|
|
554
569
|
base_url = server_url
|
|
570
|
+
else:
|
|
571
|
+
base_url = self._get_url(base_url, url_variables)
|
|
555
572
|
|
|
556
573
|
request = models.JobsAPIRoutesBatchGetBatchJobRequest(
|
|
557
574
|
job_id=job_id,
|
|
@@ -583,6 +600,7 @@ class MistralJobs(BaseSDK):
|
|
|
583
600
|
|
|
584
601
|
http_res = await self.do_request_async(
|
|
585
602
|
hook_ctx=HookContext(
|
|
603
|
+
base_url=base_url or "",
|
|
586
604
|
operation_id="jobs_api_routes_batch_get_batch_job",
|
|
587
605
|
oauth2_scopes=[],
|
|
588
606
|
security_source=get_security_from_env(
|
|
@@ -642,6 +660,8 @@ class MistralJobs(BaseSDK):
|
|
|
642
660
|
|
|
643
661
|
if server_url is not None:
|
|
644
662
|
base_url = server_url
|
|
663
|
+
else:
|
|
664
|
+
base_url = self._get_url(base_url, url_variables)
|
|
645
665
|
|
|
646
666
|
request = models.JobsAPIRoutesBatchCancelBatchJobRequest(
|
|
647
667
|
job_id=job_id,
|
|
@@ -673,6 +693,7 @@ class MistralJobs(BaseSDK):
|
|
|
673
693
|
|
|
674
694
|
http_res = self.do_request(
|
|
675
695
|
hook_ctx=HookContext(
|
|
696
|
+
base_url=base_url or "",
|
|
676
697
|
operation_id="jobs_api_routes_batch_cancel_batch_job",
|
|
677
698
|
oauth2_scopes=[],
|
|
678
699
|
security_source=get_security_from_env(
|
|
@@ -732,6 +753,8 @@ class MistralJobs(BaseSDK):
|
|
|
732
753
|
|
|
733
754
|
if server_url is not None:
|
|
734
755
|
base_url = server_url
|
|
756
|
+
else:
|
|
757
|
+
base_url = self._get_url(base_url, url_variables)
|
|
735
758
|
|
|
736
759
|
request = models.JobsAPIRoutesBatchCancelBatchJobRequest(
|
|
737
760
|
job_id=job_id,
|
|
@@ -763,6 +786,7 @@ class MistralJobs(BaseSDK):
|
|
|
763
786
|
|
|
764
787
|
http_res = await self.do_request_async(
|
|
765
788
|
hook_ctx=HookContext(
|
|
789
|
+
base_url=base_url or "",
|
|
766
790
|
operation_id="jobs_api_routes_batch_cancel_batch_job",
|
|
767
791
|
oauth2_scopes=[],
|
|
768
792
|
security_source=get_security_from_env(
|
|
@@ -85,6 +85,7 @@ class AgentsCompletionRequestTypedDict(TypedDict):
|
|
|
85
85
|
n: NotRequired[Nullable[int]]
|
|
86
86
|
r"""Number of completions to return for each request, input tokens are only billed once."""
|
|
87
87
|
prediction: NotRequired[PredictionTypedDict]
|
|
88
|
+
parallel_tool_calls: NotRequired[bool]
|
|
88
89
|
|
|
89
90
|
|
|
90
91
|
class AgentsCompletionRequest(BaseModel):
|
|
@@ -123,6 +124,8 @@ class AgentsCompletionRequest(BaseModel):
|
|
|
123
124
|
|
|
124
125
|
prediction: Optional[Prediction] = None
|
|
125
126
|
|
|
127
|
+
parallel_tool_calls: Optional[bool] = None
|
|
128
|
+
|
|
126
129
|
@model_serializer(mode="wrap")
|
|
127
130
|
def serialize_model(self, handler):
|
|
128
131
|
optional_fields = [
|
|
@@ -137,6 +140,7 @@ class AgentsCompletionRequest(BaseModel):
|
|
|
137
140
|
"frequency_penalty",
|
|
138
141
|
"n",
|
|
139
142
|
"prediction",
|
|
143
|
+
"parallel_tool_calls",
|
|
140
144
|
]
|
|
141
145
|
nullable_fields = ["max_tokens", "random_seed", "tools", "n"]
|
|
142
146
|
null_default_fields = []
|
|
@@ -84,6 +84,7 @@ class AgentsCompletionStreamRequestTypedDict(TypedDict):
|
|
|
84
84
|
n: NotRequired[Nullable[int]]
|
|
85
85
|
r"""Number of completions to return for each request, input tokens are only billed once."""
|
|
86
86
|
prediction: NotRequired[PredictionTypedDict]
|
|
87
|
+
parallel_tool_calls: NotRequired[bool]
|
|
87
88
|
|
|
88
89
|
|
|
89
90
|
class AgentsCompletionStreamRequest(BaseModel):
|
|
@@ -121,6 +122,8 @@ class AgentsCompletionStreamRequest(BaseModel):
|
|
|
121
122
|
|
|
122
123
|
prediction: Optional[Prediction] = None
|
|
123
124
|
|
|
125
|
+
parallel_tool_calls: Optional[bool] = None
|
|
126
|
+
|
|
124
127
|
@model_serializer(mode="wrap")
|
|
125
128
|
def serialize_model(self, handler):
|
|
126
129
|
optional_fields = [
|
|
@@ -135,6 +138,7 @@ class AgentsCompletionStreamRequest(BaseModel):
|
|
|
135
138
|
"frequency_penalty",
|
|
136
139
|
"n",
|
|
137
140
|
"prediction",
|
|
141
|
+
"parallel_tool_calls",
|
|
138
142
|
]
|
|
139
143
|
nullable_fields = ["max_tokens", "random_seed", "tools", "n"]
|
|
140
144
|
null_default_fields = []
|
|
@@ -85,6 +85,7 @@ class ChatCompletionRequestTypedDict(TypedDict):
|
|
|
85
85
|
n: NotRequired[Nullable[int]]
|
|
86
86
|
r"""Number of completions to return for each request, input tokens are only billed once."""
|
|
87
87
|
prediction: NotRequired[PredictionTypedDict]
|
|
88
|
+
parallel_tool_calls: NotRequired[bool]
|
|
88
89
|
safe_prompt: NotRequired[bool]
|
|
89
90
|
r"""Whether to inject a safety prompt before all conversations."""
|
|
90
91
|
|
|
@@ -131,6 +132,8 @@ class ChatCompletionRequest(BaseModel):
|
|
|
131
132
|
|
|
132
133
|
prediction: Optional[Prediction] = None
|
|
133
134
|
|
|
135
|
+
parallel_tool_calls: Optional[bool] = None
|
|
136
|
+
|
|
134
137
|
safe_prompt: Optional[bool] = None
|
|
135
138
|
r"""Whether to inject a safety prompt before all conversations."""
|
|
136
139
|
|
|
@@ -150,6 +153,7 @@ class ChatCompletionRequest(BaseModel):
|
|
|
150
153
|
"frequency_penalty",
|
|
151
154
|
"n",
|
|
152
155
|
"prediction",
|
|
156
|
+
"parallel_tool_calls",
|
|
153
157
|
"safe_prompt",
|
|
154
158
|
]
|
|
155
159
|
nullable_fields = ["temperature", "max_tokens", "random_seed", "tools", "n"]
|
|
@@ -88,6 +88,7 @@ class ChatCompletionStreamRequestTypedDict(TypedDict):
|
|
|
88
88
|
n: NotRequired[Nullable[int]]
|
|
89
89
|
r"""Number of completions to return for each request, input tokens are only billed once."""
|
|
90
90
|
prediction: NotRequired[PredictionTypedDict]
|
|
91
|
+
parallel_tool_calls: NotRequired[bool]
|
|
91
92
|
safe_prompt: NotRequired[bool]
|
|
92
93
|
r"""Whether to inject a safety prompt before all conversations."""
|
|
93
94
|
|
|
@@ -133,6 +134,8 @@ class ChatCompletionStreamRequest(BaseModel):
|
|
|
133
134
|
|
|
134
135
|
prediction: Optional[Prediction] = None
|
|
135
136
|
|
|
137
|
+
parallel_tool_calls: Optional[bool] = None
|
|
138
|
+
|
|
136
139
|
safe_prompt: Optional[bool] = None
|
|
137
140
|
r"""Whether to inject a safety prompt before all conversations."""
|
|
138
141
|
|
|
@@ -152,6 +155,7 @@ class ChatCompletionStreamRequest(BaseModel):
|
|
|
152
155
|
"frequency_penalty",
|
|
153
156
|
"n",
|
|
154
157
|
"prediction",
|
|
158
|
+
"parallel_tool_calls",
|
|
155
159
|
"safe_prompt",
|
|
156
160
|
]
|
|
157
161
|
nullable_fields = ["temperature", "max_tokens", "random_seed", "tools", "n"]
|
mistralai/models/function.py
CHANGED
mistralai/models/jsonschema.py
CHANGED