@ai-sdk/voyage 1.0.5 → 2.0.0-beta.24
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 +185 -21
- package/dist/index.d.ts +8 -8
- package/dist/index.js +121 -115
- package/dist/index.js.map +1 -1
- package/package.json +13 -12
- package/src/index.ts +2 -2
- package/src/reranking/voyage-reranking-model.ts +25 -21
- package/src/voyage-embedding-model.ts +36 -14
- package/src/voyage-provider.ts +29 -40
- package/dist/index.d.mts +0 -48
- package/dist/index.mjs +0 -275
- package/dist/index.mjs.map +0 -1
- /package/src/reranking/{voyage-reranking-options.ts → voyage-reranking-model-options.ts} +0 -0
- /package/src/{voyage-embedding-options.ts → voyage-embedding-model-options.ts} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,46 +1,210 @@
|
|
|
1
1
|
# @ai-sdk/voyage
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## 2.0.0-beta.24
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
|
|
7
|
+
- b8396f0: trigger initial beta release
|
|
8
|
+
- Updated dependencies [b8396f0]
|
|
9
|
+
- @ai-sdk/provider-utils@5.0.0-beta.49
|
|
10
|
+
- @ai-sdk/provider@4.0.0-beta.19
|
|
9
11
|
|
|
10
|
-
##
|
|
12
|
+
## 2.0.0-canary.23
|
|
11
13
|
|
|
12
14
|
### Patch Changes
|
|
13
15
|
|
|
14
|
-
- Updated dependencies [
|
|
15
|
-
|
|
16
|
+
- Updated dependencies [aeda373]
|
|
17
|
+
- Updated dependencies [375fdd7]
|
|
18
|
+
- Updated dependencies [b4507d5]
|
|
19
|
+
- @ai-sdk/provider-utils@5.0.0-canary.48
|
|
16
20
|
|
|
17
|
-
##
|
|
21
|
+
## 2.0.0-canary.22
|
|
18
22
|
|
|
19
23
|
### Patch Changes
|
|
20
24
|
|
|
21
|
-
- Updated dependencies [
|
|
22
|
-
- @ai-sdk/provider-utils@
|
|
25
|
+
- Updated dependencies [bae5e2b]
|
|
26
|
+
- @ai-sdk/provider-utils@5.0.0-canary.47
|
|
23
27
|
|
|
24
|
-
##
|
|
28
|
+
## 2.0.0-canary.21
|
|
25
29
|
|
|
26
30
|
### Patch Changes
|
|
27
31
|
|
|
28
|
-
-
|
|
29
|
-
-
|
|
30
|
-
- @ai-sdk/provider-utils@
|
|
31
|
-
- @ai-sdk/provider@3.0.10
|
|
32
|
+
- Updated dependencies [ce769dd]
|
|
33
|
+
- @ai-sdk/provider@4.0.0-canary.18
|
|
34
|
+
- @ai-sdk/provider-utils@5.0.0-canary.46
|
|
32
35
|
|
|
33
|
-
##
|
|
36
|
+
## 2.0.0-canary.20
|
|
34
37
|
|
|
35
38
|
### Patch Changes
|
|
36
39
|
|
|
37
|
-
-
|
|
38
|
-
- Updated dependencies [
|
|
39
|
-
- @ai-sdk/provider@
|
|
40
|
-
- @ai-sdk/provider-utils@4.0.24
|
|
40
|
+
- Updated dependencies [ee798eb]
|
|
41
|
+
- Updated dependencies [daf6637]
|
|
42
|
+
- @ai-sdk/provider-utils@5.0.0-canary.45
|
|
41
43
|
|
|
42
|
-
##
|
|
44
|
+
## 2.0.0-canary.19
|
|
45
|
+
|
|
46
|
+
### Patch Changes
|
|
47
|
+
|
|
48
|
+
- Updated dependencies [6c93e36]
|
|
49
|
+
- Updated dependencies [f617ac2]
|
|
50
|
+
- @ai-sdk/provider-utils@5.0.0-canary.44
|
|
51
|
+
|
|
52
|
+
## 2.0.0-canary.18
|
|
53
|
+
|
|
54
|
+
### Patch Changes
|
|
55
|
+
|
|
56
|
+
- 7fc6bd6: Raise minimum supported Node.js version to 22. Supported versions: 22, 24, and 26.
|
|
57
|
+
- Updated dependencies [7fc6bd6]
|
|
58
|
+
- @ai-sdk/provider-utils@5.0.0-canary.43
|
|
59
|
+
- @ai-sdk/provider@4.0.0-canary.17
|
|
60
|
+
|
|
61
|
+
## 2.0.0-canary.17
|
|
62
|
+
|
|
63
|
+
### Patch Changes
|
|
64
|
+
|
|
65
|
+
- Updated dependencies [a6617c5]
|
|
66
|
+
- @ai-sdk/provider-utils@5.0.0-canary.42
|
|
67
|
+
|
|
68
|
+
## 2.0.0-canary.16
|
|
69
|
+
|
|
70
|
+
### Patch Changes
|
|
71
|
+
|
|
72
|
+
- Updated dependencies [28dfa06]
|
|
73
|
+
- Updated dependencies [e93fa91]
|
|
74
|
+
- @ai-sdk/provider-utils@5.0.0-canary.41
|
|
75
|
+
|
|
76
|
+
## 2.0.0-canary.15
|
|
77
|
+
|
|
78
|
+
### Patch Changes
|
|
79
|
+
|
|
80
|
+
- Updated dependencies [a7de9c9]
|
|
81
|
+
- @ai-sdk/provider-utils@5.0.0-canary.40
|
|
82
|
+
|
|
83
|
+
## 2.0.0-canary.14
|
|
84
|
+
|
|
85
|
+
### Patch Changes
|
|
86
|
+
|
|
87
|
+
- Updated dependencies [105f95b]
|
|
88
|
+
- @ai-sdk/provider-utils@5.0.0-canary.39
|
|
89
|
+
|
|
90
|
+
## 2.0.0-canary.13
|
|
91
|
+
|
|
92
|
+
### Patch Changes
|
|
93
|
+
|
|
94
|
+
- Updated dependencies [ca446f8]
|
|
95
|
+
- @ai-sdk/provider-utils@5.0.0-canary.38
|
|
96
|
+
|
|
97
|
+
## 2.0.0-canary.12
|
|
98
|
+
|
|
99
|
+
### Patch Changes
|
|
100
|
+
|
|
101
|
+
- Updated dependencies [d848405]
|
|
102
|
+
- @ai-sdk/provider-utils@5.0.0-canary.37
|
|
103
|
+
|
|
104
|
+
## 2.0.0-canary.11
|
|
105
|
+
|
|
106
|
+
### Patch Changes
|
|
107
|
+
|
|
108
|
+
- Updated dependencies [ca39020]
|
|
109
|
+
- @ai-sdk/provider-utils@5.0.0-canary.36
|
|
110
|
+
|
|
111
|
+
## 2.0.0-canary.10
|
|
112
|
+
|
|
113
|
+
### Patch Changes
|
|
114
|
+
|
|
115
|
+
- Updated dependencies [f634bac]
|
|
116
|
+
- @ai-sdk/provider-utils@5.0.0-canary.35
|
|
117
|
+
|
|
118
|
+
## 2.0.0-canary.9
|
|
119
|
+
|
|
120
|
+
### Patch Changes
|
|
121
|
+
|
|
122
|
+
- Updated dependencies [69254e0]
|
|
123
|
+
- Updated dependencies [3015fc3]
|
|
124
|
+
- @ai-sdk/provider-utils@5.0.0-canary.34
|
|
125
|
+
|
|
126
|
+
## 2.0.0-canary.8
|
|
127
|
+
|
|
128
|
+
### Patch Changes
|
|
129
|
+
|
|
130
|
+
- c25eb7a: chore(voyage): trigger canary release at 2.0.0
|
|
131
|
+
|
|
132
|
+
## 1.0.0-canary.7
|
|
133
|
+
|
|
134
|
+
### Patch Changes
|
|
135
|
+
|
|
136
|
+
- Updated dependencies [2427d88]
|
|
137
|
+
- @ai-sdk/provider-utils@5.0.0-canary.33
|
|
138
|
+
|
|
139
|
+
## 1.0.0-canary.6
|
|
140
|
+
|
|
141
|
+
### Patch Changes
|
|
142
|
+
|
|
143
|
+
- Updated dependencies [5463d0d]
|
|
144
|
+
- @ai-sdk/provider-utils@5.0.0-canary.32
|
|
145
|
+
- @ai-sdk/provider@4.0.0-canary.16
|
|
146
|
+
|
|
147
|
+
## 1.0.0-canary.5
|
|
148
|
+
|
|
149
|
+
### Patch Changes
|
|
150
|
+
|
|
151
|
+
- 0c4c275: trigger initial canary release
|
|
152
|
+
- Updated dependencies [0c4c275]
|
|
153
|
+
- @ai-sdk/provider-utils@5.0.0-canary.31
|
|
154
|
+
- @ai-sdk/provider@4.0.0-canary.15
|
|
155
|
+
|
|
156
|
+
## 1.0.0-beta.4
|
|
43
157
|
|
|
44
158
|
### Major Changes
|
|
45
159
|
|
|
46
|
-
-
|
|
160
|
+
- 04e9009: chore: make provider implementations code patterns more consistent, including renaming certain exported symbols
|
|
161
|
+
|
|
162
|
+
For all externally exported symbols that were renamed, the old names continue to work via deprecated aliases.
|
|
163
|
+
|
|
164
|
+
### Patch Changes
|
|
165
|
+
|
|
166
|
+
- Updated dependencies [08d2129]
|
|
167
|
+
- @ai-sdk/provider-utils@5.0.0-beta.30
|
|
168
|
+
|
|
169
|
+
## 1.0.0-beta.3
|
|
170
|
+
|
|
171
|
+
### Patch Changes
|
|
172
|
+
|
|
173
|
+
- 258c093: chore: ensure consistent import handling and avoid import duplicates or cycles
|
|
174
|
+
- Updated dependencies [9bd6512]
|
|
175
|
+
- Updated dependencies [258c093]
|
|
176
|
+
- Updated dependencies [b6783da]
|
|
177
|
+
- @ai-sdk/provider-utils@5.0.0-beta.29
|
|
178
|
+
- @ai-sdk/provider@4.0.0-beta.14
|
|
179
|
+
|
|
180
|
+
## 1.0.0-beta.2
|
|
181
|
+
|
|
182
|
+
### Patch Changes
|
|
183
|
+
|
|
184
|
+
- 9f0e36c: trigger release for all packages after provenance setup
|
|
185
|
+
- Updated dependencies [9f0e36c]
|
|
186
|
+
- @ai-sdk/provider@4.0.0-beta.13
|
|
187
|
+
- @ai-sdk/provider-utils@5.0.0-beta.28
|
|
188
|
+
|
|
189
|
+
## 1.0.0-beta.1
|
|
190
|
+
|
|
191
|
+
### Patch Changes
|
|
192
|
+
|
|
193
|
+
- Updated dependencies [785fe16]
|
|
194
|
+
- Updated dependencies [67df0a0]
|
|
195
|
+
- Updated dependencies [befb78c]
|
|
196
|
+
- Updated dependencies [0458559]
|
|
197
|
+
- Updated dependencies [5852c0a]
|
|
198
|
+
- Updated dependencies [fc92055]
|
|
199
|
+
- @ai-sdk/provider-utils@5.0.0-beta.27
|
|
200
|
+
|
|
201
|
+
## 1.0.0-beta.0
|
|
202
|
+
|
|
203
|
+
### Major Changes
|
|
204
|
+
|
|
205
|
+
- 4963f11: add voyage ai provider with embedding and reranking support
|
|
206
|
+
|
|
207
|
+
### Patch Changes
|
|
208
|
+
|
|
209
|
+
- Updated dependencies [2e98477]
|
|
210
|
+
- @ai-sdk/provider-utils@5.0.0-beta.26
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
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
|
|
30
|
-
embedding(modelId: VoyageEmbeddingModelId):
|
|
31
|
-
embeddingModel(modelId: VoyageEmbeddingModelId):
|
|
32
|
-
textEmbedding(modelId: VoyageEmbeddingModelId):
|
|
33
|
-
textEmbeddingModel(modelId: VoyageEmbeddingModelId):
|
|
34
|
-
reranking(modelId: VoyageRerankingModelId):
|
|
35
|
-
rerankingModel(modelId: VoyageRerankingModelId):
|
|
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
|
-
|
|
31
|
-
|
|
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
|
-
|
|
35
|
-
|
|
36
|
-
|
|
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
|
-
|
|
40
|
-
var voyageEmbeddingModelOptions =
|
|
41
|
-
inputType:
|
|
42
|
-
truncation:
|
|
43
|
-
outputDimension:
|
|
44
|
-
outputDtype:
|
|
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
|
-
|
|
49
|
-
|
|
50
|
-
var voyageErrorDataSchema =
|
|
51
|
-
detail:
|
|
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 =
|
|
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 = "
|
|
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
|
-
|
|
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
|
|
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
|
|
91
|
+
} = await postJsonToApi({
|
|
94
92
|
url: `${this.config.baseURL}/embeddings`,
|
|
95
|
-
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:
|
|
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 =
|
|
120
|
-
data:
|
|
121
|
-
|
|
122
|
-
embedding:
|
|
123
|
-
index:
|
|
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
|
-
|
|
127
|
-
|
|
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
|
-
|
|
133
|
-
|
|
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
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
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 = "
|
|
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 (
|
|
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 (
|
|
192
|
+
} = await postJsonToApi2({
|
|
183
193
|
url: `${this.config.baseURL}/rerank`,
|
|
184
|
-
headers: (
|
|
194
|
+
headers: combineHeaders2(this.config.headers(), headers),
|
|
185
195
|
body: {
|
|
186
|
-
model: this.modelId,
|
|
187
196
|
query,
|
|
188
|
-
documents:
|
|
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: (
|
|
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 =
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
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
|
-
|
|
221
|
-
total_tokens: import_v45.z.number()
|
|
222
|
-
})
|
|
223
|
-
});
|
|
233
|
+
)
|
|
234
|
+
);
|
|
224
235
|
|
|
225
236
|
// src/version.ts
|
|
226
|
-
var VERSION = true ? "
|
|
237
|
+
var VERSION = true ? "2.0.0-beta.24" : "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 =
|
|
232
|
-
const getHeaders = () =>
|
|
242
|
+
const baseURL = (_a = withoutTrailingSlash(options.baseURL)) != null ? _a : "https://api.voyageai.com/v1";
|
|
243
|
+
const getHeaders = () => withUserAgentSuffix(
|
|
233
244
|
{
|
|
234
|
-
Authorization: `Bearer ${
|
|
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 =
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
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
|
-
|
|
278
|
-
0 && (module.exports = {
|
|
284
|
+
export {
|
|
279
285
|
VERSION,
|
|
280
286
|
createVoyage,
|
|
281
287
|
voyage
|
|
282
|
-
}
|
|
288
|
+
};
|
|
283
289
|
//# sourceMappingURL=index.js.map
|