ai 3.1.35 → 3.1.37
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/dist/index.d.mts +77 -37
- package/dist/index.d.ts +77 -37
- package/dist/index.js +51 -43
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +50 -43
- package/dist/index.mjs.map +1 -1
- package/package.json +7 -7
package/dist/index.d.mts
CHANGED
@@ -1234,32 +1234,27 @@ declare class StreamTextResult<TOOLS extends Record<string, CoreTool>> {
|
|
1234
1234
|
*/
|
1235
1235
|
declare const experimental_streamText: typeof streamText;
|
1236
1236
|
|
1237
|
-
|
1238
|
-
|
1239
|
-
|
1240
|
-
|
1241
|
-
|
1242
|
-
|
1243
|
-
|
1244
|
-
|
1245
|
-
|
1246
|
-
|
1247
|
-
|
1248
|
-
|
1249
|
-
|
1250
|
-
|
1251
|
-
*/
|
1252
|
-
languageModel(id: string): LanguageModel;
|
1253
|
-
};
|
1254
|
-
/**
|
1255
|
-
* Creates a model registry for the given providers.
|
1256
|
-
*/
|
1257
|
-
declare function experimental_createModelRegistry(providers: Record<string, (id: string) => LanguageModel>): experimental_ModelRegistry;
|
1237
|
+
declare class InvalidModelIdError extends Error {
|
1238
|
+
readonly id: string;
|
1239
|
+
constructor({ id, message, }: {
|
1240
|
+
id: string;
|
1241
|
+
message?: string;
|
1242
|
+
});
|
1243
|
+
static isInvalidModelIdError(error: unknown): error is InvalidModelIdError;
|
1244
|
+
toJSON(): {
|
1245
|
+
name: string;
|
1246
|
+
message: string;
|
1247
|
+
stack: string | undefined;
|
1248
|
+
id: string;
|
1249
|
+
};
|
1250
|
+
}
|
1258
1251
|
|
1259
1252
|
declare class NoSuchModelError extends Error {
|
1260
1253
|
readonly modelId: string;
|
1261
|
-
|
1254
|
+
readonly modelType: string;
|
1255
|
+
constructor({ modelId, modelType, message, }: {
|
1262
1256
|
modelId: string;
|
1257
|
+
modelType: string;
|
1263
1258
|
message?: string;
|
1264
1259
|
});
|
1265
1260
|
static isNoSuchModelError(error: unknown): error is NoSuchModelError;
|
@@ -1268,13 +1263,16 @@ declare class NoSuchModelError extends Error {
|
|
1268
1263
|
message: string;
|
1269
1264
|
stack: string | undefined;
|
1270
1265
|
modelId: string;
|
1266
|
+
modelType: string;
|
1271
1267
|
};
|
1272
1268
|
}
|
1273
1269
|
|
1274
1270
|
declare class NoSuchProviderError extends Error {
|
1275
1271
|
readonly providerId: string;
|
1276
|
-
|
1272
|
+
readonly availableProviders: string[];
|
1273
|
+
constructor({ providerId, availableProviders, message, }: {
|
1277
1274
|
providerId: string;
|
1275
|
+
availableProviders: string[];
|
1278
1276
|
message?: string;
|
1279
1277
|
});
|
1280
1278
|
static isNoSuchProviderError(error: unknown): error is NoSuchProviderError;
|
@@ -1283,23 +1281,65 @@ declare class NoSuchProviderError extends Error {
|
|
1283
1281
|
message: string;
|
1284
1282
|
stack: string | undefined;
|
1285
1283
|
providerId: string;
|
1284
|
+
availableProviders: string[];
|
1286
1285
|
};
|
1287
1286
|
}
|
1288
1287
|
|
1289
|
-
|
1290
|
-
|
1291
|
-
|
1292
|
-
|
1293
|
-
|
1294
|
-
|
1295
|
-
|
1296
|
-
|
1297
|
-
|
1298
|
-
|
1299
|
-
|
1300
|
-
|
1301
|
-
|
1288
|
+
/**
|
1289
|
+
Registry for managing models. It enables getting a model with a string id.
|
1290
|
+
*/
|
1291
|
+
type experimental_ProviderRegistry = {
|
1292
|
+
/**
|
1293
|
+
Returns the language model with the given id in the format `providerId:modelId`.
|
1294
|
+
The model id is then passed to the provider function to get the model.
|
1295
|
+
|
1296
|
+
@param {string} id - The id of the model to return.
|
1297
|
+
|
1298
|
+
@throws {NoSuchModelError} If no model with the given id exists.
|
1299
|
+
@throws {NoSuchProviderError} If no provider with the given id exists.
|
1300
|
+
|
1301
|
+
@returns {LanguageModel} The language model associated with the id.
|
1302
|
+
*/
|
1303
|
+
languageModel(id: string): LanguageModel;
|
1304
|
+
/**
|
1305
|
+
Returns the text embedding model with the given id in the format `providerId:modelId`.
|
1306
|
+
The model id is then passed to the provider function to get the model.
|
1307
|
+
|
1308
|
+
@param {string} id - The id of the model to return.
|
1309
|
+
|
1310
|
+
@throws {NoSuchModelError} If no model with the given id exists.
|
1311
|
+
@throws {NoSuchProviderError} If no provider with the given id exists.
|
1312
|
+
|
1313
|
+
@returns {LanguageModel} The language model associated with the id.
|
1314
|
+
*/
|
1315
|
+
textEmbeddingModel(id: string): EmbeddingModel<string>;
|
1316
|
+
};
|
1317
|
+
/**
|
1318
|
+
* @deprecated Use `experimental_ProviderRegistry` instead.
|
1319
|
+
*/
|
1320
|
+
type experimental_ModelRegistry = experimental_ProviderRegistry;
|
1321
|
+
/**
|
1322
|
+
* Provider for language and text embedding models. Compatible with the
|
1323
|
+
* provider registry.
|
1324
|
+
*/
|
1325
|
+
interface Provider {
|
1326
|
+
/**
|
1327
|
+
* Returns a language model with the given id.
|
1328
|
+
*/
|
1329
|
+
languageModel?: (modelId: string) => LanguageModel;
|
1330
|
+
/**
|
1331
|
+
* Returns a text embedding model with the given id.
|
1332
|
+
*/
|
1333
|
+
textEmbedding?: (modelId: string) => EmbeddingModel<string>;
|
1302
1334
|
}
|
1335
|
+
/**
|
1336
|
+
* Creates a registry for the given providers.
|
1337
|
+
*/
|
1338
|
+
declare function experimental_createProviderRegistry(providers: Record<string, Provider>): experimental_ProviderRegistry;
|
1339
|
+
/**
|
1340
|
+
* @deprecated Use `experimental_createProviderRegistry` instead.
|
1341
|
+
*/
|
1342
|
+
declare const experimental_createModelRegistry: typeof experimental_createProviderRegistry;
|
1303
1343
|
|
1304
1344
|
/**
|
1305
1345
|
* Calculates the cosine similarity between two vectors. This is a useful metric for
|
@@ -2041,4 +2081,4 @@ declare const generateId: (size?: number | undefined) => string;
|
|
2041
2081
|
*/
|
2042
2082
|
declare const nanoid: (size?: number | undefined) => string;
|
2043
2083
|
|
2044
|
-
export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantResponse, CallWarning, CohereStream, CompletionUsage, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolChoice, CoreToolMessage, CoreUserMessage, DataContent, DeepPartial, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, FinishReason, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, InvalidMessageRoleError, InvalidModelIdError, langchainAdapter as LangChainAdapter, LangChainStream, LanguageModel, LogProbs, MistralStream, NoSuchModelError, NoSuchProviderError, ObjectStreamInputPart, ObjectStreamPart, OpenAIStream, OpenAIStreamCallbacks, ReplicateStream, StreamData, StreamObjectResult, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, TokenUsage, ToolCallPart, ToolCallPayload, ToolContent, ToolResultPart, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, convertToCoreMessages, cosineSimilarity, createCallbacksTransformer, createEventStreamTransformer, createStreamDataTransformer, embed, embedMany, experimental_AssistantResponse, experimental_ModelRegistry, experimental_StreamData, experimental_createModelRegistry, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, generateObject, generateText, nanoid, readableFromAsyncIterable, streamObject, streamText, streamToResponse, tool, trimStartOfStreamHelper };
|
2084
|
+
export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantResponse, CallWarning, CohereStream, CompletionUsage, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolChoice, CoreToolMessage, CoreUserMessage, DataContent, DeepPartial, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, FinishReason, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, InvalidMessageRoleError, InvalidModelIdError, langchainAdapter as LangChainAdapter, LangChainStream, LanguageModel, LogProbs, MistralStream, NoSuchModelError, NoSuchProviderError, ObjectStreamInputPart, ObjectStreamPart, OpenAIStream, OpenAIStreamCallbacks, ReplicateStream, StreamData, StreamObjectResult, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, TokenUsage, ToolCallPart, ToolCallPayload, ToolContent, ToolResultPart, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, convertToCoreMessages, cosineSimilarity, createCallbacksTransformer, createEventStreamTransformer, createStreamDataTransformer, embed, embedMany, experimental_AssistantResponse, experimental_ModelRegistry, experimental_ProviderRegistry, experimental_StreamData, experimental_createModelRegistry, experimental_createProviderRegistry, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, generateObject, generateText, nanoid, readableFromAsyncIterable, streamObject, streamText, streamToResponse, tool, trimStartOfStreamHelper };
|
package/dist/index.d.ts
CHANGED
@@ -1234,32 +1234,27 @@ declare class StreamTextResult<TOOLS extends Record<string, CoreTool>> {
|
|
1234
1234
|
*/
|
1235
1235
|
declare const experimental_streamText: typeof streamText;
|
1236
1236
|
|
1237
|
-
|
1238
|
-
|
1239
|
-
|
1240
|
-
|
1241
|
-
|
1242
|
-
|
1243
|
-
|
1244
|
-
|
1245
|
-
|
1246
|
-
|
1247
|
-
|
1248
|
-
|
1249
|
-
|
1250
|
-
|
1251
|
-
*/
|
1252
|
-
languageModel(id: string): LanguageModel;
|
1253
|
-
};
|
1254
|
-
/**
|
1255
|
-
* Creates a model registry for the given providers.
|
1256
|
-
*/
|
1257
|
-
declare function experimental_createModelRegistry(providers: Record<string, (id: string) => LanguageModel>): experimental_ModelRegistry;
|
1237
|
+
declare class InvalidModelIdError extends Error {
|
1238
|
+
readonly id: string;
|
1239
|
+
constructor({ id, message, }: {
|
1240
|
+
id: string;
|
1241
|
+
message?: string;
|
1242
|
+
});
|
1243
|
+
static isInvalidModelIdError(error: unknown): error is InvalidModelIdError;
|
1244
|
+
toJSON(): {
|
1245
|
+
name: string;
|
1246
|
+
message: string;
|
1247
|
+
stack: string | undefined;
|
1248
|
+
id: string;
|
1249
|
+
};
|
1250
|
+
}
|
1258
1251
|
|
1259
1252
|
declare class NoSuchModelError extends Error {
|
1260
1253
|
readonly modelId: string;
|
1261
|
-
|
1254
|
+
readonly modelType: string;
|
1255
|
+
constructor({ modelId, modelType, message, }: {
|
1262
1256
|
modelId: string;
|
1257
|
+
modelType: string;
|
1263
1258
|
message?: string;
|
1264
1259
|
});
|
1265
1260
|
static isNoSuchModelError(error: unknown): error is NoSuchModelError;
|
@@ -1268,13 +1263,16 @@ declare class NoSuchModelError extends Error {
|
|
1268
1263
|
message: string;
|
1269
1264
|
stack: string | undefined;
|
1270
1265
|
modelId: string;
|
1266
|
+
modelType: string;
|
1271
1267
|
};
|
1272
1268
|
}
|
1273
1269
|
|
1274
1270
|
declare class NoSuchProviderError extends Error {
|
1275
1271
|
readonly providerId: string;
|
1276
|
-
|
1272
|
+
readonly availableProviders: string[];
|
1273
|
+
constructor({ providerId, availableProviders, message, }: {
|
1277
1274
|
providerId: string;
|
1275
|
+
availableProviders: string[];
|
1278
1276
|
message?: string;
|
1279
1277
|
});
|
1280
1278
|
static isNoSuchProviderError(error: unknown): error is NoSuchProviderError;
|
@@ -1283,23 +1281,65 @@ declare class NoSuchProviderError extends Error {
|
|
1283
1281
|
message: string;
|
1284
1282
|
stack: string | undefined;
|
1285
1283
|
providerId: string;
|
1284
|
+
availableProviders: string[];
|
1286
1285
|
};
|
1287
1286
|
}
|
1288
1287
|
|
1289
|
-
|
1290
|
-
|
1291
|
-
|
1292
|
-
|
1293
|
-
|
1294
|
-
|
1295
|
-
|
1296
|
-
|
1297
|
-
|
1298
|
-
|
1299
|
-
|
1300
|
-
|
1301
|
-
|
1288
|
+
/**
|
1289
|
+
Registry for managing models. It enables getting a model with a string id.
|
1290
|
+
*/
|
1291
|
+
type experimental_ProviderRegistry = {
|
1292
|
+
/**
|
1293
|
+
Returns the language model with the given id in the format `providerId:modelId`.
|
1294
|
+
The model id is then passed to the provider function to get the model.
|
1295
|
+
|
1296
|
+
@param {string} id - The id of the model to return.
|
1297
|
+
|
1298
|
+
@throws {NoSuchModelError} If no model with the given id exists.
|
1299
|
+
@throws {NoSuchProviderError} If no provider with the given id exists.
|
1300
|
+
|
1301
|
+
@returns {LanguageModel} The language model associated with the id.
|
1302
|
+
*/
|
1303
|
+
languageModel(id: string): LanguageModel;
|
1304
|
+
/**
|
1305
|
+
Returns the text embedding model with the given id in the format `providerId:modelId`.
|
1306
|
+
The model id is then passed to the provider function to get the model.
|
1307
|
+
|
1308
|
+
@param {string} id - The id of the model to return.
|
1309
|
+
|
1310
|
+
@throws {NoSuchModelError} If no model with the given id exists.
|
1311
|
+
@throws {NoSuchProviderError} If no provider with the given id exists.
|
1312
|
+
|
1313
|
+
@returns {LanguageModel} The language model associated with the id.
|
1314
|
+
*/
|
1315
|
+
textEmbeddingModel(id: string): EmbeddingModel<string>;
|
1316
|
+
};
|
1317
|
+
/**
|
1318
|
+
* @deprecated Use `experimental_ProviderRegistry` instead.
|
1319
|
+
*/
|
1320
|
+
type experimental_ModelRegistry = experimental_ProviderRegistry;
|
1321
|
+
/**
|
1322
|
+
* Provider for language and text embedding models. Compatible with the
|
1323
|
+
* provider registry.
|
1324
|
+
*/
|
1325
|
+
interface Provider {
|
1326
|
+
/**
|
1327
|
+
* Returns a language model with the given id.
|
1328
|
+
*/
|
1329
|
+
languageModel?: (modelId: string) => LanguageModel;
|
1330
|
+
/**
|
1331
|
+
* Returns a text embedding model with the given id.
|
1332
|
+
*/
|
1333
|
+
textEmbedding?: (modelId: string) => EmbeddingModel<string>;
|
1302
1334
|
}
|
1335
|
+
/**
|
1336
|
+
* Creates a registry for the given providers.
|
1337
|
+
*/
|
1338
|
+
declare function experimental_createProviderRegistry(providers: Record<string, Provider>): experimental_ProviderRegistry;
|
1339
|
+
/**
|
1340
|
+
* @deprecated Use `experimental_createProviderRegistry` instead.
|
1341
|
+
*/
|
1342
|
+
declare const experimental_createModelRegistry: typeof experimental_createProviderRegistry;
|
1303
1343
|
|
1304
1344
|
/**
|
1305
1345
|
* Calculates the cosine similarity between two vectors. This is a useful metric for
|
@@ -2041,4 +2081,4 @@ declare const generateId: (size?: number | undefined) => string;
|
|
2041
2081
|
*/
|
2042
2082
|
declare const nanoid: (size?: number | undefined) => string;
|
2043
2083
|
|
2044
|
-
export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantResponse, CallWarning, CohereStream, CompletionUsage, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolChoice, CoreToolMessage, CoreUserMessage, DataContent, DeepPartial, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, FinishReason, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, InvalidMessageRoleError, InvalidModelIdError, langchainAdapter as LangChainAdapter, LangChainStream, LanguageModel, LogProbs, MistralStream, NoSuchModelError, NoSuchProviderError, ObjectStreamInputPart, ObjectStreamPart, OpenAIStream, OpenAIStreamCallbacks, ReplicateStream, StreamData, StreamObjectResult, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, TokenUsage, ToolCallPart, ToolCallPayload, ToolContent, ToolResultPart, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, convertToCoreMessages, cosineSimilarity, createCallbacksTransformer, createEventStreamTransformer, createStreamDataTransformer, embed, embedMany, experimental_AssistantResponse, experimental_ModelRegistry, experimental_StreamData, experimental_createModelRegistry, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, generateObject, generateText, nanoid, readableFromAsyncIterable, streamObject, streamText, streamToResponse, tool, trimStartOfStreamHelper };
|
2084
|
+
export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantResponse, CallWarning, CohereStream, CompletionUsage, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolChoice, CoreToolMessage, CoreUserMessage, DataContent, DeepPartial, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, FinishReason, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, InvalidMessageRoleError, InvalidModelIdError, langchainAdapter as LangChainAdapter, LangChainStream, LanguageModel, LogProbs, MistralStream, NoSuchModelError, NoSuchProviderError, ObjectStreamInputPart, ObjectStreamPart, OpenAIStream, OpenAIStreamCallbacks, ReplicateStream, StreamData, StreamObjectResult, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, TokenUsage, ToolCallPart, ToolCallPayload, ToolContent, ToolResultPart, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, convertToCoreMessages, cosineSimilarity, createCallbacksTransformer, createEventStreamTransformer, createStreamDataTransformer, embed, embedMany, experimental_AssistantResponse, experimental_ModelRegistry, experimental_ProviderRegistry, experimental_StreamData, experimental_createModelRegistry, experimental_createProviderRegistry, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, generateObject, generateText, nanoid, readableFromAsyncIterable, streamObject, streamText, streamToResponse, tool, trimStartOfStreamHelper };
|
package/dist/index.js
CHANGED
@@ -87,6 +87,7 @@ __export(streams_exports, {
|
|
87
87
|
experimental_AssistantResponse: () => experimental_AssistantResponse,
|
88
88
|
experimental_StreamData: () => experimental_StreamData,
|
89
89
|
experimental_createModelRegistry: () => experimental_createModelRegistry,
|
90
|
+
experimental_createProviderRegistry: () => experimental_createProviderRegistry,
|
90
91
|
experimental_generateObject: () => experimental_generateObject,
|
91
92
|
experimental_generateText: () => experimental_generateText,
|
92
93
|
experimental_streamObject: () => experimental_streamObject,
|
@@ -2158,21 +2159,24 @@ var InvalidModelIdError = class extends Error {
|
|
2158
2159
|
var NoSuchModelError = class extends Error {
|
2159
2160
|
constructor({
|
2160
2161
|
modelId,
|
2161
|
-
|
2162
|
+
modelType,
|
2163
|
+
message = `No such ${modelType}: ${modelId}`
|
2162
2164
|
}) {
|
2163
2165
|
super(message);
|
2164
2166
|
this.name = "AI_NoSuchModelError";
|
2165
2167
|
this.modelId = modelId;
|
2168
|
+
this.modelType = modelType;
|
2166
2169
|
}
|
2167
2170
|
static isNoSuchModelError(error) {
|
2168
|
-
return error instanceof Error && error.name === "AI_NoSuchModelError" && typeof error.modelId === "string";
|
2171
|
+
return error instanceof Error && error.name === "AI_NoSuchModelError" && typeof error.modelId === "string" && typeof error.modelType === "string";
|
2169
2172
|
}
|
2170
2173
|
toJSON() {
|
2171
2174
|
return {
|
2172
2175
|
name: this.name,
|
2173
2176
|
message: this.message,
|
2174
2177
|
stack: this.stack,
|
2175
|
-
modelId: this.modelId
|
2178
|
+
modelId: this.modelId,
|
2179
|
+
modelType: this.modelType
|
2176
2180
|
};
|
2177
2181
|
}
|
2178
2182
|
};
|
@@ -2181,75 +2185,78 @@ var NoSuchModelError = class extends Error {
|
|
2181
2185
|
var NoSuchProviderError = class extends Error {
|
2182
2186
|
constructor({
|
2183
2187
|
providerId,
|
2184
|
-
|
2188
|
+
availableProviders,
|
2189
|
+
message = `No such provider: ${providerId} (available providers: ${availableProviders.join()})`
|
2185
2190
|
}) {
|
2186
2191
|
super(message);
|
2187
2192
|
this.name = "AI_NoSuchProviderError";
|
2188
2193
|
this.providerId = providerId;
|
2194
|
+
this.availableProviders = availableProviders;
|
2189
2195
|
}
|
2190
2196
|
static isNoSuchProviderError(error) {
|
2191
|
-
return error instanceof Error && error.name === "AI_NoSuchProviderError" && typeof error.providerId === "string";
|
2197
|
+
return error instanceof Error && error.name === "AI_NoSuchProviderError" && typeof error.providerId === "string" && Array.isArray(error.availableProviders);
|
2192
2198
|
}
|
2193
2199
|
toJSON() {
|
2194
2200
|
return {
|
2195
2201
|
name: this.name,
|
2196
2202
|
message: this.message,
|
2197
2203
|
stack: this.stack,
|
2198
|
-
providerId: this.providerId
|
2204
|
+
providerId: this.providerId,
|
2205
|
+
availableProviders: this.availableProviders
|
2199
2206
|
};
|
2200
2207
|
}
|
2201
2208
|
};
|
2202
2209
|
|
2203
|
-
// core/registry/
|
2204
|
-
function
|
2205
|
-
const registry = new
|
2210
|
+
// core/registry/provider-registry.ts
|
2211
|
+
function experimental_createProviderRegistry(providers) {
|
2212
|
+
const registry = new DefaultProviderRegistry();
|
2206
2213
|
for (const [id, provider] of Object.entries(providers)) {
|
2207
|
-
registry.
|
2214
|
+
registry.registerProvider({ id, provider });
|
2208
2215
|
}
|
2209
2216
|
return registry;
|
2210
2217
|
}
|
2211
|
-
var
|
2218
|
+
var experimental_createModelRegistry = experimental_createProviderRegistry;
|
2219
|
+
var DefaultProviderRegistry = class {
|
2212
2220
|
constructor() {
|
2213
|
-
// Mapping of provider id to provider
|
2214
2221
|
this.providers = {};
|
2215
2222
|
}
|
2216
|
-
|
2217
|
-
Registers a language model provider with a given id.
|
2218
|
-
|
2219
|
-
@param {string} id - The id of the provider.
|
2220
|
-
@param {(id: string) => LanguageModel} provider - The provider function to register.
|
2221
|
-
*/
|
2222
|
-
registerLanguageModelProvider({
|
2223
|
-
id,
|
2224
|
-
provider
|
2225
|
-
}) {
|
2223
|
+
registerProvider({ id, provider }) {
|
2226
2224
|
this.providers[id] = provider;
|
2227
2225
|
}
|
2228
|
-
|
2229
|
-
|
2230
|
-
|
2231
|
-
|
2232
|
-
|
2233
|
-
|
2234
|
-
|
2235
|
-
|
2236
|
-
|
2237
|
-
|
2238
|
-
|
2239
|
-
@returns {LanguageModel} The language model associated with the id.
|
2240
|
-
*/
|
2241
|
-
languageModel(id) {
|
2226
|
+
getProvider(id) {
|
2227
|
+
const provider = this.providers[id];
|
2228
|
+
if (provider == null) {
|
2229
|
+
throw new NoSuchProviderError({
|
2230
|
+
providerId: id,
|
2231
|
+
availableProviders: Object.keys(this.providers)
|
2232
|
+
});
|
2233
|
+
}
|
2234
|
+
return provider;
|
2235
|
+
}
|
2236
|
+
splitId(id) {
|
2242
2237
|
if (!id.includes(":")) {
|
2243
2238
|
throw new InvalidModelIdError({ id });
|
2244
2239
|
}
|
2245
|
-
|
2246
|
-
|
2247
|
-
|
2248
|
-
|
2240
|
+
return id.split(":");
|
2241
|
+
}
|
2242
|
+
languageModel(id) {
|
2243
|
+
var _a, _b;
|
2244
|
+
const [providerId, modelId] = this.splitId(id);
|
2245
|
+
const model = (_b = (_a = this.getProvider(providerId)).languageModel) == null ? void 0 : _b.call(_a, modelId);
|
2246
|
+
if (model == null) {
|
2247
|
+
throw new NoSuchModelError({ modelId: id, modelType: "language model" });
|
2249
2248
|
}
|
2250
|
-
|
2251
|
-
|
2252
|
-
|
2249
|
+
return model;
|
2250
|
+
}
|
2251
|
+
textEmbeddingModel(id) {
|
2252
|
+
var _a, _b;
|
2253
|
+
const [providerId, modelId] = this.splitId(id);
|
2254
|
+
const model = (_b = (_a = this.getProvider(providerId)).textEmbedding) == null ? void 0 : _b.call(_a, modelId);
|
2255
|
+
if (model == null) {
|
2256
|
+
throw new NoSuchModelError({
|
2257
|
+
modelId: id,
|
2258
|
+
modelType: "text embedding model"
|
2259
|
+
});
|
2253
2260
|
}
|
2254
2261
|
return model;
|
2255
2262
|
}
|
@@ -3434,6 +3441,7 @@ var nanoid = import_provider_utils7.generateId;
|
|
3434
3441
|
experimental_AssistantResponse,
|
3435
3442
|
experimental_StreamData,
|
3436
3443
|
experimental_createModelRegistry,
|
3444
|
+
experimental_createProviderRegistry,
|
3437
3445
|
experimental_generateObject,
|
3438
3446
|
experimental_generateText,
|
3439
3447
|
experimental_streamObject,
|