实战 SOP
实战 SOP

升级前先把状态目录备份了:OpenClaw 2.0 迁移、回滚与凭证加固实操 SOP

写给已在跑 OpenClaw 的工程师:怎么安全升 2.0、升不上去怎么退、升完怎么收紧凭证。第一原则——升级前整体备份 Gateway 的 configuration 与 state(不是单个客户端),并验证可恢复。四步升级:检查→openclaw doctor --fix→重启 Gateway→验证健康(模型访问验证通过才算生效)。两个 breaking change:OpenProse 插件与 /prose 命令移除(.prose 源文件保留)、codex/* 与 openai-codex/* 路由迁 openai/*(冲突手动修)。2026-09-01 插件 SDK 弃用(plugin-sdk-config-runtime-subpath → api.pluginConfig)死线就在今天。降级有界:SQLite 之后新建会话旧版读不到,整体回滚还会带回 approvals 与 dedup 记录。升后主动配五件事:开掩码凭证请求、配 proxy 白名单、精确授权、角色收敛、纠正 Incognito 误用。

发布于 2026年9月1日14 分钟阅读
<!-- openclaw-2-0-upgrade-migration-sop | sop | 升级前先把状态目录备份了:OpenClaw 2.0 迁移、回滚与凭证加固实操 SOP -->

OpenClaw 上一个稳定版停更了近 7 周。把它放回这个项目自己的节奏里看,这是个反常信号:此前 230 天里它发了 106 个版本,平均两天多一个。2026 年 8 月 31 日 03:30:51(UTC),答案落地:版本 tag v2026.8.1,release 名 "OpenClaw 2026.8.1",Mac / Linux / Windows 三端同发。这个版本有 933 位贡献者参与,合并了 16,000 多个 PR,约占项目历史累计合并 PR 的 50%。

这一篇不是复述"2.0 发布了什么"——那部分我们单独写了一篇 OpenClaw 2.0 发布热点。这一篇写给已经在跑 OpenClaw 的工程师:现有部署怎么安全升上去、升不上去怎么退、升完之后怎么把凭证收紧。全文只回答一个问题的可操作版本:你今天下午坐在机器前,具体该按什么顺序做什么。

先说清边界:本文的操作依据来自官方 release notes 与官方博客,涉及具体路径、参数、插件内部接口的地方,以官方 release notes 与 openclaw doctor 的实际输出为准。

一、为什么这次不能无脑点更新

三个理由,每一个都足以让"点一下自动更新然后去接咖啡"变成一次事故。

第一,有两个 breaking change。 一个是 OpenProse migration:内置的 OpenProse 插件和 /prose 命令被移除,你需要跑 openclaw doctor --fix 清理陈旧配置,再按上游的 Agent Skill 迁移路径重接。另一个是 OpenAI route migration:codex/* 和 openai-codex/* 的模型引用、provider config、已存储的会话、automation routes,全部要迁到 openai/*,而且冲突不会自动替你决定。

第二,会话存储格式变了,且降级是有界的。 升级会把文件支持的会话记录与 transcript 校验、归档、迁进 SQLite;代价是旧版本读不到迁到 SQLite 之后新建的会话。详见第九节。

第三,也是最容易被忽略的一条——官方自己就预期自动更新会失败。 release notes 里给出的更新建议原文是这样的:

"If the automatic update fails, use a local coding harness to help complete the update, diagnose any migration errors, and verify that the Gateway starts correctly. Back up your configuration and state before making changes."

翻成中文:如果自动更新失败,用一个本地 coding harness 帮忙完成更新、诊断迁移错误、确认 Gateway 能正常启动;动手之前,先备份 configuration 和 state。这句话由发布方自己写出来,本身就是信号,也是本文的第一原则。

二、升级前:备份 configuration 与 state,这是第一原则

备份之前先搞清备份对象。这一步很多人会做错,因为他们把 OpenClaw 理解成"我电脑上跑的一个客户端"。

正确的心智模型是:Gateway 是那个持有普通会话状态、模型凭据、权限与持久工作的服务;browser、命令行、连接的设备、remote workers,都只是操作这个 Gateway 的不同入口。

由此得出一个直接结论:你要备份的是 Gateway 的 configuration 和 state,不是某一个客户端。 只把某个客户端的配置导出一份,等于什么都没做。

具体动作:

1. 备份整个状态目录,不要只备份配置文件。 用操作系统级的整体复制,保留时间戳与权限:

bash
# macOS / Linux:整体归档,保留权限与时间戳
# <state-dir> 的实际路径以 openclaw doctor 的输出或官方文档为准
cp -a "<state-dir>" "<state-dir>.bak.$(date +%Y%m%d-%H%M%S)"

# Windows(PowerShell):镜像复制
# robocopy "<state-dir>" "<state-dir>.bak.20260831" /MIR /COPYALL

2. 备份完必须验证可恢复。 一份没验证过的备份等于没有备份。至少做一次"复制回来能启动"的验证,或者直接检查归档里的文件数量与体积是否和源目录对得上。

3. 记录当前版本号与已装插件清单。 回滚时你需要知道自己从哪儿来的,尤其是外部插件——因为第六节要讲的那条弃用死线就压在插件身上。

4. 盘点两个 breaking change 的命中面。 在现有仓库、配置、脚本里检索 /prose 的调用位置,以及 codex/*、openai-codex/* 的模型引用位置:

bash
# 盘点 codex 路由引用(在被管理的项目与配置目录下执行)
grep -rn "codex/\*\|openai-codex/\*\|codex/" --include="*.json" --include="*.toml" --include="*.yaml" --include="*.yml" --include="*.ts" --include="*.js" .

# 盘点 /prose 用法
grep -rn "/prose" .

这份清单是第四、第五节的施工单,也是第九节回滚时的对照表。

三、执行升级四步:检查、修复、重启、验证

官方给出的更新路径是四步,顺序不能乱:

  1. 检查安装(checks the installation)
  2. 跑配置与迁移工具,也就是 openclaw doctor --fix
  3. 重启 Gateway
  4. 验证服务健康(verify that the service is healthy)
bash
# 第 2 步:跑配置与迁移工具
openclaw doctor --fix

这里有一个必须写进操作手册的补充事实:现有安装不会自动变成 2.0。 你必须在本地完成更新,走完 checks,重启,并且模型访问验证通过,2.0 才算真正生效。也就是说,版本号变了不等于迁移完成了——很多人就是在这里以为自己已经升好了,然后在第二天发现某个自动化跑不通。

关于自动更新失败的处理,照抄官方建议:用本地 coding harness 参与诊断与修复,确认 Gateway 能正常启动,别自己硬猜参数。

四、处理 OpenProse migration:插件和 /prose 命令没了,但文件还在

这是第一个 breaking change(对应 issue #128494,Thanks @obviyus, @vincentkoc)。它的实际影响分三层,要分开处理:

第一层:内置的 OpenProse 插件与 /prose 命令已被移除。 升级之后,任何依赖 /prose 的调用都会失效。你需要在升级前就完成第二节点出来的那份盘点,把命中位置列成清单。

第二层:陈旧配置需要清理。 跑 openclaw doctor --fix,清掉指向已移除插件的陈旧配置项。残留配置是后续启动里常见的报错来源。

第三层:迁移到 Agent Skill。 上游给出的路径是遵循 Agent Skill 迁移,文档在 https://docs.openclaw.ai/prose ,具体方式以该文档为准,不要凭印象照搬旧写法。

最重要的一句也在这里:你现有的 .prose 源文件是保留的。 所以正确的心态不是"资产没了",而是"资产要换个入口接回去"。备份在第二节已做,这里可以放心施工。

五、处理 OpenAI route migration:四类对象逐个查,冲突手动修

这是第二个 breaking change(Thanks @vincentkoc),也是本次升级里最容易漏的一块,因为它的命中面分散在四个不同的地方。

用 openclaw doctor --fix 迁移以下内容,统一迁到 openai/*:

  • 模型引用:codex/* 和 openai-codex/* 的引用
  • provider config
  • 已存储的会话(stored sessions)
  • automation routes(自动化路由)

操作时注意三点:

1. 四类对象都要查,不能只查配置。 大部分人只改配置文件里的模型名,漏掉已存储会话和自动化路由里残留的旧 ref。这两处漏了,症状会延迟到几天后才暴露——比如某个自动化在某天凌晨静默失败。

2. 迁移会保留 Codex runtime intent。 也就是说,这次改动是路由与命名的统一,不是语义的改写。你原本想要的那个运行时意图不会被抹掉。

3. 冲突需要操作员手动修复。 这一条请当成硬约束记住:openclaw doctor --fix 不会替你决定冲突该怎么解。遇到冲突,它会停下来交给你。这时候不要猜,按官方建议让本地 coding harness 参与诊断,或者回到第二节点盘出来的清单逐条比对。自动化工具的沉默区域,就是人工必须站岗的位置。

六、处理 2026-09-01 插件 SDK 弃用:死线就在今天

时效性最强的一条,压在写外部插件的人身上。

外部插件需要在 SDK removal gate 之前完成迁移:

  • plugin-sdk-config-runtime-subpath → api.pluginConfig

这条的生效日期是 2026-09-01,也就是今天。如果你维护或依赖外部插件,这是本批操作里唯一一条"不做就一定出事、且没有宽限期"的项目。

需要说明的是,release notes 里这个条目是截断的,我们没有更完整的上下文;拿到完整表述请以官方 release notes 与 openclaw doctor 的输出为准。可以用下面的方式拉 GitHub release 正文全文自行核对,重点搜索 "Upcoming deprecations":

bash
curl -s "https://api.github.com/repos/openclaw/openclaw/releases/latest"

如果你同时也在别的开源 agent 项目上维护插件,建议横向对照一下各自的接口稳定性节奏,本站 OpenHuman 开源项目档案 是另一个可对照的样本。

七、升级后验证清单:四件事,缺一不可

重启 Gateway 之后,不要看到进程起来了就收工。按顺序验这四项:

  1. Gateway 健康:服务健康、能正常响应。官方第四步要求的就是 verify that the service is healthy。
  2. 会话迁移完整性:历史会话与 transcript 是否完整迁进 SQLite,抽查几条老会话能否正常打开。
  3. 自动化路由是否还指向旧 ref:这是第五节点出的高频漏点,逐条过一遍 automation routes。
  4. 定时任务是否照常触发:不要只看配置,等一个真实触发周期,或者手动触发一次验证。

外加一项:模型访问验证通过。它是"这次升级算不算生效"的最终判定条件,不是可选项。

八、凭证加固:升完之后要主动配的五件事

2.0 带来了一组凭证治理能力,但它们不会因为你升级了就自动生效——大部分需要你主动开启或配置,这里只给操作步骤。

1. 开 Private credential requests。 agent 通过掩码提示请求凭证,凭证值不进 chat、不进模型上下文(对应 #129670、#123216、#132122)。这一条应该默认开启:它的价值是把"密钥出现在对话里"从可能变成不可能。

2. 配置 opt-in proxy 的目标白名单。 开启后,protected-secret substitution 会被限制在你批准的目标地址内——也就是密钥只会被替换进你批准的域名或地址。这直接堵死了一类真实攻击面:agent 把密钥带到别的站点去。

3. 给自动化做精确授权(Approve recurring work once)。 给自动化授予的是精确操作的权限,不是笼统的一次性放行;授予之后你随时可以 inspect 或 revoke。关键机制是:一旦 job 或 operation 发生变化,会要求重新批准(#129526、#131602)。请把这条当成自动化的默认姿势,而不是"先全放开以后再说"。

4. 用角色收敛访问范围。 Gateway 用角色来收窄访问范围(roles narrow access)。按人、按用途分角色,不要所有人共用一个全权身份。

5. 纠正对 Incognito 的误解。 这一条单独强调,因为它是最常见的误用:Incognito 模式只是把 transcript 保留在内存里直到重启,它不会停掉 provider 或 tools。它不是隐私开关。 开着 Incognito 让 agent 去调外部服务,请求照样出去,provider 照样看到。如果你要的是"不外发",那需要的是网络层与权限层的控制,不是一个叫 Incognito 的开关。

另外补一条架构红利:共享云会话下 Gateway 代理模型请求,provider 凭据留在 Gateway 侧;remote worker 消失后还能从持久 Gateway 状态再启一个。

九、回滚预案:降级可行,但它是有界的

这一节是全篇最该读完的部分。

升级会把文件支持的会话记录与 transcript 校验、归档、迁进 SQLite。而降级路径是有界的,边界有两条,务必分清:

边界一:会话可见性。 旧的文件支持版本能恢复迁移之前就存在的归档记录,但看不到迁到 SQLite 之后新建的会话。翻译成人话:你升到 2.0,用了三天,觉得不对想退回旧版——这三天里新开的会话,旧版本读不到。它们未必丢失,但你手上的旧版本拿它们没办法。

边界二:整体状态目录回滚的影响更大。 如果你采取"把整个状态目录换回旧副本"这种粗暴做法,影响面不止会话:approvals 与 delivery/dedup 记录也会跟着回退,部分 ratcheting channel 凭据可能需要重新关联。这意味着回滚会把你授予过的权限、已经投递过的消息去重状态一并带走——在自动化场景里,dedup 记录回退是能造成真实损失的,重复投递不是理论风险。

所以结论必须写清,一个字都不能含糊:能回到旧软件,但不能假设更新的会话或状态变更会自动跟随。备份不是可选项,它是你唯一的退路。

回滚前的强制动作:确认备份可恢复、已导出 2.0 状态下新产生的关键会话内容、已知晓 approvals 与 dedup 记录会回退。

十、可复制检查清单

升级前:

  • 已完整备份 Gateway 的 configuration 与 state(不是单个客户端配置)
  • 备份已验证可恢复
  • 已记录当前版本号与已装插件清单
  • 已盘点 /prose 调用位置
  • 已盘点 codex/*、openai-codex/* 模型引用位置
  • 已确认外部插件是否需要应对 2026-09-01 的 SDK 弃用

升级中:

  • 自动更新失败时,已按官方建议用本地 coding harness 参与诊断
  • openclaw doctor --fix 已执行且无未处理冲突
  • Gateway 已重启
  • 模型访问验证已通过

升级后:

  • Gateway 服务健康
  • 历史会话与 transcript 迁移完整
  • .prose 源文件仍在,调用方式已按 Agent Skill 迁移路径重接
  • 模型引用 / provider config / 已存储会话 / automation routes 四类对象均无旧 ref 残留
  • 定时任务已实际触发验证过一次
  • 掩码凭证请求已开启
  • proxy 目标白名单已配置
  • 自动化已改为精确授权,并确认变更会触发重新批准
  • 角色已收敛
  • 团队已知晓 Incognito 不是隐私开关

十一、七个踩坑点

  1. 只备份配置文件,不备份状态目录。 会话、权限、dedup 记录都在 state 里,配置丢了能重写,state 丢了就真没了。
  2. 以为版本号变了就是升完了。 必须走完"本地更新 → checks → 重启 → 模型访问验证通过"四步。
  3. 把 Incognito 当隐私开关。 它只让 transcript 留在内存直到重启,不停 provider、不停 tools。
  4. 只改配置文件里的模型名,漏掉已存储会话和 automation routes。 症状会延迟到几天后的凌晨才暴露。
  5. 指望 openclaw doctor --fix 自动解决所有冲突。 不会。冲突是留给操作员的,工具不替你做决定。
  6. 以为 .prose 文件被删了,于是手忙脚乱去找备份。 文件保留,变的是调用方式,走 Agent Skill 迁移即可。
  7. 以为回滚是无损的。 降级有界:SQLite 之后的新会话旧版读不到;整体回滚还会把 approvals、delivery/dedup 记录一起带回去,部分 ratcheting channel 凭据要重连。

常见问题

Q1:自动更新失败了,第一步该做什么? A1:先确认备份在不在——官方的原话就是改动前先备份 configuration 和 state。然后按官方建议,用本地 coding harness 帮忙完成更新、诊断迁移错误、验证 Gateway 能正常启动。不要自己硬猜参数,具体报错以 openclaw doctor 的输出为准。

Q2:升级后 /prose 命令没了,我写的那些 .prose 文件还在吗? A2:在。这次 breaking change 移除的是内置的 OpenProse 插件与 /prose 命令,你现有的 .prose 源文件是保留的。你需要做的是跑 openclaw doctor --fix 清理陈旧配置,然后按上游的 Agent Skill 迁移路径把调用方式接回去,文档见 https://docs.openclaw.ai/prose 。

Q3:openclaw doctor --fix 报冲突,它能自己解决吗? A3:不能。冲突需要操作员手动修复,工具不会替你决定。正确做法是用本地 coding harness 参与诊断,或者对照升级前盘出来的 codex/*、openai-codex/* 引用清单逐条比对。迁移本身会保留 Codex runtime intent,所以冲突通常不是语义问题,而是"该用哪个目标 ref"的判定问题。

Q4:我回滚到旧版本,升级之后新建的会话还在吗? A4:旧版本看不到它们。降级是有界的:旧的文件支持版本能恢复迁移之前就存在的归档记录,但看不到迁到 SQLite 之后新建的会话。如果整体回滚状态目录,影响更大——approvals 与 delivery/dedup 记录也会回退,部分 ratcheting channel 凭据可能需要重新关联。回滚前请把新产生的关键内容另行导出。

Q5:开了 Incognito,是不是 provider 就看不到了? A5:不是。Incognito 模式把 transcript 保留在内存中直到重启,但它不会停掉 provider 或 tools。它不是一个隐私开关。如果你需要的是"请求不外发",要靠网络层与权限层的控制来实现,而不是靠这个模式。


参考来源

本文由 AI 辅助生成,经人工审核编辑。最后更新:2026-09-01

常见问题

自动更新失败了,第一步该做什么?
先确认备份在不在——官方的原话就是改动前先备份 configuration 和 state。然后按官方建议,用本地 coding harness 帮忙完成更新、诊断迁移错误、验证 Gateway 能正常启动。不要自己硬猜参数,具体报错以 `openclaw doctor` 的输出为准。
升级后 `/prose` 命令没了,我写的那些 `.prose` 文件还在吗?
在。这次 breaking change 移除的是内置的 OpenProse 插件与 `/prose` 命令,你现有的 `.prose` 源文件是保留的。你需要做的是跑 `openclaw doctor --fix` 清理陈旧配置,然后按上游的 Agent Skill 迁移路径把调用方式接回去,文档见 https://docs.openclaw.ai/prose 。
`openclaw doctor --fix` 报冲突,它能自己解决吗?
不能。冲突需要操作员手动修复,工具不会替你决定。正确做法是用本地 coding harness 参与诊断,或者对照升级前盘出来的 `codex/*`、`openai-codex/*` 引用清单逐条比对。迁移本身会保留 Codex runtime intent,所以冲突通常不是语义问题,而是"该用哪个目标 ref"的判定问题。
我回滚到旧版本,升级之后新建的会话还在吗?
旧版本看不到它们。降级是有界的:旧的文件支持版本能恢复迁移之前就存在的归档记录,但看不到迁到 SQLite 之后新建的会话。如果整体回滚状态目录,影响更大——approvals 与 delivery/dedup 记录也会回退,部分 ratcheting channel 凭据可能需要重新关联。回滚前请把新产生的关键内容另行导出。
开了 Incognito,是不是 provider 就看不到了?
不是。Incognito 模式把 transcript 保留在内存中直到重启,但它不会停掉 provider 或 tools。它不是一个隐私开关。如果你需要的是"请求不外发",要靠网络层与权限层的控制来实现,而不是靠这个模式。

相关文章

实战 SOP

428B 开源了,先备 8 张 H100:M3.1 Flash 部署实录

M3.1 Flash(428B/A23B)本地部署实录。先泼冷水:官方没有任何消费级或单卡配方,vLLM recipe 与 SGLang cookbook 验证过的最小档是 4 张 Blackwell(B200/B300/GB200/GB300,TP4)、4 张 AMD MI355X(TP4)或整机 8 张 H100/H200(TP8,FP8 路径)。权重从 HF 或魔搭下载(公开、非 gated),体积三口径并存:社区口径 252.4GB/48 分片加 2.3GB DSpark 草稿头,vLLM recipe 另列 NVFP4 285GB、MXFP4 293GB、FP8 533GB;官方无独立量化仓。vLLM 需 0.33.0 及以上(发布当日不在 PyPI,用 Docker 镜像 vllm/vllm-openai:minimax-m31-flash 或 nightly),三条官方命令逐字实录:H100/H200 TP8、GB200 TP4、MI355X TP4,均强制 --block-size 128 与 --disable-hybrid-kv-cache-manager(漏掉会报 No common block size for 16);1M 上下文靠 --max-model-len 放开(Hopper 官方示例限 262144)。SGLang 尚未合入 main(Blackwell 需装 MSA 内核 pinned commit 且 nvcc 不低于 13.4,cu130 不算数)。显存账本:BF16 全量约 856GB 为推算口径非官方;激活 23B 只降算力不降显存门槛——428B 的专家必须全部驻留,这就是消费级不可行的根因;1M 上下文的 KV cache 总量官方未公布。国产算力走 FlagOS Day-0 九芯片(含华为昇腾,SGLang-plugin-FL 路径),性能数字标 FlagOS 官方口径。排障 13 条官方预置口径全收:hugepages 560GiB、B200 OOM、parser 拼写差异等,每条带解法。许可 MiniMax Community License:商用署名加 2000 万美元门槛。一句话现实:428B 开源了,先备 8 张 H100。

2026年10月24日9 分钟阅读
实战 SOP

Nemotron 3.5 Bolt 本地部署:74B 塞进 24GB 三条路

NVIDIA 于 2026 年 10 月 15 日发布 Nemotron 3.5 Bolt 74B-A9B 24GB:由 120B 的 Super VL 经 Star Elastic 预算条件化架构搜索压缩而来(专家路由 top-K 从 22 降到 9,蒸馏恢复训练 120B tokens),Mamba-2 与 Transformer 混合架构,量化方案是关键——占权重大头的专家层压到 IQ2_XXS 每元素 2.0625 bit(约 19GB),Mamba 线性层用 NVFP4,lm_head、词嵌入与注意力保持 Q8_0,全模型落在 22 至 24GB,精度靠 QAD 量化感知蒸馏从压缩阶段一路找回。本文给四条部署路线实录:Ollama(0.40.5 起支持,ollama run nemotron-3.5-bolt,25GB 下载,ollama ps 验证 100% GPU);Unsloth(UD-IQ2_XXS 约 22GB、UD-IQ1_M 约 20.3GB,ctx 从 4096 保守起步);llama.cpp 官方配方(需 10 月 15 日后构建才认识 nemotron_h_moe 架构,28GB 配方 65K 上下文加 8-bit KV 加 6 个草稿 token,32GB 配方上 262K;b11521 起 llama-server 默认端口改为 9931);vLLM(Blackwell SM120 配 LiLiCorr drafter,服务端多用户场景)。显存账本与两条上下文起步口径并存:裸模型 16K-32K 起步,Unsloth 因默认带 1-2GB draft model 建议 4K 起步。排障八条覆盖 OOM 砍上下文、层落系统内存、漏 --mmproj、max_tokens 16384 共享预算截断等。许可证 OpenMDW-1.1:免费无限制商用、输出物不受限、再分发须保留版权声明、含专利报复条款。厂商自报 GPQA Diamond 86.4、Terminal-Bench 2.1 51.0、PinchBench 公开榜同级第一(RTX Spark 实测 83.99 TPS,消费卡无官方数据);4GB 的 Bolt E4B 于 10 月 23 日接档发布。

2026年10月23日8 分钟阅读
实战 SOP

Xing4.0-29B-Intent 部署:29B 只跑 4B,命令抄哪条

把 Xing4.0-29B-Intent 跑起来的关键,是官方部署说明其实不在本仓库而在基座仓库:意图仓库 README 只给一句替换说明,完整 vLLM 与 SGLang 启动命令需从基座 Xing4.0-29B-A4B 搬,再把模型路径换成 Xing4.0-29B-Intent 权重路径并把 --served-model-name 设为 Xing4.0-29B-Intent。命令里几个参数是硬门槛:--trust-remote-code 必须加(model_type 为自研 xing4_0,非 llama 非 qwen),--tensor-parallel-size 2 意味着至少两卡,--max-model-len 262144 对应 256K 上下文,--reasoning-parser xing4_0 与 --tool-call-parser xing4_0 配套解析器,--speculative-config 用 mtp 方法,--gpu-memory-utilization 0.90 与 --max-num-seqs 4 是官方示例配比。权重 41 个 safetensors 分片共 62.43 GB,官方量化只有 FP8(33.17 GB,e4m3)与 GGUF(IQ4_NL 单文件 17.75 GB),没有 AWQ、GPTQ 或 INT8 safetensors。显存官方完全未公布,只说按实际环境配置;基座层给出的是必须 bfloat16(mHC 模式要求,FP16 或量化路径会报错)、暂不支持 --pipeline-parallel-size 大于 1、CUDA 上 mHC 路径需装 tilelang、宿主机需 Docker 24.0 以上与驱动 535 以上;昇腾路线明说需 910B2 系列 NPU 至少两张卡,并提供 quay.io 上三款官方镜像(镜像不含权重需自行挂载)。消费级与 CPU 路径只在基座 llama.cpp 文档里出现:int4 权重用 IQ4_NL 量化后约 19 GB,可在单张消费级 GPU 上跑,示例卡 RTX 3090 24 GB。SDK 只是 httpx HTTP 客户端、未发 PyPI;结构化输出两层:模型原生 category + args 数组,以及 SDK 开启 guided_json 后自动生成 JSON Schema 走 vLLM response_format 约束解码。许可虽为 Apache-2.0,但权重侧无独立 LICENSE 文件、仓库 LICENSE 是未填版权人的占位模板、61 个上游数据集原许可仍需自行核对。

2026年10月22日9 分钟阅读