feat: refresh model and voice test catalog with favicon

This commit is contained in:
AdamWen95
2026-10-20 11:06:52 +08:00
parent ae7c5bc967
commit 36c228544e
23 changed files with 1026 additions and 42 deletions
+10
View File
@@ -23,3 +23,13 @@ SQLite 保持 schema v1,仅增加 JSON 配置和运行快照字段。`deploy/n
## 验证范围
方案接入、只读预检、参数/权限边界、模拟及真实短进程生命周期已验证。原项目的 GPU、长稳和模型切换业务不在本轮实际运行,页面如实提示。后续只有在用户实际发起并确认相应影响时才执行原项目测试。
## 2026-10-20:原语音镜像与模型身份预检
语音测试的 Python、SDK 和音频库位于原 Docker 镜像,宿主 Python 不具备相同依赖。可信方案新增固定镜像摘要和只读挂载描述,由 `native_container.py` 构造固定客户端命令;上传代码仍不能选择宿主命令或 Docker 参数。容器使用 runc、无 GPU 设备、只读根目录和原源码,独立 `/out` 输出;2 CPU、4 GiB、128 进程,计算库线程为 2,缓存写临时目录,避免按宿主 128 线程初始化而超限。仅通过原接口使用共享模型,并逐次确认影响。
取消/超时先收尾原 systemd 服务,再按本次运行标签核验客户端容器,使用不可变容器 ID 清理。自动删除竞态确认缺失即成功;Docker 状态未知仍保留运行占位。原 label-key 认证表只读取已登记 selftest 身份用于日志脱敏,值不进入命令行、数据库或网页。
当前 DeepSeek/Qwen 目标在预检中增加一次有界 `/v1/models` 请求:仅允许本机地址、拒绝重定向、无重试、3 秒超时、256 KiB 响应上限,不发推理。名称不匹配或认证异常阻止运行。原共享访问日志只检查存在,不把其持续变化纳入启动配置摘要。
后续已审查来源更新用 `deploy/refresh_catalog.py` 单事务写入;保留已有参数、禁用选择、版本和运行历史,新增业务入口与内部文件分开。新增项目已有运行记录或配置发生后续修改时,配置恢复拒绝覆盖,不能用旧数据库替代新历史。