@ai-sdk/provider 2.0.0-canary.11 → 2.0.0-canary.13
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 +30 -0
- package/dist/index.d.mts +37 -12
- package/dist/index.d.ts +37 -12
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,35 @@
|
|
1
1
|
# @ai-sdk/provider
|
2
2
|
|
3
|
+
## 2.0.0-canary.13
|
4
|
+
|
5
|
+
### Patch Changes
|
6
|
+
|
7
|
+
- 9bd5ab5: feat (provider): add providerMetadata to ImageModelV2 interface (#5977)
|
8
|
+
|
9
|
+
The `experimental_generateImage` method from the `ai` package now returnes revised prompts for OpenAI's image models.
|
10
|
+
|
11
|
+
```js
|
12
|
+
const prompt = 'Santa Claus driving a Cadillac';
|
13
|
+
|
14
|
+
const { providerMetadata } = await experimental_generateImage({
|
15
|
+
model: openai.image('dall-e-3'),
|
16
|
+
prompt,
|
17
|
+
});
|
18
|
+
|
19
|
+
const revisedPrompt = providerMetadata.openai.images[0]?.revisedPrompt;
|
20
|
+
|
21
|
+
console.log({
|
22
|
+
prompt,
|
23
|
+
revisedPrompt,
|
24
|
+
});
|
25
|
+
```
|
26
|
+
|
27
|
+
## 2.0.0-canary.12
|
28
|
+
|
29
|
+
### Patch Changes
|
30
|
+
|
31
|
+
- 7b3ae3f: chore (provider): change getSupportedUrls to supportedUrls (language model v2)
|
32
|
+
|
3
33
|
## 2.0.0-canary.11
|
4
34
|
|
5
35
|
### Major Changes
|
package/dist/index.d.mts
CHANGED
@@ -3,6 +3,10 @@ export { JSONSchema7, JSONSchema7Definition } from 'json-schema';
|
|
3
3
|
|
4
4
|
type SharedV2Headers = Record<string, string>;
|
5
5
|
|
6
|
+
/**
|
7
|
+
A JSON value can be a string, number, boolean, object, array, or null.
|
8
|
+
JSON values can be serialized and deserialized by the JSON.stringify and JSON.parse methods.
|
9
|
+
*/
|
6
10
|
type JSONValue = null | string | number | boolean | JSONObject | JSONArray;
|
7
11
|
type JSONObject = {
|
8
12
|
[key: string]: JSONValue;
|
@@ -371,6 +375,10 @@ declare class UnsupportedFunctionalityError extends AISDKError {
|
|
371
375
|
static isInstance(error: unknown): error is UnsupportedFunctionalityError;
|
372
376
|
}
|
373
377
|
|
378
|
+
declare function isJSONValue(value: unknown): value is JSONValue;
|
379
|
+
declare function isJSONArray(value: unknown): value is JSONArray;
|
380
|
+
declare function isJSONObject(value: unknown): value is JSONObject;
|
381
|
+
|
374
382
|
type ImageModelV2CallOptions = {
|
375
383
|
/**
|
376
384
|
Prompt for the image generation.
|
@@ -405,13 +413,13 @@ type ImageModelV2CallOptions = {
|
|
405
413
|
record is keyed by the provider-specific metadata key.
|
406
414
|
```ts
|
407
415
|
{
|
408
|
-
|
409
|
-
|
410
|
-
|
416
|
+
"openai": {
|
417
|
+
"style": "vivid"
|
418
|
+
}
|
411
419
|
}
|
412
420
|
```
|
413
421
|
*/
|
414
|
-
providerOptions:
|
422
|
+
providerOptions: SharedV2ProviderOptions;
|
415
423
|
/**
|
416
424
|
Abort signal for cancelling the operation.
|
417
425
|
*/
|
@@ -436,8 +444,11 @@ type ImageModelV2CallWarning = {
|
|
436
444
|
message: string;
|
437
445
|
};
|
438
446
|
|
447
|
+
type ImageModelV2ProviderMetadata = Record<string, {
|
448
|
+
images: JSONArray;
|
449
|
+
} & JSONValue>;
|
439
450
|
/**
|
440
|
-
Image generation model specification version
|
451
|
+
Image generation model specification version 2.
|
441
452
|
*/
|
442
453
|
type ImageModelV2 = {
|
443
454
|
/**
|
@@ -447,7 +458,7 @@ type ImageModelV2 = {
|
|
447
458
|
implementation versions can be handled as a discriminated union
|
448
459
|
on our side.
|
449
460
|
*/
|
450
|
-
readonly specificationVersion: '
|
461
|
+
readonly specificationVersion: 'v2';
|
451
462
|
/**
|
452
463
|
Name of the provider for logging purposes.
|
453
464
|
*/
|
@@ -478,6 +489,24 @@ type ImageModelV2 = {
|
|
478
489
|
*/
|
479
490
|
warnings: Array<ImageModelV2CallWarning>;
|
480
491
|
/**
|
492
|
+
Additional provider-specific metadata. They are passed through
|
493
|
+
from the provider to the AI SDK and enable provider-specific
|
494
|
+
results that can be fully encapsulated in the provider.
|
495
|
+
|
496
|
+
The outer record is keyed by the provider name, and the inner
|
497
|
+
record is provider-specific metadata. It always includes an
|
498
|
+
`images` key with image-specific metadata
|
499
|
+
|
500
|
+
```ts
|
501
|
+
{
|
502
|
+
"openai": {
|
503
|
+
"images": ["revisedPrompt": "Revised prompt here."]
|
504
|
+
}
|
505
|
+
}
|
506
|
+
```
|
507
|
+
*/
|
508
|
+
providerMetadata?: ImageModelV2ProviderMetadata;
|
509
|
+
/**
|
481
510
|
Response information for telemetry and debugging purposes.
|
482
511
|
*/
|
483
512
|
response: {
|
@@ -497,10 +526,6 @@ type ImageModelV2 = {
|
|
497
526
|
}>;
|
498
527
|
};
|
499
528
|
|
500
|
-
declare function isJSONValue(value: unknown): value is JSONValue;
|
501
|
-
declare function isJSONArray(value: unknown): value is JSONArray;
|
502
|
-
declare function isJSONObject(value: unknown): value is JSONObject;
|
503
|
-
|
504
529
|
/**
|
505
530
|
A tool has a name, a description, and a set of parameters.
|
506
531
|
|
@@ -1040,7 +1065,7 @@ type LanguageModelV2 = {
|
|
1040
1065
|
*
|
1041
1066
|
* @returns A promise resolving to a map of supported URL patterns.
|
1042
1067
|
*/
|
1043
|
-
|
1068
|
+
supportedUrls: PromiseLike<Record<string, RegExp[]>> | Record<string, RegExp[]>;
|
1044
1069
|
/**
|
1045
1070
|
Generates a language model output (non-streaming).
|
1046
1071
|
|
@@ -2360,4 +2385,4 @@ interface ProviderV2 {
|
|
2360
2385
|
readonly imageModel: (modelId: string) => ImageModelV2;
|
2361
2386
|
}
|
2362
2387
|
|
2363
|
-
export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FilePart, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1ObjectGenerationMode, type LanguageModelV1Prompt, type LanguageModelV1ProviderDefinedTool, type LanguageModelV1ProviderMetadata, type LanguageModelV1ReasoningPart, type LanguageModelV1RedactedReasoningPart, type LanguageModelV1Source, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallDelta, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV1, type ProviderV2, type SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
|
2388
|
+
export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FilePart, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1ObjectGenerationMode, type LanguageModelV1Prompt, type LanguageModelV1ProviderDefinedTool, type LanguageModelV1ProviderMetadata, type LanguageModelV1ReasoningPart, type LanguageModelV1RedactedReasoningPart, type LanguageModelV1Source, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallDelta, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV1, type ProviderV2, type SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
|
package/dist/index.d.ts
CHANGED
@@ -3,6 +3,10 @@ export { JSONSchema7, JSONSchema7Definition } from 'json-schema';
|
|
3
3
|
|
4
4
|
type SharedV2Headers = Record<string, string>;
|
5
5
|
|
6
|
+
/**
|
7
|
+
A JSON value can be a string, number, boolean, object, array, or null.
|
8
|
+
JSON values can be serialized and deserialized by the JSON.stringify and JSON.parse methods.
|
9
|
+
*/
|
6
10
|
type JSONValue = null | string | number | boolean | JSONObject | JSONArray;
|
7
11
|
type JSONObject = {
|
8
12
|
[key: string]: JSONValue;
|
@@ -371,6 +375,10 @@ declare class UnsupportedFunctionalityError extends AISDKError {
|
|
371
375
|
static isInstance(error: unknown): error is UnsupportedFunctionalityError;
|
372
376
|
}
|
373
377
|
|
378
|
+
declare function isJSONValue(value: unknown): value is JSONValue;
|
379
|
+
declare function isJSONArray(value: unknown): value is JSONArray;
|
380
|
+
declare function isJSONObject(value: unknown): value is JSONObject;
|
381
|
+
|
374
382
|
type ImageModelV2CallOptions = {
|
375
383
|
/**
|
376
384
|
Prompt for the image generation.
|
@@ -405,13 +413,13 @@ type ImageModelV2CallOptions = {
|
|
405
413
|
record is keyed by the provider-specific metadata key.
|
406
414
|
```ts
|
407
415
|
{
|
408
|
-
|
409
|
-
|
410
|
-
|
416
|
+
"openai": {
|
417
|
+
"style": "vivid"
|
418
|
+
}
|
411
419
|
}
|
412
420
|
```
|
413
421
|
*/
|
414
|
-
providerOptions:
|
422
|
+
providerOptions: SharedV2ProviderOptions;
|
415
423
|
/**
|
416
424
|
Abort signal for cancelling the operation.
|
417
425
|
*/
|
@@ -436,8 +444,11 @@ type ImageModelV2CallWarning = {
|
|
436
444
|
message: string;
|
437
445
|
};
|
438
446
|
|
447
|
+
type ImageModelV2ProviderMetadata = Record<string, {
|
448
|
+
images: JSONArray;
|
449
|
+
} & JSONValue>;
|
439
450
|
/**
|
440
|
-
Image generation model specification version
|
451
|
+
Image generation model specification version 2.
|
441
452
|
*/
|
442
453
|
type ImageModelV2 = {
|
443
454
|
/**
|
@@ -447,7 +458,7 @@ type ImageModelV2 = {
|
|
447
458
|
implementation versions can be handled as a discriminated union
|
448
459
|
on our side.
|
449
460
|
*/
|
450
|
-
readonly specificationVersion: '
|
461
|
+
readonly specificationVersion: 'v2';
|
451
462
|
/**
|
452
463
|
Name of the provider for logging purposes.
|
453
464
|
*/
|
@@ -478,6 +489,24 @@ type ImageModelV2 = {
|
|
478
489
|
*/
|
479
490
|
warnings: Array<ImageModelV2CallWarning>;
|
480
491
|
/**
|
492
|
+
Additional provider-specific metadata. They are passed through
|
493
|
+
from the provider to the AI SDK and enable provider-specific
|
494
|
+
results that can be fully encapsulated in the provider.
|
495
|
+
|
496
|
+
The outer record is keyed by the provider name, and the inner
|
497
|
+
record is provider-specific metadata. It always includes an
|
498
|
+
`images` key with image-specific metadata
|
499
|
+
|
500
|
+
```ts
|
501
|
+
{
|
502
|
+
"openai": {
|
503
|
+
"images": ["revisedPrompt": "Revised prompt here."]
|
504
|
+
}
|
505
|
+
}
|
506
|
+
```
|
507
|
+
*/
|
508
|
+
providerMetadata?: ImageModelV2ProviderMetadata;
|
509
|
+
/**
|
481
510
|
Response information for telemetry and debugging purposes.
|
482
511
|
*/
|
483
512
|
response: {
|
@@ -497,10 +526,6 @@ type ImageModelV2 = {
|
|
497
526
|
}>;
|
498
527
|
};
|
499
528
|
|
500
|
-
declare function isJSONValue(value: unknown): value is JSONValue;
|
501
|
-
declare function isJSONArray(value: unknown): value is JSONArray;
|
502
|
-
declare function isJSONObject(value: unknown): value is JSONObject;
|
503
|
-
|
504
529
|
/**
|
505
530
|
A tool has a name, a description, and a set of parameters.
|
506
531
|
|
@@ -1040,7 +1065,7 @@ type LanguageModelV2 = {
|
|
1040
1065
|
*
|
1041
1066
|
* @returns A promise resolving to a map of supported URL patterns.
|
1042
1067
|
*/
|
1043
|
-
|
1068
|
+
supportedUrls: PromiseLike<Record<string, RegExp[]>> | Record<string, RegExp[]>;
|
1044
1069
|
/**
|
1045
1070
|
Generates a language model output (non-streaming).
|
1046
1071
|
|
@@ -2360,4 +2385,4 @@ interface ProviderV2 {
|
|
2360
2385
|
readonly imageModel: (modelId: string) => ImageModelV2;
|
2361
2386
|
}
|
2362
2387
|
|
2363
|
-
export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FilePart, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1ObjectGenerationMode, type LanguageModelV1Prompt, type LanguageModelV1ProviderDefinedTool, type LanguageModelV1ProviderMetadata, type LanguageModelV1ReasoningPart, type LanguageModelV1RedactedReasoningPart, type LanguageModelV1Source, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallDelta, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV1, type ProviderV2, type SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
|
2388
|
+
export { AISDKError, APICallError, type EmbeddingModelV2, type EmbeddingModelV2Embedding, EmptyResponseBodyError, type ImageModelV2, type ImageModelV2CallOptions, type ImageModelV2CallWarning, type ImageModelV2ProviderMetadata, InvalidArgumentError, InvalidPromptError, InvalidResponseDataError, type JSONArray, type JSONObject, JSONParseError, type JSONValue, type LanguageModelV1, type LanguageModelV1CallOptions, type LanguageModelV1CallWarning, type LanguageModelV1FilePart, type LanguageModelV1FinishReason, type LanguageModelV1FunctionTool, type LanguageModelV1FunctionToolCall, type LanguageModelV1ImagePart, type LanguageModelV1LogProbs, type LanguageModelV1Message, type LanguageModelV1ObjectGenerationMode, type LanguageModelV1Prompt, type LanguageModelV1ProviderDefinedTool, type LanguageModelV1ProviderMetadata, type LanguageModelV1ReasoningPart, type LanguageModelV1RedactedReasoningPart, type LanguageModelV1Source, type LanguageModelV1StreamPart, type LanguageModelV1TextPart, type LanguageModelV1ToolCallPart, type LanguageModelV1ToolChoice, type LanguageModelV1ToolResultPart, type LanguageModelV2, type LanguageModelV2CallOptions, type LanguageModelV2CallWarning, type LanguageModelV2Content, type LanguageModelV2DataContent, type LanguageModelV2File, type LanguageModelV2FilePart, type LanguageModelV2FinishReason, type LanguageModelV2FunctionTool, type LanguageModelV2Message, type LanguageModelV2Middleware, type LanguageModelV2Prompt, type LanguageModelV2ProviderDefinedTool, type LanguageModelV2Reasoning, type LanguageModelV2ReasoningPart, type LanguageModelV2ResponseMetadata, type LanguageModelV2Source, type LanguageModelV2StreamPart, type LanguageModelV2Text, type LanguageModelV2TextPart, type LanguageModelV2ToolCall, type LanguageModelV2ToolCallDelta, type LanguageModelV2ToolCallPart, type LanguageModelV2ToolChoice, type LanguageModelV2ToolResultPart, type LanguageModelV2Usage, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, type ProviderV1, type ProviderV2, type SharedV2Headers, type SharedV2ProviderMetadata, type SharedV2ProviderOptions, type SpeechModelV1, type SpeechModelV1CallOptions, type SpeechModelV1CallWarning, TooManyEmbeddingValuesForCallError, type TranscriptionModelV1, type TranscriptionModelV1CallOptions, type TranscriptionModelV1CallWarning, TypeValidationError, UnsupportedFunctionalityError, getErrorMessage, isJSONArray, isJSONObject, isJSONValue };
|