@ai-sdk/xai 4.0.52 → 4.0.54
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 +13 -0
- package/dist/index.js +44 -10
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/responses/xai-responses-batch.ts +45 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @ai-sdk/xai
|
|
2
2
|
|
|
3
|
+
## 4.0.54
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 048ce06: feat(batch): surface the uploaded input file on the batch start result (`providerMetadata.<provider>.inputFileId` / `inputFileExpiresAt`) and accept an `inputFileExpiresAfter` provider option on the OpenAI and xAI batch input file upload
|
|
8
|
+
|
|
9
|
+
## 4.0.53
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Updated dependencies [6bcc0f8]
|
|
14
|
+
- @ai-sdk/provider-utils@5.0.36
|
|
15
|
+
|
|
3
16
|
## 4.0.52
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
package/dist/index.js
CHANGED
|
@@ -1251,6 +1251,7 @@ import {
|
|
|
1251
1251
|
getFromApi as getFromApi2,
|
|
1252
1252
|
lazySchema as lazySchema7,
|
|
1253
1253
|
normalizeBatchRequestCounts,
|
|
1254
|
+
parseProviderOptions as parseProviderOptions6,
|
|
1254
1255
|
postFormDataToApi,
|
|
1255
1256
|
postJsonToApi as postJsonToApi4,
|
|
1256
1257
|
safeValidateTypes,
|
|
@@ -3510,6 +3511,18 @@ function mapWebSearchAction(action) {
|
|
|
3510
3511
|
var xaiBatchEndpoint = "/v1/responses";
|
|
3511
3512
|
var xaiBatchName = "ai-sdk-text-batch";
|
|
3512
3513
|
var xaiBatchResultsPageSize = 1e3;
|
|
3514
|
+
var xaiBatchProviderOptionsSchema = lazySchema7(
|
|
3515
|
+
() => zodSchema7(
|
|
3516
|
+
z15.object({
|
|
3517
|
+
/**
|
|
3518
|
+
* TTL in seconds for the uploaded batch input file, measured from
|
|
3519
|
+
* upload time. xAI accepts integers between 3600 (1 hour) and
|
|
3520
|
+
* 2592000 (30 days) inclusive. Without it the file has no expiry.
|
|
3521
|
+
*/
|
|
3522
|
+
inputFileExpiresAfter: z15.number().int().min(3600).max(2592e3).optional()
|
|
3523
|
+
})
|
|
3524
|
+
)
|
|
3525
|
+
);
|
|
3513
3526
|
var xaiBatchResponseSchema = lazySchema7(
|
|
3514
3527
|
() => zodSchema7(
|
|
3515
3528
|
z15.object({
|
|
@@ -3567,6 +3580,11 @@ var XaiResponsesBatch = class {
|
|
|
3567
3580
|
}
|
|
3568
3581
|
}
|
|
3569
3582
|
];
|
|
3583
|
+
const batchOptions = await parseProviderOptions6({
|
|
3584
|
+
provider: "xai",
|
|
3585
|
+
providerOptions: options.providerOptions,
|
|
3586
|
+
schema: xaiBatchProviderOptionsSchema
|
|
3587
|
+
});
|
|
3570
3588
|
for (const request of options.requests) {
|
|
3571
3589
|
const preparedRequest = await this.options.prepareRequest(request);
|
|
3572
3590
|
fileParts.push(
|
|
@@ -3586,6 +3604,12 @@ var XaiResponsesBatch = class {
|
|
|
3586
3604
|
const file = new Blob(fileParts, { type: "application/jsonl" });
|
|
3587
3605
|
fileParts.length = 0;
|
|
3588
3606
|
const formData = new FormData();
|
|
3607
|
+
if ((batchOptions == null ? void 0 : batchOptions.inputFileExpiresAfter) != null) {
|
|
3608
|
+
formData.append(
|
|
3609
|
+
"expires_after",
|
|
3610
|
+
String(batchOptions.inputFileExpiresAfter)
|
|
3611
|
+
);
|
|
3612
|
+
}
|
|
3589
3613
|
formData.append("file", file, filename);
|
|
3590
3614
|
const headers = combineHeaders4(
|
|
3591
3615
|
(_b = (_a = this.options.config).headers) == null ? void 0 : _b.call(_a),
|
|
@@ -3619,6 +3643,16 @@ var XaiResponsesBatch = class {
|
|
|
3619
3643
|
return {
|
|
3620
3644
|
batchId: batch.batch_id,
|
|
3621
3645
|
...convertXaiBatchStatus(batch),
|
|
3646
|
+
providerMetadata: {
|
|
3647
|
+
xai: {
|
|
3648
|
+
inputFileId: uploadedFile.id,
|
|
3649
|
+
...uploadedFile.expires_at != null ? {
|
|
3650
|
+
inputFileExpiresAt: new Date(
|
|
3651
|
+
uploadedFile.expires_at * 1e3
|
|
3652
|
+
).toISOString()
|
|
3653
|
+
} : {}
|
|
3654
|
+
}
|
|
3655
|
+
},
|
|
3622
3656
|
warnings
|
|
3623
3657
|
};
|
|
3624
3658
|
}
|
|
@@ -4329,7 +4363,7 @@ var xaiTools = {
|
|
|
4329
4363
|
};
|
|
4330
4364
|
|
|
4331
4365
|
// src/version.ts
|
|
4332
|
-
var VERSION = true ? "4.0.
|
|
4366
|
+
var VERSION = true ? "4.0.54" : "0.0.0-test";
|
|
4333
4367
|
|
|
4334
4368
|
// src/files/xai-files.ts
|
|
4335
4369
|
import {
|
|
@@ -4342,7 +4376,7 @@ import {
|
|
|
4342
4376
|
createJsonResponseHandler as createJsonResponseHandler5,
|
|
4343
4377
|
deleteFromApi,
|
|
4344
4378
|
getFromApi as getFromApi3,
|
|
4345
|
-
parseProviderOptions as
|
|
4379
|
+
parseProviderOptions as parseProviderOptions7,
|
|
4346
4380
|
postFormDataToApi as postFormDataToApi2,
|
|
4347
4381
|
postMultipartStreamToApi
|
|
4348
4382
|
} from "@ai-sdk/provider-utils";
|
|
@@ -4405,7 +4439,7 @@ var XaiFiles = class {
|
|
|
4405
4439
|
var _a, _b;
|
|
4406
4440
|
let xaiOptions;
|
|
4407
4441
|
try {
|
|
4408
|
-
xaiOptions = await
|
|
4442
|
+
xaiOptions = await parseProviderOptions7({
|
|
4409
4443
|
provider: "xai",
|
|
4410
4444
|
providerOptions,
|
|
4411
4445
|
schema: xaiFilesOptionsSchema
|
|
@@ -4594,7 +4628,7 @@ import {
|
|
|
4594
4628
|
extractResponseHeaders as extractResponseHeaders2,
|
|
4595
4629
|
getFromApi as getFromApi4,
|
|
4596
4630
|
getTopLevelMediaType as getTopLevelMediaType3,
|
|
4597
|
-
parseProviderOptions as
|
|
4631
|
+
parseProviderOptions as parseProviderOptions8,
|
|
4598
4632
|
postJsonToApi as postJsonToApi5,
|
|
4599
4633
|
safeParseJSON as safeParseJSON2
|
|
4600
4634
|
} from "@ai-sdk/provider-utils";
|
|
@@ -4706,7 +4740,7 @@ var XaiVideoModel = class {
|
|
|
4706
4740
|
}
|
|
4707
4741
|
async buildRequestBody(options) {
|
|
4708
4742
|
const warnings = [];
|
|
4709
|
-
const xaiOptions = await
|
|
4743
|
+
const xaiOptions = await parseProviderOptions8({
|
|
4710
4744
|
provider: "xai",
|
|
4711
4745
|
providerOptions: options.providerOptions,
|
|
4712
4746
|
schema: xaiVideoModelOptionsSchema
|
|
@@ -5126,7 +5160,7 @@ import {
|
|
|
5126
5160
|
convertBase64ToUint8Array,
|
|
5127
5161
|
createBinaryResponseHandler as createBinaryResponseHandler2,
|
|
5128
5162
|
createJsonResponseHandler as createJsonResponseHandler7,
|
|
5129
|
-
parseProviderOptions as
|
|
5163
|
+
parseProviderOptions as parseProviderOptions9,
|
|
5130
5164
|
postJsonToApi as postJsonToApi6,
|
|
5131
5165
|
resolve,
|
|
5132
5166
|
serializeModelOptions as serializeModelOptions4,
|
|
@@ -5218,7 +5252,7 @@ var XaiSpeechModel = class _XaiSpeechModel {
|
|
|
5218
5252
|
providerOptions
|
|
5219
5253
|
}) {
|
|
5220
5254
|
const warnings = [];
|
|
5221
|
-
const xaiOptions = await
|
|
5255
|
+
const xaiOptions = await parseProviderOptions9({
|
|
5222
5256
|
provider: "xai",
|
|
5223
5257
|
providerOptions,
|
|
5224
5258
|
schema: xaiSpeechModelOptionsSchema
|
|
@@ -5347,7 +5381,7 @@ import {
|
|
|
5347
5381
|
createJsonResponseHandler as createJsonResponseHandler8,
|
|
5348
5382
|
connectToWebSocket,
|
|
5349
5383
|
mediaTypeToExtension,
|
|
5350
|
-
parseProviderOptions as
|
|
5384
|
+
parseProviderOptions as parseProviderOptions10,
|
|
5351
5385
|
postFormDataToApi as postFormDataToApi3,
|
|
5352
5386
|
safeParseJSON as safeParseJSON3,
|
|
5353
5387
|
serializeModelOptions as serializeModelOptions5,
|
|
@@ -5460,7 +5494,7 @@ var XaiTranscriptionModel = class _XaiTranscriptionModel {
|
|
|
5460
5494
|
providerOptions
|
|
5461
5495
|
}) {
|
|
5462
5496
|
const warnings = [];
|
|
5463
|
-
const xaiOptions = await
|
|
5497
|
+
const xaiOptions = await parseProviderOptions10({
|
|
5464
5498
|
provider: "xai",
|
|
5465
5499
|
providerOptions,
|
|
5466
5500
|
schema: xaiTranscriptionModelOptionsSchema
|
|
@@ -5537,7 +5571,7 @@ var XaiTranscriptionModel = class _XaiTranscriptionModel {
|
|
|
5537
5571
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
5538
5572
|
const currentDate = (_c = (_b = (_a = this.config._internal) == null ? void 0 : _a.currentDate) == null ? void 0 : _b.call(_a)) != null ? _c : /* @__PURE__ */ new Date();
|
|
5539
5573
|
const warnings = [];
|
|
5540
|
-
const xaiOptions = await
|
|
5574
|
+
const xaiOptions = await parseProviderOptions10({
|
|
5541
5575
|
provider: "xai",
|
|
5542
5576
|
providerOptions: options.providerOptions,
|
|
5543
5577
|
schema: xaiTranscriptionModelOptionsSchema
|