@ai-sdk/mistral 3.0.73 → 3.0.75

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @ai-sdk/mistral
2
2
 
3
+ ## 3.0.75
4
+
5
+ ### Patch Changes
6
+
7
+ - 640a118: Defer validation schema construction until first use to reduce provider import time.
8
+ - Updated dependencies [1183cc4]
9
+ - Updated dependencies [d726591]
10
+ - @ai-sdk/provider-utils@4.0.62
11
+
12
+ ## 3.0.74
13
+
14
+ ### Patch Changes
15
+
16
+ - Updated dependencies [5aa3086]
17
+ - @ai-sdk/provider-utils@4.0.61
18
+
3
19
  ## 3.0.73
4
20
 
5
21
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -1,29 +1,26 @@
1
1
  import { ProviderV3, LanguageModelV3, EmbeddingModelV3, SpeechModelV3 } from '@ai-sdk/provider';
2
- import { FetchFunction } from '@ai-sdk/provider-utils';
3
- import { z } from 'zod/v4';
2
+ import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
3
+ import { InferSchema, FetchFunction } from '@ai-sdk/provider-utils';
4
4
 
5
5
  type MistralChatModelId = 'ministral-3b-latest' | 'ministral-8b-latest' | 'ministral-14b-latest' | 'mistral-large-latest' | 'mistral-medium-latest' | 'mistral-medium-3' | 'mistral-large-2512' | 'mistral-medium-2508' | 'mistral-medium-2505' | 'mistral-small-2506' | 'pixtral-large-latest' | 'mistral-medium-3.5' | 'mistral-small-latest' | 'mistral-small-2603' | 'magistral-medium-latest' | 'magistral-small-latest' | 'magistral-medium-2509' | 'magistral-small-2509' | (string & {});
6
- declare const mistralLanguageModelOptions: z.ZodObject<{
7
- safePrompt: z.ZodOptional<z.ZodBoolean>;
8
- documentImageLimit: z.ZodOptional<z.ZodNumber>;
9
- documentPageLimit: z.ZodOptional<z.ZodNumber>;
10
- structuredOutputs: z.ZodOptional<z.ZodBoolean>;
11
- strictJsonSchema: z.ZodOptional<z.ZodBoolean>;
12
- parallelToolCalls: z.ZodOptional<z.ZodBoolean>;
13
- reasoningEffort: z.ZodOptional<z.ZodEnum<{
14
- none: "none";
15
- high: "high";
16
- }>>;
17
- }, z.core.$strip>;
18
- type MistralLanguageModelOptions = z.infer<typeof mistralLanguageModelOptions>;
6
+ declare const mistralLanguageModelOptions: _ai_sdk_provider_utils.LazySchema<{
7
+ safePrompt?: boolean | undefined;
8
+ documentImageLimit?: number | undefined;
9
+ documentPageLimit?: number | undefined;
10
+ structuredOutputs?: boolean | undefined;
11
+ strictJsonSchema?: boolean | undefined;
12
+ parallelToolCalls?: boolean | undefined;
13
+ reasoningEffort?: "none" | "high" | undefined;
14
+ }>;
15
+ type MistralLanguageModelOptions = InferSchema<typeof mistralLanguageModelOptions>;
19
16
 
20
17
  type MistralEmbeddingModelId = 'mistral-embed' | (string & {});
21
18
 
22
19
  type MistralSpeechModelId = 'voxtral-mini-tts-2603' | (string & {});
23
- declare const mistralSpeechModelOptions: z.ZodObject<{
24
- refAudio: z.ZodOptional<z.ZodString>;
25
- }, z.core.$strip>;
26
- type MistralSpeechModelOptions = z.infer<typeof mistralSpeechModelOptions>;
20
+ declare const mistralSpeechModelOptions: _ai_sdk_provider_utils.LazySchema<{
21
+ refAudio?: string | undefined;
22
+ }>;
23
+ type MistralSpeechModelOptions = InferSchema<typeof mistralSpeechModelOptions>;
27
24
 
