ai 3.0.21 → 3.0.23

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.
Files changed (57) hide show
  1. package/dist/index.d.mts +42 -1
  2. package/dist/index.d.ts +42 -1
  3. package/dist/index.js +104 -177
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +65 -138
  6. package/dist/index.mjs.map +1 -1
  7. package/package.json +4 -33
  8. package/react/dist/index.d.mts +6 -2
  9. package/react/dist/index.d.ts +6 -2
  10. package/react/dist/index.js +107 -24
  11. package/react/dist/index.js.map +1 -1
  12. package/react/dist/index.mjs +107 -24
  13. package/react/dist/index.mjs.map +1 -1
  14. package/rsc/dist/rsc-server.mjs +3 -3
  15. package/rsc/dist/rsc-server.mjs.map +1 -1
  16. package/solid/dist/index.d.mts +6 -2
  17. package/solid/dist/index.d.ts +6 -2
  18. package/solid/dist/index.js +105 -23
  19. package/solid/dist/index.js.map +1 -1
  20. package/solid/dist/index.mjs +105 -23
  21. package/solid/dist/index.mjs.map +1 -1
  22. package/svelte/dist/index.d.mts +6 -2
  23. package/svelte/dist/index.d.ts +6 -2
  24. package/svelte/dist/index.js +107 -24
  25. package/svelte/dist/index.js.map +1 -1
  26. package/svelte/dist/index.mjs +107 -24
  27. package/svelte/dist/index.mjs.map +1 -1
  28. package/vue/dist/index.d.mts +6 -2
  29. package/vue/dist/index.d.ts +6 -2
  30. package/vue/dist/index.js +105 -23
  31. package/vue/dist/index.js.map +1 -1
  32. package/vue/dist/index.mjs +105 -23
  33. package/vue/dist/index.mjs.map +1 -1
  34. package/anthropic/dist/index.d.mts +0 -51
  35. package/anthropic/dist/index.d.ts +0 -51
  36. package/anthropic/dist/index.js +0 -792
  37. package/anthropic/dist/index.js.map +0 -1
  38. package/anthropic/dist/index.mjs +0 -760
  39. package/anthropic/dist/index.mjs.map +0 -1
  40. package/google/dist/index.d.mts +0 -47
  41. package/google/dist/index.d.ts +0 -47
  42. package/google/dist/index.js +0 -796
  43. package/google/dist/index.js.map +0 -1
  44. package/google/dist/index.mjs +0 -764
  45. package/google/dist/index.mjs.map +0 -1
  46. package/mistral/dist/index.d.mts +0 -52
  47. package/mistral/dist/index.d.ts +0 -52
  48. package/mistral/dist/index.js +0 -763
  49. package/mistral/dist/index.js.map +0 -1
  50. package/mistral/dist/index.mjs +0 -731
  51. package/mistral/dist/index.mjs.map +0 -1
  52. package/openai/dist/index.d.mts +0 -116
  53. package/openai/dist/index.d.ts +0 -116
  54. package/openai/dist/index.js +0 -1143
  55. package/openai/dist/index.js.map +0 -1
  56. package/openai/dist/index.mjs +0 -1115
  57. package/openai/dist/index.mjs.map +0 -1
package/dist/index.d.mts CHANGED
@@ -895,6 +895,8 @@ type UseChatOptions = {
895
895
  * handle the extra fields before forwarding the request to the AI service.
896
896
  */
897
897
  sendExtraMessageFields?: boolean;
898
+ /** Stream mode (default to "stream-data") */
899
+ streamMode?: 'stream-data' | 'text';
898
900
  };
899
901
  type UseCompletionOptions = {
900
902
  /**
@@ -951,6 +953,8 @@ type UseCompletionOptions = {
951
953
  * ```
952
954
  */
953
955
  body?: object;
956
+ /** Stream mode (default to "stream-data") */
957
+ streamMode?: 'stream-data' | 'text';
954
958
  };
