mistralai 0.4.2__py3-none-any.whl → 1.0.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.
Files changed (246) hide show
  1. mistralai/__init__.py +5 -0
  2. mistralai/_hooks/__init__.py +5 -0
  3. mistralai/_hooks/custom_user_agent.py +16 -0
  4. mistralai/_hooks/deprecation_warning.py +26 -0
  5. mistralai/_hooks/registration.py +17 -0
  6. mistralai/_hooks/sdkhooks.py +57 -0
  7. mistralai/_hooks/types.py +76 -0
  8. mistralai/agents.py +434 -0
  9. mistralai/async_client.py +5 -413
  10. mistralai/basesdk.py +253 -0
  11. mistralai/chat.py +470 -0
  12. mistralai/client.py +5 -414
  13. mistralai/embeddings.py +182 -0
  14. mistralai/files.py +600 -84
  15. mistralai/fim.py +438 -0
  16. mistralai/fine_tuning.py +16 -0
  17. mistralai/httpclient.py +78 -0
  18. mistralai/jobs.py +822 -150
  19. mistralai/models/__init__.py +82 -0
  20. mistralai/models/agentscompletionrequest.py +96 -0
  21. mistralai/models/agentscompletionstreamrequest.py +92 -0
  22. mistralai/models/archiveftmodelout.py +19 -0
  23. mistralai/models/assistantmessage.py +53 -0
  24. mistralai/models/chatcompletionchoice.py +22 -0
  25. mistralai/models/chatcompletionrequest.py +109 -0
  26. mistralai/models/chatcompletionresponse.py +27 -0
  27. mistralai/models/chatcompletionstreamrequest.py +107 -0
  28. mistralai/models/checkpointout.py +25 -0
  29. mistralai/models/completionchunk.py +27 -0
  30. mistralai/models/completionevent.py +15 -0
  31. mistralai/models/completionresponsestreamchoice.py +48 -0
  32. mistralai/models/contentchunk.py +17 -0
  33. mistralai/models/delete_model_v1_models_model_id_deleteop.py +18 -0
  34. mistralai/models/deletefileout.py +24 -0
  35. mistralai/models/deletemodelout.py +25 -0
  36. mistralai/models/deltamessage.py +47 -0
  37. mistralai/models/detailedjobout.py +91 -0
  38. mistralai/models/embeddingrequest.py +61 -0
  39. mistralai/models/embeddingresponse.py +24 -0
  40. mistralai/models/embeddingresponsedata.py +19 -0
  41. mistralai/models/eventout.py +50 -0
  42. mistralai/models/files_api_routes_delete_fileop.py +16 -0
  43. mistralai/models/files_api_routes_retrieve_fileop.py +16 -0
  44. mistralai/models/files_api_routes_upload_fileop.py +51 -0
  45. mistralai/models/fileschema.py +71 -0
  46. mistralai/models/fimcompletionrequest.py +94 -0
  47. mistralai/models/fimcompletionresponse.py +27 -0
  48. mistralai/models/fimcompletionstreamrequest.py +92 -0
  49. mistralai/models/finetuneablemodel.py +8 -0
  50. mistralai/models/ftmodelcapabilitiesout.py +21 -0
  51. mistralai/models/ftmodelout.py +65 -0
  52. mistralai/models/function.py +19 -0
  53. mistralai/models/functioncall.py +22 -0
  54. mistralai/models/githubrepositoryin.py +52 -0
  55. mistralai/models/githubrepositoryout.py +52 -0
  56. mistralai/models/httpvalidationerror.py +23 -0
  57. mistralai/models/jobin.py +73 -0
  58. mistralai/models/jobmetadataout.py +54 -0
  59. mistralai/models/jobout.py +107 -0
  60. mistralai/models/jobs_api_routes_fine_tuning_archive_fine_tuned_modelop.py +18 -0
  61. mistralai/models/jobs_api_routes_fine_tuning_cancel_fine_tuning_jobop.py +18 -0
  62. mistralai/models/jobs_api_routes_fine_tuning_create_fine_tuning_jobop.py +15 -0
  63. mistralai/models/jobs_api_routes_fine_tuning_get_fine_tuning_jobop.py +18 -0
  64. mistralai/models/jobs_api_routes_fine_tuning_get_fine_tuning_jobsop.py +81 -0
  65. mistralai/models/jobs_api_routes_fine_tuning_start_fine_tuning_jobop.py +16 -0
  66. mistralai/models/jobs_api_routes_fine_tuning_unarchive_fine_tuned_modelop.py +18 -0
  67. mistralai/models/jobs_api_routes_fine_tuning_update_fine_tuned_modelop.py +21 -0
  68. mistralai/models/jobsout.py +20 -0
  69. mistralai/models/legacyjobmetadataout.py +80 -0
  70. mistralai/models/listfilesout.py +17 -0
  71. mistralai/models/metricout.py +50 -0
  72. mistralai/models/modelcapabilities.py +21 -0
  73. mistralai/models/modelcard.py +66 -0
  74. mistralai/models/modellist.py +18 -0
  75. mistralai/models/responseformat.py +18 -0
  76. mistralai/models/retrieve_model_v1_models_model_id_getop.py +18 -0
  77. mistralai/models/retrievefileout.py +71 -0
  78. mistralai/models/sampletype.py +7 -0
  79. mistralai/models/sdkerror.py +22 -0
  80. mistralai/models/security.py +16 -0
  81. mistralai/models/source.py +7 -0
  82. mistralai/models/systemmessage.py +26 -0
  83. mistralai/models/textchunk.py +17 -0
  84. mistralai/models/tool.py +18 -0
  85. mistralai/models/toolcall.py +20 -0
  86. mistralai/models/toolmessage.py +50 -0
  87. mistralai/models/trainingfile.py +17 -0
  88. mistralai/models/trainingparameters.py +48 -0
  89. mistralai/models/trainingparametersin.py +56 -0
  90. mistralai/models/unarchiveftmodelout.py +19 -0
  91. mistralai/models/updateftmodelin.py +44 -0
  92. mistralai/models/uploadfileout.py +71 -0
  93. mistralai/models/usageinfo.py +18 -0
  94. mistralai/models/usermessage.py +26 -0
  95. mistralai/models/validationerror.py +24 -0
  96. mistralai/models/wandbintegration.py +56 -0
  97. mistralai/models/wandbintegrationout.py +52 -0
  98. mistralai/models_.py +928 -0
  99. mistralai/py.typed +1 -0
  100. mistralai/sdk.py +119 -0
  101. mistralai/sdkconfiguration.py +54 -0
  102. mistralai/types/__init__.py +21 -0
  103. mistralai/types/basemodel.py +39 -0
  104. mistralai/utils/__init__.py +86 -0
  105. mistralai/utils/annotations.py +19 -0
  106. mistralai/utils/enums.py +34 -0
  107. mistralai/utils/eventstreaming.py +178 -0
  108. mistralai/utils/forms.py +207 -0
  109. mistralai/utils/headers.py +136 -0
  110. mistralai/utils/logger.py +16 -0
  111. mistralai/utils/metadata.py +118 -0
  112. mistralai/utils/queryparams.py +203 -0
  113. mistralai/utils/requestbodies.py +66 -0
  114. mistralai/utils/retries.py +216 -0
  115. mistralai/utils/security.py +185 -0
  116. mistralai/utils/serializers.py +181 -0
  117. mistralai/utils/url.py +150 -0
  118. mistralai/utils/values.py +128 -0
  119. {mistralai-0.4.2.dist-info → mistralai-1.0.0.dist-info}/LICENSE +1 -1
  120. mistralai-1.0.0.dist-info/METADATA +695 -0
  121. mistralai-1.0.0.dist-info/RECORD +235 -0
  122. mistralai_azure/__init__.py +5 -0
  123. mistralai_azure/_hooks/__init__.py +5 -0
  124. mistralai_azure/_hooks/custom_user_agent.py +16 -0
  125. mistralai_azure/_hooks/registration.py +15 -0
  126. mistralai_azure/_hooks/sdkhooks.py +57 -0
  127. mistralai_azure/_hooks/types.py +76 -0
  128. mistralai_azure/basesdk.py +253 -0
  129. mistralai_azure/chat.py +470 -0
  130. mistralai_azure/httpclient.py +78 -0
  131. mistralai_azure/models/__init__.py +28 -0
  132. mistralai_azure/models/assistantmessage.py +53 -0
  133. mistralai_azure/models/chatcompletionchoice.py +22 -0
  134. mistralai_azure/models/chatcompletionrequest.py +109 -0
  135. mistralai_azure/models/chatcompletionresponse.py +27 -0
  136. mistralai_azure/models/chatcompletionstreamrequest.py +107 -0
  137. mistralai_azure/models/completionchunk.py +27 -0
  138. mistralai_azure/models/completionevent.py +15 -0
  139. mistralai_azure/models/completionresponsestreamchoice.py +48 -0
  140. mistralai_azure/models/contentchunk.py +17 -0
  141. mistralai_azure/models/deltamessage.py +47 -0
  142. mistralai_azure/models/function.py +19 -0
  143. mistralai_azure/models/functioncall.py +22 -0
  144. mistralai_azure/models/httpvalidationerror.py +23 -0
  145. mistralai_azure/models/responseformat.py +18 -0
  146. mistralai_azure/models/sdkerror.py +22 -0
  147. mistralai_azure/models/security.py +16 -0
  148. mistralai_azure/models/systemmessage.py +26 -0
  149. mistralai_azure/models/textchunk.py +17 -0
  150. mistralai_azure/models/tool.py +18 -0
  151. mistralai_azure/models/toolcall.py +20 -0
  152. mistralai_azure/models/toolmessage.py +50 -0
  153. mistralai_azure/models/usageinfo.py +18 -0
  154. mistralai_azure/models/usermessage.py +26 -0
  155. mistralai_azure/models/validationerror.py +24 -0
  156. mistralai_azure/py.typed +1 -0
  157. mistralai_azure/sdk.py +107 -0
  158. mistralai_azure/sdkconfiguration.py +54 -0
  159. mistralai_azure/types/__init__.py +21 -0
  160. mistralai_azure/types/basemodel.py +39 -0
  161. mistralai_azure/utils/__init__.py +84 -0
  162. mistralai_azure/utils/annotations.py +19 -0
  163. mistralai_azure/utils/enums.py +34 -0
  164. mistralai_azure/utils/eventstreaming.py +178 -0
  165. mistralai_azure/utils/forms.py +207 -0
  166. mistralai_azure/utils/headers.py +136 -0
  167. mistralai_azure/utils/logger.py +16 -0
  168. mistralai_azure/utils/metadata.py +118 -0
  169. mistralai_azure/utils/queryparams.py +203 -0
  170. mistralai_azure/utils/requestbodies.py +66 -0
  171. mistralai_azure/utils/retries.py +216 -0
  172. mistralai_azure/utils/security.py +168 -0
  173. mistralai_azure/utils/serializers.py +181 -0
  174. mistralai_azure/utils/url.py +150 -0
  175. mistralai_azure/utils/values.py +128 -0
  176. mistralai_gcp/__init__.py +5 -0
  177. mistralai_gcp/_hooks/__init__.py +5 -0
  178. mistralai_gcp/_hooks/custom_user_agent.py +16 -0
  179. mistralai_gcp/_hooks/registration.py +15 -0
  180. mistralai_gcp/_hooks/sdkhooks.py +57 -0
  181. mistralai_gcp/_hooks/types.py +76 -0
  182. mistralai_gcp/basesdk.py +253 -0
  183. mistralai_gcp/chat.py +458 -0
  184. mistralai_gcp/fim.py +438 -0
  185. mistralai_gcp/httpclient.py +78 -0
  186. mistralai_gcp/models/__init__.py +31 -0
  187. mistralai_gcp/models/assistantmessage.py +53 -0
  188. mistralai_gcp/models/chatcompletionchoice.py +22 -0
  189. mistralai_gcp/models/chatcompletionrequest.py +105 -0
  190. mistralai_gcp/models/chatcompletionresponse.py +27 -0
  191. mistralai_gcp/models/chatcompletionstreamrequest.py +103 -0
  192. mistralai_gcp/models/completionchunk.py +27 -0
  193. mistralai_gcp/models/completionevent.py +15 -0
  194. mistralai_gcp/models/completionresponsestreamchoice.py +48 -0
  195. mistralai_gcp/models/contentchunk.py +17 -0
  196. mistralai_gcp/models/deltamessage.py +47 -0
  197. mistralai_gcp/models/fimcompletionrequest.py +94 -0
  198. mistralai_gcp/models/fimcompletionresponse.py +27 -0
  199. mistralai_gcp/models/fimcompletionstreamrequest.py +92 -0
  200. mistralai_gcp/models/function.py +19 -0
  201. mistralai_gcp/models/functioncall.py +22 -0
  202. mistralai_gcp/models/httpvalidationerror.py +23 -0
  203. mistralai_gcp/models/responseformat.py +18 -0
  204. mistralai_gcp/models/sdkerror.py +22 -0
  205. mistralai_gcp/models/security.py +16 -0
  206. mistralai_gcp/models/systemmessage.py +26 -0
  207. mistralai_gcp/models/textchunk.py +17 -0
  208. mistralai_gcp/models/tool.py +18 -0
  209. mistralai_gcp/models/toolcall.py +20 -0
  210. mistralai_gcp/models/toolmessage.py +50 -0
  211. mistralai_gcp/models/usageinfo.py +18 -0
  212. mistralai_gcp/models/usermessage.py +26 -0
  213. mistralai_gcp/models/validationerror.py +24 -0
  214. mistralai_gcp/py.typed +1 -0
  215. mistralai_gcp/sdk.py +174 -0
  216. mistralai_gcp/sdkconfiguration.py +54 -0
  217. mistralai_gcp/types/__init__.py +21 -0
  218. mistralai_gcp/types/basemodel.py +39 -0
  219. mistralai_gcp/utils/__init__.py +84 -0
  220. mistralai_gcp/utils/annotations.py +19 -0
  221. mistralai_gcp/utils/enums.py +34 -0
  222. mistralai_gcp/utils/eventstreaming.py +178 -0
  223. mistralai_gcp/utils/forms.py +207 -0
  224. mistralai_gcp/utils/headers.py +136 -0
  225. mistralai_gcp/utils/logger.py +16 -0
  226. mistralai_gcp/utils/metadata.py +118 -0
  227. mistralai_gcp/utils/queryparams.py +203 -0
  228. mistralai_gcp/utils/requestbodies.py +66 -0
  229. mistralai_gcp/utils/retries.py +216 -0
  230. mistralai_gcp/utils/security.py +168 -0
  231. mistralai_gcp/utils/serializers.py +181 -0
  232. mistralai_gcp/utils/url.py +150 -0
  233. mistralai_gcp/utils/values.py +128 -0
  234. py.typed +1 -0
  235. mistralai/client_base.py +0 -211
  236. mistralai/constants.py +0 -5
  237. mistralai/exceptions.py +0 -54
  238. mistralai/models/chat_completion.py +0 -93
  239. mistralai/models/common.py +0 -9
  240. mistralai/models/embeddings.py +0 -19
  241. mistralai/models/files.py +0 -23
  242. mistralai/models/jobs.py +0 -100
  243. mistralai/models/models.py +0 -39
  244. mistralai-0.4.2.dist-info/METADATA +0 -82
  245. mistralai-0.4.2.dist-info/RECORD +0 -20
  246. {mistralai-0.4.2.dist-info → mistralai-1.0.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,253 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from .sdkconfiguration import SDKConfiguration
4
+ import httpx
5
+ from mistralai_gcp import models, utils
6
+ from mistralai_gcp._hooks import AfterErrorContext, AfterSuccessContext, BeforeRequestContext
7
+ from mistralai_gcp.utils import RetryConfig, SerializedRequestBody, get_body_content
8
+ from typing import Callable, List, Optional, Tuple
9
+
10
+ class BaseSDK:
11
+ sdk_configuration: SDKConfiguration
12
+
13
+ def __init__(self, sdk_config: SDKConfiguration) -> None:
14
+ self.sdk_configuration = sdk_config
15
+
16
+ def get_url(self, base_url, url_variables):
17
+ sdk_url, sdk_variables = self.sdk_configuration.get_server_details()
18
+
19
+ if base_url is None:
20
+ base_url = sdk_url
21
+
22
+ if url_variables is None:
23
+ url_variables = sdk_variables
24
+
25
+ return utils.template_url(base_url, url_variables)
26
+
27
+ def build_request(
28
+ self,
29
+ method,
30
+ path,
31
+ base_url,
32
+ url_variables,
33
+ request,
34
+ request_body_required,
35
+ request_has_path_params,
36
+ request_has_query_params,
37
+ user_agent_header,
38
+ accept_header_value,
39
+ _globals=None,
40
+ security=None,
41
+ timeout_ms: Optional[int] = None,
42
+ get_serialized_body: Optional[
43
+ Callable[[], Optional[SerializedRequestBody]]
44
+ ] = None,
45
+ url_override: Optional[str] = None,
46
+ ) -> httpx.Request:
47
+ client = self.sdk_configuration.client
48
+
49
+ query_params = {}
50
+
51
+ url = url_override
52
+ if url is None:
53
+ url = utils.generate_url(
54
+ self.get_url(base_url, url_variables),
55
+ path,
56
+ request if request_has_path_params else None,
57
+ _globals if request_has_path_params else None,
58
+ )
59
+
60
+ query_params = utils.get_query_params(
61
+ request if request_has_query_params else None,
62
+ _globals if request_has_query_params else None,
63
+ )
64
+
65
+ headers = utils.get_headers(request, _globals)
66
+ headers["Accept"] = accept_header_value
67
+ headers[user_agent_header] = self.sdk_configuration.user_agent
68
+
69
+ if security is not None:
70
+ if callable(security):
71
+ security = security()
72
+
73
+ if security is not None:
74
+ security_headers, security_query_params = utils.get_security(security)
75
+ headers = {**headers, **security_headers}
76
+ query_params = {**query_params, **security_query_params}
77
+
78
+ serialized_request_body = SerializedRequestBody("application/octet-stream")
79
+ if get_serialized_body is not None:
80
+ rb = get_serialized_body()
81
+ if request_body_required and rb is None:
82
+ raise ValueError("request body is required")
83
+
84
+ if rb is not None:
85
+ serialized_request_body = rb
86
+
87
+ if (
88
+ serialized_request_body.media_type is not None
89
+ and serialized_request_body.media_type
90
+ not in (
91
+ "multipart/form-data",
92
+ "multipart/mixed",
93
+ )
94
+ ):
95
+ headers["content-type"] = serialized_request_body.media_type
96
+
97
+ timeout = timeout_ms / 1000 if timeout_ms is not None else None
98
+
99
+ return client.build_request(
100
+ method,
101
+ url,
102
+ params=query_params,
103
+ content=serialized_request_body.content,
104
+ data=serialized_request_body.data,
105
+ files=serialized_request_body.files,
106
+ headers=headers,
107
+ timeout=timeout,
108
+ )
109
+
110
+ def do_request(
111
+ self,
112
+ hook_ctx,
113
+ request,
114
+ error_status_codes,
115
+ stream=False,
116
+ retry_config: Optional[Tuple[RetryConfig, List[str]]] = None,
117
+ ) -> httpx.Response:
118
+ client = self.sdk_configuration.client
119
+ logger = self.sdk_configuration.debug_logger
120
+
121
+ def do():
122
+ http_res = None
123
+ try:
124
+ req = self.sdk_configuration.get_hooks().before_request(
125
+ BeforeRequestContext(hook_ctx), request
126
+ )
127
+ logger.debug(
128
+ "Request:\nMethod: %s\nURL: %s\nHeaders: %s\nBody: %s",
129
+ req.method,
130
+ req.url,
131
+ req.headers,
132
+ get_body_content(req)
133
+ )
134
+ http_res = client.send(req, stream=stream)
135
+ except Exception as e:
136
+ _, e = self.sdk_configuration.get_hooks().after_error(
137
+ AfterErrorContext(hook_ctx), None, e
138
+ )
139
+ if e is not None:
140
+ logger.debug("Request Exception", exc_info=True)
141
+ raise e
142
+
143
+ if http_res is None:
144
+ logger.debug("Raising no response SDK error")
145
+ raise models.SDKError("No response received")
146
+
147
+ logger.debug(
148
+ "Response:\nStatus Code: %s\nURL: %s\nHeaders: %s\nBody: %s",
149
+ http_res.status_code,
150
+ http_res.url,
151
+ http_res.headers,
152
+ "<streaming response>" if stream else http_res.text
153
+ )
154
+
155
+ if utils.match_status_codes(error_status_codes, http_res.status_code):
156
+ result, err = self.sdk_configuration.get_hooks().after_error(
157
+ AfterErrorContext(hook_ctx), http_res, None
158
+ )
159
+ if err is not None:
160
+ logger.debug("Request Exception", exc_info=True)
161
+ raise err
162
+ if result is not None:
163
+ http_res = result
164
+ else:
165
+ logger.debug("Raising unexpected SDK error")
166
+ raise models.SDKError("Unexpected error occurred")
167
+
168
+ return http_res
169
+
170
+ if retry_config is not None:
171
+ http_res = utils.retry(do, utils.Retries(retry_config[0], retry_config[1]))
172
+ else:
173
+ http_res = do()
174
+
175
+ if not utils.match_status_codes(error_status_codes, http_res.status_code):
176
+ http_res = self.sdk_configuration.get_hooks().after_success(
177
+ AfterSuccessContext(hook_ctx), http_res
178
+ )
179
+
180
+ return http_res
181
+
182
+ async def do_request_async(
183
+ self,
184
+ hook_ctx,
185
+ request,
186
+ error_status_codes,
187
+ stream=False,
188
+ retry_config: Optional[Tuple[RetryConfig, List[str]]] = None,
189
+ ) -> httpx.Response:
190
+ client = self.sdk_configuration.async_client
191
+ logger = self.sdk_configuration.debug_logger
192
+ async def do():
193
+ http_res = None
194
+ try:
195
+ req = self.sdk_configuration.get_hooks().before_request(
196
+ BeforeRequestContext(hook_ctx), request
197
+ )
198
+ logger.debug(
199
+ "Request:\nMethod: %s\nURL: %s\nHeaders: %s\nBody: %s",
200
+ req.method,
201
+ req.url,
202
+ req.headers,
203
+ get_body_content(req)
204
+ )
205
+ http_res = await client.send(req, stream=stream)
206
+ except Exception as e:
207
+ _, e = self.sdk_configuration.get_hooks().after_error(
208
+ AfterErrorContext(hook_ctx), None, e
209
+ )
210
+ if e is not None:
211
+ logger.debug("Request Exception", exc_info=True)
212
+ raise e
213
+
214
+ if http_res is None:
215
+ logger.debug("Raising no response SDK error")
216
+ raise models.SDKError("No response received")
217
+
218
+ logger.debug(
219
+ "Response:\nStatus Code: %s\nURL: %s\nHeaders: %s\nBody: %s",
220
+ http_res.status_code,
221
+ http_res.url,
222
+ http_res.headers,
223
+ "<streaming response>" if stream else http_res.text
224
+ )
225
+
226
+ if utils.match_status_codes(error_status_codes, http_res.status_code):
227
+ result, err = self.sdk_configuration.get_hooks().after_error(
228
+ AfterErrorContext(hook_ctx), http_res, None
229
+ )
230
+ if err is not None:
231
+ logger.debug("Request Exception", exc_info=True)
232
+ raise err
233
+ if result is not None:
234
+ http_res = result
235
+ else:
236
+ logger.debug("Raising unexpected SDK error")
237
+ raise models.SDKError("Unexpected error occurred")
238
+
239
+ return http_res
240
+
241
+ if retry_config is not None:
242
+ http_res = await utils.retry_async(
243
+ do, utils.Retries(retry_config[0], retry_config[1])
244
+ )
245
+ else:
246
+ http_res = await do()
247
+
248
+ if not utils.match_status_codes(error_status_codes, http_res.status_code):
249
+ http_res = self.sdk_configuration.get_hooks().after_success(
250
+ AfterSuccessContext(hook_ctx), http_res
251
+ )
252
+
253
+ return http_res