@ai-sdk/voyage 1.0.4 → 2.0.0-canary.11

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,39 +1,109 @@
1
1
  # @ai-sdk/voyage
2
2
 
3
- ## 1.0.4
3
+ ## 2.0.0-canary.11
4
4
 
5
5
  ### Patch Changes
6
6
 
7
- - Updated dependencies [f591416]
8
- - @ai-sdk/provider-utils@4.0.27
7
+ - Updated dependencies [ca39020]
8
+ - @ai-sdk/provider-utils@5.0.0-canary.36
9
9
 
10
- ## 1.0.3
10
+ ## 2.0.0-canary.10
11
11
 
12
12
  ### Patch Changes
13
13
 
14
- - Updated dependencies [7beadf0]
15
- - @ai-sdk/provider-utils@4.0.26
14
+ - Updated dependencies [f634bac]
15
+ - @ai-sdk/provider-utils@5.0.0-canary.35
16
16
 
17
- ## 1.0.2
17
+ ## 2.0.0-canary.9
18
18
 
19
19
  ### Patch Changes
20
20
 
21
- - a727da4: chore: ensure consistent import handling and avoid import duplicates or cycles
22
- - Updated dependencies [a727da4]
23
- - @ai-sdk/provider-utils@4.0.25
24
- - @ai-sdk/provider@3.0.10
21
+ - Updated dependencies [69254e0]
22
+ - Updated dependencies [3015fc3]
23
+ - @ai-sdk/provider-utils@5.0.0-canary.34
25
24
 
26
- ## 1.0.1
25
+ ## 2.0.0-canary.8
27
26
 
28
27
  ### Patch Changes
29
28
 
30
- - a7f3c72: trigger release for all packages after provenance setup
31
- - Updated dependencies [a7f3c72]
32
- - @ai-sdk/provider@3.0.9
33
- - @ai-sdk/provider-utils@4.0.24
29
+ - c25eb7a: chore(voyage): trigger canary release at 2.0.0
34
30
 
35
- ## 1.0.0
31
+ ## 1.0.0-canary.7
32
+
33
+ ### Patch Changes
34
+
35
+ - Updated dependencies [2427d88]
36
+ - @ai-sdk/provider-utils@5.0.0-canary.33
37
+
38
+ ## 1.0.0-canary.6
39
+
40
+ ### Patch Changes
41
+
42
+ - Updated dependencies [5463d0d]
43
+ - @ai-sdk/provider-utils@5.0.0-canary.32
44
+ - @ai-sdk/provider@4.0.0-canary.16
45
+
46
+ ## 1.0.0-canary.5
47
+
48
+ ### Patch Changes
49
+
50
+ - 0c4c275: trigger initial canary release
51
+ - Updated dependencies [0c4c275]
52
+ - @ai-sdk/provider-utils@5.0.0-canary.31
53
+ - @ai-sdk/provider@4.0.0-canary.15
54
+
55
+ ## 1.0.0-beta.4
36
56
 
37
57
  ### Major Changes
38
58
 
39
- - c136e16: add voyage ai provider with embedding and reranking support on v6
59
+ - 04e9009: chore: make provider implementations code patterns more consistent, including renaming certain exported symbols
60
+
61
+ For all externally exported symbols that were renamed, the old names continue to work via deprecated aliases.
62
+
63
+ ### Patch Changes
64
+
65
+ - Updated dependencies [08d2129]
66
+ - @ai-sdk/provider-utils@5.0.0-beta.30
67
+
68
+ ## 1.0.0-beta.3
69
+
70
+ ### Patch Changes
71
+
72
+ - 258c093: chore: ensure consistent import handling and avoid import duplicates or cycles
73
+ - Updated dependencies [9bd6512]
74
+ - Updated dependencies [258c093]
75
+ - Updated dependencies [b6783da]
76
+ - @ai-sdk/provider-utils@5.0.0-beta.29
77
+ - @ai-sdk/provider@4.0.0-beta.14
78
+
79
+ ## 1.0.0-beta.2
80
+
81
+ ### Patch Changes
82
+
83
+ - 9f0e36c: trigger release for all packages after provenance setup
84
+ - Updated dependencies [9f0e36c]
85
+ - @ai-sdk/provider@4.0.0-beta.13
86
+ - @ai-sdk/provider-utils@5.0.0-beta.28
87
+
88
+ ## 1.0.0-beta.1
89
+
90
+ ### Patch Changes
91
+
92
+ - Updated dependencies [785fe16]
93
+ - Updated dependencies [67df0a0]
94
+ - Updated dependencies [befb78c]
95
+ - Updated dependencies [0458559]
96
+ - Updated dependencies [5852c0a]
97
+ - Updated dependencies [fc92055]
98
+ - @ai-sdk/provider-utils@5.0.0-beta.27
99
+
100
+ ## 1.0.0-beta.0
101
+
102
+ ### Major Changes
103
+
104
+ - 4963f11: add voyage ai provider with embedding and reranking support
105
+
106
+ ### Patch Changes
107
+
108
+ - Updated dependencies [2e98477]
109
+ - @ai-sdk/provider-utils@5.0.0-beta.26
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ProviderV3, EmbeddingModelV3, RerankingModelV3 } from '@ai-sdk/provider';
1
+ import { ProviderV4, EmbeddingModelV4, RerankingModelV4 } from '@ai-sdk/provider';
2
2
  import { FetchFunction } from '@ai-sdk/provider-utils';
3
3
  import { z } from 'zod/v4';
4
4
 
@@ -26,13 +26,13 @@ type VoyageRerankingModelOptions = {
26
26
  truncation?: boolean;
27
27
  };
28
28
 
