@xinizai/pi-image-gen 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.4 - 2026-08-23
4
+
5
+ ### Fixed
6
+ - `decodeBase64Image` 不再硬编码默认 MIME 为 `image/png`:当图片为纯 base64(无 `data:image/...;base64,` 前缀)时,通过 `detectImageFormat` 从二进制文件头自动推断真实格式(JPEG/PNG/WebP),派生正确的文件后缀。之前默认 `image/png` 导致 JPEG 图片被保存为 `.png`,后续校验不通过报「内容不是有效的图片文件」。
7
+
8
+ ## 0.1.3 - 2026-08-23
9
+
10
+ ### Changed
11
+ - 配置摘要改为紧凑展示各 Provider 的默认模型和能力统计;完整模型列表请通过 `image_models` 查看,避免大量文本模型挤占对话上下文。
12
+ - 默认编辑/变体模型的文案改为“跟随生图模型(该模型需支持对应操作)”,准确说明回退条件。
13
+
14
+ ### Fixed
15
+ - 当编辑或变体跟随生图模型、但该模型未声明对应能力时,错误提示会明确引导用户在 `/image-config` 选择专用模型或手动声明能力。
16
+
3
17
  ## 0.1.2 - 2026-08-21
4
18
 
5
19
  ### 修复(Fixed)
package/README.md CHANGED
@@ -4,7 +4,13 @@
4
4
 
5
5
  > 第一版重点支持 OpenAI-compatible API:`GET /models`、`POST /images/generations`、`POST /images/edits`、`POST /images/variations`。其它 Provider 通过 Adapter 架构预留。
6
6
 
7
- ## 最新更新(0.1.2)
7
+ ## 最新更新(本地开发版)
8
+
9
+ - 配置摘要默认精简显示 Provider 状态、默认模型和能力统计;详细模型列表请使用 `image_models`。
10
+ - 编辑/变体未配置专用模型时会跟随生图模型,但该模型必须声明支持对应操作。
11
+ - 当跟随的生图模型不支持编辑或变体时,错误提示会引导选择专用模型或手动声明能力。
12
+
13
+ ## 最新发布版(0.1.2)
8
14
 
9
15
  - **文档修复**:上版 README 里「每几十秒只吐 1 字节」被误写为 ASCII 残留「`/sql1`」,已修正为正常中文。
10
16
  - **文档修复**:去掉 README 中指向 unpkg 直链的 CHANGELOG 链接——unpkg 对 `.md` 直发 `text/markdown` 不含 charset 在中文 Windows 下会乱码;改提示「在 npm 包页 Code/Files 选项卡查看 CHANGELOG」。
@@ -64,7 +70,7 @@ npm run build
64
70
  /image-config
65
71
  ```
66
72
 
67
- 即可添加 Provider、测试 `/models`、选择默认图片模型、设置默认 Provider,以及设置图片响应格式(自动兼容、URL、Base64 JSON)。配置跨项目保存在:
73
+ 即可添加 Provider、测试 `/models`、选择默认生图/编辑/变体模型、设置默认 Provider,以及设置图片响应格式(自动兼容、URL、Base64 JSON)。配置跨项目保存在:
68
74
 
69
75
  ```text
70
76
  ~/.pi/agent/pi-image-gen/providers.json
@@ -161,23 +167,15 @@ Agent 仍可调用工具:
161
167
  image_models({ "refresh": true })
162
168
  ```
163
169
 
164
- 输出按能力分组:
170
+ 每个模型只显示一次,并标注识别到的能力与来源,例如:
165
171
 
166
172
  ```text
