@actalk/inkos-core 1.6.3 → 1.7.0-canary.53.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/dist/agent/agent-session.d.ts.map +1 -1
- package/dist/agent/agent-session.js +21 -11
- package/dist/agent/agent-session.js.map +1 -1
- package/dist/agent/agent-system-prompt.d.ts.map +1 -1
- package/dist/agent/agent-system-prompt.js +14 -8
- package/dist/agent/agent-system-prompt.js.map +1 -1
- package/dist/agent/agent-tools.d.ts +34 -2
- package/dist/agent/agent-tools.d.ts.map +1 -1
- package/dist/agent/agent-tools.js +236 -54
- package/dist/agent/agent-tools.js.map +1 -1
- package/dist/agent/chapter-import-source.d.ts +15 -0
- package/dist/agent/chapter-import-source.d.ts.map +1 -0
- package/dist/agent/chapter-import-source.js +41 -0
- package/dist/agent/chapter-import-source.js.map +1 -0
- package/dist/agent/film-authoring-tools.d.ts +5 -3
- package/dist/agent/film-authoring-tools.d.ts.map +1 -1
- package/dist/agent/film-authoring-tools.js +34 -19
- package/dist/agent/film-authoring-tools.js.map +1 -1
- package/dist/agent/index.d.ts +1 -1
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +1 -1
- package/dist/agent/index.js.map +1 -1
- package/dist/agents/base.d.ts +1 -0
- package/dist/agents/base.d.ts.map +1 -1
- package/dist/agents/base.js +2 -0
- package/dist/agents/base.js.map +1 -1
- package/dist/agents/script-storyboard.d.ts +3 -0
- package/dist/agents/script-storyboard.d.ts.map +1 -1
- package/dist/agents/script-storyboard.js +221 -14
- package/dist/agents/script-storyboard.js.map +1 -1
- package/dist/agents/short-fiction.d.ts +13 -2
- package/dist/agents/short-fiction.d.ts.map +1 -1
- package/dist/agents/short-fiction.js +77 -43
- package/dist/agents/short-fiction.js.map +1 -1
- package/dist/index.d.ts +8 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -8
- package/dist/index.js.map +1 -1
- package/dist/interaction/action-envelope.d.ts +53 -1
- package/dist/interaction/action-envelope.d.ts.map +1 -1
- package/dist/interaction/action-envelope.js +9 -0
- package/dist/interaction/action-envelope.js.map +1 -1
- package/dist/interaction/intents.d.ts +2 -2
- package/dist/interaction/project-control.d.ts +1 -1
- package/dist/interactive-film/generate.d.ts +1 -0
- package/dist/interactive-film/generate.d.ts.map +1 -1
- package/dist/interactive-film/generate.js +15 -5
- package/dist/interactive-film/generate.js.map +1 -1
- package/dist/llm/provider.d.ts +1 -0
- package/dist/llm/provider.d.ts.map +1 -1
- package/dist/llm/provider.js +64 -18
- package/dist/llm/provider.js.map +1 -1
- package/dist/llm/providers/endpoints/openrouter.d.ts.map +1 -1
- package/dist/llm/providers/endpoints/openrouter.js +3 -2
- package/dist/llm/providers/endpoints/openrouter.js.map +1 -1
- package/dist/llm/think-tag-stripper.d.ts +15 -0
- package/dist/llm/think-tag-stripper.d.ts.map +1 -0
- package/dist/llm/think-tag-stripper.js +60 -0
- package/dist/llm/think-tag-stripper.js.map +1 -0
- package/dist/materials/ingest.d.ts.map +1 -1
- package/dist/materials/ingest.js +4 -3
- package/dist/materials/ingest.js.map +1 -1
- package/dist/materials/retrieve.d.ts.map +1 -1
- package/dist/materials/retrieve.js +3 -1
- package/dist/materials/retrieve.js.map +1 -1
- package/dist/models/book.d.ts +28 -0
- package/dist/models/book.d.ts.map +1 -1
- package/dist/models/book.js +22 -0
- package/dist/models/book.js.map +1 -1
- package/dist/models/project.d.ts +40 -0
- package/dist/models/project.d.ts.map +1 -1
- package/dist/models/project.js +5 -0
- package/dist/models/project.js.map +1 -1
- package/dist/notify/dispatcher.d.ts.map +1 -1
- package/dist/notify/dispatcher.js +8 -5
- package/dist/notify/dispatcher.js.map +1 -1
- package/dist/notify/feishu.d.ts +2 -1
- package/dist/notify/feishu.d.ts.map +1 -1
- package/dist/notify/feishu.js +12 -6
- package/dist/notify/feishu.js.map +1 -1
- package/dist/notify/format.d.ts +12 -0
- package/dist/notify/format.d.ts.map +1 -0
- package/dist/notify/format.js +11 -0
- package/dist/notify/format.js.map +1 -0
- package/dist/notify/telegram.d.ts +2 -1
- package/dist/notify/telegram.d.ts.map +1 -1
- package/dist/notify/telegram.js +3 -2
- package/dist/notify/telegram.js.map +1 -1
- package/dist/notify/wechat-work.d.ts +2 -1
- package/dist/notify/wechat-work.d.ts.map +1 -1
- package/dist/notify/wechat-work.js +5 -5
- package/dist/notify/wechat-work.js.map +1 -1
- package/dist/pipeline/runner.d.ts +13 -1
- package/dist/pipeline/runner.d.ts.map +1 -1
- package/dist/pipeline/runner.js +41 -7
- package/dist/pipeline/runner.js.map +1 -1
- package/dist/pipeline/script-storyboard-runner.d.ts +3 -0
- package/dist/pipeline/script-storyboard-runner.d.ts.map +1 -1
- package/dist/pipeline/script-storyboard-runner.js +86 -43
- package/dist/pipeline/script-storyboard-runner.js.map +1 -1
- package/dist/pipeline/short-fiction-runner.d.ts +3 -1
- package/dist/pipeline/short-fiction-runner.d.ts.map +1 -1
- package/dist/pipeline/short-fiction-runner.js +80 -33
- package/dist/pipeline/short-fiction-runner.js.map +1 -1
- package/dist/play/play-runner.d.ts +8 -0
- package/dist/play/play-runner.d.ts.map +1 -1
- package/dist/play/play-runner.js +14 -0
- package/dist/play/play-runner.js.map +1 -1
- package/dist/prompts/short-fiction.d.ts +14 -13
- package/dist/prompts/short-fiction.d.ts.map +1 -1
- package/dist/prompts/short-fiction.js +253 -14
- package/dist/prompts/short-fiction.js.map +1 -1
- package/dist/state/manager.d.ts +16 -2
- package/dist/state/manager.d.ts.map +1 -1
- package/dist/state/manager.js +218 -31
- package/dist/state/manager.js.map +1 -1
- package/dist/translation/epub.d.ts +10 -0
- package/dist/translation/epub.d.ts.map +1 -0
- package/dist/translation/epub.js +86 -0
- package/dist/translation/epub.js.map +1 -0
- package/dist/translation/export.d.ts +6 -0
- package/dist/translation/export.d.ts.map +1 -0
- package/dist/translation/export.js +68 -0
- package/dist/translation/export.js.map +1 -0
- package/dist/translation/index.d.ts +9 -0
- package/dist/translation/index.d.ts.map +1 -0
- package/dist/translation/index.js +9 -0
- package/dist/translation/index.js.map +1 -0
- package/dist/translation/llm-model.d.ts +8 -0
- package/dist/translation/llm-model.d.ts.map +1 -0
- package/dist/translation/llm-model.js +134 -0
- package/dist/translation/llm-model.js.map +1 -0
- package/dist/translation/project.d.ts +3 -0
- package/dist/translation/project.d.ts.map +1 -0
- package/dist/translation/project.js +76 -0
- package/dist/translation/project.js.map +1 -0
- package/dist/translation/run-store.d.ts +11 -0
- package/dist/translation/run-store.d.ts.map +1 -0
- package/dist/translation/run-store.js +53 -0
- package/dist/translation/run-store.js.map +1 -0
- package/dist/translation/runner.d.ts +6 -0
- package/dist/translation/runner.d.ts.map +1 -0
- package/dist/translation/runner.js +88 -0
- package/dist/translation/runner.js.map +1 -0
- package/dist/translation/source.d.ts +12 -0
- package/dist/translation/source.d.ts.map +1 -0
- package/dist/translation/source.js +66 -0
- package/dist/translation/source.js.map +1 -0
- package/dist/translation/text.d.ts +10 -0
- package/dist/translation/text.d.ts.map +1 -0
- package/dist/translation/text.js +77 -0
- package/dist/translation/text.js.map +1 -0
- package/dist/translation/types.d.ts +96 -0
- package/dist/translation/types.d.ts.map +1 -0
- package/dist/translation/types.js +2 -0
- package/dist/translation/types.js.map +1 -0
- package/dist/utils/effective-llm-config.js +19 -1
- package/dist/utils/effective-llm-config.js.map +1 -1
- package/dist/utils/posix-path.d.ts +2 -0
- package/dist/utils/posix-path.d.ts.map +1 -0
- package/dist/utils/posix-path.js +7 -0
- package/dist/utils/posix-path.js.map +1 -0
- package/package.json +4 -3
|
@@ -3,7 +3,7 @@ import { type PlayMode } from "./session.js";
|
|
|
3
3
|
export declare const ActionSourceSchema: z.ZodEnum<["free-text", "button", "slash", "quick-action"]>;
|
|
4
4
|
export type ActionSource = z.infer<typeof ActionSourceSchema>;
|
|
5
5
|
export declare const SkillIdSchema: z.ZodString;
|
|
6
|
-
export declare const RequestedIntentSchema: z.ZodEnum<["create_book", "write_next", "short_run", "play_start", "play_step", "generate_cover", "edit_artifact", "fanfic_init", "continuation_import", "spinoff_create", "style_imitation", "script_create", "storyboard_create", "interactive_film_create", "draft_structure", "connect_choice", "remove_node"]>;
|
|
6
|
+
export declare const RequestedIntentSchema: z.ZodEnum<["create_book", "write_next", "short_run", "play_start", "play_step", "generate_cover", "edit_artifact", "fanfic_init", "continuation_import", "spinoff_create", "style_imitation", "script_create", "storyboard_create", "interactive_film_create", "translation_create", "draft_structure", "connect_choice", "remove_node"]>;
|
|
7
7
|
export type RequestedIntent = z.infer<typeof RequestedIntentSchema>;
|
|
8
8
|
export declare const CreateBookActionPayloadSchema: z.ZodObject<{
|
|
9
9
|
title: z.ZodOptional<z.ZodString>;
|
|
@@ -205,6 +205,25 @@ export declare const InteractiveFilmCreateActionPayloadSchema: z.ZodObject<{
|
|
|
205
205
|
budget?: string | undefined;
|
|
206
206
|
referenceMode?: string | undefined;
|
|
207
207
|
}>;
|
|
208
|
+
export declare const TranslationCreateActionPayloadSchema: z.ZodObject<{
|
|
209
|
+
filePath: z.ZodOptional<z.ZodString>;
|
|
210
|
+
sourceLanguage: z.ZodOptional<z.ZodString>;
|
|
211
|
+
targetLanguage: z.ZodOptional<z.ZodString>;
|
|
212
|
+
title: z.ZodOptional<z.ZodString>;
|
|
213
|
+
segmentMaxChars: z.ZodOptional<z.ZodNumber>;
|
|
214
|
+
}, "strict", z.ZodTypeAny, {
|
|
215
|
+
title?: string | undefined;
|
|
216
|
+
filePath?: string | undefined;
|
|
217
|
+
sourceLanguage?: string | undefined;
|
|
218
|
+
targetLanguage?: string | undefined;
|
|
219
|
+
segmentMaxChars?: number | undefined;
|
|
220
|
+
}, {
|
|
221
|
+
title?: string | undefined;
|
|
222
|
+
filePath?: string | undefined;
|
|
223
|
+
sourceLanguage?: string | undefined;
|
|
224
|
+
targetLanguage?: string | undefined;
|
|
225
|
+
segmentMaxChars?: number | undefined;
|
|
226
|
+
}>;
|
|
208
227
|
export declare const ActionPayloadSchema: z.ZodObject<{
|
|
209
228
|
createBook: z.ZodOptional<z.ZodObject<{
|
|
210
229
|
title: z.ZodOptional<z.ZodString>;
|
|
@@ -405,6 +424,25 @@ export declare const ActionPayloadSchema: z.ZodObject<{
|
|
|
405
424
|
budget?: string | undefined;
|
|
406
425
|
referenceMode?: string | undefined;
|
|
407
426
|
}>>;
|
|
427
|
+
translationCreate: z.ZodOptional<z.ZodObject<{
|
|
428
|
+
filePath: z.ZodOptional<z.ZodString>;
|
|
429
|
+
sourceLanguage: z.ZodOptional<z.ZodString>;
|
|
430
|
+
targetLanguage: z.ZodOptional<z.ZodString>;
|
|
431
|
+
title: z.ZodOptional<z.ZodString>;
|
|
432
|
+
segmentMaxChars: z.ZodOptional<z.ZodNumber>;
|
|
433
|
+
}, "strict", z.ZodTypeAny, {
|
|
434
|
+
title?: string | undefined;
|
|
435
|
+
filePath?: string | undefined;
|
|
436
|
+
sourceLanguage?: string | undefined;
|
|
437
|
+
targetLanguage?: string | undefined;
|
|
438
|
+
segmentMaxChars?: number | undefined;
|
|
439
|
+
}, {
|
|
440
|
+
title?: string | undefined;
|
|
441
|
+
filePath?: string | undefined;
|
|
442
|
+
sourceLanguage?: string | undefined;
|
|
443
|
+
targetLanguage?: string | undefined;
|
|
444
|
+
segmentMaxChars?: number | undefined;
|
|
445
|
+
}>>;
|
|
408
446
|
draftStructure: z.ZodOptional<z.ZodObject<{
|
|
409
447
|
projectId: z.ZodOptional<z.ZodString>;
|
|
410
448
|
instruction: z.ZodDefault<z.ZodString>;
|
|
@@ -748,6 +786,13 @@ export declare const ActionPayloadSchema: z.ZodObject<{
|
|
|
748
786
|
budget?: string | undefined;
|
|
749
787
|
referenceMode?: string | undefined;
|
|
750
788
|
} | undefined;
|
|
789
|
+
translationCreate?: {
|
|
790
|
+
title?: string | undefined;
|
|
791
|
+
filePath?: string | undefined;
|
|
792
|
+
sourceLanguage?: string | undefined;
|
|
793
|
+
targetLanguage?: string | undefined;
|
|
794
|
+
segmentMaxChars?: number | undefined;
|
|
795
|
+
} | undefined;
|
|
751
796
|
draftStructure?: {
|
|
752
797
|
instruction: string;
|
|
753
798
|
projectId?: string | undefined;
|
|
@@ -867,6 +912,13 @@ export declare const ActionPayloadSchema: z.ZodObject<{
|
|
|
867
912
|
budget?: string | undefined;
|
|
868
913
|
referenceMode?: string | undefined;
|
|
869
914
|
} | undefined;
|
|
915
|
+
translationCreate?: {
|
|
916
|
+
title?: string | undefined;
|
|
917
|
+
filePath?: string | undefined;
|
|
918
|
+
sourceLanguage?: string | undefined;
|
|
919
|
+
targetLanguage?: string | undefined;
|
|
920
|
+
segmentMaxChars?: number | undefined;
|
|
921
|
+
} | undefined;
|
|
870
922
|
draftStructure?: {
|
|
871
923
|
instruction?: string | undefined;
|
|
872
924
|
projectId?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-envelope.d.ts","sourceRoot":"","sources":["../../src/interaction/action-envelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAC;AAG7D,eAAO,MAAM,kBAAkB,6DAA2D,CAAC;AAC3F,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,aAAa,aAGwD,CAAC;AAEnF,eAAO,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"action-envelope.d.ts","sourceRoot":"","sources":["../../src/interaction/action-envelope.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@ export const RequestedIntentSchema = z.enum([
|
|
|
21
21
|
"script_create",
|
|
22
22
|
"storyboard_create",
|
|
23
23
|
"interactive_film_create",
|
|
24
|
+
"translation_create",
|
|
24
25
|
"draft_structure",
|
|
25
26
|
"connect_choice",
|
|
26
27
|
"remove_node",
|
|
@@ -103,6 +104,13 @@ export const InteractiveFilmCreateActionPayloadSchema = z.object({
|
|
|
103
104
|
projectId: z.string().min(1).optional(),
|
|
104
105
|
outDir: z.string().min(1).optional(),
|
|
105
106
|
}).strict();
|
|
107
|
+
export const TranslationCreateActionPayloadSchema = z.object({
|
|
108
|
+
filePath: z.string().min(1).optional(),
|
|
109
|
+
sourceLanguage: z.string().min(1).optional(),
|
|
110
|
+
targetLanguage: z.string().min(1).optional(),
|
|
111
|
+
title: z.string().min(1).optional(),
|
|
112
|
+
segmentMaxChars: z.number().int().min(1).optional(),
|
|
113
|
+
}).strict();
|
|
106
114
|
export const ActionPayloadSchema = z.object({
|
|
107
115
|
createBook: CreateBookActionPayloadSchema.optional(),
|
|
108
116
|
shortRun: ShortRunActionPayloadSchema.optional(),
|
|
@@ -111,6 +119,7 @@ export const ActionPayloadSchema = z.object({
|
|
|
111
119
|
scriptCreate: ScriptCreateActionPayloadSchema.optional(),
|
|
112
120
|
storyboardCreate: StoryboardCreateActionPayloadSchema.optional(),
|
|
113
121
|
interactiveFilmCreate: InteractiveFilmCreateActionPayloadSchema.optional(),
|
|
122
|
+
translationCreate: TranslationCreateActionPayloadSchema.optional(),
|
|
114
123
|
draftStructure: z.object({
|
|
115
124
|
projectId: z.string().min(1).optional(),
|
|
116
125
|
instruction: z.string().default(""),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-envelope.js","sourceRoot":"","sources":["../../src/interaction/action-envelope.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"action-envelope.js","sourceRoot":"","sources":["../../src/interaction/action-envelope.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,6 +40,7 @@ export declare const InteractionRequestSchema: z.ZodObject<{
|
|
|
40
40
|
targetChapters?: number | undefined;
|
|
41
41
|
chapterWordCount?: number | undefined;
|
|
42
42
|
language?: "zh" | "en" | undefined;
|
|
43
|
+
format?: "txt" | "md" | "epub" | undefined;
|
|
43
44
|
protagonist?: string | undefined;
|
|
44
45
|
mode?: "auto" | "manual" | "semi" | undefined;
|
|
45
46
|
authorIntent?: string | undefined;
|
|
@@ -54,7 +55,6 @@ export declare const InteractionRequestSchema: z.ZodObject<{
|
|
|
54
55
|
conflictCore?: string | undefined;
|
|
55
56
|
constraints?: string | undefined;
|
|
56
57
|
fileName?: string | undefined;
|
|
57
|
-
format?: "txt" | "md" | "epub" | undefined;
|
|
58
58
|
approvedOnly?: boolean | undefined;
|
|
59
59
|
outputPath?: string | undefined;
|
|
60
60
|
oldValue?: string | undefined;
|
|
@@ -71,6 +71,7 @@ export declare const InteractionRequestSchema: z.ZodObject<{
|
|
|
71
71
|
targetChapters?: number | undefined;
|
|
72
72
|
chapterWordCount?: number | undefined;
|
|
73
73
|
language?: "zh" | "en" | undefined;
|
|
74
|
+
format?: "txt" | "md" | "epub" | undefined;
|
|
74
75
|
protagonist?: string | undefined;
|
|
75
76
|
mode?: "auto" | "manual" | "semi" | undefined;
|
|
76
77
|
authorIntent?: string | undefined;
|
|
@@ -85,7 +86,6 @@ export declare const InteractionRequestSchema: z.ZodObject<{
|
|
|
85
86
|
conflictCore?: string | undefined;
|
|
86
87
|
constraints?: string | undefined;
|
|
87
88
|
fileName?: string | undefined;
|
|
88
|
-
format?: "txt" | "md" | "epub" | undefined;
|
|
89
89
|
approvedOnly?: boolean | undefined;
|
|
90
90
|
outputPath?: string | undefined;
|
|
91
91
|
oldValue?: string | undefined;
|
|
@@ -14,6 +14,7 @@ export declare function processProjectInteractionRequest(params: {
|
|
|
14
14
|
targetChapters?: number | undefined;
|
|
15
15
|
chapterWordCount?: number | undefined;
|
|
16
16
|
language?: "zh" | "en" | undefined;
|
|
17
|
+
format?: "txt" | "md" | "epub" | undefined;
|
|
17
18
|
protagonist?: string | undefined;
|
|
18
19
|
mode?: "auto" | "manual" | "semi" | undefined;
|
|
19
20
|
authorIntent?: string | undefined;
|
|
@@ -28,7 +29,6 @@ export declare function processProjectInteractionRequest(params: {
|
|
|
28
29
|
conflictCore?: string | undefined;
|
|
29
30
|
constraints?: string | undefined;
|
|
30
31
|
fileName?: string | undefined;
|
|
31
|
-
format?: "txt" | "md" | "epub" | undefined;
|
|
32
32
|
approvedOnly?: boolean | undefined;
|
|
33
33
|
outputPath?: string | undefined;
|
|
34
34
|
oldValue?: string | undefined;
|
|
@@ -9,5 +9,6 @@ export interface GenerateStoryGraphInput {
|
|
|
9
9
|
}
|
|
10
10
|
export declare function generateStoryGraph(client: LLMClient, model: string, input: GenerateStoryGraphInput, options?: {
|
|
11
11
|
readonly maxTokens?: number;
|
|
12
|
+
readonly language?: "zh" | "en";
|
|
12
13
|
}): Promise<StoryGraph>;
|
|
13
14
|
//# sourceMappingURL=generate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/interactive-film/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/interactive-film/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AActE,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CASjD;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,UAAU,CAOtF;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,uBAAuB,EAC9B,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;CAAE,GACzE,OAAO,CAAC,UAAU,CAAC,CAWrB"}
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
import { chatCompletion } from "../llm/provider.js";
|
|
2
2
|
import { StoryGraphSchema } from "./graph-schema.js";
|
|
3
|
-
const
|
|
3
|
+
const GRAPH_JSON_SHAPE = `{"schemaVersion":1,"projectId":"","title":"","variables":[{"name":"","type":"flag|counter|relationship|item","default":0,"desc":""}],"nodes":[{"id":"","title":"","type":"start|normal|branch|ending","sceneDesc":"","dialogue":[{"speaker":"","text":"","emotion":""}],"choices":[{"id":"","text":"","targetNodeId":"","condition":{"var":"","op":">=","value":0},"effects":[{"var":"","op":"add","value":1}]}]}],"endings":[{"id":"","nodeId":"","title":"","type":"good|bad|neutral|secret","description":""}]}`;
|
|
4
|
+
const SYSTEM_PROMPT_ZH = `你是互动影游编剧。根据用户的故事前提,生成一个小而完整的可玩分支图。
|
|
4
5
|
严格只输出 JSON,结构如下:
|
|
5
|
-
{
|
|
6
|
+
${GRAPH_JSON_SHAPE}
|
|
6
7
|
要求:恰好 1 个 type=start 节点;至少 2 个 branch 节点;至少 2 个差异化 ending;每条路径都能到达某个 ending;condition/effects 可省略;不要输出 JSON 以外的任何文字。`;
|
|
8
|
+
const SYSTEM_PROMPT_EN = `You are an interactive film scriptwriter. From the user's story premise, generate a small but complete playable branching graph.
|
|
9
|
+
Output strictly JSON, with this structure:
|
|
10
|
+
${GRAPH_JSON_SHAPE}
|
|
11
|
+
Requirements: exactly 1 node with type=start; at least 2 branch nodes; at least 2 clearly differentiated endings; every path must reach some ending; condition/effects may be omitted; output nothing besides the JSON.`;
|
|
7
12
|
export function extractJson(text) {
|
|
8
13
|
const fenced = text.match(/```(?:json)?\s*([\s\S]*?)```/);
|
|
9
14
|
const body = fenced ? fenced[1] : text;
|
|
10
15
|
const start = body.indexOf("{");
|
|
11
16
|
const end = body.lastIndexOf("}");
|
|
12
17
|
if (start === -1 || end === -1 || end <= start) {
|
|
13
|
-
throw new Error("LLM 未返回可解析的 JSON 对象");
|
|
18
|
+
throw new Error("LLM did not return a parseable JSON object / LLM 未返回可解析的 JSON 对象");
|
|
14
19
|
}
|
|
15
20
|
return JSON.parse(body.slice(start, end + 1));
|
|
16
21
|
}
|
|
@@ -23,9 +28,14 @@ export function buildStoryGraphFromLLMText(text, projectId) {
|
|
|
23
28
|
return graph;
|
|
24
29
|
}
|
|
25
30
|
export async function generateStoryGraph(client, model, input, options) {
|
|
31
|
+
const language = options?.language ?? "zh";
|
|
32
|
+
const systemPrompt = language === "en" ? SYSTEM_PROMPT_EN : SYSTEM_PROMPT_ZH;
|
|
33
|
+
const userPrompt = language === "en"
|
|
34
|
+
? `Title: ${input.title}\nPremise: ${input.premise}`
|
|
35
|
+
: `标题:${input.title}\n前提:${input.premise}`;
|
|
26
36
|
const res = await chatCompletion(client, model, [
|
|
27
|
-
{ role: "system", content:
|
|
28
|
-
{ role: "user", content:
|
|
37
|
+
{ role: "system", content: systemPrompt },
|
|
38
|
+
{ role: "user", content: userPrompt },
|
|
29
39
|
], { temperature: 0.5, maxTokens: options?.maxTokens ?? 8000 });
|
|
30
40
|
return buildStoryGraphFromLLMText(res.content, input.projectId);
|
|
31
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/interactive-film/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAkB,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,mBAAmB,CAAC;AAEtE,MAAM,
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/interactive-film/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAkB,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,mBAAmB,CAAC;AAEtE,MAAM,gBAAgB,GAAG,ofAAof,CAAC;AAE9gB,MAAM,gBAAgB,GAAG;;EAEvB,gBAAgB;qHACmG,CAAC;AAEtH,MAAM,gBAAgB,GAAG;;EAEvB,gBAAgB;wNACsM,CAAC;AAEzN,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAAY,EAAE,SAAiB;IACxE,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAA4B,CAAC;IAC5D,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAC/D,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAQD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAiB,EACjB,KAAa,EACb,KAA8B,EAC9B,OAA0E;IAE1E,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,IAAI,CAAC;IAC3C,MAAM,YAAY,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC7E,MAAM,UAAU,GAAG,QAAQ,KAAK,IAAI;QAClC,CAAC,CAAC,UAAU,KAAK,CAAC,KAAK,cAAc,KAAK,CAAC,OAAO,EAAE;QACpD,CAAC,CAAC,MAAM,KAAK,CAAC,KAAK,QAAQ,KAAK,CAAC,OAAO,EAAE,CAAC;IAC7C,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE;QAC9C,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE;QACzC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE;KACtC,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI,IAAI,EAAE,CAAC,CAAC;IAChE,OAAO,0BAA0B,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;AAClE,CAAC"}
|
package/dist/llm/provider.d.ts
CHANGED
|
@@ -91,6 +91,7 @@ export declare function chatCompletion(client: LLMClient, model: string, message
|
|
|
91
91
|
readonly webSearch?: boolean;
|
|
92
92
|
readonly onStreamProgress?: OnStreamProgress;
|
|
93
93
|
readonly onTextDelta?: (text: string) => void;
|
|
94
|
+
readonly signal?: AbortSignal;
|
|
94
95
|
readonly retry?: boolean;
|
|
95
96
|
}): Promise<LLMResponse>;
|
|
96
97
|
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/llm/provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAKtD,OAAO,KAAK,EACV,GAAG,IAAI,KAAK,EACZ,KAAK,IAAI,OAAO,EAChB,OAAO,IAAI,SAAS,EAErB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/llm/provider.ts"],"names":[],"mappings":"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"}
|
package/dist/llm/provider.js
CHANGED
|
@@ -5,6 +5,7 @@ import { lookupModel } from "./providers/lookup.js";
|
|
|
5
5
|
import { fetchWithProxy } from "../utils/proxy-fetch.js";
|
|
6
6
|
import { isApiKeyOptionalForEndpoint } from "../utils/llm-endpoint-auth.js";
|
|
7
7
|
import { isLlmStubEnabled, stubChatCompletion } from "../agent/llm-stub.js";
|
|
8
|
+
import { createLeadingThinkTagStripper, stripLeadingThinkBlock } from "./think-tag-stripper.js";
|
|
8
9
|
const INKOS_USER_AGENT = "InkOS/1.3.5";
|
|
9
10
|
const UNKNOWN_MODEL_FALLBACK_MAX_TOKENS = 8192 * 3;
|
|
10
11
|
const TRANSIENT_LLM_RETRIES = 2;
|
|
@@ -473,6 +474,7 @@ async function withTransientLLMRetry(run, options) {
|
|
|
473
474
|
const enabled = options?.enabled ?? true;
|
|
474
475
|
let lastError;
|
|
475
476
|
for (let attempt = 0; attempt <= TRANSIENT_LLM_RETRIES; attempt++) {
|
|
477
|
+
options?.signal?.throwIfAborted();
|
|
476
478
|
try {
|
|
477
479
|
return await run();
|
|
478
480
|
}
|
|
@@ -485,11 +487,29 @@ async function withTransientLLMRetry(run, options) {
|
|
|
485
487
|
}
|
|
486
488
|
// Back off before retrying — immediate re-fire on a 429/503 just makes it
|
|
487
489
|
// worse. Linear is enough for a 2-retry budget (~0.8s, ~1.6s).
|
|
488
|
-
await
|
|
490
|
+
await abortableDelay(800 * (attempt + 1), options?.signal);
|
|
489
491
|
}
|
|
490
492
|
}
|
|
491
493
|
throw lastError;
|
|
492
494
|
}
|
|
495
|
+
async function abortableDelay(delayMs, signal) {
|
|
496
|
+
if (!signal) {
|
|
497
|
+
await new Promise((resolveDelay) => setTimeout(resolveDelay, delayMs));
|
|
498
|
+
return;
|
|
499
|
+
}
|
|
500
|
+
signal.throwIfAborted();
|
|
501
|
+
await new Promise((resolveDelay, rejectDelay) => {
|
|
502
|
+
const timer = setTimeout(() => {
|
|
503
|
+
signal.removeEventListener("abort", onAbort);
|
|
504
|
+
resolveDelay();
|
|
505
|
+
}, delayMs);
|
|
506
|
+
const onAbort = () => {
|
|
507
|
+
clearTimeout(timer);
|
|
508
|
+
rejectDelay(signal.reason ?? new Error("LLM request aborted"));
|
|
509
|
+
};
|
|
510
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
511
|
+
});
|
|
512
|
+
}
|
|
493
513
|
function shouldUseNativeCustomTransport(client) {
|
|
494
514
|
if (client.service === "minimax" && client.provider === "openai") {
|
|
495
515
|
return true;
|
|
@@ -524,11 +544,17 @@ function buildCustomHeaders(client) {
|
|
|
524
544
|
}) ?? { "Content-Type": "application/json" };
|
|
525
545
|
}
|
|
526
546
|
function defaultOpenAIChatExtra(client, model) {
|
|
527
|
-
if (client.service
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
547
|
+
if (client.service !== "minimax")
|
|
548
|
+
return {};
|
|
549
|
+
// MiniMax OpenAI 兼容端点(issue #329):
|
|
550
|
+
// - reasoning_split: true 让 thinking 拆分到 reasoning_content / reasoning_details,
|
|
551
|
+
// 不再以 <think>...</think> 内联在 content 里。M2.x 系列的 thinking 无法关闭,
|
|
552
|
+
// 不拆分的话思考内容会混进章节/对话正文。
|
|
553
|
+
// - M3 系列额外默认关闭 thinking(M2.x 不支持 thinking 参数,不能发送)。
|
|
554
|
+
return {
|
|
555
|
+
reasoning_split: true,
|
|
556
|
+
...(/^minimax-m3(?:$|[-_.])/i.test(model) ? { thinking: { type: "disabled" } } : {}),
|
|
557
|
+
};
|
|
532
558
|
}
|
|
533
559
|
function sanitizeHeaderApiKey(apiKey) {
|
|
534
560
|
const trimmed = apiKey?.trim() ?? "";
|
|
@@ -658,7 +684,11 @@ function extractChatDeltaContent(json) {
|
|
|
658
684
|
return extractOpenAITextPart(json?.choices?.[0]?.delta?.content);
|
|
659
685
|
}
|
|
660
686
|
function extractChatDeltaReasoningContent(json) {
|
|
661
|
-
|
|
687
|
+
const delta = json?.choices?.[0]?.delta;
|
|
688
|
+
// MiniMax reasoning_split 模式下流式 thinking 走 delta.reasoning_details
|
|
689
|
+
//([{ text: "..." }] 数组);其它服务走 delta.reasoning_content。
|
|
690
|
+
return extractOpenAITextPart(delta?.reasoning_content)
|
|
691
|
+
|| extractOpenAITextPart(delta?.reasoning_details);
|
|
662
692
|
}
|
|
663
693
|
function extractResponsesContent(json) {
|
|
664
694
|
const output = Array.isArray(json?.output) ? json.output : [];
|
|
@@ -681,7 +711,7 @@ function extractAnthropicContent(json) {
|
|
|
681
711
|
.map((part) => typeof part?.text === "string" ? part.text : "")
|
|
682
712
|
.join("");
|
|
683
713
|
}
|
|
684
|
-
async function chatCompletionViaCustomAnthropicCompatible(client, model, messages, resolved, onStreamProgress, onTextDelta) {
|
|
714
|
+
async function chatCompletionViaCustomAnthropicCompatible(client, model, messages, resolved, onStreamProgress, onTextDelta, signal) {
|
|
685
715
|
const baseUrl = client._piModel?.baseUrl ?? "";
|
|
686
716
|
const errorCtx = { baseUrl, model, service: client.service };
|
|
687
717
|
const extra = stripReservedKeys(resolved.extra);
|
|
@@ -708,6 +738,7 @@ async function chatCompletionViaCustomAnthropicCompatible(client, model, message
|
|
|
708
738
|
...(client._piModel?.headers ?? {}),
|
|
709
739
|
}) ?? { "Content-Type": "application/json" },
|
|
710
740
|
body: JSON.stringify(payload),
|
|
741
|
+
signal,
|
|
711
742
|
}, client.proxyUrl);
|
|
712
743
|
if (!response.ok) {
|
|
713
744
|
throw wrapLLMError(new Error(await readErrorResponse(response)), errorCtx);
|
|
@@ -781,9 +812,9 @@ async function chatCompletionViaCustomAnthropicCompatible(client, model, message
|
|
|
781
812
|
}
|
|
782
813
|
return { content, usage };
|
|
783
814
|
}
|
|
784
|
-
async function chatCompletionViaCustomOpenAICompatible(client, model, messages, resolved, onStreamProgress, onTextDelta, allowSystemRoleFallback = true) {
|
|
815
|
+
async function chatCompletionViaCustomOpenAICompatible(client, model, messages, resolved, onStreamProgress, onTextDelta, signal, allowSystemRoleFallback = true) {
|
|
785
816
|
if (client.provider === "anthropic") {
|
|
786
|
-
return chatCompletionViaCustomAnthropicCompatible(client, model, messages, resolved, onStreamProgress, onTextDelta);
|
|
817
|
+
return chatCompletionViaCustomAnthropicCompatible(client, model, messages, resolved, onStreamProgress, onTextDelta, signal);
|
|
787
818
|
}
|
|
788
819
|
const baseUrl = client._piModel?.baseUrl ?? "";
|
|
789
820
|
const headers = buildCustomHeaders(client);
|
|
@@ -806,6 +837,7 @@ async function chatCompletionViaCustomOpenAICompatible(client, model, messages,
|
|
|
806
837
|
method: "POST",
|
|
807
838
|
headers,
|
|
808
839
|
body: JSON.stringify(payload),
|
|
840
|
+
signal,
|
|
809
841
|
}, client.proxyUrl);
|
|
810
842
|
if (!response.ok) {
|
|
811
843
|
throw wrapLLMError(new Error(await readErrorResponse(response)), errorCtx);
|
|
@@ -898,17 +930,20 @@ async function chatCompletionViaCustomOpenAICompatible(client, model, messages,
|
|
|
898
930
|
method: "POST",
|
|
899
931
|
headers,
|
|
900
932
|
body: JSON.stringify(payload),
|
|
933
|
+
signal,
|
|
901
934
|
}, client.proxyUrl);
|
|
902
935
|
if (!response.ok) {
|
|
903
936
|
const detail = await readErrorResponse(response);
|
|
904
937
|
if (allowSystemRoleFallback && hasSystemMessages(messages) && isSystemRoleUnsupportedErrorText(detail)) {
|
|
905
|
-
return chatCompletionViaCustomOpenAICompatible(client, model, foldSystemMessagesIntoFirstUser(messages), resolved, onStreamProgress, onTextDelta, false);
|
|
938
|
+
return chatCompletionViaCustomOpenAICompatible(client, model, foldSystemMessagesIntoFirstUser(messages), resolved, onStreamProgress, onTextDelta, signal, false);
|
|
906
939
|
}
|
|
907
940
|
throw wrapLLMError(new Error(detail), errorCtx);
|
|
908
941
|
}
|
|
909
942
|
if (!client.stream) {
|
|
910
943
|
const json = await response.json();
|
|
911
|
-
|
|
944
|
+
// MiniMax M2.x 等模型可能把思考内容以 <think>...</think> 内联在 content 开头,
|
|
945
|
+
// 剥掉起始处的完整 think 块,防止思考内容混进章节/对话正文(issue #329)。
|
|
946
|
+
const content = stripLeadingThinkBlock(extractChatContent(json));
|
|
912
947
|
if (!content) {
|
|
913
948
|
throw wrapLLMError(new Error("LLM returned empty response"), errorCtx);
|
|
914
949
|
}
|
|
@@ -933,6 +968,9 @@ async function chatCompletionViaCustomOpenAICompatible(client, model, messages,
|
|
|
933
968
|
// 网关掐断长连接时流会"干净地"关闭但没有任何终止信号——那是截断,不是完成。
|
|
934
969
|
let sawTerminal = false;
|
|
935
970
|
const monitor = createStreamMonitor(onStreamProgress);
|
|
971
|
+
// 内联 <think>...</think> 的模型(如 MiniMax M2.x):剥掉响应起始处的完整
|
|
972
|
+
// think 块,思考内容既不并入正文也不通过 onTextDelta 发给 UI(issue #329)。
|
|
973
|
+
const thinkStripper = createLeadingThinkTagStripper();
|
|
936
974
|
try {
|
|
937
975
|
while (true) {
|
|
938
976
|
const { value, done } = await reader.read();
|
|
@@ -954,9 +992,12 @@ async function chatCompletionViaCustomOpenAICompatible(client, model, messages,
|
|
|
954
992
|
}
|
|
955
993
|
const delta = extractChatDeltaContent(json);
|
|
956
994
|
if (delta) {
|
|
957
|
-
content += delta;
|
|
958
995
|
monitor.onChunk(delta);
|
|
959
|
-
|
|
996
|
+
const emittable = thinkStripper.push(delta);
|
|
997
|
+
if (emittable) {
|
|
998
|
+
content += emittable;
|
|
999
|
+
onTextDelta?.(emittable);
|
|
1000
|
+
}
|
|
960
1001
|
}
|
|
961
1002
|
else {
|
|
962
1003
|
const reasoningDelta = extractChatDeltaReasoningContent(json);
|
|
@@ -978,6 +1019,8 @@ async function chatCompletionViaCustomOpenAICompatible(client, model, messages,
|
|
|
978
1019
|
finally {
|
|
979
1020
|
monitor.stop();
|
|
980
1021
|
}
|
|
1022
|
+
// 流结束仍缓冲在剥离器里的文本(未闭合的 think 块等)原样并回,避免数据丢失。
|
|
1023
|
+
content += thinkStripper.flush();
|
|
981
1024
|
const finalContent = content || reasoningContent;
|
|
982
1025
|
if (!finalContent) {
|
|
983
1026
|
throw wrapLLMError(new Error("LLM returned empty response from stream"), errorCtx);
|
|
@@ -999,9 +1042,11 @@ export async function chatCompletion(client, model, messages, options) {
|
|
|
999
1042
|
};
|
|
1000
1043
|
const onStreamProgress = options?.onStreamProgress;
|
|
1001
1044
|
const onTextDelta = options?.onTextDelta;
|
|
1045
|
+
const signal = options?.signal;
|
|
1002
1046
|
const errorCtx = { baseUrl: client._piModel?.baseUrl ?? "(unknown)", model, service: client.service };
|
|
1003
1047
|
try {
|
|
1004
1048
|
return await withTransientLLMRetry(async () => {
|
|
1049
|
+
signal?.throwIfAborted();
|
|
1005
1050
|
assertWithinContextWindow({
|
|
1006
1051
|
piModel: resolvePiModel(client, model),
|
|
1007
1052
|
model,
|
|
@@ -1009,13 +1054,13 @@ export async function chatCompletion(client, model, messages, options) {
|
|
|
1009
1054
|
reservedOutputTokens: resolved.maxTokens,
|
|
1010
1055
|
});
|
|
1011
1056
|
if (shouldUseNativeCustomTransport(client)) {
|
|
1012
|
-
return chatCompletionViaCustomOpenAICompatible(client, model, messages, resolved, onStreamProgress, onTextDelta);
|
|
1057
|
+
return chatCompletionViaCustomOpenAICompatible(client, model, messages, resolved, onStreamProgress, onTextDelta, signal);
|
|
1013
1058
|
}
|
|
1014
|
-
return chatCompletionViaPiAi(client, model, messages, resolved, onStreamProgress, onTextDelta);
|
|
1059
|
+
return chatCompletionViaPiAi(client, model, messages, resolved, onStreamProgress, onTextDelta, signal);
|
|
1015
1060
|
},
|
|
1016
1061
|
// Retrying after UI text deltas have been emitted can duplicate visible
|
|
1017
1062
|
// text; callers can also opt out (e.g. fast-fail diagnostics).
|
|
1018
|
-
{ enabled: (options?.retry ?? true) && !onTextDelta });
|
|
1063
|
+
{ enabled: (options?.retry ?? true) && !onTextDelta, signal });
|
|
1019
1064
|
}
|
|
1020
1065
|
catch (error) {
|
|
1021
1066
|
// 注意:中断的流(PartialResponseError)不再"打捞"半截内容当成功返回——
|
|
@@ -1061,7 +1106,7 @@ function toPiContext(messages) {
|
|
|
1061
1106
|
});
|
|
1062
1107
|
return { systemPrompt, messages: piMessages };
|
|
1063
1108
|
}
|
|
1064
|
-
async function chatCompletionViaPiAi(client, model, messages, resolved, onStreamProgress, onTextDelta) {
|
|
1109
|
+
async function chatCompletionViaPiAi(client, model, messages, resolved, onStreamProgress, onTextDelta, signal) {
|
|
1065
1110
|
const piModel = resolvePiModel(client, model);
|
|
1066
1111
|
const context = toPiContext(messages);
|
|
1067
1112
|
const streamOpts = {
|
|
@@ -1069,6 +1114,7 @@ async function chatCompletionViaPiAi(client, model, messages, resolved, onStream
|
|
|
1069
1114
|
maxTokens: resolved.maxTokens,
|
|
1070
1115
|
apiKey: client._apiKey,
|
|
1071
1116
|
headers: mergeUserAgent(piModel.headers),
|
|
1117
|
+
signal,
|
|
1072
1118
|
};
|
|
1073
1119
|
if (!client.stream) {
|
|
1074
1120
|
const response = await piCompleteSimple(piModel, context, streamOpts);
|