29
- interface VoyageProvider extends ProviderV3 {
30
- embedding(modelId: VoyageEmbeddingModelId): EmbeddingModelV3;
31
- embeddingModel(modelId: VoyageEmbeddingModelId): EmbeddingModelV3;
32
- textEmbedding(modelId: VoyageEmbeddingModelId): EmbeddingModelV3;
33
- textEmbeddingModel(modelId: VoyageEmbeddingModelId): EmbeddingModelV3;
34
- reranking(modelId: VoyageRerankingModelId): RerankingModelV3;
35
- rerankingModel(modelId: VoyageRerankingModelId): RerankingModelV3;
29
+ interface VoyageProvider extends ProviderV4 {
30
+ embedding(modelId: VoyageEmbeddingModelId): EmbeddingModelV4;
31
+ embeddingModel(modelId: VoyageEmbeddingModelId): EmbeddingModelV4;
32
+ textEmbedding(modelId: VoyageEmbeddingModelId): EmbeddingModelV4;
33
+ textEmbeddingModel(modelId: VoyageEmbeddingModelId): EmbeddingModelV4;
34
+ reranking(modelId: VoyageRerankingModelId): RerankingModelV4;
35
+ rerankingModel(modelId: VoyageRerankingModelId): RerankingModelV4;
36
36
  }
37
37
  interface VoyageProviderSettings {
38
38
  baseURL?: string;
package/dist/index.js CHANGED
@@ -1,69 +1,66 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/index.ts
21
- var index_exports = {};
22
- __export(index_exports, {
23
- VERSION: () => VERSION,
24
- createVoyage: () => createVoyage,
25
- voyage: () => voyage
26
- });
27
- module.exports = __toCommonJS(index_exports);
28
-
29
1
  // src/voyage-provider.ts
30
- var import_provider2 = require("@ai-sdk/provider");
31
- var import_provider_utils5 = require("@ai-sdk/provider-utils");
2
+ import {
3
+ NoSuchModelError
4
+ } from "@ai-sdk/provider";
5
+ import {
6
+ loadApiKey,
7
+ withoutTrailingSlash,
8
+ withUserAgentSuffix
9
+ } from "@ai-sdk/provider-utils";
32
10
 
33
11
  // src/voyage-embedding-model.ts
34
- var import_provider = require("@ai-sdk/provider");
35
- var import_provider_utils2 = require("@ai-sdk/provider-utils");
36
- var import_v43 = require("zod/v4");
12
+ import {
13
+ TooManyEmbeddingValuesForCallError
14
+ } from "@ai-sdk/provider";
15
+ import {
16
+ combineHeaders,
17
+ createJsonResponseHandler,
18
+ parseProviderOptions,
19
+ postJsonToApi,
20
+ serializeModelOptions,
21
+ WORKFLOW_SERIALIZE,
22
+ WORKFLOW_DESERIALIZE
23
+ } from "@ai-sdk/provider-utils";
24
+ import { z as z3 } from "zod/v4";
37
25
 
38
- // src/voyage-embedding-options.ts
39
- var import_v4 = require("zod/v4");
40
- var voyageEmbeddingModelOptions = import_v4.z.object({
41
- inputType: import_v4.z.enum(["query", "document"]).nullable().optional(),
42
- truncation: import_v4.z.boolean().optional(),
43
- outputDimension: import_v4.z.number().optional(),
44
- outputDtype: import_v4.z.enum(["float", "int8", "uint8", "binary", "ubinary"]).optional()
26
+ // src/voyage-embedding-model-options.ts
27
+ import { z } from "zod/v4";
28
+ var voyageEmbeddingModelOptions = z.object({
29
+ inputType: z.enum(["query", "document"]).nullable().optional(),
30
+ truncation: z.boolean().optional(),
31
+ outputDimension: z.number().optional(),
32
+ outputDtype: z.enum(["float", "int8", "uint8", "binary", "ubinary"]).optional()
45
33
  });
46
34
 
47
35
  // src/voyage-error.ts
48
- var import_provider_utils = require("@ai-sdk/provider-utils");
49
- var import_v42 = require("zod/v4");
50
- var voyageErrorDataSchema = import_v42.z.object({
51
- detail: import_v42.z.string()
36
+ import { createJsonErrorResponseHandler } from "@ai-sdk/provider-utils";
37
+ import { z as z2 } from "zod/v4";
38
+ var voyageErrorDataSchema = z2.object({
39
+ detail: z2.string()
52
40
  });
53
- var voyageFailedResponseHandler = (0, import_provider_utils.createJsonErrorResponseHandler)({
41
+ var voyageFailedResponseHandler = createJsonErrorResponseHandler({
54
42
  errorSchema: voyageErrorDataSchema,
55
43
  errorToMessage: (data) => data.detail
56
44
  });
57
45
 
58
46
  // src/voyage-embedding-model.ts
59
- var VoyageEmbeddingModel = class {
47
+ var VoyageEmbeddingModel = class _VoyageEmbeddingModel {
60
48
  constructor(modelId, config) {
61
- this.specificationVersion = "v3";
49
+ this.specificationVersion = "v4";
62
50
  this.maxEmbeddingsPerCall = 128;
63
51
  this.supportsParallelCalls = true;
64
52
  this.modelId = modelId;
65
53
  this.config = config;
66
54
  }
55
+ static [WORKFLOW_SERIALIZE](model) {
56
+ return serializeModelOptions({
57
+ modelId: model.modelId,
58
+ config: model.config
59
+ });
60
+ }
61
+ static [WORKFLOW_DESERIALIZE](options) {
62
+ return new _VoyageEmbeddingModel(options.modelId, options.config);
63
+ }
67
64
  get provider() {
68
65
  return this.config.provider;
69
66
  }
@@ -73,13 +70,14 @@ var VoyageEmbeddingModel = class {
73
70
  abortSignal,
74
71
  providerOptions
75
72
  }) {
76
- const embeddingOptions = await (0, import_provider_utils2.parseProviderOptions)({
73
+ var _a, _b, _c, _d;
74
+ const embeddingOptions = await parseProviderOptions({
77
75
  provider: "voyage",
78
76
  providerOptions,
79
77
  schema: voyageEmbeddingModelOptions
80
78
  });
81
79
  if (values.length > this.maxEmbeddingsPerCall) {
82
- throw new import_provider.TooManyEmbeddingValuesForCallError({
80
+ throw new TooManyEmbeddingValuesForCallError({
83
81
  provider: this.provider,
84
82
  modelId: this.modelId,
85
83
  maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,
@@ -90,19 +88,19 @@ var VoyageEmbeddingModel = class {
90
88
  responseHeaders,
91
89
  value: response,
92
90
  rawValue
93
- } = await (0, import_provider_utils2.postJsonToApi)({
91
+ } = await postJsonToApi({
94
92
  url: `${this.config.baseURL}/embeddings`,
95
- headers: (0, import_provider_utils2.combineHeaders)(this.config.headers(), headers),
93
+ headers: combineHeaders((_b = (_a = this.config).headers) == null ? void 0 : _b.call(_a), headers),
96
94
  body: {
97
- model: this.modelId,
98
95
  input: values,
96
+ model: this.modelId,
99
97
  input_type: embeddingOptions == null ? void 0 : embeddingOptions.inputType,
100
98
  truncation: embeddingOptions == null ? void 0 : embeddingOptions.truncation,
101
99
  output_dimension: embeddingOptions == null ? void 0 : embeddingOptions.outputDimension,
102
100
  output_dtype: embeddingOptions == null ? void 0 : embeddingOptions.outputDtype
103
101
  },
104
102
  failedResponseHandler: voyageFailedResponseHandler,
105
- successfulResponseHandler: (0, import_provider_utils2.createJsonResponseHandler)(
103
+ successfulResponseHandler: createJsonResponseHandler(
106
104
  voyageEmbeddingResponseSchema
107
105
  ),
108
106
  abortSignal,
@@ -110,36 +108,47 @@ var VoyageEmbeddingModel = class {
110
108
  });
111
109
  return {
112
110
  warnings: [],
113
- embeddings: response.data.map((item) => item.embedding),
114
- usage: { tokens: response.usage.total_tokens },
111
+ embeddings: response.data.sort((a, b) => a.index - b.index).map((item) => item.embedding),
112
+ usage: { tokens: (_d = (_c = response.usage) == null ? void 0 : _c.total_tokens) != null ? _d : 0 },
115
113
  response: { headers: responseHeaders, body: rawValue }
116
114
  };
117
115
  }
118
116
  };
119
- var voyageEmbeddingResponseSchema = import_v43.z.object({
120
- data: import_v43.z.array(
121
- import_v43.z.object({
122
- embedding: import_v43.z.array(import_v43.z.number()),
123
- index: import_v43.z.number()
117
+ var voyageEmbeddingResponseSchema = z3.object({
118
+ data: z3.array(
119
+ z3.object({
120
+ embedding: z3.array(z3.number()),
121
+ index: z3.number()
124
122
  })
125
123
  ),
126
- usage: import_v43.z.object({
127
- total_tokens: import_v43.z.number()
128
- })
124
+ model: z3.string(),
125
+ usage: z3.object({
126
+ total_tokens: z3.number()
127
+ }).nullish()
129
128
  });
130
129
 
131
130
  // src/reranking/voyage-reranking-model.ts
132
- var import_provider_utils4 = require("@ai-sdk/provider-utils");
133
- var import_v45 = require("zod/v4");
131
+ import {
132
+ combineHeaders as combineHeaders2,
133
+ createJsonResponseHandler as createJsonResponseHandler2,
134
+ lazySchema as lazySchema2,
135
+ parseProviderOptions as parseProviderOptions2,
136
+ postJsonToApi as postJsonToApi2,
137
+ zodSchema as zodSchema2
138
+ } from "@ai-sdk/provider-utils";
139
+ import { z as z5 } from "zod/v4";
134
140
 
135
- // src/reranking/voyage-reranking-options.ts
136
- var import_provider_utils3 = require("@ai-sdk/provider-utils");
137
- var import_v44 = require("zod/v4");
138
- var voyageRerankingModelOptionsSchema = (0, import_provider_utils3.lazySchema)(
139
- () => (0, import_provider_utils3.zodSchema)(
140
- import_v44.z.object({
141
- returnDocuments: import_v44.z.boolean().optional(),
142
- truncation: import_v44.z.boolean().optional()
141
+ // src/reranking/voyage-reranking-model-options.ts
142
+ import {
143
+ lazySchema,
144
+ zodSchema
145
+ } from "@ai-sdk/provider-utils";
146
+ import { z as z4 } from "zod/v4";
147
+ var voyageRerankingModelOptionsSchema = lazySchema(
148
+ () => zodSchema(
149
+ z4.object({
150
+ returnDocuments: z4.boolean().optional(),
151
+ truncation: z4.boolean().optional()
143
152
  })
144
153
  )
145
154
  );
@@ -147,7 +156,7 @@ var voyageRerankingModelOptionsSchema = (0, import_provider_utils3.lazySchema)(
147
156
  // src/reranking/voyage-reranking-model.ts
148
157
  var VoyageRerankingModel = class {
149
158
  constructor(modelId, config) {
150
- this.specificationVersion = "v3";
159
+ this.specificationVersion = "v4";
151
160
  this.modelId = modelId;
152
161
  this.config = config;
153
162
  }
@@ -162,7 +171,7 @@ var VoyageRerankingModel = class {
162
171
  abortSignal,
163
172
  providerOptions
164
173
  }) {
165
- const rerankingOptions = await (0, import_provider_utils4.parseProviderOptions)({
174
+ const rerankingOptions = await parseProviderOptions2({
166
175
  provider: "voyage",
167
176
  providerOptions,
168
177
  schema: voyageRerankingModelOptionsSchema
@@ -175,23 +184,24 @@ var VoyageRerankingModel = class {
175
184
  details: "Object documents are converted to strings."
176
185
  });
177
186
  }
187
+ const stringValues = documents.type === "text" ? documents.values : documents.values.map((value) => JSON.stringify(value));
178
188
  const {
179
189
  responseHeaders,
180
190
  value: response,
181
191
  rawValue
182
- } = await (0, import_provider_utils4.postJsonToApi)({
192
+ } = await postJsonToApi2({
183
193
  url: `${this.config.baseURL}/rerank`,
184
- headers: (0, import_provider_utils4.combineHeaders)(this.config.headers(), headers),
194
+ headers: combineHeaders2(this.config.headers(), headers),
185
195
  body: {
186
- model: this.modelId,
187
196
  query,
188
- documents: documents.type === "text" ? documents.values : documents.values.map((value) => JSON.stringify(value)),
197
+ documents: stringValues,
198
+ model: this.modelId,
189
199
  top_k: topN,
190
200
  return_documents: rerankingOptions == null ? void 0 : rerankingOptions.returnDocuments,
191
201
  truncation: rerankingOptions == null ? void 0 : rerankingOptions.truncation
192
202
  },
193
203
  failedResponseHandler: voyageFailedResponseHandler,
194
- successfulResponseHandler: (0, import_provider_utils4.createJsonResponseHandler)(
204
+ successfulResponseHandler: createJsonResponseHandler2(
195
205
  voyageRerankingResponseSchema
196
206
  ),
197
207
  abortSignal,
@@ -210,28 +220,29 @@ var VoyageRerankingModel = class {
210
220
  };
211
221
  }
212
222
  };
213
- var voyageRerankingResponseSchema = import_v45.z.object({
214
- data: import_v45.z.array(
215
- import_v45.z.object({
216
- index: import_v45.z.number(),
217
- relevance_score: import_v45.z.number()
223
+ var voyageRerankingResponseSchema = lazySchema2(
224
+ () => zodSchema2(
225
+ z5.object({
226
+ data: z5.array(
227
+ z5.object({
228
+ index: z5.number(),
229
+ relevance_score: z5.number()
230
+ })
231
+ )
218
232
  })
219
- ),
220
- usage: import_v45.z.object({
221
- total_tokens: import_v45.z.number()
222
- })
223
- });
233
+ )
234
+ );
224
235
 
225
236
  // src/version.ts
226
- var VERSION = true ? "1.0.4" : "0.0.0-test";
237
+ var VERSION = true ? "2.0.0-canary.11" : "0.0.0-test";
227
238
 
228
239
  // src/voyage-provider.ts
229
240
  function createVoyage(options = {}) {
230
241
  var _a;
231
- const baseURL = (_a = (0, import_provider_utils5.withoutTrailingSlash)(options.baseURL)) != null ? _a : "https://api.voyageai.com/v1";
232
- const getHeaders = () => (0, import_provider_utils5.withUserAgentSuffix)(
242
+ const baseURL = (_a = withoutTrailingSlash(options.baseURL)) != null ? _a : "https://api.voyageai.com/v1";
243
+ const getHeaders = () => withUserAgentSuffix(
233
244
  {
234
- Authorization: `Bearer ${(0, import_provider_utils5.loadApiKey)({
245
+ Authorization: `Bearer ${loadApiKey({
235
246
  apiKey: options.apiKey,
236
247
  environmentVariableName: "VOYAGE_API_KEY",
237
248
  description: "Voyage"
@@ -252,32 +263,27 @@ function createVoyage(options = {}) {
252
263
  headers: getHeaders,
253
264
  fetch: options.fetch
254
265
  });
255
- const provider = function() {
256
- throw new import_provider2.NoSuchModelError({
257
- modelId: "",
258
- modelType: "languageModel"
259
- });
260
- };
261
- provider.specificationVersion = "v3";
262
- provider.languageModel = (modelId) => {
263
- throw new import_provider2.NoSuchModelError({ modelId, modelType: "languageModel" });
264
- };
265
- provider.embedding = createEmbeddingModel;
266
- provider.embeddingModel = createEmbeddingModel;
267
- provider.textEmbedding = createEmbeddingModel;
268
- provider.textEmbeddingModel = createEmbeddingModel;
269
- provider.reranking = createRerankingModel;
270
- provider.rerankingModel = createRerankingModel;
271
- provider.imageModel = (modelId) => {
272
- throw new import_provider2.NoSuchModelError({ modelId, modelType: "imageModel" });
266
+ const provider = {
267
+ specificationVersion: "v4",
268
+ embedding: createEmbeddingModel,
269
+ embeddingModel: createEmbeddingModel,
270
+ textEmbedding: createEmbeddingModel,
271
+ textEmbeddingModel: createEmbeddingModel,
272
+ reranking: createRerankingModel,
273
+ rerankingModel: createRerankingModel,
274
+ languageModel: (modelId) => {
275
+ throw new NoSuchModelError({ modelId, modelType: "languageModel" });
276
+ },
277
+ imageModel: (modelId) => {
278
+ throw new NoSuchModelError({ modelId, modelType: "imageModel" });
279
+ }
273
280
  };
274
281
  return provider;
275
282
  }
276
283
  var voyage = createVoyage();
277
- // Annotate the CommonJS export names for ESM import in node:
278
- 0 && (module.exports = {
284
+ export {
279
285
  VERSION,
280
286
  createVoyage,
281
287
  voyage
282
- });
288
+ };
283
289
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/voyage-provider.ts","../src/voyage-embedding-model.ts","../src/voyage-embedding-options.ts","../src/voyage-error.ts","../src/reranking/voyage-reranking-model.ts","../src/reranking/voyage-reranking-options.ts","../src/version.ts"],"sourcesContent":["export { voyage, createVoyage } from './voyage-provider';\nexport type { VoyageProvider, VoyageProviderSettings } from './voyage-provider';\nexport type { VoyageEmbeddingModelOptions } from './voyage-embedding-options';\nexport type { VoyageRerankingModelOptions } from './reranking/voyage-reranking-options';\nexport { VERSION } from './version';\n","import {\n NoSuchModelError,\n type EmbeddingModelV3,\n type RerankingModelV3,\n type ProviderV3,\n} from '@ai-sdk/provider';\nimport {\n loadApiKey,\n withoutTrailingSlash,\n withUserAgentSuffix,\n type FetchFunction,\n} from '@ai-sdk/provider-utils';\nimport { VoyageEmbeddingModel } from './voyage-embedding-model';\nimport type { VoyageEmbeddingModelId } from './voyage-embedding-options';\nimport { VoyageRerankingModel } from './reranking/voyage-reranking-model';\nimport type { VoyageRerankingModelId } from './reranking/voyage-reranking-options';\nimport { VERSION } from './version';\n\nexport interface VoyageProvider extends ProviderV3 {\n embedding(modelId: VoyageEmbeddingModelId): EmbeddingModelV3;\n\n embeddingModel(modelId: VoyageEmbeddingModelId): EmbeddingModelV3;\n\n textEmbedding(modelId: VoyageEmbeddingModelId): EmbeddingModelV3;\n\n textEmbeddingModel(modelId: VoyageEmbeddingModelId): EmbeddingModelV3;\n\n reranking(modelId: VoyageRerankingModelId): RerankingModelV3;\n\n rerankingModel(modelId: VoyageRerankingModelId): RerankingModelV3;\n}\n\nexport interface VoyageProviderSettings {\n baseURL?: string;\n apiKey?: string;\n headers?: Record<string, string>;\n fetch?: FetchFunction;\n}\n\nexport function createVoyage(\n options: VoyageProviderSettings = {},\n): VoyageProvider {\n const baseURL =\n withoutTrailingSlash(options.baseURL) ?? 'https://api.voyageai.com/v1';\n\n const getHeaders = () =>\n withUserAgentSuffix(\n {\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'VOYAGE_API_KEY',\n description: 'Voyage',\n })}`,\n ...options.headers,\n },\n `ai-sdk/voyage/${VERSION}`,\n );\n\n const createEmbeddingModel = (modelId: VoyageEmbeddingModelId) =>\n new VoyageEmbeddingModel(modelId, {\n provider: 'voyage.embedding',\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createRerankingModel = (modelId: VoyageRerankingModelId) =>\n new VoyageRerankingModel(modelId, {\n provider: 'voyage.reranking',\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const provider = function () {\n throw new NoSuchModelError({\n modelId: '',\n modelType: 'languageModel',\n });\n };\n\n provider.specificationVersion = 'v3' as const;\n\n provider.languageModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'languageModel' });\n };\n\n provider.embedding = createEmbeddingModel;\n provider.embeddingModel = createEmbeddingModel;\n provider.textEmbedding = createEmbeddingModel;\n provider.textEmbeddingModel = createEmbeddingModel;\n provider.reranking = createRerankingModel;\n provider.rerankingModel = createRerankingModel;\n\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'imageModel' });\n };\n\n return provider as VoyageProvider;\n}\n\nexport const voyage = createVoyage();\n","import {\n TooManyEmbeddingValuesForCallError,\n type EmbeddingModelV3,\n} from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createJsonResponseHandler,\n parseProviderOptions,\n postJsonToApi,\n type FetchFunction,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport {\n voyageEmbeddingModelOptions,\n type VoyageEmbeddingModelId,\n} from './voyage-embedding-options';\nimport { voyageFailedResponseHandler } from './voyage-error';\n\ntype VoyageEmbeddingConfig = {\n provider: string;\n baseURL: string;\n headers: () => Record<string, string | undefined>;\n fetch?: FetchFunction;\n};\n\nexport class VoyageEmbeddingModel implements EmbeddingModelV3 {\n readonly specificationVersion = 'v3';\n readonly modelId: VoyageEmbeddingModelId;\n\n readonly maxEmbeddingsPerCall = 128;\n readonly supportsParallelCalls = true;\n\n private readonly config: VoyageEmbeddingConfig;\n\n constructor(modelId: VoyageEmbeddingModelId, config: VoyageEmbeddingConfig) {\n this.modelId = modelId;\n this.config = config;\n }\n\n get provider(): string {\n return this.config.provider;\n }\n\n async doEmbed({\n values,\n headers,\n abortSignal,\n providerOptions,\n }: Parameters<EmbeddingModelV3['doEmbed']>[0]): Promise<\n Awaited<ReturnType<EmbeddingModelV3['doEmbed']>>\n > {\n const embeddingOptions = await parseProviderOptions({\n provider: 'voyage',\n providerOptions,\n schema: voyageEmbeddingModelOptions,\n });\n\n if (values.length > this.maxEmbeddingsPerCall) {\n throw new TooManyEmbeddingValuesForCallError({\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values,\n });\n }\n\n const {\n responseHeaders,\n value: response,\n rawValue,\n } = await postJsonToApi({\n url: `${this.config.baseURL}/embeddings`,\n headers: combineHeaders(this.config.headers(), headers),\n body: {\n model: this.modelId,\n input: values,\n input_type: embeddingOptions?.inputType,\n truncation: embeddingOptions?.truncation,\n output_dimension: embeddingOptions?.outputDimension,\n output_dtype: embeddingOptions?.outputDtype,\n },\n failedResponseHandler: voyageFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n voyageEmbeddingResponseSchema,\n ),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n warnings: [],\n embeddings: response.data.map(item => item.embedding),\n usage: { tokens: response.usage.total_tokens },\n response: { headers: responseHeaders, body: rawValue },\n };\n }\n}\n\nconst voyageEmbeddingResponseSchema = z.object({\n data: z.array(\n z.object({\n embedding: z.array(z.number()),\n index: z.number(),\n }),\n ),\n usage: z.object({\n total_tokens: z.number(),\n }),\n});\n","import { z } from 'zod/v4';\n\nexport type VoyageEmbeddingModelId =\n | 'voyage-4-large'\n | 'voyage-4'\n | 'voyage-4-lite'\n | 'voyage-4-nano'\n | 'voyage-code-3.5'\n | 'voyage-code-3'\n | 'voyage-3-large'\n | 'voyage-3.5'\n | 'voyage-3.5-lite'\n | 'voyage-3'\n | 'voyage-3-lite'\n | 'voyage-finance-2'\n | 'voyage-law-2'\n | 'voyage-multilingual-2'\n | 'voyage-code-2'\n | 'voyage-2'\n | (string & {});\n\nexport const voyageEmbeddingModelOptions = z.object({\n inputType: z.enum(['query', 'document']).nullable().optional(),\n truncation: z.boolean().optional(),\n outputDimension: z.number().optional(),\n outputDtype: z\n .enum(['float', 'int8', 'uint8', 'binary', 'ubinary'])\n .optional(),\n});\n\nexport type VoyageEmbeddingModelOptions = z.infer<\n typeof voyageEmbeddingModelOptions\n>;\n","import { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nconst voyageErrorDataSchema = z.object({\n detail: z.string(),\n});\n\nexport type VoyageErrorData = z.infer<typeof voyageErrorDataSchema>;\n\nexport const voyageFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: voyageErrorDataSchema,\n errorToMessage: data => data.detail,\n});\n","import type { RerankingModelV3, SharedV3Warning } from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createJsonResponseHandler,\n parseProviderOptions,\n postJsonToApi,\n type FetchFunction,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport { voyageFailedResponseHandler } from '../voyage-error';\nimport {\n voyageRerankingModelOptionsSchema,\n type VoyageRerankingModelId,\n} from './voyage-reranking-options';\n\ntype VoyageRerankingConfig = {\n provider: string;\n baseURL: string;\n headers: () => Record<string, string | undefined>;\n fetch?: FetchFunction;\n};\n\nexport class VoyageRerankingModel implements RerankingModelV3 {\n readonly specificationVersion = 'v3';\n readonly modelId: VoyageRerankingModelId;\n\n private readonly config: VoyageRerankingConfig;\n\n constructor(modelId: VoyageRerankingModelId, config: VoyageRerankingConfig) {\n this.modelId = modelId;\n this.config = config;\n }\n\n get provider(): string {\n return this.config.provider;\n }\n\n async doRerank({\n documents,\n headers,\n query,\n topN,\n abortSignal,\n providerOptions,\n }: Parameters<RerankingModelV3['doRerank']>[0]): Promise<\n Awaited<ReturnType<RerankingModelV3['doRerank']>>\n > {\n const rerankingOptions = await parseProviderOptions({\n provider: 'voyage',\n providerOptions,\n schema: voyageRerankingModelOptionsSchema,\n });\n\n const warnings: SharedV3Warning[] = [];\n\n if (documents.type === 'object') {\n warnings.push({\n type: 'compatibility',\n feature: 'object documents',\n details: 'Object documents are converted to strings.',\n });\n }\n\n const {\n responseHeaders,\n value: response,\n rawValue,\n } = await postJsonToApi({\n url: `${this.config.baseURL}/rerank`,\n headers: combineHeaders(this.config.headers(), headers),\n body: {\n model: this.modelId,\n query,\n documents:\n documents.type === 'text'\n ? documents.values\n : documents.values.map(value => JSON.stringify(value)),\n top_k: topN,\n return_documents: rerankingOptions?.returnDocuments,\n truncation: rerankingOptions?.truncation,\n },\n failedResponseHandler: voyageFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n voyageRerankingResponseSchema,\n ),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n ranking: response.data.map(result => ({\n index: result.index,\n relevanceScore: result.relevance_score,\n })),\n warnings,\n response: {\n headers: responseHeaders,\n body: rawValue,\n },\n };\n }\n}\n\nconst voyageRerankingResponseSchema = z.object({\n data: z.array(\n z.object({\n index: z.number(),\n relevance_score: z.number(),\n }),\n ),\n usage: z.object({\n total_tokens: z.number(),\n }),\n});\n","import {\n lazySchema,\n zodSchema,\n type FlexibleSchema,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nexport type VoyageRerankingModelId =\n | 'rerank-2.5'\n | 'rerank-2.5-lite'\n | 'rerank-2'\n | 'rerank-2-lite'\n | 'rerank-1'\n | 'rerank-lite-1'\n | (string & {});\n\nexport type VoyageRerankingModelOptions = {\n returnDocuments?: boolean;\n truncation?: boolean;\n};\n\nexport const voyageRerankingModelOptionsSchema: FlexibleSchema<VoyageRerankingModelOptions> =\n lazySchema(() =>\n zodSchema(\n z.object({\n returnDocuments: z.boolean().optional(),\n truncation: z.boolean().optional(),\n }),\n ),\n );\n","declare const __PACKAGE_VERSION__: string | undefined;\nexport const VERSION: string =\n typeof __PACKAGE_VERSION__ !== 'undefined'\n ? __PACKAGE_VERSION__\n : '0.0.0-test';\n"],"mappings":"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","names":["import_provider","import_provider_utils","import_provider_utils","import_v4","import_v4","import_provider_utils","import_v4","import_provider_utils","import_v4"]}
1
+ {"version":3,"sources":["../src/voyage-provider.ts","../src/voyage-embedding-model.ts","../src/voyage-embedding-model-options.ts","../src/voyage-error.ts","../src/reranking/voyage-reranking-model.ts","../src/reranking/voyage-reranking-model-options.ts","../src/version.ts"],"sourcesContent":["import {\n NoSuchModelError,\n type EmbeddingModelV4,\n type RerankingModelV4,\n type ProviderV4,\n} from '@ai-sdk/provider';\nimport {\n loadApiKey,\n withoutTrailingSlash,\n withUserAgentSuffix,\n type FetchFunction,\n} from '@ai-sdk/provider-utils';\nimport { VoyageEmbeddingModel } from './voyage-embedding-model';\nimport type { VoyageEmbeddingModelId } from './voyage-embedding-model-options';\nimport type { VoyageRerankingModelId } from './reranking/voyage-reranking-model-options';\nimport { VoyageRerankingModel } from './reranking/voyage-reranking-model';\nimport { VERSION } from './version';\n\nexport interface VoyageProvider extends ProviderV4 {\n embedding(modelId: VoyageEmbeddingModelId): EmbeddingModelV4;\n embeddingModel(modelId: VoyageEmbeddingModelId): EmbeddingModelV4;\n textEmbedding(modelId: VoyageEmbeddingModelId): EmbeddingModelV4;\n textEmbeddingModel(modelId: VoyageEmbeddingModelId): EmbeddingModelV4;\n reranking(modelId: VoyageRerankingModelId): RerankingModelV4;\n rerankingModel(modelId: VoyageRerankingModelId): RerankingModelV4;\n}\n\nexport interface VoyageProviderSettings {\n baseURL?: string;\n apiKey?: string;\n headers?: Record<string, string>;\n fetch?: FetchFunction;\n}\n\nexport function createVoyage(\n options: VoyageProviderSettings = {},\n): VoyageProvider {\n const baseURL =\n withoutTrailingSlash(options.baseURL) ?? 'https://api.voyageai.com/v1';\n\n const getHeaders = () =>\n withUserAgentSuffix(\n {\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'VOYAGE_API_KEY',\n description: 'Voyage',\n })}`,\n ...options.headers,\n },\n `ai-sdk/voyage/${VERSION}`,\n );\n\n const createEmbeddingModel = (modelId: VoyageEmbeddingModelId) =>\n new VoyageEmbeddingModel(modelId, {\n provider: 'voyage.embedding',\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createRerankingModel = (modelId: VoyageRerankingModelId) =>\n new VoyageRerankingModel(modelId, {\n provider: 'voyage.reranking',\n baseURL,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const provider: VoyageProvider = {\n specificationVersion: 'v4' as const,\n embedding: createEmbeddingModel,\n embeddingModel: createEmbeddingModel,\n textEmbedding: createEmbeddingModel,\n textEmbeddingModel: createEmbeddingModel,\n reranking: createRerankingModel,\n rerankingModel: createRerankingModel,\n\n languageModel: (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'languageModel' });\n },\n\n imageModel: (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'imageModel' });\n },\n };\n\n return provider;\n}\n\nexport const voyage = createVoyage();\n","import {\n TooManyEmbeddingValuesForCallError,\n type EmbeddingModelV4,\n} from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createJsonResponseHandler,\n parseProviderOptions,\n postJsonToApi,\n serializeModelOptions,\n WORKFLOW_SERIALIZE,\n WORKFLOW_DESERIALIZE,\n type FetchFunction,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport {\n voyageEmbeddingModelOptions,\n type VoyageEmbeddingModelId,\n} from './voyage-embedding-model-options';\nimport { voyageFailedResponseHandler } from './voyage-error';\n\ntype VoyageEmbeddingConfig = {\n provider: string;\n baseURL: string;\n headers?: () => Record<string, string | undefined>;\n fetch?: FetchFunction;\n};\n\nexport class VoyageEmbeddingModel implements EmbeddingModelV4 {\n readonly specificationVersion = 'v4';\n readonly modelId: VoyageEmbeddingModelId;\n\n readonly maxEmbeddingsPerCall = 128;\n readonly supportsParallelCalls = true;\n\n private readonly config: VoyageEmbeddingConfig;\n\n static [WORKFLOW_SERIALIZE](model: VoyageEmbeddingModel) {\n return serializeModelOptions({\n modelId: model.modelId,\n config: model.config,\n });\n }\n\n static [WORKFLOW_DESERIALIZE](options: {\n modelId: VoyageEmbeddingModelId;\n config: VoyageEmbeddingConfig;\n }) {\n return new VoyageEmbeddingModel(options.modelId, options.config);\n }\n\n constructor(modelId: VoyageEmbeddingModelId, config: VoyageEmbeddingConfig) {\n this.modelId = modelId;\n this.config = config;\n }\n\n get provider(): string {\n return this.config.provider;\n }\n\n async doEmbed({\n values,\n headers,\n abortSignal,\n providerOptions,\n }: Parameters<EmbeddingModelV4['doEmbed']>[0]): Promise<\n Awaited<ReturnType<EmbeddingModelV4['doEmbed']>>\n > {\n const embeddingOptions = await parseProviderOptions({\n provider: 'voyage',\n providerOptions,\n schema: voyageEmbeddingModelOptions,\n });\n\n if (values.length > this.maxEmbeddingsPerCall) {\n throw new TooManyEmbeddingValuesForCallError({\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values,\n });\n }\n\n const {\n responseHeaders,\n value: response,\n rawValue,\n } = await postJsonToApi({\n url: `${this.config.baseURL}/embeddings`,\n headers: combineHeaders(this.config.headers?.(), headers),\n body: {\n input: values,\n model: this.modelId,\n input_type: embeddingOptions?.inputType,\n truncation: embeddingOptions?.truncation,\n output_dimension: embeddingOptions?.outputDimension,\n output_dtype: embeddingOptions?.outputDtype,\n },\n failedResponseHandler: voyageFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n voyageEmbeddingResponseSchema,\n ),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n warnings: [],\n embeddings: response.data\n .sort((a, b) => a.index - b.index)\n .map(item => item.embedding),\n usage: { tokens: response.usage?.total_tokens ?? 0 },\n response: { headers: responseHeaders, body: rawValue },\n };\n }\n}\n\nconst voyageEmbeddingResponseSchema = z.object({\n data: z.array(\n z.object({\n embedding: z.array(z.number()),\n index: z.number(),\n }),\n ),\n model: z.string(),\n usage: z\n .object({\n total_tokens: z.number(),\n })\n .nullish(),\n});\n","import { z } from 'zod/v4';\n\nexport type VoyageEmbeddingModelId =\n | 'voyage-4-large'\n | 'voyage-4'\n | 'voyage-4-lite'\n | 'voyage-4-nano'\n | 'voyage-code-3.5'\n | 'voyage-code-3'\n | 'voyage-3-large'\n | 'voyage-3.5'\n | 'voyage-3.5-lite'\n | 'voyage-3'\n | 'voyage-3-lite'\n | 'voyage-finance-2'\n | 'voyage-law-2'\n | 'voyage-multilingual-2'\n | 'voyage-code-2'\n | 'voyage-2'\n | (string & {});\n\nexport const voyageEmbeddingModelOptions = z.object({\n inputType: z.enum(['query', 'document']).nullable().optional(),\n truncation: z.boolean().optional(),\n outputDimension: z.number().optional(),\n outputDtype: z\n .enum(['float', 'int8', 'uint8', 'binary', 'ubinary'])\n .optional(),\n});\n\nexport type VoyageEmbeddingModelOptions = z.infer<\n typeof voyageEmbeddingModelOptions\n>;\n","import { createJsonErrorResponseHandler } from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nconst voyageErrorDataSchema = z.object({\n detail: z.string(),\n});\n\nexport type VoyageErrorData = z.infer<typeof voyageErrorDataSchema>;\n\nexport const voyageFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: voyageErrorDataSchema,\n errorToMessage: data => data.detail,\n});\n","import type { RerankingModelV4, SharedV4Warning } from '@ai-sdk/provider';\nimport {\n combineHeaders,\n createJsonResponseHandler,\n lazySchema,\n parseProviderOptions,\n postJsonToApi,\n zodSchema,\n type FetchFunction,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\nimport { voyageFailedResponseHandler } from '../voyage-error';\nimport {\n voyageRerankingModelOptionsSchema,\n type VoyageRerankingModelId,\n} from './voyage-reranking-model-options';\ntype VoyageRerankingConfig = {\n provider: string;\n baseURL: string;\n headers: () => Record<string, string | undefined>;\n fetch?: FetchFunction;\n};\n\nexport class VoyageRerankingModel implements RerankingModelV4 {\n readonly specificationVersion = 'v4';\n readonly modelId: VoyageRerankingModelId;\n\n private readonly config: VoyageRerankingConfig;\n\n constructor(modelId: VoyageRerankingModelId, config: VoyageRerankingConfig) {\n this.modelId = modelId;\n this.config = config;\n }\n\n get provider(): string {\n return this.config.provider;\n }\n\n async doRerank({\n documents,\n headers,\n query,\n topN,\n abortSignal,\n providerOptions,\n }: Parameters<RerankingModelV4['doRerank']>[0]): Promise<\n Awaited<ReturnType<RerankingModelV4['doRerank']>>\n > {\n const rerankingOptions = await parseProviderOptions({\n provider: 'voyage',\n providerOptions,\n schema: voyageRerankingModelOptionsSchema,\n });\n\n const warnings: SharedV4Warning[] = [];\n\n if (documents.type === 'object') {\n warnings.push({\n type: 'compatibility',\n feature: 'object documents',\n details: 'Object documents are converted to strings.',\n });\n }\n\n const stringValues =\n documents.type === 'text'\n ? documents.values\n : documents.values.map(value => JSON.stringify(value));\n\n const {\n responseHeaders,\n value: response,\n rawValue,\n } = await postJsonToApi({\n url: `${this.config.baseURL}/rerank`,\n headers: combineHeaders(this.config.headers(), headers),\n body: {\n query,\n documents: stringValues,\n model: this.modelId,\n top_k: topN,\n return_documents: rerankingOptions?.returnDocuments,\n truncation: rerankingOptions?.truncation,\n },\n failedResponseHandler: voyageFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n voyageRerankingResponseSchema,\n ),\n abortSignal,\n fetch: this.config.fetch,\n });\n\n return {\n ranking: response.data.map(result => ({\n index: result.index,\n relevanceScore: result.relevance_score,\n })),\n warnings,\n response: {\n headers: responseHeaders,\n body: rawValue,\n },\n };\n }\n}\n\nconst voyageRerankingResponseSchema = lazySchema(() =>\n zodSchema(\n z.object({\n data: z.array(\n z.object({\n index: z.number(),\n relevance_score: z.number(),\n }),\n ),\n }),\n ),\n);\n","import {\n lazySchema,\n zodSchema,\n type FlexibleSchema,\n} from '@ai-sdk/provider-utils';\nimport { z } from 'zod/v4';\n\nexport type VoyageRerankingModelId =\n | 'rerank-2.5'\n | 'rerank-2.5-lite'\n | 'rerank-2'\n | 'rerank-2-lite'\n | 'rerank-1'\n | 'rerank-lite-1'\n | (string & {});\n\nexport type VoyageRerankingModelOptions = {\n returnDocuments?: boolean;\n truncation?: boolean;\n};\n\nexport const voyageRerankingModelOptionsSchema: FlexibleSchema<VoyageRerankingModelOptions> =\n lazySchema(() =>\n zodSchema(\n z.object({\n returnDocuments: z.boolean().optional(),\n truncation: z.boolean().optional(),\n }),\n ),\n );\n","declare const __PACKAGE_VERSION__: string | undefined;\nexport const VERSION: string =\n typeof __PACKAGE_VERSION__ !== 'undefined'\n ? __PACKAGE_VERSION__\n : '0.0.0-test';\n"],"mappings":"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","names":["z","z","z","combineHeaders","createJsonResponseHandler","lazySchema","parseProviderOptions","postJsonToApi","zodSchema","z","z","parseProviderOptions","postJsonToApi","combineHeaders","createJsonResponseHandler","lazySchema","zodSchema","z"]}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@ai-sdk/voyage",
3
- "version": "1.0.4",
3
+ "version": "2.0.0-canary.11",
4
+ "type": "module",
4
5
  "license": "Apache-2.0",
5
6
  "sideEffects": false,
6
7
  "main": "./dist/index.js",
7
- "module": "./dist/index.mjs",
8
8
  "types": "./dist/index.d.ts",
9
9
  "files": [
10
10
  "dist/**/*",
@@ -20,20 +20,20 @@
20
20
  "./package.json": "./package.json",
21
21
  ".": {
22
22
  "types": "./dist/index.d.ts",
23
- "import": "./dist/index.mjs",
24
- "require": "./dist/index.js"
23
+ "import": "./dist/index.js",
24
+ "default": "./dist/index.js"
25
25
  }
26
26
  },
27
27
  "dependencies": {
28
- "@ai-sdk/provider": "3.0.10",
29
- "@ai-sdk/provider-utils": "4.0.27"
28
+ "@ai-sdk/provider": "4.0.0-canary.16",
29
+ "@ai-sdk/provider-utils": "5.0.0-canary.36"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@types/node": "20.17.24",
33
33
  "tsup": "^8",
34
34
  "typescript": "5.8.3",
35
35
  "zod": "3.25.76",
36
- "@ai-sdk/test-server": "1.0.5",
36
+ "@ai-sdk/test-server": "2.0.0-canary.4",
37
37
  "@vercel/ai-tsconfig": "0.0.0"
38
38
  },
39
39
  "peerDependencies": {
@@ -43,7 +43,8 @@
43
43
  "node": ">=18"
44
44
  },
45
45
  "publishConfig": {
46
- "access": "public"
46
+ "access": "public",
47
+ "provenance": true
47
48
  },
48
49
  "homepage": "https://ai-sdk.dev/docs",
49
50
  "repository": {
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { voyage, createVoyage } from './voyage-provider';
2
2
  export type { VoyageProvider, VoyageProviderSettings } from './voyage-provider';
3
- export type { VoyageEmbeddingModelOptions } from './voyage-embedding-options';
4
- export type { VoyageRerankingModelOptions } from './reranking/voyage-reranking-options';
3
+ export type { VoyageEmbeddingModelOptions } from './voyage-embedding-model-options';
4
+ export type { VoyageRerankingModelOptions } from './reranking/voyage-reranking-model-options';
5
5
  export { VERSION } from './version';