955
959
  type JSONValue = null | string | number | boolean | {
956
960
  [x: string]: JSONValue;
@@ -995,6 +999,13 @@ declare const toolCallStreamPart: StreamPart<'7', 'tool_calls', {
995
999
  tool_calls: ToolCall[];
996
1000
  }>;
997
1001
  declare const messageAnnotationsStreamPart: StreamPart<'8', 'message_annotations', Array<JSONValue>>;
1002
+ type StreamParts = typeof textStreamPart | typeof functionCallStreamPart | typeof dataStreamPart | typeof errorStreamPart | typeof assistantMessageStreamPart | typeof assistantControlDataStreamPart | typeof dataMessageStreamPart | typeof toolCallStreamPart | typeof messageAnnotationsStreamPart;
1003
+ /**
1004
+ * Maps the type of a stream part to its value type.
1005
+ */
1006
+ type StreamPartValueType = {
1007
+ [P in StreamParts as P['name']]: ReturnType<P['parse']>['value'];
1008
+ };
998
1009
  type StreamPartType = ReturnType<typeof textStreamPart.parse> | ReturnType<typeof functionCallStreamPart.parse> | ReturnType<typeof dataStreamPart.parse> | ReturnType<typeof errorStreamPart.parse> | ReturnType<typeof assistantMessageStreamPart.parse> | ReturnType<typeof assistantControlDataStreamPart.parse> | ReturnType<typeof dataMessageStreamPart.parse> | ReturnType<typeof toolCallStreamPart.parse> | ReturnType<typeof messageAnnotationsStreamPart.parse>;
999
1010
  /**
1000
1011
  * The map of prefixes for data in the stream
@@ -1029,12 +1040,42 @@ declare const StreamStringPrefixes: {
1029
1040
  readonly tool_calls: "7";
1030
1041
  readonly message_annotations: "8";
1031
1042
  };
1043
+ /**
1044
+ Parses a stream part from a string.
1045
+
1046
+ @param line The string to parse.
1047
+ @returns The parsed stream part.
1048
+ @throws An error if the string cannot be parsed.
1049
+ */
1050
+ declare const parseStreamPart: (line: string) => StreamPartType;
1051
+ /**
1052
+ Prepends a string with a prefix from the `StreamChunkPrefixes`, JSON-ifies it,
1053
+ and appends a new line.
1054
+
1055
+ It ensures type-safety for the part type and value.
1056
+ */
1057
+ declare function formatStreamPart<T extends keyof StreamPartValueType>(type: T, value: StreamPartValueType[T]): StreamString;
1032
1058
 
1033
1059
  /**
1034
1060
  * Generates a 7-character random string to use for IDs. Not secure.
1035
1061
  */
1036
1062
  declare const generateId: (size?: number | undefined) => string;
1037
1063
 
1064
+ /**
1065
+ Converts a ReadableStreamDefaultReader into an async generator that yields
1066
+ StreamPart objects.
1067
+
1068
+ @param reader
1069
+ Reader for the stream to read from.
1070
+ @param isAborted
1071
+ Optional function that returns true if the request has been aborted.
1072
+ If the function returns true, the generator will stop reading the stream.
1073
+ If the function is not provided, the generator will not stop reading the stream.
1074
+ */
1075
+ declare function readDataStream(reader: ReadableStreamDefaultReader<Uint8Array>, { isAborted, }?: {
1076
+ isAborted?: () => boolean;
1077
+ }): AsyncGenerator<StreamPartType>;
1078
+
1038
1079
  declare function createChunkDecoder(): (chunk: Uint8Array | undefined) => string;
1039
1080
  declare function createChunkDecoder(complex: false): (chunk: Uint8Array | undefined) => string;
1040
1081
  declare function createChunkDecoder(complex: true): (chunk: Uint8Array | undefined) => StreamPartType[];
@@ -1726,4 +1767,4 @@ declare function streamToResponse(res: ReadableStream, response: ServerResponse,
1726
1767
  status?: number;
1727
1768
  }): void;
1728
1769
 
