@dsh-plus/llm-pi 0.1.22 → 0.1.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dsh-plus/llm-pi",
3
- "version": "0.1.22",
3
+ "version": "0.1.23",
4
4
  "description": "dsh-plus service+ui plugin: 基于 PiAiAdapter 的自定义 LLM 路由(全量 compat、模型继承、models.dev 目录兜底)",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",
@@ -31,41 +31,41 @@
31
31
  }
32
32
  },
33
33
  "dependencies": {
34
- "@dsh-plus/shared": "0.1.12",
35
- "https-proxy-agent": "^9.1.0"
34
+ "https-proxy-agent": "^9.1.0",
35
+ "@dsh-plus/shared": "0.1.13"
36
36
  },
37
37
  "peerDependencies": {
38
38
  "@deepseek-ai/cordis": "^4.0.2",
39
- "@deepseek-ai/dsh-anonymous-user-id": "*",
40
- "@deepseek-ai/dsh-credentials": "*",
41
- "@deepseek-ai/dsh-home-paths": "*",
42
- "@deepseek-ai/dsh-host-webserver": "*",
43
- "@deepseek-ai/dsh-launch-environment": "*",
44
- "@deepseek-ai/dsh-llm": "*",
45
- "@deepseek-ai/dsh-llm-deepseek": "*",
46
- "@deepseek-ai/dsh-llm-pi-ai": "*",
47
- "@deepseek-ai/dsh-settings": "*",
48
- "@deepseek-ai/dsh-util-values": "*",
39
+ "@deepseek-ai/dsh-anonymous-user-id": "^0.1.5-alpha.2",
40
+ "@deepseek-ai/dsh-credentials": "^0.1.5-alpha.2",
41
+ "@deepseek-ai/dsh-home-paths": "^0.1.5-alpha.2",
42
+ "@deepseek-ai/dsh-host-webserver": "^0.1.5-alpha.2",
43
+ "@deepseek-ai/dsh-launch-environment": "^0.1.5-alpha.2",
44
+ "@deepseek-ai/dsh-llm": "^0.1.5-alpha.2",
45
+ "@deepseek-ai/dsh-llm-deepseek": "^0.1.5-alpha.2",
46
+ "@deepseek-ai/dsh-llm-pi-ai": "^0.1.5-alpha.2",
47
+ "@deepseek-ai/dsh-settings": "^0.1.5-alpha.2",
48
+ "@deepseek-ai/dsh-util-values": "^0.1.5-alpha.2",
49
49
  "@deepseek-ai/schemastery": "^3.18.2",
50
50
  "@earendil-works/pi-ai": "^0.84.2"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@deepseek-ai/cordis": "4.0.2",
54
- "@deepseek-ai/dsh-anonymous-user-id": "0.1.5-alpha.1",
55
- "@deepseek-ai/dsh-atomic-write": "0.1.5-alpha.1",
56
- "@deepseek-ai/dsh-attachment": "0.1.5-alpha.1",
57
- "@deepseek-ai/dsh-credentials": "0.1.5-alpha.1",
58
- "@deepseek-ai/dsh-home-paths": "0.1.5-alpha.1",
59
- "@deepseek-ai/dsh-host-webserver": "0.1.5-alpha.1",
60
- "@deepseek-ai/dsh-launch-environment": "0.1.5-alpha.1",
61
- "@deepseek-ai/dsh-llm": "0.1.5-alpha.1",
62
- "@deepseek-ai/dsh-llm-deepseek": "0.1.5-alpha.1",
63
- "@deepseek-ai/dsh-llm-pi-ai": "0.1.5-alpha.1",
64
- "@deepseek-ai/dsh-settings": "0.1.5-alpha.1",
65
- "@deepseek-ai/dsh-timeout": "0.1.5-alpha.1",
66
- "@deepseek-ai/dsh-typert-protocol": "0.1.5-alpha.1",
67
- "@deepseek-ai/dsh-util-crypto": "0.1.5-alpha.1",
68
- "@deepseek-ai/dsh-util-values": "0.1.5-alpha.1",
54
+ "@deepseek-ai/dsh-anonymous-user-id": "0.1.5-alpha.2",
55
+ "@deepseek-ai/dsh-atomic-write": "0.1.5-alpha.2",
56
+ "@deepseek-ai/dsh-attachment": "0.1.5-alpha.2",
57
+ "@deepseek-ai/dsh-credentials": "0.1.5-alpha.2",
58
+ "@deepseek-ai/dsh-home-paths": "0.1.5-alpha.2",
59
+ "@deepseek-ai/dsh-host-webserver": "0.1.5-alpha.2",
60
+ "@deepseek-ai/dsh-launch-environment": "0.1.5-alpha.2",
61
+ "@deepseek-ai/dsh-llm": "0.1.5-alpha.2",
62
+ "@deepseek-ai/dsh-llm-deepseek": "0.1.5-alpha.2",
63
+ "@deepseek-ai/dsh-llm-pi-ai": "0.1.5-alpha.2",
64
+ "@deepseek-ai/dsh-settings": "0.1.5-alpha.2",
65
+ "@deepseek-ai/dsh-timeout": "0.1.5-alpha.2",
66
+ "@deepseek-ai/dsh-typert-protocol": "0.1.5-alpha.2",
67
+ "@deepseek-ai/dsh-util-crypto": "0.1.5-alpha.2",
68
+ "@deepseek-ai/dsh-util-values": "0.1.5-alpha.2",
69
69
  "@deepseek-ai/schemastery": "3.18.2",
70
70
  "@earendil-works/pi-ai": "0.84.4",
71
71
  "@types/react": "~18.3.31",
package/src/profiles.ts CHANGED
@@ -568,6 +568,11 @@ export function resolveProfilesFallback(
568
568
  // 模型物化:全显式条目 + route 级 api/baseURL(官方 resolveRouteModels 镜像,
569
569
  // 无目录继承——归一化已把继承值落定在条目里)
570
570
  const configuredMaxTokens = new Map<string, number>()
571
+ // 官方 0.1.5-alpha.2(llm-pi-ai)adapter 读取 profile.modelErrors/catalogError:
572
+ // 本 fallback 对条目严格校验、坏条目整体拒绝(不产生"条目级不可服务"的
573
+ // deferred 诊断),故补空表保持与官方 profile 形状一致——缺失会让
574
+ // PiAiAdapter.modelOf 读 modelErrors.get 时以 TypeError 打崩。
575
+ const modelErrors = new Map<string, string>()
571
576
  const seen = new Set<string>()
572
577
  const models = (source.models ?? []).map((entry) => {
573
578
  if (entry.id.length === 0) invalid(provider, '存在空 id 的模型条目')
@@ -617,6 +622,7 @@ export function resolveProfilesFallback(
617
622
  ? {}
618
623
  : { thinkingBudgets: { ...rest.thinkingBudgets } }),
619
624
  configuredMaxTokens,
625
+ modelErrors,
620
626
  piProvider: deps.createProvider({
621
627
  id: provider,
622
628
  name: displayName,