simple-ai-sdk 1.0.5 → 1.0.7
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/client/manager.d.ts.map +1 -1
- package/dist/client/manager.js +6 -1
- package/dist/client/types.d.ts +1 -1
- package/dist/client/types.d.ts.map +1 -1
- package/dist/server/createChatHandler.d.ts.map +1 -1
- package/dist/server/createChatHandler.js +33 -27
- package/dist/server/types.d.ts +12 -8
- package/dist/server/types.d.ts.map +1 -1
- package/dist/shared/wire.d.ts +8 -17
- package/dist/shared/wire.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/client/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/client/manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAI7D,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,QAAQ,EAAE,qBAAqB,GAAG,MAAM,IAAI,CAAC;IACvD,WAAW,IAAI,kBAAkB,CAAC;IAClC,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;IACvD,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAClE;;;;OAIG;IACH,kBAAkB,CAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC,GAAG,SAAS,GACnD,IAAI,CAAC;IACR;;OAEG;IACH,oBAAoB,CAClB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,GACnE,IAAI,CAAC;IACR;;OAEG;IACH,iBAAiB,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,GAAG,SAAS,GAC5C,IAAI,CAAC;IACR;;OAEG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC;;OAEG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IACtE,UAAU,CACR,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE;QACP,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;KAClC,GACA,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC;;;OAGG;IACH,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,cAAM,aAAc,YAAW,cAAc;IAC3C,OAAO,CAAC,KAAK,CAEX;IAEF,OAAO,CAAC,SAAS,CAAoC;IAGrD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,gBAAgB,CAA8C;IAEtE,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,KAAK,CAAC,CAAS;IACvB,OAAO,CAAC,UAAU,CAA+C;IAEjE,OAAO,CAAC,iBAAiB,CAA6B;IAEtD,OAAO,CAAC,cAAc,CAAoD;IAE1E,OAAO,CAAC,gBAAgB,CAGpB;IAEJ,OAAO,CAAC,aAAa,CAA6C;IAElE,OAAO,CAAC,SAAS,CAA6B;gBAElC,OAAO,GAAE,oBAAyB;IAkD9C,SAAS,CAAC,QAAQ,EAAE,qBAAqB,GAAG,MAAM,IAAI;IAOtD,kBAAkB,CAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC,GAAG,SAAS;IAStD,oBAAoB,CAClB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS;IAStE,iBAAiB,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,GAAG,SAAS;IAW/C,WAAW,IAAI,kBAAkB;IAMjC,OAAO,CAAC,MAAM;IAiDd,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAUtD,YAAY,CAAC,SAAS,EAAE,MAAM;IAO9B,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,GAAE,OAAO,EAAO;IA8B9D,aAAa,CAAC,SAAS,EAAE,MAAM;IAQ/B,cAAc,CAAC,SAAS,EAAE,MAAM;IAahC,OAAO,CAAC,mBAAmB;IAmD3B,OAAO,CAAC,cAAc;IAmBtB,aAAa,CACX,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,SAAS,UAAQ;IAwBb,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE;QACP,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;KAClC;IA+UH,UAAU,CAAC,SAAS,EAAE,MAAM;IAgB5B;;;OAGG;IACH,OAAO,IAAI,IAAI;CAuBhB;AAGD,OAAO,EAAE,aAAa,EAAE,CAAC;AAIzB,eAAO,MAAM,aAAa,EAAE,cAAoC,CAAC"}
|
package/dist/client/manager.js
CHANGED
|
@@ -580,7 +580,7 @@ class StreamManager {
|
|
|
580
580
|
// 意図: エラーイベントは catch に到達しない(failed フラグで分岐)ため、ここは接続エラーや中断のみ
|
|
581
581
|
if (isAbortError(error)) {
|
|
582
582
|
this.updateSession(sessionId, {
|
|
583
|
-
status: "
|
|
583
|
+
status: "aborted",
|
|
584
584
|
abortController: null,
|
|
585
585
|
}, true); // Immediate for status change
|
|
586
586
|
}
|
|
@@ -612,6 +612,11 @@ class StreamManager {
|
|
|
612
612
|
const session = this.state.sessions.get(sessionId);
|
|
613
613
|
if (session?.abortController) {
|
|
614
614
|
session.abortController.abort();
|
|
615
|
+
// ユーザーによる中断を明示的に示すため status を "aborted" に更新
|
|
616
|
+
this.updateSession(sessionId, {
|
|
617
|
+
status: "aborted",
|
|
618
|
+
abortController: null,
|
|
619
|
+
}, true);
|
|
615
620
|
}
|
|
616
621
|
}
|
|
617
622
|
/**
|
package/dist/client/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Message, JSONValue } from "../shared/index.js";
|
|
2
|
-
export type ChatStatus = "ready" | "submitted" | "streaming" | "error";
|
|
2
|
+
export type ChatStatus = "ready" | "submitted" | "streaming" | "error" | "aborted";
|
|
3
3
|
export type ChatSession = {
|
|
4
4
|
id: string;
|
|
5
5
|
messages: Message[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,SAAS,CAAC;AAEnF,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,eAAe,EAAE,eAAe,GAAG,IAAI,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,sBAAsB,CAChC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAC7D,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC;AAE1B,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;AAEzD,MAAM,MAAM,oBAAoB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AAEjE,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC;IAC5B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAE3D,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,EAAE;IACpC,IAAI,CAAC,EAAE,kBAAkB,CAAC;CAC3B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEpB,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,CACX,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,kBAAkB,CAAA;KAAE,KACnC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CACpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createChatHandler.d.ts","sourceRoot":"","sources":["../../src/server/createChatHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createChatHandler.d.ts","sourceRoot":"","sources":["../../src/server/createChatHandler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EAGb,iBAAiB,EAGlB,MAAM,YAAY,CAAC;AAKpB,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,GAAG,iBAAiB,CAmQ3E"}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import { OpenAI } from "openai";
|
|
2
1
|
import { isAbortError } from "../shared/error-utils.js";
|
|
3
2
|
// Implemented for usage inside Hono's `streamText()` callback.
|
|
4
3
|
export function createChatHandler(options) {
|
|
5
|
-
const {
|
|
6
|
-
// Convert single
|
|
7
|
-
const
|
|
4
|
+
const { providers, transforms = [], throttle, converter, onFinish, onError, messages, timeoutMs = 60000, temperature, } = options;
|
|
5
|
+
// Convert single provider config to array for consistent handling
|
|
6
|
+
const providerConfigs = Array.isArray(providers) ? providers : [providers];
|
|
8
7
|
// Store per-request metadata sender
|
|
9
8
|
let currentSendMetadata = null;
|
|
10
9
|
const handler = async (req, stream) => {
|
|
11
10
|
let chatStream;
|
|
12
11
|
let timeoutId;
|
|
13
12
|
let isAborted = false;
|
|
13
|
+
let currentModel = "";
|
|
14
|
+
let currentProvider = "openai";
|
|
14
15
|
// Content send control for throttling (applied to both chunk and fullContent)
|
|
15
16
|
let lastContentSendTime = 0;
|
|
16
17
|
// Tracks the accText length at last send. Used to compute delta size when sending chunks.
|
|
@@ -29,7 +30,6 @@ export function createChatHandler(options) {
|
|
|
29
30
|
clearTimeout(timeoutId);
|
|
30
31
|
});
|
|
31
32
|
try {
|
|
32
|
-
const requestBody = await req.json();
|
|
33
33
|
const startTime = Date.now();
|
|
34
34
|
let accText = "";
|
|
35
35
|
let usage;
|
|
@@ -49,33 +49,39 @@ export function createChatHandler(options) {
|
|
|
49
49
|
});
|
|
50
50
|
}, timeoutMs);
|
|
51
51
|
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
52
|
+
// Try each provider config until one succeeds
|
|
53
|
+
for (let i = 0; i < providerConfigs.length; i++) {
|
|
54
|
+
const config = providerConfigs[i];
|
|
55
|
+
// geminiでは"none"を指定することでreasoning_effortを無効化できる
|
|
56
|
+
let reasoningEffort = config.reasoningEffort ?? "none";
|
|
57
|
+
if (config.provider === "openai" && reasoningEffort === "none") {
|
|
58
|
+
reasoningEffort = undefined;
|
|
59
|
+
}
|
|
58
60
|
try {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
model: requestBody.options?.model || model,
|
|
61
|
+
// OpenAI provider
|
|
62
|
+
chatStream = config.openai.chat.completions.stream({
|
|
63
|
+
model: config.model,
|
|
63
64
|
messages,
|
|
65
|
+
temperature,
|
|
66
|
+
stream: true,
|
|
64
67
|
stream_options: { include_usage: true },
|
|
68
|
+
reasoning_effort: reasoningEffort,
|
|
65
69
|
});
|
|
70
|
+
currentModel = config.model;
|
|
71
|
+
currentProvider = config.provider;
|
|
66
72
|
break; // Success, exit retry loop
|
|
67
73
|
}
|
|
68
74
|
catch (error) {
|
|
69
|
-
// Continue to next
|
|
70
|
-
if (i ===
|
|
71
|
-
// This was the last
|
|
75
|
+
// Continue to next provider if available
|
|
76
|
+
if (i === providerConfigs.length - 1) {
|
|
77
|
+
// This was the last provider, rethrow the error
|
|
72
78
|
throw error;
|
|
73
79
|
}
|
|
74
80
|
}
|
|
75
81
|
}
|
|
76
82
|
// Ensure chatStream was successfully created
|
|
77
83
|
if (!chatStream) {
|
|
78
|
-
throw new Error("Failed to create chat stream with any
|
|
84
|
+
throw new Error("Failed to create chat stream with any provider");
|
|
79
85
|
}
|
|
80
86
|
// Stream abort is handled by onAbort above
|
|
81
87
|
for await (const chunk of chatStream) {
|
|
@@ -88,13 +94,13 @@ export function createChatHandler(options) {
|
|
|
88
94
|
prompt_tokens: chunk.usage.prompt_tokens,
|
|
89
95
|
completion_tokens: chunk.usage.completion_tokens,
|
|
90
96
|
total_tokens: chunk.usage.total_tokens,
|
|
97
|
+
reasoning_tokens: chunk.usage.completion_tokens_details?.reasoning_tokens,
|
|
91
98
|
};
|
|
92
99
|
}
|
|
93
100
|
if (delta?.content) {
|
|
94
101
|
let text = delta.content;
|
|
95
102
|
const ctx = {
|
|
96
103
|
accText,
|
|
97
|
-
request: requestBody,
|
|
98
104
|
sendMetadata,
|
|
99
105
|
};
|
|
100
106
|
for (const transform of transforms) {
|
|
@@ -143,7 +149,10 @@ export function createChatHandler(options) {
|
|
|
143
149
|
continue;
|
|
144
150
|
}
|
|
145
151
|
// If we have usage or this is the second iteration after finish, break
|
|
146
|
-
if (
|
|
152
|
+
if (
|
|
153
|
+
// finishReasonの後にusageが来るのでusageを持って終了とする
|
|
154
|
+
usage &&
|
|
155
|
+
finishReason) {
|
|
147
156
|
break;
|
|
148
157
|
}
|
|
149
158
|
}
|
|
@@ -153,7 +162,6 @@ export function createChatHandler(options) {
|
|
|
153
162
|
if (accText.length > lastContentSendLength) {
|
|
154
163
|
const ctx = {
|
|
155
164
|
accText,
|
|
156
|
-
request: requestBody,
|
|
157
165
|
sendMetadata,
|
|
158
166
|
};
|
|
159
167
|
if (converter) {
|
|
@@ -176,11 +184,10 @@ export function createChatHandler(options) {
|
|
|
176
184
|
clearTimeout(timeoutId);
|
|
177
185
|
if (onFinish && !isAborted) {
|
|
178
186
|
const finishInfo = {
|
|
179
|
-
model:
|
|
180
|
-
provider,
|
|
187
|
+
model: currentModel,
|
|
188
|
+
provider: currentProvider,
|
|
181
189
|
text: accText,
|
|
182
190
|
usage,
|
|
183
|
-
requestBody,
|
|
184
191
|
durationMs: Date.now() - startTime,
|
|
185
192
|
};
|
|
186
193
|
onFinish(finishInfo);
|
|
@@ -191,9 +198,8 @@ export function createChatHandler(options) {
|
|
|
191
198
|
clearTimeout(timeoutId);
|
|
192
199
|
if (isAbortError(error) || isAborted)
|
|
193
200
|
return;
|
|
194
|
-
const requestBody = req.body ? await req.json().catch(() => ({})) : {};
|
|
195
201
|
if (onError)
|
|
196
|
-
onError(error
|
|
202
|
+
onError(error);
|
|
197
203
|
const errorMessage = error instanceof Error ? error.message : "Unknown error";
|
|
198
204
|
await sendEvent("error", { message: errorMessage });
|
|
199
205
|
}
|
package/dist/server/types.d.ts
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import type { OpenAI } from "openai";
|
|
2
|
-
import type {
|
|
2
|
+
import type { JSONValue, Message } from "../shared/index.js";
|
|
3
3
|
import type { StreamingApi } from "hono/utils/stream.js";
|
|
4
4
|
export type HonoStreamType = StreamingApi;
|
|
5
5
|
export type Provider = "openai" | "gemini";
|
|
6
|
+
export type ProviderConfig = {
|
|
7
|
+
openai: OpenAI;
|
|
8
|
+
provider: Provider;
|
|
9
|
+
model: string;
|
|
10
|
+
reasoningEffort?: "none" | "low" | "medium" | "high";
|
|
11
|
+
};
|
|
6
12
|
export type FinishInfo = {
|
|
7
13
|
model: string;
|
|
8
14
|
provider: Provider;
|
|
@@ -11,14 +17,13 @@ export type FinishInfo = {
|
|
|
11
17
|
prompt_tokens?: number;
|
|
12
18
|
completion_tokens?: number;
|
|
13
19
|
total_tokens?: number;
|
|
20
|
+
reasoning_tokens?: number;
|
|
14
21
|
[k: string]: number | undefined;
|
|
15
22
|
};
|
|
16
|
-
requestBody: ChatRequest;
|
|
17
23
|
durationMs: number;
|
|
18
24
|
};
|
|
19
25
|
export type StreamTransformContext = {
|
|
20
26
|
accText: string;
|
|
21
|
-
request: ChatRequest;
|
|
22
27
|
sendMetadata: (meta: Record<string, JSONValue>) => void;
|
|
23
28
|
};
|
|
24
29
|
export type ServerEmitTools = {
|
|
@@ -36,15 +41,14 @@ export type ThrottleSettings = {
|
|
|
36
41
|
chars: number;
|
|
37
42
|
};
|
|
38
43
|
export type ServerOptions = {
|
|
39
|
-
|
|
40
|
-
provider?: Provider;
|
|
41
|
-
model: string;
|
|
42
|
-
openaiDefaults?: Record<string, JSONValue>;
|
|
44
|
+
providers: ProviderConfig | ProviderConfig[];
|
|
43
45
|
transforms?: StreamTransform[];
|
|
44
46
|
throttle?: ThrottleSettings | ((accTextLength: number) => ThrottleSettings);
|
|
45
47
|
converter?: ContentConverter;
|
|
46
48
|
onFinish?: (info: FinishInfo) => void;
|
|
47
|
-
onError?: (err: unknown
|
|
49
|
+
onError?: (err: unknown) => void;
|
|
48
50
|
timeoutMs?: number;
|
|
51
|
+
temperature?: number;
|
|
52
|
+
messages: Message[];
|
|
49
53
|
};
|
|
50
54
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC;AAE1C,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;CACtD,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE;QACN,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;KACjC,CAAC;IACF,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEhF,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG;IAC5C,OAAO,EAAE,WAAW,CAAC;IACrB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,CAC5B,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,sBAAsB,KACxB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAE9B,MAAM,MAAM,gBAAgB,GAAG,CAC7B,eAAe,EAAE,MAAM,EACvB,GAAG,EAAE,sBAAsB,KACxB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAE9B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,EAAE,cAAc,GAAG,cAAc,EAAE,CAAC;IAC7C,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAC/B,QAAQ,CAAC,EAAE,gBAAgB,GAAG,CAAC,CAAC,aAAa,EAAE,MAAM,KAAK,gBAAgB,CAAC,CAAC;IAC5E,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB,CAAC"}
|
package/dist/shared/wire.d.ts
CHANGED
|
@@ -1,19 +1,10 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export type
|
|
3
|
-
messages: Message[];
|
|
4
|
-
body?: Record<string, JSONValue>;
|
|
5
|
-
options?: {
|
|
6
|
-
model?: string;
|
|
7
|
-
openai?: Record<string, JSONValue>;
|
|
8
|
-
abortable?: boolean;
|
|
9
|
-
};
|
|
10
|
-
};
|
|
11
|
-
export type SSEEventType = 'chunk' | 'fullContent' | 'metadata' | 'error' | 'done';
|
|
1
|
+
import type { JSONValue } from "./types.js";
|
|
2
|
+
export type SSEEventType = "chunk" | "fullContent" | "metadata" | "error" | "done";
|
|
12
3
|
export type SSEChunkData = {
|
|
13
4
|
text: string;
|
|
14
5
|
};
|
|
15
6
|
export type SSEFullContentData = {
|
|
16
|
-
type:
|
|
7
|
+
type: "replace";
|
|
17
8
|
content: string;
|
|
18
9
|
};
|
|
19
10
|
export type SSEMetadataData = {
|
|
@@ -25,19 +16,19 @@ export type SSEErrorData = {
|
|
|
25
16
|
};
|
|
26
17
|
export type SSEDoneData = null;
|
|
27
18
|
export type SSEEvent = {
|
|
28
|
-
event:
|
|
19
|
+
event: "chunk";
|
|
29
20
|
data: SSEChunkData;
|
|
30
21
|
} | {
|
|
31
|
-
event:
|
|
22
|
+
event: "fullContent";
|
|
32
23
|
data: SSEFullContentData;
|
|
33
24
|
} | {
|
|
34
|
-
event:
|
|
25
|
+
event: "metadata";
|
|
35
26
|
data: SSEMetadataData;
|
|
36
27
|
} | {
|
|
37
|
-
event:
|
|
28
|
+
event: "error";
|
|
38
29
|
data: SSEErrorData;
|
|
39
30
|
} | {
|
|
40
|
-
event:
|
|
31
|
+
event: "done";
|
|
41
32
|
data: SSEDoneData;
|
|
42
33
|
};
|
|
43
34
|
//# sourceMappingURL=wire.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../src/shared/wire.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../src/shared/wire.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,MAAM,YAAY,GACpB,OAAO,GACP,aAAa,GACb,UAAU,GACV,OAAO,GACP,MAAM,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC;AAE/B,MAAM,MAAM,QAAQ,GAChB;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,YAAY,CAAA;CAAE,GACtC;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAClD;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,eAAe,CAAA;CAAE,GAC5C;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,YAAY,CAAA;CAAE,GACtC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC"}
|