1729
- export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantMessage, AssistantResponse, ChatRequest, ChatRequestOptions, CohereStream, CompletionUsage, CreateMessage, DataContent, DataMessage, DeepPartial, ErrorStreamPart, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, Function, FunctionCall, FunctionCallHandler, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, IdGenerator, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, JSONValue, LangChainStream, Message$1 as Message, MistralStream, OpenAIStream, OpenAIStreamCallbacks, ReactResponseRow, ReplicateStream, RequestOptions, StreamData, StreamObjectResult, StreamString, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, Tool, ToolCall, ToolCallHandler, ToolCallPart, ToolCallPayload, ToolChoice, ToolContent, ToolResultPart, UseChatOptions, UseCompletionOptions, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, createCallbacksTransformer, createChunkDecoder, createEventStreamTransformer, createStreamDataTransformer, experimental_AssistantResponse, experimental_StreamData, experimental_StreamingReactResponse, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, isStreamStringEqualToType, generateId as nanoid, readableFromAsyncIterable, streamToResponse, tool, trimStartOfStreamHelper };
1770
+ export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantMessage, AssistantResponse, ChatRequest, ChatRequestOptions, CohereStream, CompletionUsage, CreateMessage, DataContent, DataMessage, DeepPartial, ErrorStreamPart, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, Function, FunctionCall, FunctionCallHandler, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, IdGenerator, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, JSONValue, LangChainStream, Message$1 as Message, MistralStream, OpenAIStream, OpenAIStreamCallbacks, ReactResponseRow, ReplicateStream, RequestOptions, StreamData, StreamObjectResult, StreamPart, StreamString, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, Tool, ToolCall, ToolCallHandler, ToolCallPart, ToolCallPayload, ToolChoice, ToolContent, ToolResultPart, UseChatOptions, UseCompletionOptions, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, createCallbacksTransformer, createChunkDecoder, createEventStreamTransformer, createStreamDataTransformer, experimental_AssistantResponse, experimental_StreamData, experimental_StreamingReactResponse, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, formatStreamPart, generateId, isStreamStringEqualToType, generateId as nanoid, parseStreamPart, readDataStream, readableFromAsyncIterable, streamToResponse, tool, trimStartOfStreamHelper };
package/dist/index.d.ts CHANGED
@@ -895,6 +895,8 @@ type UseChatOptions = {
895
895
  * handle the extra fields before forwarding the request to the AI service.
896
896
  */
897
897
  sendExtraMessageFields?: boolean;
898
+ /** Stream mode (default to "stream-data") */
899
+ streamMode?: 'stream-data' | 'text';
898
900
  };
899
901
  type UseCompletionOptions = {
900
902
  /**
@@ -951,6 +953,8 @@ type UseCompletionOptions = {
951
953
  * ```
952
954
  */
953
955
  body?: object;
956
+ /** Stream mode (default to "stream-data") */
957
+ streamMode?: 'stream-data' | 'text';
954
958
  };
955
959
  type JSONValue = null | string | number | boolean | {
956
960
  [x: string]: JSONValue;
@@ -995,6 +999,13 @@ declare const toolCallStreamPart: StreamPart<'7', 'tool_calls', {
995
999
  tool_calls: ToolCall[];
996
1000
  }>;
997
1001
  declare const messageAnnotationsStreamPart: StreamPart<'8', 'message_annotations', Array<JSONValue>>;
1002
+ type StreamParts = typeof textStreamPart | typeof functionCallStreamPart | typeof dataStreamPart | typeof errorStreamPart | typeof assistantMessageStreamPart | typeof assistantControlDataStreamPart | typeof dataMessageStreamPart | typeof toolCallStreamPart | typeof messageAnnotationsStreamPart;
1003
+ /**
1004
+ * Maps the type of a stream part to its value type.
1005
+ */
1006
+ type StreamPartValueType = {
1007
+ [P in StreamParts as P['name']]: ReturnType<P['parse']>['value'];
1008
+ };
998
1009
  type StreamPartType = ReturnType<typeof textStreamPart.parse> | ReturnType<typeof functionCallStreamPart.parse> | ReturnType<typeof dataStreamPart.parse> | ReturnType<typeof errorStreamPart.parse> | ReturnType<typeof assistantMessageStreamPart.parse> | ReturnType<typeof assistantControlDataStreamPart.parse> | ReturnType<typeof dataMessageStreamPart.parse> | ReturnType<typeof toolCallStreamPart.parse> | ReturnType<typeof messageAnnotationsStreamPart.parse>;
999
1010
  /**
1000
1011
  * The map of prefixes for data in the stream
@@ -1029,12 +1040,42 @@ declare const StreamStringPrefixes: {
1029
1040
  readonly tool_calls: "7";
1030
1041
  readonly message_annotations: "8";
1031
1042
  };
1043
+ /**
1044
+ Parses a stream part from a string.
1045
+
1046
+ @param line The string to parse.
1047
+ @returns The parsed stream part.
1048
+ @throws An error if the string cannot be parsed.
1049
+ */
1050
+ declare const parseStreamPart: (line: string) => StreamPartType;
1051
+ /**
1052
+ Prepends a string with a prefix from the `StreamChunkPrefixes`, JSON-ifies it,
1053
+ and appends a new line.
1054
+
1055
+ It ensures type-safety for the part type and value.
1056
+ */
1057
+ declare function formatStreamPart<T extends keyof StreamPartValueType>(type: T, value: StreamPartValueType[T]): StreamString;
1032
1058
 
1033
1059
  /**
1034
1060
  * Generates a 7-character random string to use for IDs. Not secure.
1035
1061
  */
1036
1062
  declare const generateId: (size?: number | undefined) => string;
1037
1063
 
1064
+ /**
1065
+ Converts a ReadableStreamDefaultReader into an async generator that yields
1066
+ StreamPart objects.
1067
+
1068
+ @param reader
1069
+ Reader for the stream to read from.
1070
+ @param isAborted
1071
+ Optional function that returns true if the request has been aborted.
1072
+ If the function returns true, the generator will stop reading the stream.
1073
+ If the function is not provided, the generator will not stop reading the stream.
1074
+ */
1075
+ declare function readDataStream(reader: ReadableStreamDefaultReader<Uint8Array>, { isAborted, }?: {
1076
+ isAborted?: () => boolean;
1077
+ }): AsyncGenerator<StreamPartType>;
1078
+
1038
1079
  declare function createChunkDecoder(): (chunk: Uint8Array | undefined) => string;
1039
1080
  declare function createChunkDecoder(complex: false): (chunk: Uint8Array | undefined) => string;
1040
1081
  declare function createChunkDecoder(complex: true): (chunk: Uint8Array | undefined) => StreamPartType[];
@@ -1726,4 +1767,4 @@ declare function streamToResponse(res: ReadableStream, response: ServerResponse,
1726
1767
  status?: number;
1727
1768
  }): void;
