modelfusion 0.21.0 → 0.23.0
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/README.md +1 -0
- package/composed-function/summarize/SummarizationFunction.d.ts +1 -1
- package/composed-function/summarize/summarizeRecursively.d.ts +1 -1
- package/composed-function/summarize/summarizeRecursivelyWithTextGenerationAndTokenSplitting.d.ts +1 -1
- package/{run → core}/DefaultRun.cjs +1 -1
- package/{run → core}/DefaultRun.js +1 -1
- package/{run → core}/FunctionEvent.d.ts +30 -6
- package/core/FunctionOptions.d.ts +33 -0
- package/core/GlobalFunctionLogging.cjs +12 -0
- package/core/GlobalFunctionLogging.d.ts +3 -0
- package/core/GlobalFunctionLogging.js +7 -0
- package/core/getFunctionCallLogger.cjs +74 -0
- package/core/getFunctionCallLogger.d.ts +3 -0
- package/core/getFunctionCallLogger.js +70 -0
- package/{run → core}/index.cjs +1 -1
- package/{run → core}/index.d.ts +1 -1
- package/{run → core}/index.js +1 -1
- package/index.cjs +1 -1
- package/index.d.ts +1 -1
- package/index.js +1 -1
- package/model-function/AbstractModel.d.ts +1 -0
- package/model-function/Model.d.ts +7 -2
- package/model-function/ModelCallEvent.d.ts +39 -5
- package/model-function/ModelFunctionOptions.d.ts +1 -1
- package/model-function/SuccessfulModelCall.cjs +4 -2
- package/model-function/SuccessfulModelCall.d.ts +1 -1
- package/model-function/SuccessfulModelCall.js +4 -2
- package/model-function/embed-text/TextEmbeddingEvent.d.ts +12 -12
- package/model-function/embed-text/TextEmbeddingModel.d.ts +1 -1
- package/model-function/embed-text/embedText.cjs +6 -61
- package/model-function/embed-text/embedText.d.ts +3 -3
- package/model-function/embed-text/embedText.js +6 -61
- package/model-function/executeCall.cjs +50 -30
- package/model-function/executeCall.d.ts +16 -22
- package/model-function/executeCall.js +48 -28
- package/model-function/generate-image/ImageGenerationEvent.d.ts +9 -11
- package/model-function/generate-image/generateImage.cjs +2 -27
- package/model-function/generate-image/generateImage.d.ts +1 -1
- package/model-function/generate-image/generateImage.js +2 -27
- package/model-function/generate-json/JsonGenerationEvent.d.ts +14 -11
- package/model-function/generate-json/JsonGenerationModel.d.ts +13 -0
- package/model-function/generate-json/JsonOrTextGenerationModel.d.ts +23 -0
- package/model-function/generate-json/JsonTextGenerationModel.cjs +3 -0
- package/model-function/generate-json/JsonTextGenerationModel.d.ts +6 -5
- package/model-function/generate-json/JsonTextGenerationModel.js +3 -0
- package/model-function/generate-json/generateJson.cjs +3 -27
- package/model-function/generate-json/generateJson.d.ts +2 -2
- package/model-function/generate-json/generateJson.js +3 -27
- package/model-function/generate-json/generateJsonOrText.cjs +3 -27
- package/model-function/generate-json/generateJsonOrText.d.ts +2 -2
- package/model-function/generate-json/generateJsonOrText.js +3 -27
- package/model-function/generate-text/TextGenerationEvent.d.ts +14 -11
- package/model-function/generate-text/TextGenerationModel.d.ts +5 -0
- package/model-function/generate-text/TextStreamingEvent.d.ts +4 -17
- package/model-function/generate-text/generateText.cjs +3 -27
- package/model-function/generate-text/generateText.d.ts +1 -1
- package/model-function/generate-text/generateText.js +3 -27
- package/model-function/generate-text/streamText.cjs +31 -33
- package/model-function/generate-text/streamText.d.ts +5 -5
- package/model-function/generate-text/streamText.js +31 -33
- package/model-function/index.cjs +3 -2
- package/model-function/index.d.ts +3 -2
- package/model-function/index.js +3 -2
- package/model-function/synthesize-speech/SpeechSynthesisEvent.d.ts +12 -11
- package/model-function/synthesize-speech/SpeechSynthesisModel.d.ts +1 -1
- package/model-function/synthesize-speech/synthesizeSpeech.cjs +2 -28
- package/model-function/synthesize-speech/synthesizeSpeech.d.ts +1 -1
- package/model-function/synthesize-speech/synthesizeSpeech.js +2 -28
- package/model-function/transcribe-speech/TranscriptionEvent.d.ts +9 -11
- package/model-function/transcribe-speech/TranscriptionModel.d.ts +1 -1
- package/model-function/transcribe-speech/transcribe.cjs +2 -27
- package/model-function/transcribe-speech/transcribe.d.ts +1 -1
- package/model-function/transcribe-speech/transcribe.js +2 -27
- package/model-provider/automatic1111/Automatic1111ImageGenerationModel.cjs +9 -0
- package/model-provider/automatic1111/Automatic1111ImageGenerationModel.d.ts +1 -0
- package/model-provider/automatic1111/Automatic1111ImageGenerationModel.js +9 -0
- package/model-provider/cohere/CohereTextEmbeddingModel.cjs +6 -0
- package/model-provider/cohere/CohereTextEmbeddingModel.d.ts +4 -3
- package/model-provider/cohere/CohereTextEmbeddingModel.js +6 -0
- package/model-provider/cohere/CohereTextGenerationModel.cjs +20 -0
- package/model-provider/cohere/CohereTextGenerationModel.d.ts +2 -1
- package/model-provider/cohere/CohereTextGenerationModel.js +20 -0
- package/model-provider/cohere/CohereTokenizer.d.ts +1 -1
- package/model-provider/elevenlabs/ElevenLabsSpeechSynthesisModel.cjs +8 -0
- package/model-provider/elevenlabs/ElevenLabsSpeechSynthesisModel.d.ts +1 -0
- package/model-provider/elevenlabs/ElevenLabsSpeechSynthesisModel.js +8 -0
- package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.cjs +7 -0
- package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.d.ts +1 -0
- package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.js +7 -0
- package/model-provider/huggingface/HuggingFaceTextGenerationModel.cjs +16 -0
- package/model-provider/huggingface/HuggingFaceTextGenerationModel.d.ts +1 -0
- package/model-provider/huggingface/HuggingFaceTextGenerationModel.js +16 -0
- package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.cjs +6 -0
- package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.d.ts +1 -0
- package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.js +6 -0
- package/model-provider/llamacpp/LlamaCppTextGenerationModel.cjs +31 -0
- package/model-provider/llamacpp/LlamaCppTextGenerationModel.d.ts +6 -0
- package/model-provider/llamacpp/LlamaCppTextGenerationModel.js +31 -0
- package/model-provider/llamacpp/LlamaCppTokenizer.d.ts +1 -1
- package/model-provider/openai/OpenAIImageGenerationModel.cjs +8 -0
- package/model-provider/openai/OpenAIImageGenerationModel.d.ts +1 -0
- package/model-provider/openai/OpenAIImageGenerationModel.js +8 -0
- package/model-provider/openai/OpenAITextEmbeddingModel.cjs +5 -0
- package/model-provider/openai/OpenAITextEmbeddingModel.d.ts +12 -11
- package/model-provider/openai/OpenAITextEmbeddingModel.js +5 -0
- package/model-provider/openai/OpenAITextGenerationModel.cjs +24 -0
- package/model-provider/openai/OpenAITextGenerationModel.d.ts +14 -8
- package/model-provider/openai/OpenAITextGenerationModel.js +24 -0
- package/model-provider/openai/OpenAITranscriptionModel.cjs +7 -0
- package/model-provider/openai/OpenAITranscriptionModel.d.ts +2 -0
- package/model-provider/openai/OpenAITranscriptionModel.js +7 -0
- package/model-provider/openai/chat/OpenAIChatModel.cjs +20 -0
- package/model-provider/openai/chat/OpenAIChatModel.d.ts +17 -11
- package/model-provider/openai/chat/OpenAIChatModel.js +20 -0
- package/model-provider/openai/chat/OpenAIChatPrompt.d.ts +2 -2
- package/model-provider/stability/StabilityImageGenerationModel.cjs +15 -0
- package/model-provider/stability/StabilityImageGenerationModel.d.ts +1 -0
- package/model-provider/stability/StabilityImageGenerationModel.js +15 -0
- package/package.json +1 -1
- package/prompt/PromptFormatTextGenerationModel.cjs +3 -0
- package/prompt/PromptFormatTextGenerationModel.d.ts +1 -0
- package/prompt/PromptFormatTextGenerationModel.js +3 -0
- package/text-chunk/split/SplitFunction.d.ts +1 -1
- package/tool/ExecuteToolEvent.d.ts +7 -16
- package/tool/Tool.d.ts +1 -1
- package/tool/WebSearchTool.cjs +25 -0
- package/tool/WebSearchTool.d.ts +56 -1
- package/tool/WebSearchTool.js +25 -0
- package/tool/executeTool.cjs +17 -8
- package/tool/executeTool.d.ts +1 -1
- package/tool/executeTool.js +17 -8
- package/tool/useTool.d.ts +2 -2
- package/tool/useToolOrGenerateText.d.ts +2 -2
- package/vector-index/VectorIndex.d.ts +1 -1
- package/vector-index/memory/MemoryVectorIndex.d.ts +1 -1
- package/vector-index/pinecone/PineconeVectorIndex.d.ts +1 -1
- package/model-function/generate-json/GenerateJsonModel.d.ts +0 -8
- package/model-function/generate-json/GenerateJsonOrTextModel.d.ts +0 -18
- package/run/ConsoleLogger.cjs +0 -9
- package/run/ConsoleLogger.d.ts +0 -5
- package/run/ConsoleLogger.js +0 -5
- package/run/FunctionOptions.d.ts +0 -19
- /package/{run → core}/DefaultRun.d.ts +0 -0
- /package/{run → core}/FunctionEvent.cjs +0 -0
- /package/{run → core}/FunctionEvent.js +0 -0
- /package/{run → core}/FunctionEventSource.cjs +0 -0
- /package/{run → core}/FunctionEventSource.d.ts +0 -0
- /package/{run → core}/FunctionEventSource.js +0 -0
- /package/{run → core}/FunctionObserver.cjs +0 -0
- /package/{run → core}/FunctionObserver.d.ts +0 -0
- /package/{run → core}/FunctionObserver.js +0 -0
- /package/{run → core}/FunctionOptions.cjs +0 -0
- /package/{run → core}/FunctionOptions.js +0 -0
- /package/{run → core}/GlobalFunctionObservers.cjs +0 -0
- /package/{run → core}/GlobalFunctionObservers.d.ts +0 -0
- /package/{run → core}/GlobalFunctionObservers.js +0 -0
- /package/{run → core}/Run.cjs +0 -0
- /package/{run → core}/Run.d.ts +0 -0
- /package/{run → core}/Run.js +0 -0
- /package/{run → core}/Vector.cjs +0 -0
- /package/{run → core}/Vector.d.ts +0 -0
- /package/{run → core}/Vector.js +0 -0
- /package/model-function/generate-json/{GenerateJsonModel.cjs → JsonGenerationModel.cjs} +0 -0
- /package/model-function/generate-json/{GenerateJsonModel.js → JsonGenerationModel.js} +0 -0
- /package/model-function/generate-json/{GenerateJsonOrTextModel.cjs → JsonOrTextGenerationModel.cjs} +0 -0
- /package/model-function/generate-json/{GenerateJsonOrTextModel.js → JsonOrTextGenerationModel.js} +0 -0
@@ -1,17 +1,17 @@
|
|
1
1
|
import { ModelFunctionOptions } from "../ModelFunctionOptions.js";
|
2
|
-
import {
|
2
|
+
import { ModelCallMetadata } from "../executeCall.js";
|
3
3
|
import { DeltaEvent } from "./DeltaEvent.js";
|
4
4
|
import { TextGenerationModel, TextGenerationModelSettings } from "./TextGenerationModel.js";
|
5
|
-
export declare class StreamTextPromise
|
5
|
+
export declare class StreamTextPromise extends Promise<AsyncIterable<string>> {
|
6
6
|
private fullPromise;
|
7
7
|
private outputPromise;
|
8
8
|
constructor(fullPromise: Promise<{
|
9
9
|
output: AsyncIterable<string>;
|
10
|
-
metadata: Omit<
|
10
|
+
metadata: Omit<ModelCallMetadata, "durationInMs" | "finishTimestamp">;
|
11
11
|
}>);
|
12
12
|
asFullResponse(): Promise<{
|
13
13
|
output: AsyncIterable<string>;
|
14
|
-
metadata: Omit<
|
14
|
+
metadata: Omit<ModelCallMetadata, "durationInMs" | "finishTimestamp">;
|
15
15
|
}>;
|
16
16
|
then<TResult1 = AsyncIterable<string>, TResult2 = never>(onfulfilled?: ((value: AsyncIterable<string>) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | undefined | null): Promise<TResult1 | TResult2>;
|
17
17
|
catch<TResult = never>(onrejected?: ((reason: unknown) => TResult | PromiseLike<TResult>) | undefined | null): Promise<AsyncIterable<string> | TResult>;
|
@@ -20,4 +20,4 @@ export declare class StreamTextPromise<PROMPT, FULL_DELTA, SETTINGS extends Text
|
|
20
20
|
export declare function streamText<PROMPT, FULL_DELTA, SETTINGS extends TextGenerationModelSettings>(model: TextGenerationModel<PROMPT, unknown, FULL_DELTA, SETTINGS> & {
|
21
21
|
generateDeltaStreamResponse: (prompt: PROMPT, options: ModelFunctionOptions<SETTINGS>) => PromiseLike<AsyncIterable<DeltaEvent<FULL_DELTA>>>;
|
22
22
|
extractTextDelta: (fullDelta: FULL_DELTA) => string | undefined;
|
23
|
-
}, prompt: PROMPT, options?: ModelFunctionOptions<SETTINGS>): StreamTextPromise
|
23
|
+
}, prompt: PROMPT, options?: ModelFunctionOptions<SETTINGS>): StreamTextPromise;
|
@@ -1,6 +1,8 @@
|
|
1
1
|
import { nanoid as createId } from "nanoid";
|
2
|
-
import { FunctionEventSource } from "../../
|
3
|
-
import {
|
2
|
+
import { FunctionEventSource } from "../../core/FunctionEventSource.js";
|
3
|
+
import { getGlobalFunctionLogging } from "../../core/GlobalFunctionLogging.js";
|
4
|
+
import { getGlobalFunctionObservers } from "../../core/GlobalFunctionObservers.js";
|
5
|
+
import { getFunctionCallLogger } from "../../core/getFunctionCallLogger.js";
|
4
6
|
import { startDurationMeasurement } from "../../util/DurationMeasurement.js";
|
5
7
|
import { AbortError } from "../../util/api/AbortError.js";
|
6
8
|
import { runSafe } from "../../util/runSafe.js";
|
@@ -54,6 +56,7 @@ async function doStreamText(model, prompt, options) {
|
|
54
56
|
const settings = model.settings;
|
55
57
|
const eventSource = new FunctionEventSource({
|
56
58
|
observers: [
|
59
|
+
...getFunctionCallLogger(options?.logging ?? getGlobalFunctionLogging()),
|
57
60
|
...getGlobalFunctionObservers(),
|
58
61
|
...(settings.observers ?? []),
|
59
62
|
...(run?.observers ?? []),
|
@@ -63,21 +66,21 @@ async function doStreamText(model, prompt, options) {
|
|
63
66
|
});
|
64
67
|
const durationMeasurement = startDurationMeasurement();
|
65
68
|
const startMetadata = {
|
69
|
+
functionType: "text-streaming",
|
66
70
|
callId: `call-${createId()}`,
|
67
71
|
runId: run?.runId,
|
68
72
|
sessionId: run?.sessionId,
|
69
73
|
userId: run?.userId,
|
70
74
|
functionId: options?.functionId,
|
71
75
|
model: model.modelInformation,
|
76
|
+
settings: model.settingsForEvent,
|
77
|
+
input: prompt,
|
72
78
|
timestamp: durationMeasurement.startDate,
|
73
79
|
startTimestamp: durationMeasurement.startDate,
|
74
80
|
};
|
75
81
|
eventSource.notify({
|
76
|
-
...startMetadata,
|
77
|
-
functionType: "text-streaming",
|
78
82
|
eventType: "started",
|
79
|
-
|
80
|
-
prompt,
|
83
|
+
...startMetadata,
|
81
84
|
});
|
82
85
|
const result = await runSafe(async () => extractTextDeltas({
|
83
86
|
deltaIterable: await model.generateDeltaStreamResponse(prompt, {
|
@@ -88,70 +91,65 @@ async function doStreamText(model, prompt, options) {
|
|
88
91
|
extractDelta: (fullDelta) => model.extractTextDelta(fullDelta),
|
89
92
|
onDone: (fullText, lastFullDelta) => {
|
90
93
|
const finishMetadata = {
|
91
|
-
...startMetadata,
|
92
94
|
eventType: "finished",
|
95
|
+
...startMetadata,
|
93
96
|
finishTimestamp: new Date(),
|
94
97
|
durationInMs: durationMeasurement.durationInMs,
|
95
98
|
};
|
96
99
|
eventSource.notify({
|
97
100
|
...finishMetadata,
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
generatedText: fullText,
|
101
|
+
result: {
|
102
|
+
status: "success",
|
103
|
+
response: lastFullDelta,
|
104
|
+
output: fullText,
|
105
|
+
},
|
104
106
|
});
|
105
107
|
},
|
106
108
|
onError: (error) => {
|
107
109
|
const finishMetadata = {
|
108
|
-
...startMetadata,
|
109
110
|
eventType: "finished",
|
111
|
+
...startMetadata,
|
110
112
|
finishTimestamp: new Date(),
|
111
113
|
durationInMs: durationMeasurement.durationInMs,
|
112
114
|
};
|
113
115
|
eventSource.notify(error instanceof AbortError
|
114
116
|
? {
|
115
117
|
...finishMetadata,
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
prompt,
|
118
|
+
result: {
|
119
|
+
status: "abort",
|
120
|
+
},
|
120
121
|
}
|
121
122
|
: {
|
122
123
|
...finishMetadata,
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
error,
|
124
|
+
result: {
|
125
|
+
status: "error",
|
126
|
+
error,
|
127
|
+
},
|
128
128
|
});
|
129
129
|
},
|
130
130
|
}));
|
131
131
|
if (!result.ok) {
|
132
132
|
const finishMetadata = {
|
133
|
-
...startMetadata,
|
134
133
|
eventType: "finished",
|
134
|
+
...startMetadata,
|
135
135
|
finishTimestamp: new Date(),
|
136
136
|
durationInMs: durationMeasurement.durationInMs,
|
137
137
|
};
|
138
138
|
if (result.isAborted) {
|
139
139
|
eventSource.notify({
|
140
140
|
...finishMetadata,
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
prompt,
|
141
|
+
result: {
|
142
|
+
status: "abort",
|
143
|
+
},
|
145
144
|
});
|
146
145
|
throw new AbortError();
|
147
146
|
}
|
148
147
|
eventSource.notify({
|
149
148
|
...finishMetadata,
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
error: result.error,
|
149
|
+
result: {
|
150
|
+
status: "error",
|
151
|
+
error: result.error,
|
152
|
+
},
|
155
153
|
});
|
156
154
|
throw result.error;
|
157
155
|
}
|
package/model-function/index.cjs
CHANGED
@@ -25,10 +25,10 @@ __exportStar(require("./embed-text/embedText.cjs"), exports);
|
|
25
25
|
__exportStar(require("./generate-image/ImageGenerationEvent.cjs"), exports);
|
26
26
|
__exportStar(require("./generate-image/ImageGenerationModel.cjs"), exports);
|
27
27
|
__exportStar(require("./generate-image/generateImage.cjs"), exports);
|
28
|
-
__exportStar(require("./generate-json/GenerateJsonModel.cjs"), exports);
|
29
|
-
__exportStar(require("./generate-json/GenerateJsonOrTextModel.cjs"), exports);
|
30
28
|
__exportStar(require("./generate-json/InstructionWithSchemaPrompt.cjs"), exports);
|
31
29
|
__exportStar(require("./generate-json/JsonGenerationEvent.cjs"), exports);
|
30
|
+
__exportStar(require("./generate-json/JsonGenerationModel.cjs"), exports);
|
31
|
+
__exportStar(require("./generate-json/JsonOrTextGenerationModel.cjs"), exports);
|
32
32
|
__exportStar(require("./generate-json/JsonTextGenerationModel.cjs"), exports);
|
33
33
|
__exportStar(require("./generate-json/NoSuchSchemaError.cjs"), exports);
|
34
34
|
__exportStar(require("./generate-json/SchemaDefinition.cjs"), exports);
|
@@ -39,6 +39,7 @@ __exportStar(require("./generate-text/DeltaEvent.cjs"), exports);
|
|
39
39
|
__exportStar(require("./generate-text/TextDeltaEventSource.cjs"), exports);
|
40
40
|
__exportStar(require("./generate-text/TextGenerationEvent.cjs"), exports);
|
41
41
|
__exportStar(require("./generate-text/TextGenerationModel.cjs"), exports);
|
42
|
+
__exportStar(require("./generate-text/TextStreamingEvent.cjs"), exports);
|
42
43
|
__exportStar(require("./generate-text/generateText.cjs"), exports);
|
43
44
|
__exportStar(require("./generate-text/streamText.cjs"), exports);
|
44
45
|
__exportStar(require("./synthesize-speech/SpeechSynthesisEvent.cjs"), exports);
|
@@ -9,10 +9,10 @@ export * from "./embed-text/embedText.js";
|
|
9
9
|
export * from "./generate-image/ImageGenerationEvent.js";
|
10
10
|
export * from "./generate-image/ImageGenerationModel.js";
|
11
11
|
export * from "./generate-image/generateImage.js";
|
12
|
-
export * from "./generate-json/GenerateJsonModel.js";
|
13
|
-
export * from "./generate-json/GenerateJsonOrTextModel.js";
|
14
12
|
export * from "./generate-json/InstructionWithSchemaPrompt.js";
|
15
13
|
export * from "./generate-json/JsonGenerationEvent.js";
|
14
|
+
export * from "./generate-json/JsonGenerationModel.js";
|
15
|
+
export * from "./generate-json/JsonOrTextGenerationModel.js";
|
16
16
|
export * from "./generate-json/JsonTextGenerationModel.js";
|
17
17
|
export * from "./generate-json/NoSuchSchemaError.js";
|
18
18
|
export * from "./generate-json/SchemaDefinition.js";
|
@@ -23,6 +23,7 @@ export * from "./generate-text/DeltaEvent.js";
|
|
23
23
|
export * from "./generate-text/TextDeltaEventSource.js";
|
24
24
|
export * from "./generate-text/TextGenerationEvent.js";
|
25
25
|
export * from "./generate-text/TextGenerationModel.js";
|
26
|
+
export * from "./generate-text/TextStreamingEvent.js";
|
26
27
|
export * from "./generate-text/generateText.js";
|
27
28
|
export * from "./generate-text/streamText.js";
|
28
29
|
export * from "./synthesize-speech/SpeechSynthesisEvent.js";
|
package/model-function/index.js
CHANGED
@@ -9,10 +9,10 @@ export * from "./embed-text/embedText.js";
|
|
9
9
|
export * from "./generate-image/ImageGenerationEvent.js";
|
10
10
|
export * from "./generate-image/ImageGenerationModel.js";
|
11
11
|
export * from "./generate-image/generateImage.js";
|
12
|
-
export * from "./generate-json/GenerateJsonModel.js";
|
13
|
-
export * from "./generate-json/GenerateJsonOrTextModel.js";
|
14
12
|
export * from "./generate-json/InstructionWithSchemaPrompt.js";
|
15
13
|
export * from "./generate-json/JsonGenerationEvent.js";
|
14
|
+
export * from "./generate-json/JsonGenerationModel.js";
|
15
|
+
export * from "./generate-json/JsonOrTextGenerationModel.js";
|
16
16
|
export * from "./generate-json/JsonTextGenerationModel.js";
|
17
17
|
export * from "./generate-json/NoSuchSchemaError.js";
|
18
18
|
export * from "./generate-json/SchemaDefinition.js";
|
@@ -23,6 +23,7 @@ export * from "./generate-text/DeltaEvent.js";
|
|
23
23
|
export * from "./generate-text/TextDeltaEventSource.js";
|
24
24
|
export * from "./generate-text/TextGenerationEvent.js";
|
25
25
|
export * from "./generate-text/TextGenerationModel.js";
|
26
|
+
export * from "./generate-text/TextStreamingEvent.js";
|
26
27
|
export * from "./generate-text/generateText.js";
|
27
28
|
export * from "./generate-text/streamText.js";
|
28
29
|
export * from "./synthesize-speech/SpeechSynthesisEvent.js";
|
@@ -1,20 +1,21 @@
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
2
2
|
import { BaseModelCallFinishedEvent, BaseModelCallStartedEvent } from "../ModelCallEvent.js";
|
3
|
-
export
|
3
|
+
export interface SpeechSynthesisStartedEvent extends BaseModelCallStartedEvent {
|
4
4
|
functionType: "speech-synthesis";
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
export type SpeechSynthesisFinishedEvent = BaseModelCallFinishedEvent & {
|
9
|
-
functionType: "speech-synthesis";
|
10
|
-
settings: unknown;
|
11
|
-
text: string;
|
12
|
-
} & ({
|
5
|
+
input: string;
|
6
|
+
}
|
7
|
+
export type SpeechSynthesisFinishedEventResult = {
|
13
8
|
status: "success";
|
14
|
-
response:
|
9
|
+
response: unknown;
|
10
|
+
output: Buffer;
|
15
11
|
} | {
|
16
12
|
status: "error";
|
17
13
|
error: unknown;
|
18
14
|
} | {
|
19
15
|
status: "abort";
|
20
|
-
}
|
16
|
+
};
|
17
|
+
export interface SpeechSynthesisFinishedEvent extends BaseModelCallFinishedEvent {
|
18
|
+
functionType: "speech-synthesis";
|
19
|
+
input: string;
|
20
|
+
result: SpeechSynthesisFinishedEventResult;
|
21
|
+
}
|
@@ -3,7 +3,7 @@ import { ModelFunctionOptions } from "../ModelFunctionOptions.js";
|
|
3
3
|
import { Model, ModelSettings } from "../Model.js";
|
4
4
|
export interface SpeechSynthesisModelSettings extends ModelSettings {
|
5
5
|
}
|
6
|
-
export interface SpeechSynthesisModel<SETTINGS> extends Model<SETTINGS> {
|
6
|
+
export interface SpeechSynthesisModel<SETTINGS extends SpeechSynthesisModelSettings> extends Model<SETTINGS> {
|
7
7
|
/**
|
8
8
|
* Generates an mp3 audio buffer that contains the speech for the given text.
|
9
9
|
*/
|
@@ -7,38 +7,12 @@ const executeCall_js_1 = require("../executeCall.cjs");
|
|
7
7
|
*/
|
8
8
|
function synthesizeSpeech(model, text, options) {
|
9
9
|
return (0, executeCall_js_1.executeCall)({
|
10
|
+
functionType: "speech-synthesis",
|
11
|
+
input: text,
|
10
12
|
model,
|
11
13
|
options,
|
12
14
|
generateResponse: (options) => model.generateSpeechResponse(text, options),
|
13
15
|
extractOutputValue: (buffer) => buffer,
|
14
|
-
getStartEvent: (metadata, settings) => ({
|
15
|
-
...metadata,
|
16
|
-
functionType: "speech-synthesis",
|
17
|
-
settings,
|
18
|
-
text,
|
19
|
-
}),
|
20
|
-
getAbortEvent: (metadata, settings) => ({
|
21
|
-
...metadata,
|
22
|
-
functionType: "speech-synthesis",
|
23
|
-
status: "abort",
|
24
|
-
settings,
|
25
|
-
text,
|
26
|
-
}),
|
27
|
-
getFailureEvent: (metadata, settings, error) => ({
|
28
|
-
...metadata,
|
29
|
-
functionType: "speech-synthesis",
|
30
|
-
settings,
|
31
|
-
text,
|
32
|
-
error,
|
33
|
-
}),
|
34
|
-
getSuccessEvent: (metadata, settings, response, output) => ({
|
35
|
-
...metadata,
|
36
|
-
functionType: "speech-synthesis",
|
37
|
-
settings,
|
38
|
-
text,
|
39
|
-
response,
|
40
|
-
speech: output,
|
41
|
-
}),
|
42
16
|
});
|
43
17
|
}
|
44
18
|
exports.synthesizeSpeech = synthesizeSpeech;
|
@@ -5,4 +5,4 @@ import { SpeechSynthesisModel, SpeechSynthesisModelSettings } from "./SpeechSynt
|
|
5
5
|
/**
|
6
6
|
* Synthesizes speech from text.
|
7
7
|
*/
|
8
|
-
export declare function synthesizeSpeech<SETTINGS extends SpeechSynthesisModelSettings>(model: SpeechSynthesisModel<SETTINGS>, text: string, options?: ModelFunctionOptions<SETTINGS>): ModelFunctionPromise<
|
8
|
+
export declare function synthesizeSpeech<SETTINGS extends SpeechSynthesisModelSettings>(model: SpeechSynthesisModel<SETTINGS>, text: string, options?: ModelFunctionOptions<SETTINGS>): ModelFunctionPromise<Buffer, Buffer>;
|
@@ -4,37 +4,11 @@ import { executeCall } from "../executeCall.js";
|
|
4
4
|
*/
|
5
5
|
export function synthesizeSpeech(model, text, options) {
|
6
6
|
return executeCall({
|
7
|
+
functionType: "speech-synthesis",
|
8
|
+
input: text,
|
7
9
|
model,
|
8
10
|
options,
|
9
11
|
generateResponse: (options) => model.generateSpeechResponse(text, options),
|
10
12
|
extractOutputValue: (buffer) => buffer,
|
11
|
-
getStartEvent: (metadata, settings) => ({
|
12
|
-
...metadata,
|
13
|
-
functionType: "speech-synthesis",
|
14
|
-
settings,
|
15
|
-
text,
|
16
|
-
}),
|
17
|
-
getAbortEvent: (metadata, settings) => ({
|
18
|
-
...metadata,
|
19
|
-
functionType: "speech-synthesis",
|
20
|
-
status: "abort",
|
21
|
-
settings,
|
22
|
-
text,
|
23
|
-
}),
|
24
|
-
getFailureEvent: (metadata, settings, error) => ({
|
25
|
-
...metadata,
|
26
|
-
functionType: "speech-synthesis",
|
27
|
-
settings,
|
28
|
-
text,
|
29
|
-
error,
|
30
|
-
}),
|
31
|
-
getSuccessEvent: (metadata, settings, response, output) => ({
|
32
|
-
...metadata,
|
33
|
-
functionType: "speech-synthesis",
|
34
|
-
settings,
|
35
|
-
text,
|
36
|
-
response,
|
37
|
-
speech: output,
|
38
|
-
}),
|
39
13
|
});
|
40
14
|
}
|
@@ -1,20 +1,18 @@
|
|
1
1
|
import { BaseModelCallFinishedEvent, BaseModelCallStartedEvent } from "../ModelCallEvent.js";
|
2
|
-
export
|
2
|
+
export interface TranscriptionStartedEvent extends BaseModelCallStartedEvent {
|
3
3
|
functionType: "transcription";
|
4
|
-
|
5
|
-
|
6
|
-
};
|
7
|
-
export type TranscriptionFinishedEvent = BaseModelCallFinishedEvent & {
|
8
|
-
functionType: "transcription";
|
9
|
-
settings: unknown;
|
10
|
-
data: unknown;
|
11
|
-
} & ({
|
4
|
+
}
|
5
|
+
export type TranscriptionFinishedEventResult = {
|
12
6
|
status: "success";
|
13
7
|
response: unknown;
|
14
|
-
|
8
|
+
output: string;
|
15
9
|
} | {
|
16
10
|
status: "error";
|
17
11
|
error: unknown;
|
18
12
|
} | {
|
19
13
|
status: "abort";
|
20
|
-
}
|
14
|
+
};
|
15
|
+
export interface TranscriptionFinishedEvent extends BaseModelCallFinishedEvent {
|
16
|
+
functionType: "transcription";
|
17
|
+
result: TranscriptionFinishedEventResult;
|
18
|
+
}
|
@@ -2,7 +2,7 @@ import { ModelFunctionOptions } from "../ModelFunctionOptions.js";
|
|
2
2
|
import { Model, ModelSettings } from "../Model.js";
|
3
3
|
export interface TranscriptionModelSettings extends ModelSettings {
|
4
4
|
}
|
5
|
-
export interface TranscriptionModel<DATA, RESPONSE, SETTINGS> extends Model<SETTINGS> {
|
5
|
+
export interface TranscriptionModel<DATA, RESPONSE, SETTINGS extends TranscriptionModelSettings> extends Model<SETTINGS> {
|
6
6
|
generateTranscriptionResponse: (data: DATA, options?: ModelFunctionOptions<SETTINGS>) => PromiseLike<RESPONSE>;
|
7
7
|
extractTranscriptionText: (response: RESPONSE) => string;
|
8
8
|
}
|
@@ -18,37 +18,12 @@ const executeCall_js_1 = require("../executeCall.cjs");
|
|
18
18
|
*/
|
19
19
|
function transcribe(model, data, options) {
|
20
20
|
return (0, executeCall_js_1.executeCall)({
|
21
|
+
functionType: "transcription",
|
22
|
+
input: data,
|
21
23
|
model,
|
22
24
|
options,
|
23
25
|
generateResponse: (options) => model.generateTranscriptionResponse(data, options),
|
24
26
|
extractOutputValue: model.extractTranscriptionText,
|
25
|
-
getStartEvent: (metadata, settings) => ({
|
26
|
-
...metadata,
|
27
|
-
functionType: "transcription",
|
28
|
-
settings,
|
29
|
-
data,
|
30
|
-
}),
|
31
|
-
getAbortEvent: (metadata, settings) => ({
|
32
|
-
...metadata,
|
33
|
-
functionType: "transcription",
|
34
|
-
settings,
|
35
|
-
data,
|
36
|
-
}),
|
37
|
-
getFailureEvent: (metadata, settings, error) => ({
|
38
|
-
...metadata,
|
39
|
-
functionType: "transcription",
|
40
|
-
settings,
|
41
|
-
data,
|
42
|
-
error,
|
43
|
-
}),
|
44
|
-
getSuccessEvent: (metadata, settings, response, output) => ({
|
45
|
-
...metadata,
|
46
|
-
functionType: "transcription",
|
47
|
-
settings,
|
48
|
-
data,
|
49
|
-
response,
|
50
|
-
transcription: output,
|
51
|
-
}),
|
52
27
|
});
|
53
28
|
}
|
54
29
|
exports.transcribe = transcribe;
|
@@ -15,4 +15,4 @@ import { TranscriptionModel, TranscriptionModelSettings } from "./TranscriptionM
|
|
15
15
|
* }
|
16
16
|
* );
|
17
17
|
*/
|
18
|
-
export declare function transcribe<DATA, RESPONSE, SETTINGS extends TranscriptionModelSettings>(model: TranscriptionModel<DATA, RESPONSE, SETTINGS>, data: DATA, options?: ModelFunctionOptions<SETTINGS>): ModelFunctionPromise<
|
18
|
+
export declare function transcribe<DATA, RESPONSE, SETTINGS extends TranscriptionModelSettings>(model: TranscriptionModel<DATA, RESPONSE, SETTINGS>, data: DATA, options?: ModelFunctionOptions<SETTINGS>): ModelFunctionPromise<string, RESPONSE>;
|
@@ -15,36 +15,11 @@ import { executeCall } from "../executeCall.js";
|
|
15
15
|
*/
|
16
16
|
export function transcribe(model, data, options) {
|
17
17
|
return executeCall({
|
18
|
+
functionType: "transcription",
|
19
|
+
input: data,
|
18
20
|
model,
|
19
21
|
options,
|
20
22
|
generateResponse: (options) => model.generateTranscriptionResponse(data, options),
|
21
23
|
extractOutputValue: model.extractTranscriptionText,
|
22
|
-
getStartEvent: (metadata, settings) => ({
|
23
|
-
...metadata,
|
24
|
-
functionType: "transcription",
|
25
|
-
settings,
|
26
|
-
data,
|
27
|
-
}),
|
28
|
-
getAbortEvent: (metadata, settings) => ({
|
29
|
-
...metadata,
|
30
|
-
functionType: "transcription",
|
31
|
-
settings,
|
32
|
-
data,
|
33
|
-
}),
|
34
|
-
getFailureEvent: (metadata, settings, error) => ({
|
35
|
-
...metadata,
|
36
|
-
functionType: "transcription",
|
37
|
-
settings,
|
38
|
-
data,
|
39
|
-
error,
|
40
|
-
}),
|
41
|
-
getSuccessEvent: (metadata, settings, response, output) => ({
|
42
|
-
...metadata,
|
43
|
-
functionType: "transcription",
|
44
|
-
settings,
|
45
|
-
data,
|
46
|
-
response,
|
47
|
-
transcription: output,
|
48
|
-
}),
|
49
24
|
});
|
50
25
|
}
|
@@ -38,6 +38,15 @@ class Automatic1111ImageGenerationModel extends AbstractModel_js_1.AbstractModel
|
|
38
38
|
call: async () => callAutomatic1111ImageGenerationAPI(callSettings),
|
39
39
|
});
|
40
40
|
}
|
41
|
+
get settingsForEvent() {
|
42
|
+
return {
|
43
|
+
baseUrl: this.settings.baseUrl,
|
44
|
+
height: this.settings.height,
|
45
|
+
width: this.settings.width,
|
46
|
+
sampler: this.settings.sampler,
|
47
|
+
steps: this.settings.steps,
|
48
|
+
};
|
49
|
+
}
|
41
50
|
generateImageResponse(prompt, options) {
|
42
51
|
return this.callAPI(prompt, options);
|
43
52
|
}
|
@@ -14,6 +14,7 @@ export declare class Automatic1111ImageGenerationModel extends AbstractModel<Aut
|
|
14
14
|
readonly provider: "Automatic1111";
|
15
15
|
get modelName(): string;
|
16
16
|
callAPI(input: A111ImageGenerationPrompt, options?: ModelFunctionOptions<Automatic1111ImageGenerationModelSettings>): Promise<Automatic1111ImageGenerationResponse>;
|
17
|
+
get settingsForEvent(): Partial<Automatic1111ImageGenerationModelSettings>;
|
17
18
|
generateImageResponse(prompt: A111ImageGenerationPrompt, options?: ModelFunctionOptions<Automatic1111ImageGenerationModelSettings>): Promise<{
|
18
19
|
images: string[];
|
19
20
|
parameters: {};
|
@@ -35,6 +35,15 @@ export class Automatic1111ImageGenerationModel extends AbstractModel {
|
|
35
35
|
call: async () => callAutomatic1111ImageGenerationAPI(callSettings),
|
36
36
|
});
|
37
37
|
}
|
38
|
+
get settingsForEvent() {
|
39
|
+
return {
|
40
|
+
baseUrl: this.settings.baseUrl,
|
41
|
+
height: this.settings.height,
|
42
|
+
width: this.settings.width,
|
43
|
+
sampler: this.settings.sampler,
|
44
|
+
steps: this.settings.steps,
|
45
|
+
};
|
46
|
+
}
|
38
47
|
generateImageResponse(prompt, options) {
|
39
48
|
return this.callAPI(prompt, options);
|
40
49
|
}
|
@@ -120,6 +120,12 @@ class CohereTextEmbeddingModel extends AbstractModel_js_1.AbstractModel {
|
|
120
120
|
call: async () => callCohereEmbeddingAPI(callSettings),
|
121
121
|
});
|
122
122
|
}
|
123
|
+
get settingsForEvent() {
|
124
|
+
return {
|
125
|
+
baseUrl: this.settings.baseUrl,
|
126
|
+
truncate: this.settings.truncate,
|
127
|
+
};
|
128
|
+
}
|
123
129
|
generateEmbeddingResponse(texts, options) {
|
124
130
|
return this.callAPI(texts, options);
|
125
131
|
}
|
@@ -62,14 +62,15 @@ export declare class CohereTextEmbeddingModel extends AbstractModel<CohereTextEm
|
|
62
62
|
detokenize(tokens: number[]): Promise<string>;
|
63
63
|
private get apiKey();
|
64
64
|
callAPI(texts: Array<string>, options?: ModelFunctionOptions<CohereTextEmbeddingModelSettings>): Promise<CohereTextEmbeddingResponse>;
|
65
|
+
get settingsForEvent(): Partial<CohereTextEmbeddingModelSettings>;
|
65
66
|
generateEmbeddingResponse(texts: string[], options?: ModelFunctionOptions<CohereTextEmbeddingModelSettings>): Promise<{
|
66
|
-
texts: string[];
|
67
67
|
id: string;
|
68
68
|
meta: {
|
69
69
|
api_version: {
|
70
70
|
version: string;
|
71
71
|
};
|
72
72
|
};
|
73
|
+
texts: string[];
|
73
74
|
embeddings: number[][];
|
74
75
|
}>;
|
75
76
|
extractEmbeddings(response: CohereTextEmbeddingResponse): number[][];
|
@@ -97,22 +98,22 @@ declare const cohereTextEmbeddingResponseSchema: z.ZodObject<{
|
|
97
98
|
};
|
98
99
|
}>;
|
99
100
|
}, "strip", z.ZodTypeAny, {
|
100
|
-
texts: string[];
|
101
101
|
id: string;
|
102
102
|
meta: {
|
103
103
|
api_version: {
|
104
104
|
version: string;
|
105
105
|
};
|
106
106
|
};
|
107
|
+
texts: string[];
|
107
108
|
embeddings: number[][];
|
108
109
|
}, {
|
109
|
-
texts: string[];
|
110
110
|
id: string;
|
111
111
|
meta: {
|
112
112
|
api_version: {
|
113
113
|
version: string;
|
114
114
|
};
|
115
115
|
};
|
116
|
+
texts: string[];
|
116
117
|
embeddings: number[][];
|
117
118
|
}>;
|
118
119
|
export type CohereTextEmbeddingResponse = z.infer<typeof cohereTextEmbeddingResponseSchema>;
|
@@ -114,6 +114,12 @@ export class CohereTextEmbeddingModel extends AbstractModel {
|
|
114
114
|
call: async () => callCohereEmbeddingAPI(callSettings),
|
115
115
|
});
|
116
116
|
}
|
117
|
+
get settingsForEvent() {
|
118
|
+
return {
|
119
|
+
baseUrl: this.settings.baseUrl,
|
120
|
+
truncate: this.settings.truncate,
|
121
|
+
};
|
122
|
+
}
|
117
123
|
generateEmbeddingResponse(texts, options) {
|
118
124
|
return this.callAPI(texts, options);
|
119
125
|
}
|
@@ -102,6 +102,8 @@ class CohereTextGenerationModel extends AbstractModel_js_1.AbstractModel {
|
|
102
102
|
// to exclude stop tokens from the generated text
|
103
103
|
endSequences: combinedSettings.stopSequences,
|
104
104
|
maxTokens: combinedSettings.maxCompletionTokens,
|
105
|
+
// mapped name because of conflict with stopSequences:
|
106
|
+
stopSequences: combinedSettings.cohereStopSequences,
|
105
107
|
abortSignal: run?.abortSignal,
|
106
108
|
prompt,
|
107
109
|
responseFormat,
|
@@ -112,6 +114,24 @@ class CohereTextGenerationModel extends AbstractModel_js_1.AbstractModel {
|
|
112
114
|
call: async () => callCohereTextGenerationAPI(callSettings),
|
113
115
|
});
|
114
116
|
}
|
117
|
+
get settingsForEvent() {
|
118
|
+
const eventSettingProperties = [
|
119
|
+
"maxCompletionTokens",
|
120
|
+
"stopSequences",
|
121
|
+
"baseUrl",
|
122
|
+
"numGenerations",
|
123
|
+
"temperature",
|
124
|
+
"k",
|
125
|
+
"p",
|
126
|
+
"frequencyPenalty",
|
127
|
+
"presencePenalty",
|
128
|
+
"returnLikelihoods",
|
129
|
+
"logitBias",
|
130
|
+
"truncate",
|
131
|
+
"cohereStopSequences",
|
132
|
+
];
|
133
|
+
return Object.fromEntries(Object.entries(this.settings).filter(([key]) => eventSettingProperties.includes(key)));
|
134
|
+
}
|
115
135
|
generateTextResponse(prompt, options) {
|
116
136
|
return this.callAPI(prompt, {
|
117
137
|
...options,
|