@ai-sdk/provider 4.0.0-beta.13 → 4.0.0-beta.19
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 +50 -0
- package/dist/index.d.ts +626 -67
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
- package/src/embedding-model/v2/embedding-model-v2.ts +2 -2
- package/src/embedding-model/v3/embedding-model-v3-call-options.ts +1 -1
- package/src/embedding-model/v3/embedding-model-v3-result.ts +2 -2
- package/src/embedding-model/v3/embedding-model-v3.ts +2 -2
- package/src/embedding-model/v4/embedding-model-v4-call-options.ts +1 -1
- package/src/embedding-model/v4/embedding-model-v4-result.ts +2 -2
- package/src/embedding-model/v4/embedding-model-v4.ts +2 -2
- package/src/embedding-model-middleware/v3/embedding-model-v3-middleware.ts +2 -2
- package/src/embedding-model-middleware/v4/embedding-model-v4-middleware.ts +2 -2
- package/src/errors/no-such-provider-reference-error.ts +1 -1
- package/src/files/v4/files-v4-upload-file-call-options.ts +10 -3
- package/src/files/v4/files-v4-upload-file-result.ts +3 -3
- package/src/files/v4/files-v4.ts +2 -2
- package/src/image-model/v2/image-model-v2-call-options.ts +1 -1
- package/src/image-model/v2/image-model-v2-call-warning.ts +1 -1
- package/src/image-model/v2/image-model-v2.ts +3 -3
- package/src/image-model/v3/image-model-v3-call-options.ts +2 -2
- package/src/image-model/v3/image-model-v3-file.ts +1 -1
- package/src/image-model/v3/image-model-v3.ts +4 -4
- package/src/image-model/v4/image-model-v4-call-options.ts +2 -2
- package/src/image-model/v4/image-model-v4-file.ts +1 -1
- package/src/image-model/v4/image-model-v4-result.ts +3 -3
- package/src/image-model/v4/image-model-v4.ts +2 -2
- package/src/image-model-middleware/v3/image-model-v3-middleware.ts +2 -2
- package/src/image-model-middleware/v4/image-model-v4-middleware.ts +2 -2
- package/src/index.ts +1 -0
- package/src/json-value/is-json.ts +1 -1
- package/src/language-model/v2/language-model-v2-call-options.ts +6 -6
- package/src/language-model/v2/language-model-v2-call-warning.ts +3 -3
- package/src/language-model/v2/language-model-v2-content.ts +6 -6
- package/src/language-model/v2/language-model-v2-function-tool.ts +2 -2
- package/src/language-model/v2/language-model-v2-prompt.ts +3 -3
- package/src/language-model/v2/language-model-v2-reasoning.ts +1 -1
- package/src/language-model/v2/language-model-v2-source.ts +1 -1
- package/src/language-model/v2/language-model-v2-stream-part.ts +9 -9
- package/src/language-model/v2/language-model-v2-text.ts +1 -1
- package/src/language-model/v2/language-model-v2-tool-call.ts +1 -1
- package/src/language-model/v2/language-model-v2-tool-result.ts +1 -1
- package/src/language-model/v2/language-model-v2.ts +9 -9
- package/src/language-model/v3/language-model-v3-call-options.ts +6 -6
- package/src/language-model/v3/language-model-v3-content.ts +7 -7
- package/src/language-model/v3/language-model-v3-file.ts +1 -1
- package/src/language-model/v3/language-model-v3-function-tool.ts +3 -3
- package/src/language-model/v3/language-model-v3-generate-result.ts +6 -6
- package/src/language-model/v3/language-model-v3-prompt.ts +3 -3
- package/src/language-model/v3/language-model-v3-reasoning.ts +1 -1
- package/src/language-model/v3/language-model-v3-source.ts +1 -1
- package/src/language-model/v3/language-model-v3-stream-part.ts +10 -10
- package/src/language-model/v3/language-model-v3-stream-result.ts +2 -2
- package/src/language-model/v3/language-model-v3-text.ts +1 -1
- package/src/language-model/v3/language-model-v3-tool-approval-request.ts +1 -1
- package/src/language-model/v3/language-model-v3-tool-call.ts +1 -1
- package/src/language-model/v3/language-model-v3-tool-result.ts +2 -2
- package/src/language-model/v3/language-model-v3-usage.ts +1 -1
- package/src/language-model/v3/language-model-v3.ts +3 -3
- package/src/language-model/v4/index.ts +0 -1
- package/src/language-model/v4/language-model-v4-call-options.ts +6 -6
- package/src/language-model/v4/language-model-v4-content.ts +9 -9
- package/src/language-model/v4/language-model-v4-custom-content.ts +1 -1
- package/src/language-model/v4/language-model-v4-file.ts +10 -3
- package/src/language-model/v4/language-model-v4-function-tool.ts +3 -3
- package/src/language-model/v4/language-model-v4-generate-result.ts +6 -6
- package/src/language-model/v4/language-model-v4-prompt.ts +43 -48
- package/src/language-model/v4/language-model-v4-reasoning-file.ts +10 -3
- package/src/language-model/v4/language-model-v4-reasoning.ts +1 -1
- package/src/language-model/v4/language-model-v4-source.ts +1 -1
- package/src/language-model/v4/language-model-v4-stream-part.ts +12 -12
- package/src/language-model/v4/language-model-v4-stream-result.ts +2 -2
- package/src/language-model/v4/language-model-v4-text.ts +1 -1
- package/src/language-model/v4/language-model-v4-tool-approval-request.ts +1 -1
- package/src/language-model/v4/language-model-v4-tool-call.ts +1 -1
- package/src/language-model/v4/language-model-v4-tool-result.ts +2 -2
- package/src/language-model/v4/language-model-v4-usage.ts +1 -1
- package/src/language-model/v4/language-model-v4.ts +3 -3
- package/src/language-model-middleware/v2/language-model-v2-middleware.ts +2 -2
- package/src/language-model-middleware/v3/language-model-v3-middleware.ts +4 -4
- package/src/language-model-middleware/v4/language-model-v4-middleware.ts +4 -4
- package/src/provider/v2/provider-v2.ts +5 -5
- package/src/provider/v3/provider-v3.ts +6 -6
- package/src/provider/v4/provider-v4.ts +8 -8
- package/src/realtime-model/index.ts +1 -0
- package/src/realtime-model/v4/index.ts +20 -0
- package/src/realtime-model/v4/realtime-factory-v4.ts +20 -0
- package/src/realtime-model/v4/realtime-model-v4-client-event.ts +68 -0
- package/src/realtime-model/v4/realtime-model-v4-client-secret.ts +40 -0
- package/src/realtime-model/v4/realtime-model-v4-conversation-item.ts +55 -0
- package/src/realtime-model/v4/realtime-model-v4-server-event.ts +199 -0
- package/src/realtime-model/v4/realtime-model-v4-session-config.ts +142 -0
- package/src/realtime-model/v4/realtime-model-v4-tool-definition.ts +28 -0
- package/src/realtime-model/v4/realtime-model-v4.ts +89 -0
- package/src/reranking-model/v3/reranking-model-v3-call-options.ts +2 -2
- package/src/reranking-model/v3/reranking-model-v3.ts +2 -2
- package/src/reranking-model/v4/reranking-model-v4-call-options.ts +2 -2
- package/src/reranking-model/v4/reranking-model-v4-result.ts +1 -1
- package/src/reranking-model/v4/reranking-model-v4.ts +2 -2
- package/src/shared/v2/shared-v2-provider-metadata.ts +1 -1
- package/src/shared/v2/shared-v2-provider-options.ts +1 -1
- package/src/shared/v3/shared-v3-provider-metadata.ts +1 -1
- package/src/shared/v3/shared-v3-provider-options.ts +1 -1
- package/src/shared/v4/index.ts +1 -0
- package/src/shared/v4/shared-v4-file-data.ts +49 -0
- package/src/shared/v4/shared-v4-provider-metadata.ts +1 -1
- package/src/shared/v4/shared-v4-provider-options.ts +1 -1
- package/src/shared/v4/shared-v4-provider-reference.ts +8 -1
- package/src/skills/v4/skills-v4-upload-skill-call-options.ts +10 -3
- package/src/skills/v4/skills-v4-upload-skill-result.ts +3 -3
- package/src/skills/v4/skills-v4.ts +2 -2
- package/src/speech-model/v2/speech-model-v2-call-options.ts +1 -1
- package/src/speech-model/v2/speech-model-v2-call-warning.ts +1 -1
- package/src/speech-model/v2/speech-model-v2.ts +4 -4
- package/src/speech-model/v3/speech-model-v3-call-options.ts +1 -1
- package/src/speech-model/v3/speech-model-v3.ts +4 -4
- package/src/speech-model/v4/speech-model-v4-call-options.ts +1 -1
- package/src/speech-model/v4/speech-model-v4-result.ts +3 -3
- package/src/speech-model/v4/speech-model-v4.ts +2 -2
- package/src/transcription-model/v2/transcription-model-v2-call-options.ts +1 -1
- package/src/transcription-model/v2/transcription-model-v2-call-warning.ts +1 -1
- package/src/transcription-model/v2/transcription-model-v2.ts +4 -4
- package/src/transcription-model/v3/transcription-model-v3-call-options.ts +1 -1
- package/src/transcription-model/v3/transcription-model-v3.ts +4 -4
- package/src/transcription-model/v4/transcription-model-v4-call-options.ts +1 -1
- package/src/transcription-model/v4/transcription-model-v4-result.ts +3 -3
- package/src/transcription-model/v4/transcription-model-v4.ts +2 -2
- package/src/video-model/v3/video-model-v3-call-options.ts +2 -2
- package/src/video-model/v3/video-model-v3-file.ts +1 -1
- package/src/video-model/v4/video-model-v4-call-options.ts +2 -2
- package/src/video-model/v4/video-model-v4-file.ts +1 -1
- package/src/language-model/v4/language-model-v4-data-content.ts +0 -4
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { LanguageModelV3File } from './language-model-v3-file';
|
|
2
|
-
import { LanguageModelV3Reasoning } from './language-model-v3-reasoning';
|
|
3
|
-
import { LanguageModelV3Source } from './language-model-v3-source';
|
|
4
|
-
import { LanguageModelV3Text } from './language-model-v3-text';
|
|
5
|
-
import { LanguageModelV3ToolApprovalRequest } from './language-model-v3-tool-approval-request';
|
|
6
|
-
import { LanguageModelV3ToolCall } from './language-model-v3-tool-call';
|
|
7
|
-
import { LanguageModelV3ToolResult } from './language-model-v3-tool-result';
|
|
1
|
+
import type { LanguageModelV3File } from './language-model-v3-file';
|
|
2
|
+
import type { LanguageModelV3Reasoning } from './language-model-v3-reasoning';
|
|
3
|
+
import type { LanguageModelV3Source } from './language-model-v3-source';
|
|
4
|
+
import type { LanguageModelV3Text } from './language-model-v3-text';
|
|
5
|
+
import type { LanguageModelV3ToolApprovalRequest } from './language-model-v3-tool-approval-request';
|
|
6
|
+
import type { LanguageModelV3ToolCall } from './language-model-v3-tool-call';
|
|
7
|
+
import type { LanguageModelV3ToolResult } from './language-model-v3-tool-result';
|
|
8
8
|
|
|
9
9
|
export type LanguageModelV3Content =
|
|
10
10
|
| LanguageModelV3Text
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { JSONSchema7 } from 'json-schema';
|
|
2
|
-
import { SharedV3ProviderOptions } from '../../shared';
|
|
3
|
-
import { JSONObject } from '../../json-value';
|
|
1
|
+
import type { JSONSchema7 } from 'json-schema';
|
|
2
|
+
import type { SharedV3ProviderOptions } from '../../shared';
|
|
3
|
+
import type { JSONObject } from '../../json-value';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* A tool has a name, a description, and a set of parameters.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { SharedV3Headers, SharedV3Warning } from '../../shared';
|
|
2
|
-
import { SharedV3ProviderMetadata } from '../../shared/v3/shared-v3-provider-metadata';
|
|
3
|
-
import { LanguageModelV3Content } from './language-model-v3-content';
|
|
4
|
-
import { LanguageModelV3FinishReason } from './language-model-v3-finish-reason';
|
|
5
|
-
import { LanguageModelV3ResponseMetadata } from './language-model-v3-response-metadata';
|
|
6
|
-
import { LanguageModelV3Usage } from './language-model-v3-usage';
|
|
1
|
+
import type { SharedV3Headers, SharedV3Warning } from '../../shared';
|
|
2
|
+
import type { SharedV3ProviderMetadata } from '../../shared/v3/shared-v3-provider-metadata';
|
|
3
|
+
import type { LanguageModelV3Content } from './language-model-v3-content';
|
|
4
|
+
import type { LanguageModelV3FinishReason } from './language-model-v3-finish-reason';
|
|
5
|
+
import type { LanguageModelV3ResponseMetadata } from './language-model-v3-response-metadata';
|
|
6
|
+
import type { LanguageModelV3Usage } from './language-model-v3-usage';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* The result of a language model doGenerate call.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { JSONValue } from '../../json-value/json-value';
|
|
2
|
-
import { SharedV3ProviderOptions } from '../../shared/v3/shared-v3-provider-options';
|
|
3
|
-
import { LanguageModelV3DataContent } from './language-model-v3-data-content';
|
|
1
|
+
import type { JSONValue } from '../../json-value/json-value';
|
|
2
|
+
import type { SharedV3ProviderOptions } from '../../shared/v3/shared-v3-provider-options';
|
|
3
|
+
import type { LanguageModelV3DataContent } from './language-model-v3-data-content';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* A prompt is a list of messages.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { SharedV3ProviderMetadata } from '../../shared/v3/shared-v3-provider-metadata';
|
|
2
|
-
import { SharedV3Warning } from '../../shared/v3/shared-v3-warning';
|
|
3
|
-
import { LanguageModelV3File } from './language-model-v3-file';
|
|
4
|
-
import { LanguageModelV3FinishReason } from './language-model-v3-finish-reason';
|
|
5
|
-
import { LanguageModelV3ResponseMetadata } from './language-model-v3-response-metadata';
|
|
6
|
-
import { LanguageModelV3Source } from './language-model-v3-source';
|
|
7
|
-
import { LanguageModelV3ToolApprovalRequest } from './language-model-v3-tool-approval-request';
|
|
8
|
-
import { LanguageModelV3ToolCall } from './language-model-v3-tool-call';
|
|
9
|
-
import { LanguageModelV3ToolResult } from './language-model-v3-tool-result';
|
|
10
|
-
import { LanguageModelV3Usage } from './language-model-v3-usage';
|
|
1
|
+
import type { SharedV3ProviderMetadata } from '../../shared/v3/shared-v3-provider-metadata';
|
|
2
|
+
import type { SharedV3Warning } from '../../shared/v3/shared-v3-warning';
|
|
3
|
+
import type { LanguageModelV3File } from './language-model-v3-file';
|
|
4
|
+
import type { LanguageModelV3FinishReason } from './language-model-v3-finish-reason';
|
|
5
|
+
import type { LanguageModelV3ResponseMetadata } from './language-model-v3-response-metadata';
|
|
6
|
+
import type { LanguageModelV3Source } from './language-model-v3-source';
|
|
7
|
+
import type { LanguageModelV3ToolApprovalRequest } from './language-model-v3-tool-approval-request';
|
|
8
|
+
import type { LanguageModelV3ToolCall } from './language-model-v3-tool-call';
|
|
9
|
+
import type { LanguageModelV3ToolResult } from './language-model-v3-tool-result';
|
|
10
|
+
import type { LanguageModelV3Usage } from './language-model-v3-usage';
|
|
11
11
|
|
|
12
12
|
export type LanguageModelV3StreamPart =
|
|
13
13
|
// Text blocks:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SharedV3Headers } from '../../shared';
|
|
2
|
-
import { LanguageModelV3StreamPart } from './language-model-v3-stream-part';
|
|
1
|
+
import type { SharedV3Headers } from '../../shared';
|
|
2
|
+
import type { LanguageModelV3StreamPart } from './language-model-v3-stream-part';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* The result of a language model doStream call.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SharedV3ProviderMetadata } from '../../shared/v3/shared-v3-provider-metadata';
|
|
1
|
+
import type { SharedV3ProviderMetadata } from '../../shared/v3/shared-v3-provider-metadata';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Tool approval request emitted by a provider for a provider-executed tool call.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { JSONValue } from '../../json-value';
|
|
2
|
-
import { SharedV3ProviderMetadata } from '../../shared/v3/shared-v3-provider-metadata';
|
|
1
|
+
import type { JSONValue } from '../../json-value';
|
|
2
|
+
import type { SharedV3ProviderMetadata } from '../../shared/v3/shared-v3-provider-metadata';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Result of a tool call that has been executed by the provider.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { LanguageModelV3CallOptions } from './language-model-v3-call-options';
|
|
2
|
-
import { LanguageModelV3GenerateResult } from './language-model-v3-generate-result';
|
|
3
|
-
import { LanguageModelV3StreamResult } from './language-model-v3-stream-result';
|
|
1
|
+
import type { LanguageModelV3CallOptions } from './language-model-v3-call-options';
|
|
2
|
+
import type { LanguageModelV3GenerateResult } from './language-model-v3-generate-result';
|
|
3
|
+
import type { LanguageModelV3StreamResult } from './language-model-v3-stream-result';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Specification for a language model that implements the language model interface version 3.
|
|
@@ -2,7 +2,6 @@ export * from './language-model-v4';
|
|
|
2
2
|
export * from './language-model-v4-call-options';
|
|
3
3
|
export * from './language-model-v4-content';
|
|
4
4
|
export * from './language-model-v4-custom-content';
|
|
5
|
-
export * from './language-model-v4-data-content';
|
|
6
5
|
export * from './language-model-v4-file';
|
|
7
6
|
export * from './language-model-v4-finish-reason';
|
|
8
7
|
export * from './language-model-v4-function-tool';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { JSONSchema7 } from 'json-schema';
|
|
2
|
-
import { SharedV4ProviderOptions } from '../../shared/v4/shared-v4-provider-options';
|
|
3
|
-
import { LanguageModelV4FunctionTool } from './language-model-v4-function-tool';
|
|
4
|
-
import { LanguageModelV4Prompt } from './language-model-v4-prompt';
|
|
5
|
-
import { LanguageModelV4ProviderTool } from './language-model-v4-provider-tool';
|
|
6
|
-
import { LanguageModelV4ToolChoice } from './language-model-v4-tool-choice';
|
|
1
|
+
import type { JSONSchema7 } from 'json-schema';
|
|
2
|
+
import type { SharedV4ProviderOptions } from '../../shared/v4/shared-v4-provider-options';
|
|
3
|
+
import type { LanguageModelV4FunctionTool } from './language-model-v4-function-tool';
|
|
4
|
+
import type { LanguageModelV4Prompt } from './language-model-v4-prompt';
|
|
5
|
+
import type { LanguageModelV4ProviderTool } from './language-model-v4-provider-tool';
|
|
6
|
+
import type { LanguageModelV4ToolChoice } from './language-model-v4-tool-choice';
|
|
7
7
|
|
|
8
8
|
export type LanguageModelV4CallOptions = {
|
|
9
9
|
/**
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { LanguageModelV4CustomContent } from './language-model-v4-custom-content';
|
|
2
|
-
import { LanguageModelV4File } from './language-model-v4-file';
|
|
3
|
-
import { LanguageModelV4Reasoning } from './language-model-v4-reasoning';
|
|
4
|
-
import { LanguageModelV4ReasoningFile } from './language-model-v4-reasoning-file';
|
|
5
|
-
import { LanguageModelV4Source } from './language-model-v4-source';
|
|
6
|
-
import { LanguageModelV4Text } from './language-model-v4-text';
|
|
7
|
-
import { LanguageModelV4ToolApprovalRequest } from './language-model-v4-tool-approval-request';
|
|
8
|
-
import { LanguageModelV4ToolCall } from './language-model-v4-tool-call';
|
|
9
|
-
import { LanguageModelV4ToolResult } from './language-model-v4-tool-result';
|
|
1
|
+
import type { LanguageModelV4CustomContent } from './language-model-v4-custom-content';
|
|
2
|
+
import type { LanguageModelV4File } from './language-model-v4-file';
|
|
3
|
+
import type { LanguageModelV4Reasoning } from './language-model-v4-reasoning';
|
|
4
|
+
import type { LanguageModelV4ReasoningFile } from './language-model-v4-reasoning-file';
|
|
5
|
+
import type { LanguageModelV4Source } from './language-model-v4-source';
|
|
6
|
+
import type { LanguageModelV4Text } from './language-model-v4-text';
|
|
7
|
+
import type { LanguageModelV4ToolApprovalRequest } from './language-model-v4-tool-approval-request';
|
|
8
|
+
import type { LanguageModelV4ToolCall } from './language-model-v4-tool-call';
|
|
9
|
+
import type { LanguageModelV4ToolResult } from './language-model-v4-tool-result';
|
|
10
10
|
|
|
11
11
|
export type LanguageModelV4Content =
|
|
12
12
|
| LanguageModelV4Text
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type {
|
|
2
|
+
SharedV4FileDataData,
|
|
3
|
+
SharedV4FileDataUrl,
|
|
4
|
+
SharedV4ProviderMetadata,
|
|
5
|
+
} from '../../shared';
|
|
2
6
|
|
|
3
7
|
/**
|
|
4
8
|
* A file that has been generated by the model.
|
|
@@ -16,14 +20,17 @@ export type LanguageModelV4File = {
|
|
|
16
20
|
mediaType: string;
|
|
17
21
|
|
|
18
22
|
/**
|
|
19
|
-
* Generated file data as
|
|
23
|
+
* Generated file data as a tagged discriminated union:
|
|
24
|
+
*
|
|
25
|
+
* - `{ type: 'data', data }`: raw bytes (Uint8Array) or base64-encoded string.
|
|
26
|
+
* - `{ type: 'url', url }`: a URL that points to the file.
|
|
20
27
|
*
|
|
21
28
|
* The file data should be returned without any unnecessary conversion.
|
|
22
29
|
* If the API returns base64 encoded strings, the file data should be returned
|
|
23
30
|
* as base64 encoded strings. If the API returns binary data, the file data should
|
|
24
31
|
* be returned as binary data.
|
|
25
32
|
*/
|
|
26
|
-
data:
|
|
33
|
+
data: SharedV4FileDataData | SharedV4FileDataUrl;
|
|
27
34
|
|
|
28
35
|
/**
|
|
29
36
|
* Optional provider-specific metadata for the file part.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { JSONSchema7 } from 'json-schema';
|
|
2
|
-
import { SharedV4ProviderOptions } from '../../shared';
|
|
3
|
-
import { JSONObject } from '../../json-value';
|
|
1
|
+
import type { JSONSchema7 } from 'json-schema';
|
|
2
|
+
import type { SharedV4ProviderOptions } from '../../shared';
|
|
3
|
+
import type { JSONObject } from '../../json-value';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* A tool has a name, a description, and a set of parameters.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { SharedV4Headers, SharedV4Warning } from '../../shared';
|
|
2
|
-
import { SharedV4ProviderMetadata } from '../../shared/v4/shared-v4-provider-metadata';
|
|
3
|
-
import { LanguageModelV4Content } from './language-model-v4-content';
|
|
4
|
-
import { LanguageModelV4FinishReason } from './language-model-v4-finish-reason';
|
|
5
|
-
import { LanguageModelV4ResponseMetadata } from './language-model-v4-response-metadata';
|
|
6
|
-
import { LanguageModelV4Usage } from './language-model-v4-usage';
|
|
1
|
+
import type { SharedV4Headers, SharedV4Warning } from '../../shared';
|
|
2
|
+
import type { SharedV4ProviderMetadata } from '../../shared/v4/shared-v4-provider-metadata';
|
|
3
|
+
import type { LanguageModelV4Content } from './language-model-v4-content';
|
|
4
|
+
import type { LanguageModelV4FinishReason } from './language-model-v4-finish-reason';
|
|
5
|
+
import type { LanguageModelV4ResponseMetadata } from './language-model-v4-response-metadata';
|
|
6
|
+
import type { LanguageModelV4Usage } from './language-model-v4-usage';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* The result of a language model doGenerate call.
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import { JSONValue } from '../../json-value/json-value';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import type { JSONValue } from '../../json-value/json-value';
|
|
2
|
+
import type {
|
|
3
|
+
SharedV4FileData,
|
|
4
|
+
SharedV4FileDataData,
|
|
5
|
+
SharedV4FileDataUrl,
|
|
6
|
+
} from '../../shared/v4/shared-v4-file-data';
|
|
7
|
+
import type { SharedV4ProviderOptions } from '../../shared/v4/shared-v4-provider-options';
|
|
5
8
|
|
|
6
9
|
/**
|
|
7
10
|
* A prompt is a list of messages.
|
|
@@ -100,9 +103,12 @@ export interface LanguageModelV4ReasoningFilePart {
|
|
|
100
103
|
type: 'reasoning-file';
|
|
101
104
|
|
|
102
105
|
/**
|
|
103
|
-
* File data
|
|
106
|
+
* File data as a tagged discriminated union:
|
|
107
|
+
*
|
|
108
|
+
* - `{ type: 'data', data }`: raw bytes (Uint8Array) or base64-encoded string.
|
|
109
|
+
* - `{ type: 'url', url }`: a URL that points to the file.
|
|
104
110
|
*/
|
|
105
|
-
data:
|
|
111
|
+
data: SharedV4FileDataData | SharedV4FileDataUrl;
|
|
106
112
|
|
|
107
113
|
/**
|
|
108
114
|
* IANA media type of the file.
|
|
@@ -151,15 +157,24 @@ export interface LanguageModelV4FilePart {
|
|
|
151
157
|
filename?: string;
|
|
152
158
|
|
|
153
159
|
/**
|
|
154
|
-
* File data
|
|
155
|
-
*
|
|
160
|
+
* File data as a tagged discriminated union:
|
|
161
|
+
*
|
|
162
|
+
* - `{ type: 'data', data }`: raw bytes (Uint8Array) or base64-encoded string.
|
|
163
|
+
* - `{ type: 'url', url }`: a URL that points to the file.
|
|
164
|
+
* - `{ type: 'reference', reference }`: a provider reference (`{ [provider]: id }`).
|
|
165
|
+
* - `{ type: 'text', text }`: inline text content (e.g. an inline text document).
|
|
156
166
|
*/
|
|
157
|
-
data:
|
|
167
|
+
data: SharedV4FileData;
|
|
158
168
|
|
|
159
169
|
/**
|
|
160
|
-
* IANA media type
|
|
170
|
+
* Either a full IANA media type (`type/subtype`, e.g. `image/png`) or just
|
|
171
|
+
* the top-level IANA segment (e.g. `image`, `audio`, `video`, `text`).
|
|
161
172
|
*
|
|
162
|
-
*
|
|
173
|
+
* `*`-subtype wildcards (e.g. `image/*`) are normalized as equivalent to the
|
|
174
|
+
* top-level segment alone (e.g. `image`). Providers can use the helpers in
|
|
175
|
+
* `@ai-sdk/provider-utils` (`isFullMediaType`, `getTopLevelMediaType`,
|
|
176
|
+
* `detectMediaType`) to resolve the field according to their API
|
|
177
|
+
* requirements.
|
|
163
178
|
*
|
|
164
179
|
* @see https://www.iana.org/assignments/media-types/media-types.xhtml
|
|
165
180
|
*/
|
|
@@ -343,15 +358,28 @@ export type LanguageModelV4ToolResultOutput =
|
|
|
343
358
|
providerOptions?: SharedV4ProviderOptions;
|
|
344
359
|
}
|
|
345
360
|
| {
|
|
346
|
-
type: 'file
|
|
361
|
+
type: 'file';
|
|
347
362
|
|
|
348
363
|
/**
|
|
349
|
-
*
|
|
364
|
+
* File data as a tagged discriminated union:
|
|
365
|
+
*
|
|
366
|
+
* - `{ type: 'data', data }`: raw bytes (Uint8Array) or base64-encoded string.
|
|
367
|
+
* - `{ type: 'url', url }`: a URL that points to the file.
|
|
368
|
+
* - `{ type: 'reference', reference }`: a provider reference (`{ [provider]: id }`).
|
|
369
|
+
* - `{ type: 'text', text }`: inline text content (e.g. an inline text document).
|
|
350
370
|
*/
|
|
351
|
-
data:
|
|
371
|
+
data: SharedV4FileData;
|
|
352
372
|
|
|
353
373
|
/**
|
|
354
|
-
* IANA media type.
|
|
374
|
+
* Either a full IANA media type (`type/subtype`, e.g. `image/png`) or just
|
|
375
|
+
* the top-level IANA segment (e.g. `image`, `audio`, `video`, `text`).
|
|
376
|
+
*
|
|
377
|
+
* `*`-subtype wildcards (e.g. `image/*`) are normalized as equivalent to the
|
|
378
|
+
* top-level segment alone (e.g. `image`). Providers can use the helpers in
|
|
379
|
+
* `@ai-sdk/provider-utils` (`isFullMediaType`, `getTopLevelMediaType`,
|
|
380
|
+
* `detectMediaType`) to resolve the field according to their API
|
|
381
|
+
* requirements.
|
|
382
|
+
*
|
|
355
383
|
* @see https://www.iana.org/assignments/media-types/media-types.xhtml
|
|
356
384
|
*/
|
|
357
385
|
mediaType: string;
|
|
@@ -361,39 +389,6 @@ export type LanguageModelV4ToolResultOutput =
|
|
|
361
389
|
*/
|
|
362
390
|
filename?: string;
|
|
363
391
|
|
|
364
|
-
/**
|
|
365
|
-
* Provider-specific options.
|
|
366
|
-
*/
|
|
367
|
-
providerOptions?: SharedV4ProviderOptions;
|
|
368
|
-
}
|
|
369
|
-
| {
|
|
370
|
-
type: 'file-url';
|
|
371
|
-
|
|
372
|
-
/**
|
|
373
|
-
* URL of the file.
|
|
374
|
-
*/
|
|
375
|
-
url: string;
|
|
376
|
-
|
|
377
|
-
/**
|
|
378
|
-
* IANA media type.
|
|
379
|
-
* @see https://www.iana.org/assignments/media-types/media-types.xhtml
|
|
380
|
-
*/
|
|
381
|
-
mediaType: string;
|
|
382
|
-
|
|
383
|
-
/**
|
|
384
|
-
* Provider-specific options.
|
|
385
|
-
*/
|
|
386
|
-
providerOptions?: SharedV4ProviderOptions;
|
|
387
|
-
}
|
|
388
|
-
| {
|
|
389
|
-
type: 'file-reference';
|
|
390
|
-
|
|
391
|
-
/**
|
|
392
|
-
* Provider-specific references for the file.
|
|
393
|
-
* The key is the provider name, e.g. 'openai' or 'anthropic'.
|
|
394
|
-
*/
|
|
395
|
-
providerReference: SharedV4ProviderReference;
|
|
396
|
-
|
|
397
392
|
/**
|
|
398
393
|
* Provider-specific options.
|
|
399
394
|
*/
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type {
|
|
2
|
+
SharedV4FileDataData,
|
|
3
|
+
SharedV4FileDataUrl,
|
|
4
|
+
SharedV4ProviderMetadata,
|
|
5
|
+
} from '../../shared';
|
|
2
6
|
|
|
3
7
|
/**
|
|
4
8
|
* A file that has been generated by the model as part of reasoning.
|
|
@@ -16,14 +20,17 @@ export type LanguageModelV4ReasoningFile = {
|
|
|
16
20
|
mediaType: string;
|
|
17
21
|
|
|
18
22
|
/**
|
|
19
|
-
* Generated file data as
|
|
23
|
+
* Generated file data as a tagged discriminated union:
|
|
24
|
+
*
|
|
25
|
+
* - `{ type: 'data', data }`: raw bytes (Uint8Array) or base64-encoded string.
|
|
26
|
+
* - `{ type: 'url', url }`: a URL that points to the file.
|
|
20
27
|
*
|
|
21
28
|
* The file data should be returned without any unnecessary conversion.
|
|
22
29
|
* If the API returns base64 encoded strings, the file data should be returned
|
|
23
30
|
* as base64 encoded strings. If the API returns binary data, the file data should
|
|
24
31
|
* be returned as binary data.
|
|
25
32
|
*/
|
|
26
|
-
data:
|
|
33
|
+
data: SharedV4FileDataData | SharedV4FileDataUrl;
|
|
27
34
|
|
|
28
35
|
/**
|
|
29
36
|
* Optional provider-specific metadata for the reasoning file part.
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { SharedV4ProviderMetadata } from '../../shared/v4/shared-v4-provider-metadata';
|
|
2
|
-
import { SharedV4Warning } from '../../shared/v4/shared-v4-warning';
|
|
3
|
-
import { LanguageModelV4CustomContent } from './language-model-v4-custom-content';
|
|
4
|
-
import { LanguageModelV4File } from './language-model-v4-file';
|
|
5
|
-
import { LanguageModelV4FinishReason } from './language-model-v4-finish-reason';
|
|
6
|
-
import { LanguageModelV4ReasoningFile } from './language-model-v4-reasoning-file';
|
|
7
|
-
import { LanguageModelV4ResponseMetadata } from './language-model-v4-response-metadata';
|
|
8
|
-
import { LanguageModelV4Source } from './language-model-v4-source';
|
|
9
|
-
import { LanguageModelV4ToolApprovalRequest } from './language-model-v4-tool-approval-request';
|
|
10
|
-
import { LanguageModelV4ToolCall } from './language-model-v4-tool-call';
|
|
11
|
-
import { LanguageModelV4ToolResult } from './language-model-v4-tool-result';
|
|
12
|
-
import { LanguageModelV4Usage } from './language-model-v4-usage';
|
|
1
|
+
import type { SharedV4ProviderMetadata } from '../../shared/v4/shared-v4-provider-metadata';
|
|
2
|
+
import type { SharedV4Warning } from '../../shared/v4/shared-v4-warning';
|
|
3
|
+
import type { LanguageModelV4CustomContent } from './language-model-v4-custom-content';
|
|
4
|
+
import type { LanguageModelV4File } from './language-model-v4-file';
|
|
5
|
+
import type { LanguageModelV4FinishReason } from './language-model-v4-finish-reason';
|
|
6
|
+
import type { LanguageModelV4ReasoningFile } from './language-model-v4-reasoning-file';
|
|
7
|
+
import type { LanguageModelV4ResponseMetadata } from './language-model-v4-response-metadata';
|
|
8
|
+
import type { LanguageModelV4Source } from './language-model-v4-source';
|
|
9
|
+
import type { LanguageModelV4ToolApprovalRequest } from './language-model-v4-tool-approval-request';
|
|
10
|
+
import type { LanguageModelV4ToolCall } from './language-model-v4-tool-call';
|
|
11
|
+
import type { LanguageModelV4ToolResult } from './language-model-v4-tool-result';
|
|
12
|
+
import type { LanguageModelV4Usage } from './language-model-v4-usage';
|
|
13
13
|
|
|
14
14
|
export type LanguageModelV4StreamPart =
|
|
15
15
|
// Text blocks:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SharedV4Headers } from '../../shared';
|
|
2
|
-
import { LanguageModelV4StreamPart } from './language-model-v4-stream-part';
|
|
1
|
+
import type { SharedV4Headers } from '../../shared';
|
|
2
|
+
import type { LanguageModelV4StreamPart } from './language-model-v4-stream-part';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* The result of a language model doStream call.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SharedV4ProviderMetadata } from '../../shared/v4/shared-v4-provider-metadata';
|
|
1
|
+
import type { SharedV4ProviderMetadata } from '../../shared/v4/shared-v4-provider-metadata';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Tool approval request emitted by a provider for a provider-executed tool call.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { JSONValue } from '../../json-value';
|
|
2
|
-
import { SharedV4ProviderMetadata } from '../../shared/v4/shared-v4-provider-metadata';
|
|
1
|
+
import type { JSONValue } from '../../json-value';
|
|
2
|
+
import type { SharedV4ProviderMetadata } from '../../shared/v4/shared-v4-provider-metadata';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Result of a tool call that has been executed by the provider.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { LanguageModelV4CallOptions } from './language-model-v4-call-options';
|
|
2
|
-
import { LanguageModelV4GenerateResult } from './language-model-v4-generate-result';
|
|
3
|
-
import { LanguageModelV4StreamResult } from './language-model-v4-stream-result';
|
|
1
|
+
import type { LanguageModelV4CallOptions } from './language-model-v4-call-options';
|
|
2
|
+
import type { LanguageModelV4GenerateResult } from './language-model-v4-generate-result';
|
|
3
|
+
import type { LanguageModelV4StreamResult } from './language-model-v4-stream-result';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Specification for a language model that implements the language model interface version 4.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { LanguageModelV2 } from '../../language-model/v2/language-model-v2';
|
|
2
|
-
import { LanguageModelV2CallOptions } from '../../language-model/v2/language-model-v2-call-options';
|
|
1
|
+
import type { LanguageModelV2 } from '../../language-model/v2/language-model-v2';
|
|
2
|
+
import type { LanguageModelV2CallOptions } from '../../language-model/v2/language-model-v2-call-options';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Experimental middleware for LanguageModelV2.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { LanguageModelV3 } from '../../language-model/v3/language-model-v3';
|
|
2
|
-
import { LanguageModelV3CallOptions } from '../../language-model/v3/language-model-v3-call-options';
|
|
3
|
-
import { LanguageModelV3GenerateResult } from '../../language-model/v3/language-model-v3-generate-result';
|
|
4
|
-
import { LanguageModelV3StreamResult } from '../../language-model/v3/language-model-v3-stream-result';
|
|
1
|
+
import type { LanguageModelV3 } from '../../language-model/v3/language-model-v3';
|
|
2
|
+
import type { LanguageModelV3CallOptions } from '../../language-model/v3/language-model-v3-call-options';
|
|
3
|
+
import type { LanguageModelV3GenerateResult } from '../../language-model/v3/language-model-v3-generate-result';
|
|
4
|
+
import type { LanguageModelV3StreamResult } from '../../language-model/v3/language-model-v3-stream-result';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Experimental middleware for LanguageModelV3.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { LanguageModelV4 } from '../../language-model/v4/language-model-v4';
|
|
2
|
-
import { LanguageModelV4CallOptions } from '../../language-model/v4/language-model-v4-call-options';
|
|
3
|
-
import { LanguageModelV4GenerateResult } from '../../language-model/v4/language-model-v4-generate-result';
|
|
4
|
-
import { LanguageModelV4StreamResult } from '../../language-model/v4/language-model-v4-stream-result';
|
|
1
|
+
import type { LanguageModelV4 } from '../../language-model/v4/language-model-v4';
|
|
2
|
+
import type { LanguageModelV4CallOptions } from '../../language-model/v4/language-model-v4-call-options';
|
|
3
|
+
import type { LanguageModelV4GenerateResult } from '../../language-model/v4/language-model-v4-generate-result';
|
|
4
|
+
import type { LanguageModelV4StreamResult } from '../../language-model/v4/language-model-v4-stream-result';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Experimental middleware for LanguageModelV4.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { EmbeddingModelV2 } from '../../embedding-model/v2/embedding-model-v2';
|
|
2
|
-
import { ImageModelV2 } from '../../image-model/v2/image-model-v2';
|
|
3
|
-
import { LanguageModelV2 } from '../../language-model/v2/language-model-v2';
|
|
4
|
-
import { SpeechModelV2 } from '../../speech-model/v2/speech-model-v2';
|
|
5
|
-
import { TranscriptionModelV2 } from '../../transcription-model/v2/transcription-model-v2';
|
|
1
|
+
import type { EmbeddingModelV2 } from '../../embedding-model/v2/embedding-model-v2';
|
|
2
|
+
import type { ImageModelV2 } from '../../image-model/v2/image-model-v2';
|
|
3
|
+
import type { LanguageModelV2 } from '../../language-model/v2/language-model-v2';
|
|
4
|
+
import type { SpeechModelV2 } from '../../speech-model/v2/speech-model-v2';
|
|
5
|
+
import type { TranscriptionModelV2 } from '../../transcription-model/v2/transcription-model-v2';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Provider for language, text embedding, and image generation models.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { EmbeddingModelV3 } from '../../embedding-model/v3/embedding-model-v3';
|
|
2
|
-
import { ImageModelV3 } from '../../image-model/v3/image-model-v3';
|
|
3
|
-
import { LanguageModelV3 } from '../../language-model/v3/language-model-v3';
|
|
4
|
-
import { RerankingModelV3 } from '../../reranking-model/v3/reranking-model-v3';
|
|
5
|
-
import { SpeechModelV3 } from '../../speech-model/v3/speech-model-v3';
|
|
6
|
-
import { TranscriptionModelV3 } from '../../transcription-model/v3/transcription-model-v3';
|
|
1
|
+
import type { EmbeddingModelV3 } from '../../embedding-model/v3/embedding-model-v3';
|
|
2
|
+
import type { ImageModelV3 } from '../../image-model/v3/image-model-v3';
|
|
3
|
+
import type { LanguageModelV3 } from '../../language-model/v3/language-model-v3';
|
|
4
|
+
import type { RerankingModelV3 } from '../../reranking-model/v3/reranking-model-v3';
|
|
5
|
+
import type { SpeechModelV3 } from '../../speech-model/v3/speech-model-v3';
|
|
6
|
+
import type { TranscriptionModelV3 } from '../../transcription-model/v3/transcription-model-v3';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Provider for language, text embedding, and image generation models.
|