28
25
  interface MistralProvider extends ProviderV3 {
29
26
  (modelId: MistralChatModelId): LanguageModelV3;
package/dist/index.d.ts CHANGED
@@ -1,29 +1,26 @@
1
1
  import { ProviderV3, LanguageModelV3, EmbeddingModelV3, SpeechModelV3 } from '@ai-sdk/provider';
2
- import { FetchFunction } from '@ai-sdk/provider-utils';
3
- import { z } from 'zod/v4';
2
+ import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
3
+ import { InferSchema, FetchFunction } from '@ai-sdk/provider-utils';
4
4
 
5
5
  type MistralChatModelId = 'ministral-3b-latest' | 'ministral-8b-latest' | 'ministral-14b-latest' | 'mistral-large-latest' | 'mistral-medium-latest' | 'mistral-medium-3' | 'mistral-large-2512' | 'mistral-medium-2508' | 'mistral-medium-2505' | 'mistral-small-2506' | 'pixtral-large-latest' | 'mistral-medium-3.5' | 'mistral-small-latest' | 'mistral-small-2603' | 'magistral-medium-latest' | 'magistral-small-latest' | 'magistral-medium-2509' | 'magistral-small-2509' | (string & {});
6
- declare const mistralLanguageModelOptions: z.ZodObject<{
7
- safePrompt: z.ZodOptional<z.ZodBoolean>;
8
- documentImageLimit: z.ZodOptional<z.ZodNumber>;
9
- documentPageLimit: z.ZodOptional<z.ZodNumber>;
10
- structuredOutputs: z.ZodOptional<z.ZodBoolean>;
11
- strictJsonSchema: z.ZodOptional<z.ZodBoolean>;
12
- parallelToolCalls: z.ZodOptional<z.ZodBoolean>;
13
- reasoningEffort: z.ZodOptional<z.ZodEnum<{
14
- none: "none";
15
- high: "high";
16
- }>>;
17
- }, z.core.$strip>;
18
- type MistralLanguageModelOptions = z.infer<typeof mistralLanguageModelOptions>;
6
+ declare const mistralLanguageModelOptions: _ai_sdk_provider_utils.LazySchema<{
7
+ safePrompt?: boolean | undefined;
8
+ documentImageLimit?: number | undefined;
9
+ documentPageLimit?: number | undefined;
10
+ structuredOutputs?: boolean | undefined;
11
+ strictJsonSchema?: boolean | undefined;
12
+ parallelToolCalls?: boolean | undefined;
13
+ reasoningEffort?: "none" | "high" | undefined;
14
+ }>;
15
+ type MistralLanguageModelOptions = InferSchema<typeof mistralLanguageModelOptions>;
19
16
 
20
17
  type MistralEmbeddingModelId = 'mistral-embed' | (string & {});
21
18
 
22
19
  type MistralSpeechModelId = 'voxtral-mini-tts-2603' | (string & {});
23
- declare const mistralSpeechModelOptions: z.ZodObject<{
24
- refAudio: z.ZodOptional<z.ZodString>;
25
- }, z.core.$strip>;
26
- type MistralSpeechModelOptions = z.infer<typeof mistralSpeechModelOptions>;
20
+ declare const mistralSpeechModelOptions: _ai_sdk_provider_utils.LazySchema<{
21
+ refAudio?: string | undefined;
22
+ }>;
23
+ type MistralSpeechModelOptions = InferSchema<typeof mistralSpeechModelOptions>;
27
24
 
28
25
  interface MistralProvider extends ProviderV3 {
29
26
  (modelId: MistralChatModelId): LanguageModelV3;
package/dist/index.js CHANGED
@@ -28,11 +28,11 @@ module.exports = __toCommonJS(index_exports);
28
28
 
29
29
  // src/mistral-provider.ts
30
30
  var import_provider5 = require("@ai-sdk/provider");
31
- var import_provider_utils6 = require("@ai-sdk/provider-utils");
31
+ var import_provider_utils8 = require("@ai-sdk/provider-utils");
32
32
 
33
33
  // src/mistral-chat-language-model.ts
34
34
  var import_provider3 = require("@ai-sdk/provider");
35
- var import_provider_utils3 = require("@ai-sdk/provider-utils");
35
+ var import_provider_utils4 = require("@ai-sdk/provider-utils");
36
36
  var import_v44 = require("zod/v4");
37
37
 
38
38
  // src/convert-mistral-usage.ts
@@ -263,55 +263,64 @@ function mapMistralFinishReason(finishReason) {
263
263
  }
264
264
 
265
265
  // src/mistral-chat-options.ts
266
+ var import_provider_utils2 = require("@ai-sdk/provider-utils");
266
267
  var import_v42 = require("zod/v4");
267
- var mistralLanguageModelOptions = import_v42.z.object({
268
- /**
269
- * Whether to inject a safety prompt before all conversations.
270
- *
271
- * Defaults to `false`.
272
- */
273
- safePrompt: import_v42.z.boolean().optional(),
274
- documentImageLimit: import_v42.z.number().optional(),
275
- documentPageLimit: import_v42.z.number().optional(),
276
- /**
277
- * Whether to use structured outputs.
278
- *
279
- * @default true
280
- */
281
- structuredOutputs: import_v42.z.boolean().optional(),
282
- /**
283
- * Whether to use strict JSON schema validation.
284
- *
285
- * @default false
286
- */
287
- strictJsonSchema: import_v42.z.boolean().optional(),
288
- /**
289
- * Whether to enable parallel function calling during tool use.
290
- * When set to false, the model will use at most one tool per response.
291
- *
292
- * @default true
293
- */
294
- parallelToolCalls: import_v42.z.boolean().optional(),
295
- /**
296
- * Controls the reasoning effort for models that support adjustable reasoning.
297
- *
298
- * - `'high'`: Enable reasoning
299
- * - `'none'`: Disable reasoning
300
- */
301
- reasoningEffort: import_v42.z.enum(["high", "none"]).optional()
302
- });
268
+ var mistralLanguageModelOptions = (0, import_provider_utils2.lazySchema)(
269
+ () => (0, import_provider_utils2.zodSchema)(
270
+ import_v42.z.object({
271
+ /**
272
+ * Whether to inject a safety prompt before all conversations.
273
+ *
274
+ * Defaults to `false`.
275
+ */
276
+ safePrompt: import_v42.z.boolean().optional(),
277
+ documentImageLimit: import_v42.z.number().optional(),
278
+ documentPageLimit: import_v42.z.number().optional(),
279
+ /**
280
+ * Whether to use structured outputs.
281
+ *
282
+ * @default true
283
+ */
284
+ structuredOutputs: import_v42.z.boolean().optional(),
285
+ /**
286
+ * Whether to use strict JSON schema validation.
287
+ *
288
+ * @default false
289
+ */
290
+ strictJsonSchema: import_v42.z.boolean().optional(),
291
+ /**
292
+ * Whether to enable parallel function calling during tool use.
293
+ * When set to false, the model will use at most one tool per response.
294
+ *
295
+ * @default true
296
+ */
297
+ parallelToolCalls: import_v42.z.boolean().optional(),
298
+ /**
299
+ * Controls the reasoning effort for models that support adjustable reasoning.
300
+ *
301
+ * - `'high'`: Enable reasoning
302
+ * - `'none'`: Disable reasoning
303
+ */
304
+ reasoningEffort: import_v42.z.enum(["high", "none"]).optional()
305
+ })
306
+ )
307
+ );
303
308
 
304
309
  // src/mistral-error.ts
305
- var import_provider_utils2 = require("@ai-sdk/provider-utils");
310
+ var import_provider_utils3 = require("@ai-sdk/provider-utils");
306
311
  var import_v43 = require("zod/v4");
307
- var mistralErrorDataSchema = import_v43.z.object({
308
- object: import_v43.z.literal("error"),
309
- message: import_v43.z.string(),
310
- type: import_v43.z.string(),
311
- param: import_v43.z.string().nullable(),
312
- code: import_v43.z.string().nullable()
313
- });
314
- var mistralFailedResponseHandler = (0, import_provider_utils2.createJsonErrorResponseHandler)({
312
+ var mistralErrorDataSchema = (0, import_provider_utils3.lazySchema)(
313
+ () => (0, import_provider_utils3.zodSchema)(
314
+ import_v43.z.object({
315
+ object: import_v43.z.literal("error"),
316
+ message: import_v43.z.string(),
317
+ type: import_v43.z.string(),
318
+ param: import_v43.z.string().nullable(),
319
+ code: import_v43.z.string().nullable()
320
+ })
321
+ )
322
+ );
323
+ var mistralFailedResponseHandler = (0, import_provider_utils3.createJsonErrorResponseHandler)({
315
324
  errorSchema: mistralErrorDataSchema,
316
325
  errorToMessage: (data) => data.message
317
326
  });
@@ -385,7 +394,7 @@ var MistralChatLanguageModel = class {
385
394
  var _a;
386
395
  this.modelId = modelId;
387
396
  this.config = config;
388
- this.generateId = (_a = config.generateId) != null ? _a : import_provider_utils3.generateId;
397
+ this.generateId = (_a = config.generateId) != null ? _a : import_provider_utils4.generateId;
389
398
  }
390
399
  get provider() {
391
400
  return this.config.provider;
@@ -407,7 +416,7 @@ var MistralChatLanguageModel = class {
407
416
  }) {
408
417
  var _a, _b, _c, _d;
409
418
  const warnings = [];
410
- const options = (_a = await (0, import_provider_utils3.parseProviderOptions)({
419
+ const options = (_a = await (0, import_provider_utils4.parseProviderOptions)({
411
420
  provider: "mistral",
412
421
  providerOptions,
413
422
  schema: mistralLanguageModelOptions
@@ -418,7 +427,7 @@ var MistralChatLanguageModel = class {
418
427
  const structuredOutputs = (_b = options.structuredOutputs) != null ? _b : true;
419
428
  const strictJsonSchema = (_c = options.strictJsonSchema) != null ? _c : false;
420
429
  if ((responseFormat == null ? void 0 : responseFormat.type) === "json" && !(responseFormat == null ? void 0 : responseFormat.schema)) {
421
- prompt = (0, import_provider_utils3.injectJsonInstructionIntoMessages)({
430
+ prompt = (0, import_provider_utils4.injectJsonInstructionIntoMessages)({
422
431
  messages: prompt,
423
432
  schema: responseFormat.schema
424
433
  });
@@ -478,12 +487,12 @@ var MistralChatLanguageModel = class {
478
487
  responseHeaders,
479
488
  value: response,
480
489
  rawValue: rawResponse
481
- } = await (0, import_provider_utils3.postJsonToApi)({
490
+ } = await (0, import_provider_utils4.postJsonToApi)({
482
491
  url: `${this.config.baseURL}/chat/completions`,
483
- headers: (0, import_provider_utils3.combineHeaders)(this.config.headers(), options.headers),
492
+ headers: (0, import_provider_utils4.combineHeaders)(this.config.headers(), options.headers),
484
493
  body,
485
494
  failedResponseHandler: mistralFailedResponseHandler,
486
- successfulResponseHandler: (0, import_provider_utils3.createJsonResponseHandler)(
495
+ successfulResponseHandler: (0, import_provider_utils4.createJsonResponseHandler)(
487
496
  mistralChatResponseSchema
488
497
  ),
489
498
  abortSignal: options.abortSignal,
@@ -539,12 +548,12 @@ var MistralChatLanguageModel = class {
539
548
  async doStream(options) {
540
549
  const { args, warnings } = await this.getArgs(options);
541
550
  const body = { ...args, stream: true };
542
- const { responseHeaders, value: response } = await (0, import_provider_utils3.postJsonToApi)({
551
+ const { responseHeaders, value: response } = await (0, import_provider_utils4.postJsonToApi)({
543
552
  url: `${this.config.baseURL}/chat/completions`,
544
- headers: (0, import_provider_utils3.combineHeaders)(this.config.headers(), options.headers),
553
+ headers: (0, import_provider_utils4.combineHeaders)(this.config.headers(), options.headers),
545
554
  body,
546
555
  failedResponseHandler: mistralFailedResponseHandler,
547
- successfulResponseHandler: (0, import_provider_utils3.createEventSourceResponseHandler)(
556
+ successfulResponseHandler: (0, import_provider_utils4.createEventSourceResponseHandler)(
548
557
  mistralChatChunkSchema
549
558
  ),
550
559
  abortSignal: options.abortSignal,
@@ -758,7 +767,7 @@ function extractTextContent(content) {
758
767
  }
759
768
  return textContent.length ? textContent.join("") : void 0;
760
769
  }
761
- var mistralContentSchema = import_v44.z.union([
770
+ var mistralContentSchema = () => import_v44.z.union([
762
771
  import_v44.z.string(),
763
772
  import_v44.z.array(
764
773
  import_v44.z.discriminatedUnion("type", [
@@ -792,59 +801,70 @@ var mistralContentSchema = import_v44.z.union([
792
801
  ])
793
802
  )
794
803
  ]).nullish();
795
- var mistralChatResponseSchema = import_v44.z.object({
796
- id: import_v44.z.string().nullish(),
797
- created: import_v44.z.number().nullish(),
798
- model: import_v44.z.string().nullish(),
799
- choices: import_v44.z.array(
804
+ var mistralChatResponseSchema = (0, import_provider_utils4.lazySchema)(
805
+ () => (0, import_provider_utils4.zodSchema)(
800
806
  import_v44.z.object({
801
- message: import_v44.z.object({
802
- role: import_v44.z.literal("assistant"),
803
- content: mistralContentSchema,
804
- tool_calls: import_v44.z.array(
805
- import_v44.z.object({
806
- id: import_v44.z.string(),
807
- function: import_v44.z.object({ name: import_v44.z.string(), arguments: import_v44.z.string() })
808
- })
809
- ).nullish()
810
- }),
811
- index: import_v44.z.number(),
812
- finish_reason: import_v44.z.string().nullish()
807
+ id: import_v44.z.string().nullish(),
808
+ created: import_v44.z.number().nullish(),
809
+ model: import_v44.z.string().nullish(),
810
+ choices: import_v44.z.array(
811
+ import_v44.z.object({
812
+ message: import_v44.z.object({
813
+ role: import_v44.z.literal("assistant"),
814
+ content: mistralContentSchema(),
815
+ tool_calls: import_v44.z.array(
816
+ import_v44.z.object({
817
+ id: import_v44.z.string(),
818
+ function: import_v44.z.object({
819
+ name: import_v44.z.string(),
820
+ arguments: import_v44.z.string()
821
+ })
822
+ })
823
+ ).nullish()
824
+ }),
825
+ index: import_v44.z.number(),
826
+ finish_reason: import_v44.z.string().nullish()
827
+ })
828
+ ),
829
+ object: import_v44.z.literal("chat.completion"),
830
+ usage: mistralUsageSchema
813
831
  })
814
- ),
815
- object: import_v44.z.literal("chat.completion"),
816
- usage: mistralUsageSchema
817
- });
818
- var mistralChatChunkSchema = import_v44.z.object({
819
- id: import_v44.z.string().nullish(),
820
- created: import_v44.z.number().nullish(),
821
- model: import_v44.z.string().nullish(),
822
- choices: import_v44.z.array(
832
+ )
833
+ );
834
+ var mistralChatChunkSchema = (0, import_provider_utils4.lazySchema)(
835
+ () => (0, import_provider_utils4.zodSchema)(
823
836
  import_v44.z.object({
824
- delta: import_v44.z.object({
825
- role: import_v44.z.enum(["assistant"]).optional(),
826
- content: mistralContentSchema,
827
- tool_calls: import_v44.z.array(
828
- import_v44.z.object({
829
- index: import_v44.z.number().nullish(),
830
- id: import_v44.z.string().nullish(),
831
- function: import_v44.z.object({
832
- name: import_v44.z.string().nullish(),
833
- arguments: import_v44.z.string().nullish()
834
- })
835
- })
836
- ).nullish()
837
- }),
838
- finish_reason: import_v44.z.string().nullish(),
839
- index: import_v44.z.number()
837
+ id: import_v44.z.string().nullish(),
838
+ created: import_v44.z.number().nullish(),
839
+ model: import_v44.z.string().nullish(),
840
+ choices: import_v44.z.array(
841
+ import_v44.z.object({
842
+ delta: import_v44.z.object({
843
+ role: import_v44.z.enum(["assistant"]).optional(),
844
+ content: mistralContentSchema(),
845
+ tool_calls: import_v44.z.array(
846
+ import_v44.z.object({
847
+ index: import_v44.z.number().nullish(),
848
+ id: import_v44.z.string().nullish(),
849
+ function: import_v44.z.object({
850
+ name: import_v44.z.string().nullish(),
851
+ arguments: import_v44.z.string().nullish()
852
+ })
853
+ })
854
+ ).nullish()
855
+ }),
856
+ finish_reason: import_v44.z.string().nullish(),
857
+ index: import_v44.z.number()
858
+ })
859
+ ),
860
+ usage: mistralUsageSchema.nullish()
840
861
  })
841
- ),
842
- usage: mistralUsageSchema.nullish()
843
- });
862
+ )
863
+ );
844
864
 
845
865
  // src/mistral-embedding-model.ts
846
866
  var import_provider4 = require("@ai-sdk/provider");
847
- var import_provider_utils4 = require("@ai-sdk/provider-utils");
867
+ var import_provider_utils5 = require("@ai-sdk/provider-utils");
848
868
  var import_v45 = require("zod/v4");
849
869
  var MistralEmbeddingModel = class {
850
870
  constructor(modelId, config) {
@@ -874,16 +894,16 @@ var MistralEmbeddingModel = class {
874
894
  responseHeaders,
875
895
  value: response,
876
896
  rawValue
877
- } = await (0, import_provider_utils4.postJsonToApi)({
897
+ } = await (0, import_provider_utils5.postJsonToApi)({
878
898
  url: `${this.config.baseURL}/embeddings`,
879
- headers: (0, import_provider_utils4.combineHeaders)(this.config.headers(), headers),
899
+ headers: (0, import_provider_utils5.combineHeaders)(this.config.headers(), headers),
880
900
  body: {
881
901
  model: this.modelId,
882
902
  input: values,
883
903
  encoding_format: "float"
884
904
  },
885
905
  failedResponseHandler: mistralFailedResponseHandler,
886
- successfulResponseHandler: (0, import_provider_utils4.createJsonResponseHandler)(
906
+ successfulResponseHandler: (0, import_provider_utils5.createJsonResponseHandler)(
887
907
  MistralTextEmbeddingResponseSchema
888
908
  ),
889
909
  abortSignal,
@@ -897,25 +917,34 @@ var MistralEmbeddingModel = class {
897
917
  };
898
918
  }
899
919
  };
900
- var MistralTextEmbeddingResponseSchema = import_v45.z.object({
901
- data: import_v45.z.array(import_v45.z.object({ embedding: import_v45.z.array(import_v45.z.number()) })),
902
- usage: import_v45.z.object({ prompt_tokens: import_v45.z.number() }).nullish()
903
- });
920
+ var MistralTextEmbeddingResponseSchema = (0, import_provider_utils5.lazySchema)(
921
+ () => (0, import_provider_utils5.zodSchema)(
922
+ import_v45.z.object({
923
+ data: import_v45.z.array(import_v45.z.object({ embedding: import_v45.z.array(import_v45.z.number()) })),
924
+ usage: import_v45.z.object({ prompt_tokens: import_v45.z.number() }).nullish()
925
+ })
926
+ )
927
+ );
904
928
 
905
929
  // src/mistral-speech-model.ts
906
- var import_provider_utils5 = require("@ai-sdk/provider-utils");
930
+ var import_provider_utils7 = require("@ai-sdk/provider-utils");
907
931
  var import_v47 = require("zod/v4");
908
932
 
909
933
  // src/mistral-speech-model-options.ts
934
+ var import_provider_utils6 = require("@ai-sdk/provider-utils");
910
935
  var import_v46 = require("zod/v4");
911
- var mistralSpeechModelOptions = import_v46.z.object({
912
- /**
913
- * Base64-encoded reference audio for one-off voice cloning.
914
- *
915
- * When provided, this takes precedence over the standard `voice` option.
916
- */
917
- refAudio: import_v46.z.string().min(1).optional()
918
- });
936
+ var mistralSpeechModelOptions = (0, import_provider_utils6.lazySchema)(
937
+ () => (0, import_provider_utils6.zodSchema)(
938
+ import_v46.z.object({
939
+ /**
940
+ * Base64-encoded reference audio for one-off voice cloning.
941
+ *
942
+ * When provided, this takes precedence over the standard `voice` option.
943
+ */
944
+ refAudio: import_v46.z.string().min(1).optional()
945
+ })
946
+ )
947
+ );
919
948
 
920
949
  // src/mistral-speech-model.ts
921
950
  var MistralSpeechModel = class {
@@ -937,7 +966,7 @@ var MistralSpeechModel = class {
937
966
  providerOptions
938
967
  }) {
939
968
  const warnings = [];
940
- const mistralOptions = await (0, import_provider_utils5.parseProviderOptions)({
969
+ const mistralOptions = await (0, import_provider_utils7.parseProviderOptions)({
941
970
  provider: "mistral",
942
971
  providerOptions,
943
972
  schema: mistralSpeechModelOptions
@@ -996,9 +1025,9 @@ var MistralSpeechModel = class {
996
1025
  value: response,
997
1026
  responseHeaders,
998
1027
  rawValue: rawResponse
999
- } = await (0, import_provider_utils5.postToApi)({
1028
+ } = await (0, import_provider_utils7.postToApi)({
1000
1029
  url: `${this.config.baseURL}/audio/speech`,
1001
- headers: (0, import_provider_utils5.combineHeaders)(
1030
+ headers: (0, import_provider_utils7.combineHeaders)(
1002
1031
  { "Content-Type": "application/json" },
1003
1032
  (_e = (_d = this.config).headers) == null ? void 0 : _e.call(_d),
1004
1033
  options.headers
@@ -1008,7 +1037,7 @@ var MistralSpeechModel = class {
1008
1037
  values: requestBodyValues
1009
1038
  },
1010
1039
  failedResponseHandler: mistralFailedResponseHandler,
1011
- successfulResponseHandler: (0, import_provider_utils5.createJsonResponseHandler)(
1040
+ successfulResponseHandler: (0, import_provider_utils7.createJsonResponseHandler)(
1012
1041
  mistralSpeechResponseSchema
1013
1042
  ),
1014
1043
  abortSignal: options.abortSignal,
@@ -1029,20 +1058,24 @@ var MistralSpeechModel = class {
1029
1058
  };
1030
1059
  }
1031
1060
  };
1032
- var mistralSpeechResponseSchema = import_v47.z.object({
1033
- audio_data: import_v47.z.string()
1034
- });
1061
+ var mistralSpeechResponseSchema = (0, import_provider_utils7.lazySchema)(
1062
+ () => (0, import_provider_utils7.zodSchema)(
1063
+ import_v47.z.object({
1064
+ audio_data: import_v47.z.string()
1065
+ })
1066
+ )
1067
+ );
1035
1068
 
1036
1069
  // src/version.ts
1037
- var VERSION = true ? "3.0.73" : "0.0.0-test";
1070
+ var VERSION = true ? "3.0.75" : "0.0.0-test";
1038
1071
 
1039
1072
  // src/mistral-provider.ts
1040
1073
  function createMistral(options = {}) {
1041
1074
  var _a;
1042
- const baseURL = (_a = (0, import_provider_utils6.withoutTrailingSlash)(options.baseURL)) != null ? _a : "https://api.mistral.ai/v1";
1043
- const getHeaders = () => (0, import_provider_utils6.withUserAgentSuffix)(
1075
+ const baseURL = (_a = (0, import_provider_utils8.withoutTrailingSlash)(options.baseURL)) != null ? _a : "https://api.mistral.ai/v1";
1076
+ const getHeaders = () => (0, import_provider_utils8.withUserAgentSuffix)(
1044
1077
  {
1045
- Authorization: `Bearer ${(0, import_provider_utils6.loadApiKey)({
1078
+ Authorization: `Bearer ${(0, import_provider_utils8.loadApiKey)({
1046
1079
  apiKey: options.apiKey,
1047
1080
  environmentVariableName: "MISTRAL_API_KEY",
1048
1081
  description: "Mistral"