167
- Image Generation:
168
- - model-a
169
- - model-b
170
-
171
- Vision:
172
- - model-c
173
-
174
- Text:
175
- - model-d
176
-
177
- Unknown:
178
- - model-e
173
+ gpt-image-2 [生图、编辑] [名称推测]
174
+ custom-model [未知] [无法判断]
179
175
  ```
180
176
 
177
+ 能力来源按可信程度排序:服务端声明、手动配置、名称推测、无法判断。名称推测不等于实际接口验证。
178
+
181
179
  ## 文生图
182
180
 
183
181
  用户可以直接说:
@@ -12,6 +12,8 @@ export declare class GlobalConfigStore {
12
12
  baseUrl: string;
13
13
  apiKey: string;
14
14
  defaultModel?: string;
15
+ defaultEditModel?: string;
16
+ defaultVariationModel?: string;
15
17
  responseFormat?: "auto" | "url" | "b64_json";
16
18
  manualCapabilities?: string;
17
19
  }): Promise<StoredProviderConfig>;
@@ -45,8 +45,8 @@ export class GlobalConfigStore {
45
45
  baseUrl: normalizeBaseUrl(input.baseUrl),
46
46
  apiKey: input.apiKey,
47
47
  defaultModel: input.defaultModel || undefined,
48
- defaultEditModel: undefined,
49
- defaultVariationModel: undefined,
48
+ defaultEditModel: input.defaultEditModel || undefined,
49
+ defaultVariationModel: input.defaultVariationModel || undefined,
50
50
  responseFormat: input.responseFormat ?? "auto",
51
51
  manualCapabilities: parseManualCapabilities(input.manualCapabilities),
52
52
  createdAt: now,
@@ -1 +1 @@
1
- {"version":3,"file":"global-config.js","sourceRoot":"","sources":["../../src/core/global-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"global-config.js","sourceRoot":"","sources":["../../src/core/global-config.ts"],"names":[],"mappings":"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"}
@@ -7,41 +7,36 @@ export function renderModelBrowser(result, options) {
7
7
  const registry = new ModelRegistry(result.models);
8
8
  const all = registry.all();
9
9
  const keyword = options.search?.trim().toLowerCase();
10
- const filtered = keyword ? all.filter((m) => `${m.id} ${JSON.stringify(m.rawMetadata)}`.toLowerCase().includes(keyword)) : all;
11
- const groups = [["image_generation", "图片生成"], ["image_edit", "图片编辑"], ["image_variation", "图片变体"], ["vision", "视觉理解"], ["unknown", "未知能力"]];
12
- if (options.includeText || keyword)
13
- groups.push(["text", "文本模型"]);
10
+ const imageModels = all.filter((model) => model.capabilities.some((capability) => capability === "image_generation" || capability === "image_edit" || capability === "image_variation"));
11
+ const visibleModels = options.includeText || keyword ? all : imageModels;
12
+ const filtered = keyword ? visibleModels.filter((model) => `${model.id} ${JSON.stringify(model.rawMetadata)}`.toLowerCase().includes(keyword)) : visibleModels;
13
+ const start = (page - 1) * limit;
14
+ const shown = filtered.slice(start, start + limit);
15
+ const totalPages = Math.max(1, Math.ceil(filtered.length / limit));
14
16
  const lines = [
15
17
  `提供商:${result.providerName} (${result.providerId})`,
16
18
  `模型总数:${all.length}`,
17
- keyword ? `搜索:${keyword}` : "默认视图:只显示图片相关模型",
18
- `显示限制:每组 ${limit} 个,第 ${page} 页`,
19
+ keyword ? `搜索:${keyword}` : options.includeText ? "视图:显示全部模型" : "视图:只显示图片相关模型",
20
+ `显示:${filtered.length} 个,第 ${Math.min(page, totalPages)} / ${totalPages} 页,每页 ${limit} 个`,
19
21
  "",
22
+ "模型列表(每个模型只显示一次;能力仅表示服务端声明、名称推测或手动配置,并非实际接口验证):",
20
23
  ];
21
- for (const [cap, label] of groups) {
22
- const models = filtered.filter((m) => m.capabilities.includes(cap));
23
- const start = (page - 1) * limit;
24
- const shown = models.slice(start, start + limit);
25
- const totalPages = Math.max(1, Math.ceil(models.length / limit));
26
- lines.push(`${label}(${models.length})${models.length > limit ? ` - 第 ${Math.min(page, totalPages)} / ${totalPages} 页` : ""}`);
27
- if (shown.length === 0)
28
- lines.push("- 无");
29
- else
30
- shown.forEach((m, i) => lines.push(`${start + i + 1}. ${formatModel(m)}`));
31
- if (models.length > start + shown.length)
32
- lines.push(`... 还有 ${models.length - start - shown.length} 个。请在 /image-config 中使用“搜索模型”或调整分页查看。`);
33
- lines.push("");
34
- }
24
+ if (shown.length === 0)
25
+ lines.push("- 无");
26
+ else
27
+ shown.forEach((model, index) => lines.push(`${start + index + 1}. ${formatModel(model)}`));
28
+ if (filtered.length > start + shown.length)
29
+ lines.push(`... 还有 ${filtered.length - start - shown.length} 个。调整 page 查看。`);
30
+ const summary = registry.summary();
31
+ lines.push("", `能力汇总:生图 ${summary.image_generation.length} · 编辑 ${summary.image_edit.length} · 变体 ${summary.image_variation.length} · 视觉 ${summary.vision.length} · 未知 ${summary.unknown.length}`);
35
32
  try {
36
33
  lines.push(`当前默认生图模型:${registry.select("image_generation").id}`);
37
34
  }
38
35
  catch {
39
36
  lines.push("当前默认生图模型:无");
40
37
  }
41
- if (all.length > filtered.length)
42
- lines.push(`已过滤:${all.length - filtered.length}`);
43
- if (!keyword)
44
- lines.push("请在 /image-config 中使用“搜索模型”搜索完整模型列表。");
38
+ if (!options.includeText && !keyword && all.length > imageModels.length)
39
+ lines.push(`已隐藏 ${all.length - imageModels.length} 个非图片模型;传 include_text: true 可查看全部。`);
45
40
  return truncateLines(lines, 180, 12_000);
46
41
  }
47
42
  export function renderRefreshSummary(result) {
@@ -57,8 +52,21 @@ export function renderRefreshSummary(result) {
57
52
  ].join("\n");
58
53
  }
59
54
  function formatModel(model) {
60
- const source = model.capabilitySource === "heuristic" ? " [heuristic]" : model.capabilitySource === "manual" ? " [manual]" : "";
61
- return `${model.id}${source}`;
55
+ const labels = {
56
+ image_generation: "生图",
57
+ image_edit: "编辑",
58
+ image_variation: "变体",
59
+ vision: "视觉",
60
+ text: "文本",
61
+ unknown: "未知",
62
+ };
63
+ const source = {
64
+ metadata: "服务端声明",
65
+ heuristic: "名称推测",
66
+ manual: "手动配置",
67
+ unknown: "无法判断",
68
+ };
69
+ return `${model.id} [${model.capabilities.map((capability) => labels[capability]).join("、")}] [${source[model.capabilitySource]}]`;
62
70
  }
63
71
  function truncateLines(lines, maxLines, maxChars) {
64
72
  const out = [];
@@ -1 +1 @@
1
- {"version":3,"file":"model-browser.js","sourceRoot":"","sources":["../../src/core/model-browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-browser.js","sourceRoot":"","sources":["../../src/core/model-browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AACtC,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC,MAAM,UAAU,kBAAkB,CAAC,MAAuB,EAAE,OAA4B;IACtF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrD,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,KAAK,kBAAkB,IAAI,UAAU,KAAK,YAAY,IAAI,UAAU,KAAK,iBAAiB,CAAC,CAAC,CAAC;IACzL,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;IACzE,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;IAC/J,MAAM,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;IACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,KAAK,GAAG;QACZ,OAAO,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,UAAU,GAAG;QACnD,QAAQ,GAAG,CAAC,MAAM,EAAE;QACpB,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc;QAC9E,MAAM,QAAQ,CAAC,MAAM,QAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,UAAU,SAAS,KAAK,IAAI;QACzF,EAAE;QACF,gDAAgD;KACjD,CAAC;IAEF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;QACrC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,KAAK,GAAG,CAAC,KAAK,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAChG,IAAI,QAAQ,CAAC,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,QAAQ,CAAC,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,gBAAgB,CAAC,CAAC;IAEzH,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,OAAO,CAAC,gBAAgB,CAAC,MAAM,SAAS,OAAO,CAAC,UAAU,CAAC,MAAM,SAAS,OAAO,CAAC,eAAe,CAAC,MAAM,SAAS,OAAO,CAAC,MAAM,CAAC,MAAM,SAAS,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACnM,IAAI,CAAC;QAAC,KAAK,CAAC,IAAI,CAAC,YAAY,QAAQ,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAAC,CAAC;IAC7G,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,qCAAqC,CAAC,CAAC;IACjK,OAAO,aAAa,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAuB;IAC1D,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;IAC3D,OAAO;QACL,UAAU,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,UAAU,GAAG;QACtD,QAAQ,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;QAC9B,QAAQ,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE;QACzC,QAAQ,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE;QACnC,QAAQ,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE;QACxC,QAAQ,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;QAC/B,QAAQ,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE;KACjC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,KAAgB;IACnC,MAAM,MAAM,GAAoC;QAC9C,gBAAgB,EAAE,IAAI;QACtB,UAAU,EAAE,IAAI;QAChB,eAAe,EAAE,IAAI;QACrB,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI;KACd,CAAC;IACF,MAAM,MAAM,GAAkD;QAC5D,QAAQ,EAAE,OAAO;QACjB,SAAS,EAAE,MAAM;QACjB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,MAAM;KAChB,CAAC;IACF,OAAO,GAAG,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC;AACrI,CAAC;AAED,SAAS,aAAa,CAAC,KAAe,EAAE,QAAgB,EAAE,QAAgB;IACxE,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,GAAG,CAAC,MAAM,IAAI,QAAQ,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,QAAQ,EAAE,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;YAC3D,MAAM;QACR,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,KAAK,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC"}
@@ -9,12 +9,17 @@ export class ModelRegistry {
9
9
  get(id) { return this.models.find((m) => m.id === id); }
10
10
  select(capability, explicit, configured) {
11
11
  const preferred = explicit || configured;
12
+ const isConfiguredDefault = explicit === undefined && configured !== undefined;
12
13
  if (preferred) {
13
14
  const model = this.get(preferred);
14
15
  if (!model)
15
16
  throw new ImageGenError("model_unavailable", `模型 ${preferred} 不在已发现模型列表中。`, "请在 /image-config 中刷新模型,或确认模型名称。 ");
16
17
  if (!model.capabilities.includes(capability) && !model.capabilities.includes("unknown")) {
17
- throw new ImageGenError("model_unavailable", `模型 ${preferred} 未声明支持 ${capability}。`, "请在 /image-config 中查看可用模型,或用 IMAGE_MODEL_CAPABILITIES 手动声明能力。 ");
18
+ const operation = capability === "image_edit" ? "图片编辑" : capability === "image_variation" ? "图片变体" : "图片生成";
19
+ const suggestion = isConfiguredDefault
20
+ ? `当前${operation}跟随生图模型 ${preferred},但该模型未声明支持此操作。请在 /image-config 选择专用模型,或手动声明模型能力。`
21
+ : "请在 /image-config 中查看可用模型,或用 IMAGE_MODEL_CAPABILITIES 手动声明能力。 ";
22
+ throw new ImageGenError("model_unavailable", `模型 ${preferred} 未声明支持 ${capability}。`, suggestion);
18
23
  }
19
24
  if (model.capabilities.includes("unknown")) {
20
25
  throw new ImageGenError("capability_unknown", `无法自动判断模型 ${preferred} 是否支持 ${capability}。`, "请设置 IMAGE_MODEL_CAPABILITIES='model:image_generation' 之类的手动能力声明。 ");
@@ -1 +1 @@
1
- {"version":3,"file":"model-registry.js","sourceRoot":"","sources":["../../src/core/model-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-registry.js","sourceRoot":"","sources":["../../src/core/model-registry.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,10 @@ export interface ImageGenConfig {
46
46
  responseFormat: ImageResponseFormat;
47
47
  providerType: "openai-compatible";
48
48
  timeoutMs: number;
49
+ /** stall 超时之上再叠加一个“无脑继续等”的兜底;0 = 不限总时长。 */
50
+ totalTimeoutMs: number;
51
+ /** 图片下载独立超时,避免与生成请求计时叠加误杀。 */
52
+ downloadTimeoutMs: number;
49
53
  cacheTtlMs: number;
50
54
  outputDir: string;
51
55
  maxResponseBytes: number;
package/dist/index.js CHANGED
@@ -26,8 +26,6 @@ export default function imageGenExtension(pi) {
26
26
  return { content: [{ type: "text", text: resultText("图片生成", await (await createService(params.provider)).generate(params, signal)) }], details: {} };
27
27
  }
28
28
  catch (e) {
29
- // 不 throw:避免 pi 主程序因异常触发流式重试对话出现 "Stream ended without finish_reason"。
30
- // timeout/network_error 时图片可能其实已出,提示用户检查输出目录。
31
29
  return { content: [{ type: "text", text: softFailureText(e) }], details: {} };
32
30
  }
33
31
  },
@@ -214,9 +212,11 @@ async function interactiveAddProvider(ctx) {
214
212
  ctx.ui.notify(renderDiscoveryChoiceText(discovery), "info");
215
213
  const defaultModel = await selectDefaultImageModel(ctx, discovery);
216
214
  if (!defaultModel) {
217
- ctx.ui.notify("已取消添加:未选择默认图片模型。", "info");
215
+ ctx.ui.notify("已取消添加:未选择默认生图模型。", "info");
218
216
  return;
219
217
  }
218
+ const defaultEditModel = await selectOptionalOperationModel(ctx, discovery, "image_edit", defaultModel);
219
+ const defaultVariationModel = await selectOptionalOperationModel(ctx, discovery, "image_variation", defaultModel);
220
220
  let setDefault = before.providers.length === 0;
221
221
  if (!setDefault && before.defaultProviderId)
222
222
  setDefault = await ctx.ui.confirm("设置默认提供商", `是否将 ${name} 设置为默认图片提供商?`);
@@ -226,6 +226,10 @@ async function interactiveAddProvider(ctx) {
226
226
  const input = { name, baseUrl, apiKey, responseFormat, setDefault };
227
227
  if (defaultModel)
228
228
  input.defaultModel = defaultModel;
229
+ if (defaultEditModel)
230
+ input.defaultEditModel = defaultEditModel;
231
+ if (defaultVariationModel)
232
+ input.defaultVariationModel = defaultVariationModel;
229
233
  ctx.ui.notify(await saveProviderWithDiscovery(input, discovery, store), "info");
230
234
  ctx.ui.notify(await configText(ctx.signal), "info");
231
235
  }
@@ -305,13 +309,15 @@ async function interactiveEditProvider(ctx, id) {
305
309
  ctx.ui.notify(renderDiscoveryChoiceText(discovery), "info");
306
310
  const defaultModel = await selectDefaultImageModel(ctx, discovery, modelInput || provider.defaultModel);
307
311
  if (!defaultModel) {
308
- ctx.ui.notify("已取消编辑:未选择默认图片模型。", "info");
312
+ ctx.ui.notify("已取消编辑:未选择默认生图模型。", "info");
309
313
  return;
310
314
  }
315
+ const defaultEditModel = await selectOptionalOperationModel(ctx, discovery, "image_edit", defaultModel, provider.defaultEditModel);
316
+ const defaultVariationModel = await selectOptionalOperationModel(ctx, discovery, "image_variation", defaultModel, provider.defaultVariationModel);
311
317
  const responseFormat = await chooseResponseFormat(ctx, responseFormatLabel(provider.responseFormat ?? "auto"));
312
318
  if (!responseFormat)
313
319
  return;
314
- const input = { id: provider.id, responseFormat };
320
+ const input = { id: provider.id, responseFormat, defaultEditModel, defaultVariationModel };
315
321
  if (nextName !== provider.name)
316
322
  input.name = nextName;
317
323
  if (nextBaseUrl !== provider.baseUrl)
@@ -357,20 +363,20 @@ async function chooseProviderModel(ctx, id) {
357
363
  try {
358
364
  ctx.ui.notify("正在测试连接并获取模型,请稍候……", "info");
359
365
  const discovery = await discoverProviderCandidate({ name: provider.name, baseUrl: provider.baseUrl, apiKey: provider.apiKey }, ctx.signal);
360
- const model = await selectDefaultImageModel(ctx, discovery, provider.defaultModel, () => discoverProviderCandidate({ name: provider.name, baseUrl: provider.baseUrl, apiKey: provider.apiKey }, ctx.signal));
361
- if (model && model !== provider.defaultModel)
362
- ctx.ui.notify(await updateProvider({ id: provider.id, defaultModel: model }, ctx.signal, store, false), "info");
366
+ const refresh = () => discoverProviderCandidate({ name: provider.name, baseUrl: provider.baseUrl, apiKey: provider.apiKey }, ctx.signal);
367
+ const defaultModel = await selectDefaultImageModel(ctx, discovery, provider.defaultModel, refresh);
368
+ if (!defaultModel)
369
+ return;
370
+ const defaultEditModel = await selectOptionalOperationModel(ctx, discovery, "image_edit", defaultModel, provider.defaultEditModel, refresh);
371
+ const defaultVariationModel = await selectOptionalOperationModel(ctx, discovery, "image_variation", defaultModel, provider.defaultVariationModel, refresh);
372
+ const changed = defaultModel !== provider.defaultModel || defaultEditModel !== provider.defaultEditModel || defaultVariationModel !== provider.defaultVariationModel;
373
+ if (changed)
374
+ ctx.ui.notify(await updateProvider({ id: provider.id, defaultModel, defaultEditModel, defaultVariationModel }, ctx.signal, store, false), "info");
363
375
  else
364
376
  ctx.ui.notify("默认图片模型未改变。", "info");
365
377
  }
366
378
  catch (error) {
367
379
  ctx.ui.notify(configErrorText(error), "error");
368
- const fallback = await ctx.ui.select("无法自动获取模型", ["手动输入模型 ID", "返回"]);
369
- if (fallback === "手动输入模型 ID") {
370
- const model = await prefilledInput(ctx, "手动输入默认图片模型 ID", provider.defaultModel ?? "");
371
- if (model)
372
- ctx.ui.notify(await updateProvider({ id: provider.id, defaultModel: model }, ctx.signal, store, false), "info");
373
- }
374
380
  }
375
381
  }
376
382
  async function prefilledInput(ctx, title, value) {
@@ -399,14 +405,14 @@ async function selectDefaultImageModel(ctx, discovery, current, refresh) {
399
405
  let query = "";
400
406
  let page = 0;
401
407
  while (true) {
402
- const models = new ModelRegistry(activeDiscovery.models).byCapability("image_generation").map((model) => model.id);
403
- const filtered = query ? models.filter((model) => model.toLowerCase().includes(query.toLowerCase())) : models;
408
+ const models = new ModelRegistry(activeDiscovery.models).byCapability("image_generation");
409
+ const filtered = query ? models.filter((model) => model.id.toLowerCase().includes(query.toLowerCase())) : models;
404
410
  const pageCount = Math.max(1, Math.ceil(filtered.length / MODEL_PAGE_SIZE));
405
411
  page = Math.min(page, pageCount - 1);
406
412
  const visible = filtered.slice(page * MODEL_PAGE_SIZE, (page + 1) * MODEL_PAGE_SIZE);
407
- const options = visible.map((model, index) => `${model === current ? "●" : "○"} ${modelLabel(model)} [#${index + 1}]`);
408
- if (current && !filtered.includes(current))
409
- options.unshift(`● 当前模型:${modelLabel(current)}${models.includes(current) ? "(被筛选隐藏)" : "(API 未返回)"}`);
413
+ const options = visible.map((model, index) => `${model.id === current ? "●" : "○"} ${modelDisplayLabel(model)} [#${index + 1}]`);
414
+ if (current && !filtered.some((model) => model.id === current))
415
+ options.unshift(`● 当前模型:${modelLabel(current)}${models.some((model) => model.id === current) ? "(被筛选隐藏)" : "(API 未返回)"}`);
410
416
  if (page > 0)
411
417
  options.push("‹ 上一页模型");
412
418
  if (page + 1 < pageCount)
@@ -449,12 +455,59 @@ async function selectDefaultImageModel(ctx, discovery, current, refresh) {
449
455
  }
450
456
  if (picked.startsWith("● 当前模型:"))
451
457
  return current;
452
- const match = picked.match(/\[#(\d+)\]$/);
453
- const selected = match ? visible[Number(match[1]) - 1] : undefined;
454
- if (selected)
455
- return selected;
458
+ const model = picked.replace(/^[●○] /, "").replace(/ \[#\d+\]$/, "").replace(/ \[.*\]$/, "");
459
+ if (visible.some((item) => item.id === model))
460
+ return model;
461
+ }
462
+ }
463
+ async function selectOptionalOperationModel(ctx, discovery, capability, _generationModel, current, refresh) {
464
+ const title = capability === "image_edit" ? "默认图片编辑模型" : "默认图片变体模型";
465
+ const useGeneration = "自动使用生图模型(推荐)";
466
+ const configure = "选择专用模型";
467
+ const picked = await ctx.ui.select(`选择${title}`, [useGeneration, configure]);
468
+ if (picked !== configure)
469
+ return undefined;
470
+ let activeDiscovery = discovery;
471
+ while (true) {
472
+ const models = new ModelRegistry(activeDiscovery.models).byCapability(capability);
473
+ if (models.length === 0) {
474
+ ctx.ui.notify(`未发现可确认支持${title.replace("默认", "")}的模型;将使用生图模型。`, "warning");
475
+ return undefined;
476
+ }
477
+ const options = models.map((model) => `${model.id === current ? "●" : "○"} ${modelDisplayLabel(model)}`);
478
+ options.push(useGeneration, "↻ 重新获取模型", "返回");
479
+ const selected = await ctx.ui.select(`${title}(仅显示检测到支持该操作的模型)`, options);
480
+ if (!selected || selected === "返回")
481
+ return undefined;
482
+ if (selected === useGeneration)
483
+ return undefined;
484
+ if (selected === "↻ 重新获取模型") {
485
+ if (!refresh) {
486
+ ctx.ui.notify("当前流程无法重新获取模型,请返回后再试。", "info");
487
+ continue;
488
+ }
489
+ ctx.ui.notify("正在重新获取模型,请稍候……", "info");
490
+ try {
491
+ activeDiscovery = await refresh();
492
+ }
493
+ catch (error) {
494
+ ctx.ui.notify(configErrorText(error), "error");
495
+ }
496
+ continue;
497
+ }
498
+ const model = selected.replace(/^[●○] /, "").replace(/ \[.*\]$/, "");
499
+ if (models.some((item) => item.id === model))
500
+ return model;
456
501
  }
457
502
  }
503
+ function modelDisplayLabel(model) {
504
+ return `${modelLabel(model.id)} [${modelCapabilitiesLabel(model)}]`;
505
+ }
506
+ function modelCapabilitiesLabel(model) {
507
+ const labels = { image_generation: "生图", image_edit: "编辑", image_variation: "变体", vision: "视觉", text: "文本", unknown: "未知" };
508
+ const source = { metadata: "服务端声明", heuristic: "名称推测", manual: "手动配置", unknown: "无法判断" };
509
+ return `${model.capabilities.map((capability) => labels[capability]).join("、")};${source[model.capabilitySource]}`;
510
+ }
458
511
  function modelLabel(model) {
459
512
  return model.length > MODEL_LABEL_LIMIT ? `${model.slice(0, MODEL_LABEL_LIMIT - 3)}...` : model;
460
513
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -80,7 +80,7 @@ export class OpenAICompatibleProvider {
80
80
  let detail = response.ok ? undefined : await responseErrorDetail(response, this.config);
81
81
  // 不同 OpenAI-compatible 服务对 response_format 的支持不一致;
82
82
  // auto 模式默认不发字段,若服务端反而要求字段,尝试补上 url;
83
- // 若用户明确 url/b64_json 而服务端拒绝该值,则降级为不发字段或交换为另一值。
83
+ // 若用户明确 url/b64_json 而服务端拒绝该值,则降级为不发字段。
84
84
  const jsonBody = !isForm && typeof body === "object" && body !== null && !ArrayBuffer.isView(body) && !(body instanceof ArrayBuffer) && !(body instanceof Blob) && !(body instanceof URLSearchParams) ? body : undefined;
85
85
  if (!response.ok && jsonBody && isResponseFormatError(detail)) {
86
86
  if (jsonBody.response_format === undefined) {
@@ -114,7 +114,6 @@ export class OpenAICompatibleProvider {
114
114
  init.body = body;
115
115
  if (signal !== undefined)
116
116
  init.signal = signal;
117
- // stall 超时 + 可选总超时:慢中转站只要持续吐字节就不被换杀。
118
117
  return await fetchWithTimeout(`${this.config.baseUrl}${path}`, init, this.config.timeoutMs, { stallMs: this.config.timeoutMs, totalMs: this.config.totalTimeoutMs ?? 0 });
119
118
  }
120
119
  catch (e) {