1728
1769
 
1729
- export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantMessage, AssistantResponse, ChatRequest, ChatRequestOptions, CohereStream, CompletionUsage, CreateMessage, DataContent, DataMessage, DeepPartial, ErrorStreamPart, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, Function, FunctionCall, FunctionCallHandler, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, IdGenerator, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, JSONValue, LangChainStream, Message$1 as Message, MistralStream, OpenAIStream, OpenAIStreamCallbacks, ReactResponseRow, ReplicateStream, RequestOptions, StreamData, StreamObjectResult, StreamString, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, Tool, ToolCall, ToolCallHandler, ToolCallPart, ToolCallPayload, ToolChoice, ToolContent, ToolResultPart, UseChatOptions, UseCompletionOptions, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, createCallbacksTransformer, createChunkDecoder, createEventStreamTransformer, createStreamDataTransformer, experimental_AssistantResponse, experimental_StreamData, experimental_StreamingReactResponse, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, generateId, isStreamStringEqualToType, generateId as nanoid, readableFromAsyncIterable, streamToResponse, tool, trimStartOfStreamHelper };
1770
+ export { AIStream, AIStreamCallbacksAndOptions, AIStreamParser, AIStreamParserOptions, AWSBedrockAnthropicMessagesStream, AWSBedrockAnthropicStream, AWSBedrockCohereStream, AWSBedrockLlama2Stream, AWSBedrockStream, AnthropicStream, AssistantContent, AssistantMessage, AssistantResponse, ChatRequest, ChatRequestOptions, CohereStream, CompletionUsage, CreateMessage, DataContent, DataMessage, DeepPartial, ErrorStreamPart, ExperimentalAssistantMessage, ExperimentalMessage, ExperimentalTool, ExperimentalToolMessage, ExperimentalUserMessage, Function, FunctionCall, FunctionCallHandler, FunctionCallPayload, GenerateObjectResult, GenerateTextResult, GoogleGenerativeAIStream, HuggingFaceStream, IdGenerator, ImagePart, InkeepAIStreamCallbacksAndOptions, InkeepChatResultCallbacks, InkeepOnFinalMetadata, InkeepStream, JSONValue, LangChainStream, Message$1 as Message, MistralStream, OpenAIStream, OpenAIStreamCallbacks, ReactResponseRow, ReplicateStream, RequestOptions, StreamData, StreamObjectResult, StreamPart, StreamString, StreamTextResult, StreamingTextResponse, TextPart$1 as TextPart, TextStreamPart, Tool, ToolCall, ToolCallHandler, ToolCallPart, ToolCallPayload, ToolChoice, ToolContent, ToolResultPart, UseChatOptions, UseCompletionOptions, UserContent, convertDataContentToBase64String, convertDataContentToUint8Array, createCallbacksTransformer, createChunkDecoder, createEventStreamTransformer, createStreamDataTransformer, experimental_AssistantResponse, experimental_StreamData, experimental_StreamingReactResponse, experimental_generateObject, experimental_generateText, experimental_streamObject, experimental_streamText, formatStreamPart, generateId, isStreamStringEqualToType, generateId as nanoid, parseStreamPart, readDataStream, readableFromAsyncIterable, streamToResponse, tool, trimStartOfStreamHelper };