ai 4.3.0 → 4.3.1
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 +6 -0
- package/dist/index.d.mts +10 -2
- package/dist/index.d.ts +10 -2
- package/dist/index.js +38 -13
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +38 -13
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
package/dist/index.d.mts
CHANGED
@@ -2806,6 +2806,14 @@ type TextStreamPart<TOOLS extends ToolSet> = {
|
|
2806
2806
|
error: unknown;
|
2807
2807
|
};
|
2808
2808
|
|
2809
|
+
/**
|
2810
|
+
* Detects the first chunk in a buffer.
|
2811
|
+
*
|
2812
|
+
* @param buffer - The buffer to detect the first chunk in.
|
2813
|
+
*
|
2814
|
+
* @returns The first detected chunk, or `undefined` if no chunk was detected.
|
2815
|
+
*/
|
2816
|
+
type ChunkDetector = (buffer: string) => string | undefined | null;
|
2809
2817
|
/**
|
2810
2818
|
* Smooths text streaming output.
|
2811
2819
|
*
|
@@ -2816,7 +2824,7 @@ type TextStreamPart<TOOLS extends ToolSet> = {
|
|
2816
2824
|
*/
|
2817
2825
|
declare function smoothStream<TOOLS extends ToolSet>({ delayInMs, chunking, _internal: { delay }, }?: {
|
2818
2826
|
delayInMs?: number | null;
|
2819
|
-
chunking?: 'word' | 'line' | RegExp;
|
2827
|
+
chunking?: 'word' | 'line' | RegExp | ChunkDetector;
|
2820
2828
|
/**
|
2821
2829
|
* Internal. For test use only. May change without notice.
|
2822
2830
|
*/
|
@@ -4382,4 +4390,4 @@ declare namespace llamaindexAdapter {
|
|
4382
4390
|
};
|
4383
4391
|
}
|
4384
4392
|
|
4385
|
-
export { AssistantContent, AssistantResponse, CallWarning, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolCallUnion, CoreToolChoice, CoreToolMessage, CoreToolResultUnion, CoreUserMessage, DataContent, DataStreamOptions, DataStreamWriter, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, Experimental_LanguageModelV1Middleware, FilePart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedFile, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelResponseMetadata, ImagePart, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolArgumentsError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, langchainAdapter as LangChainAdapter, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, LanguageModelV1Middleware, llamaindexAdapter as LlamaIndexAdapter, LogProbs, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, Provider, ProviderMetadata, ProviderRegistryProvider, RepairTextFunction, RetryError, StepResult, StreamData, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextPart, TextStreamPart, Tool, ToolCallPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolContent, ToolExecutionError, ToolExecutionOptions, ToolResultPart, ToolResultUnion, ToolSet, UserContent, appendClientMessage, appendResponseMessages, convertToCoreMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createDataStream, createDataStreamResponse, createProviderRegistry, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, experimental_wrapLanguageModel, extractReasoningMiddleware, generateObject, generateText, pipeDataStreamToResponse, simulateReadableStream, simulateStreamingMiddleware, smoothStream, streamObject, streamText, tool, wrapLanguageModel };
|
4393
|
+
export { AssistantContent, AssistantResponse, CallWarning, ChunkDetector, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolCallUnion, CoreToolChoice, CoreToolMessage, CoreToolResultUnion, CoreUserMessage, DataContent, DataStreamOptions, DataStreamWriter, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, Experimental_LanguageModelV1Middleware, FilePart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedFile, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelResponseMetadata, ImagePart, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolArgumentsError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, langchainAdapter as LangChainAdapter, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, LanguageModelV1Middleware, llamaindexAdapter as LlamaIndexAdapter, LogProbs, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, Provider, ProviderMetadata, ProviderRegistryProvider, RepairTextFunction, RetryError, StepResult, StreamData, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextPart, TextStreamPart, Tool, ToolCallPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolContent, ToolExecutionError, ToolExecutionOptions, ToolResultPart, ToolResultUnion, ToolSet, UserContent, appendClientMessage, appendResponseMessages, convertToCoreMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createDataStream, createDataStreamResponse, createProviderRegistry, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, experimental_wrapLanguageModel, extractReasoningMiddleware, generateObject, generateText, pipeDataStreamToResponse, simulateReadableStream, simulateStreamingMiddleware, smoothStream, streamObject, streamText, tool, wrapLanguageModel };
|
package/dist/index.d.ts
CHANGED
@@ -2806,6 +2806,14 @@ type TextStreamPart<TOOLS extends ToolSet> = {
|
|
2806
2806
|
error: unknown;
|
2807
2807
|
};
|
2808
2808
|
|
2809
|
+
/**
|
2810
|
+
* Detects the first chunk in a buffer.
|
2811
|
+
*
|
2812
|
+
* @param buffer - The buffer to detect the first chunk in.
|
2813
|
+
*
|
2814
|
+
* @returns The first detected chunk, or `undefined` if no chunk was detected.
|
2815
|
+
*/
|
2816
|
+
type ChunkDetector = (buffer: string) => string | undefined | null;
|
2809
2817
|
/**
|
2810
2818
|
* Smooths text streaming output.
|
2811
2819
|
*
|
@@ -2816,7 +2824,7 @@ type TextStreamPart<TOOLS extends ToolSet> = {
|
|
2816
2824
|
*/
|
2817
2825
|
declare function smoothStream<TOOLS extends ToolSet>({ delayInMs, chunking, _internal: { delay }, }?: {
|
2818
2826
|
delayInMs?: number | null;
|
2819
|
-
chunking?: 'word' | 'line' | RegExp;
|
2827
|
+
chunking?: 'word' | 'line' | RegExp | ChunkDetector;
|
2820
2828
|
/**
|
2821
2829
|
* Internal. For test use only. May change without notice.
|
2822
2830
|
*/
|
@@ -4382,4 +4390,4 @@ declare namespace llamaindexAdapter {
|
|
4382
4390
|
};
|
4383
4391
|
}
|
4384
4392
|
|
4385
|
-
export { AssistantContent, AssistantResponse, CallWarning, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolCallUnion, CoreToolChoice, CoreToolMessage, CoreToolResultUnion, CoreUserMessage, DataContent, DataStreamOptions, DataStreamWriter, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, Experimental_LanguageModelV1Middleware, FilePart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedFile, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelResponseMetadata, ImagePart, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolArgumentsError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, langchainAdapter as LangChainAdapter, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, LanguageModelV1Middleware, llamaindexAdapter as LlamaIndexAdapter, LogProbs, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, Provider, ProviderMetadata, ProviderRegistryProvider, RepairTextFunction, RetryError, StepResult, StreamData, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextPart, TextStreamPart, Tool, ToolCallPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolContent, ToolExecutionError, ToolExecutionOptions, ToolResultPart, ToolResultUnion, ToolSet, UserContent, appendClientMessage, appendResponseMessages, convertToCoreMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createDataStream, createDataStreamResponse, createProviderRegistry, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, experimental_wrapLanguageModel, extractReasoningMiddleware, generateObject, generateText, pipeDataStreamToResponse, simulateReadableStream, simulateStreamingMiddleware, smoothStream, streamObject, streamText, tool, wrapLanguageModel };
|
4393
|
+
export { AssistantContent, AssistantResponse, CallWarning, ChunkDetector, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreTool, CoreToolCallUnion, CoreToolChoice, CoreToolMessage, CoreToolResultUnion, CoreUserMessage, DataContent, DataStreamOptions, DataStreamWriter, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, Experimental_LanguageModelV1Middleware, FilePart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedFile, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelResponseMetadata, ImagePart, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolArgumentsError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, langchainAdapter as LangChainAdapter, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, LanguageModelV1Middleware, llamaindexAdapter as LlamaIndexAdapter, LogProbs, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, Provider, ProviderMetadata, ProviderRegistryProvider, RepairTextFunction, RetryError, StepResult, StreamData, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextPart, TextStreamPart, Tool, ToolCallPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolContent, ToolExecutionError, ToolExecutionOptions, ToolResultPart, ToolResultUnion, ToolSet, UserContent, appendClientMessage, appendResponseMessages, convertToCoreMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createDataStream, createDataStreamResponse, createProviderRegistry, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, experimental_wrapLanguageModel, extractReasoningMiddleware, generateObject, generateText, pipeDataStreamToResponse, simulateReadableStream, simulateStreamingMiddleware, smoothStream, streamObject, streamText, tool, wrapLanguageModel };
|
package/dist/index.js
CHANGED
@@ -4676,23 +4676,49 @@ var object = ({
|
|
4676
4676
|
};
|
4677
4677
|
|
4678
4678
|
// core/generate-text/smooth-stream.ts
|
4679
|
-
var import_provider21 = require("@ai-sdk/provider");
|
4680
4679
|
var import_provider_utils11 = require("@ai-sdk/provider-utils");
|
4680
|
+
var import_provider21 = require("@ai-sdk/provider");
|
4681
4681
|
var CHUNKING_REGEXPS = {
|
4682
|
-
word: /\
|
4683
|
-
line:
|
4682
|
+
word: /\S+\s+/m,
|
4683
|
+
line: /\n+/m
|
4684
4684
|
};
|
4685
4685
|
function smoothStream({
|
4686
4686
|
delayInMs = 10,
|
4687
4687
|
chunking = "word",
|
4688
4688
|
_internal: { delay: delay2 = import_provider_utils11.delay } = {}
|
4689
4689
|
} = {}) {
|
4690
|
-
|
4691
|
-
if (
|
4692
|
-
|
4693
|
-
|
4694
|
-
|
4695
|
-
|
4690
|
+
let detectChunk;
|
4691
|
+
if (typeof chunking === "function") {
|
4692
|
+
detectChunk = (buffer) => {
|
4693
|
+
const match = chunking(buffer);
|
4694
|
+
if (match == null) {
|
4695
|
+
return null;
|
4696
|
+
}
|
4697
|
+
if (!match.length) {
|
4698
|
+
throw new Error(`Chunking function must return a non-empty string.`);
|
4699
|
+
}
|
4700
|
+
if (!buffer.startsWith(match)) {
|
4701
|
+
throw new Error(
|
4702
|
+
`Chunking function must return a match that is a prefix of the buffer. Received: "${match}" expected to start with "${buffer}"`
|
4703
|
+
);
|
4704
|
+
}
|
4705
|
+
return match;
|
4706
|
+
};
|
4707
|
+
} else {
|
4708
|
+
const chunkingRegex = typeof chunking === "string" ? CHUNKING_REGEXPS[chunking] : chunking;
|
4709
|
+
if (chunkingRegex == null) {
|
4710
|
+
throw new import_provider21.InvalidArgumentError({
|
4711
|
+
argument: "chunking",
|
4712
|
+
message: `Chunking must be "word" or "line" or a RegExp. Received: ${chunking}`
|
4713
|
+
});
|
4714
|
+
}
|
4715
|
+
detectChunk = (buffer) => {
|
4716
|
+
const match = chunkingRegex.exec(buffer);
|
4717
|
+
if (!match) {
|
4718
|
+
return null;
|
4719
|
+
}
|
4720
|
+
return buffer.slice(0, match.index) + (match == null ? void 0 : match[0]);
|
4721
|
+
};
|
4696
4722
|
}
|
4697
4723
|
return () => {
|
4698
4724
|
let buffer = "";
|
@@ -4708,10 +4734,9 @@ function smoothStream({
|
|
4708
4734
|
}
|
4709
4735
|
buffer += chunk.textDelta;
|
4710
4736
|
let match;
|
4711
|
-
while ((match =
|
4712
|
-
|
4713
|
-
|
4714
|
-
buffer = buffer.slice(chunk2.length);
|
4737
|
+
while ((match = detectChunk(buffer)) != null) {
|
4738
|
+
controller.enqueue({ type: "text-delta", textDelta: match });
|
4739
|
+
buffer = buffer.slice(match.length);
|
4715
4740
|
await delay2(delayInMs);
|
4716
4741
|
}
|
4717
4742
|
}
|