Skip to content

v2.9.31 - 独立后台运行、路由标识与参数配置完善

Choose a tag to compare

@github-actions github-actions released this 20 Jul 15:05

本次更新

独立后台运行与退出交互

  • 新增跨平台、用户级的独立后台运行服务。启用后,关闭管理界面不会再连带停止已托管实例和统一 API 路由;Windows、macOS、Linux 均使用各自安全的本地通信与进程交接机制。
  • 重做退出流程:存在后台工作负载时,默认操作会先完成并验证管理权交接,再退出界面;交接失败会保留界面并显示可恢复错误,避免“界面退出了、服务也意外停了”。
  • 将“停止实例与路由”的破坏性操作收回到路由设置并增加确认,退出弹窗不再混合后台保留与全部停止两种相反语义。
  • 完善后台运行状态恢复、进程身份校验、心跳/看门狗和开机启动路径,并加入 Windows、macOS、Linux x64、Linux ARM64 的独立运行生命周期验证。

统一 API 路由与模型标识

  • 修复 /v1/models 混入内部实例 UUID 的问题;现在只公开正在运行且可路由的模型标识。
  • 修复实例未设置别名时,/v1/chat/completions 等响应中的 model 字段暴露后端 GGUF 完整文件路径的问题。
  • 托管模式下若别名为空,程序会生成稳定、可读且不含路径的公共模型标识;请求与普通 JSON/SSE 响应会统一转换为同一个对外标识。
  • 加固路由鉴权、连接头与敏感凭据过滤,并避免运行中的公共路由被静默取消鉴权或换绑地址。

模型仓库首次启动恢复

  • 修复清除旧配置、仅保留默认 models 目录后,统计卡片能识别模型但扫描根目录与模型树为空的问题。
  • 全新配置会自动注册默认模型目录;旧配置中的空根目录也会在扫描前安全修复,已有模型无需重新下载或手工添加路径。
  • 新增浏览器与 Rust 回归,覆盖首次安装、旧配置迁移和手动扫描场景。

参数配置与可解释性

  • 参数页面现在明确区分“继承引擎默认”“用户明确指定”“程序托管必需”“当前不生效”和“引擎不支持”,引擎探测到的默认值仅用于解释,不会擅自写回配置或扩大启动命令。
  • 用户明确保存的参数即使恰好等于当前引擎默认值也会继续发射;选择“恢复引擎默认”后才会移除显式覆盖,消除“设置了但命令里没看到”的不确定感。
  • 自动数值参数、依赖参数和推测解码子参数会按实际激活关系生成命令;未指定项继续交由 llama.cpp 处理,启动命令保持简洁。
  • --no-mmap--no-repack--no-kv-offload--no-mmproj-offload 等反向开关改为正向业务语义展示,并补充开/关效果、收益、代价和发射结果说明。
  • 全面校正参数名称、别名、搜索定位和悬浮帮助,新增参数目录与说明准确性回归检查。

稳定性修复

  • 修复 Issue #5:从 v2.9.29 开始,创建实例或编辑实例时可能触发 React Minified Error #310。根因是参数配置页在不同渲染分支间改变了 Hooks 调用顺序,现已固定调用顺序并加入真实浏览器回归。
  • 修复后台运行退出交接失败时缺少可恢复反馈,以及托盘退出路径与主窗口退出行为不一致的问题。
  • 修复跨平台后台运行自动启动测试在 macOS/Linux 上的路径与时序差异。

验证结果

  • npm run check:release、TypeScript、ESLint、前端生产构建和 Mock 隔离检查全部通过。
  • Chromium 浏览器自动化 14 项全部通过,覆盖 Issue #5、退出交接、参数意图、公共模型标识和默认模型树恢复。
  • Rust 测试 233 项通过、1 项外部模型语料测试按设计忽略;Clippy 在 -D warnings 下通过。
  • npm 官方漏洞库检查为 0 个漏洞;RustSec 检查无新增未批准公告。
  • 正式标签构建会再次执行质量门禁和 Windows、macOS、Linux x64、Linux ARM64 全平台打包。

升级与运行说明

  • 本次升级保留现有模型、实例和参数配置;建议需要后台常驻的用户在路由设置中启用独立后台运行。
  • 第一阶段采用当前用户级后台服务,不安装系统级服务,不要求管理员/root 权限;注销当前系统用户或系统关机时服务会结束。
  • Windows 安装包若文件名带 unsigned,表示未配置商业代码签名,系统可能显示未知发布者提示。
  • macOS Apple Silicon 在未配置 Apple Developer 证书时提供明确标注的 ad-hoc 签名 DMG。
  • Linux 提供 x64 与 ARM64 的 AppImage 和 DEB。

完整变更:v2.9.30...v2.9.31