直接回答
只有在发布策略明确授权两个来源服务同一个制品,并且客户端验证实际表示一致时,镜像才可替代主站。相同文件名或 HTTPS 请求成功都不够。应把模型 ID、仓库修订、格式、已确认的预期长度以及存在时的可信摘要绑定起来,再检查各来源响应和最终字节。镜像不应悄悄更换模型版本、许可记录、分词器或包结构。如果无法确定身份,应把响应当作另一个候选制品,绝不能追加到已有部分字节之后。 当前 ModelDownloader 配有主 URL 和可选镜像 URL,并会在特定网络故障后尝试镜像。E2B 来源在 ModelConfig 中绑定了仓库提交,但 SHA-256 为空;E4B 来源元数据被注释为占位值,引用可变分支。代码事实能证明有镜像回退逻辑,不能证明主站和镜像已测得逐字节相同。不要把两个 URL 的存在说成已验证的冗余能力。准确结论是:实现需要镜像等价性的证据记录。 应在故障发生前确定镜像验证契约。每种制品应保存获准来源标识、不可变修订、格式、大小来源、摘要来源和跳转规则。还要定义镜像能否响应范围请求,以及客户端如何将续传响应与既有字节绑定。主站不可用时,客户端只有在确认相同身份后才可使用获准镜像;不能根据镜像恰好返回的文件临时生成新清单。若没有摘要,应准确说明较弱的保障:来源和修订固定、TLS 校验、长度检查、运行时加载彼此不同,不能等同于密码学字节验证。 镜像一致性要用受控夹具和正式发布记录验证,不能只比较 URL。从每个来源取得同一不可变修订,记录状态、最终 URL、响应范围、Content-Length、验证器与摘要结果。镜像刷新后、下载中断后都要重复检查。如果从来源 A 得到部分文件,只有响应元数据和可信身份能证明表示连续时,才可从来源 B 续传;否则应创建新候选并从头获取。只因长度相同不能合并响应。 运维上存在取舍。增加镜像可能提高可用性,却会扩大受信来源范围,也更容易出现修订落后。不同地区的镜像可能有不同重定向和范围行为。缓存和反向代理可能在新修订发布后仍提供旧数据。要分别规定新鲜度和撤销。当镜像响应验证失败,应记录为已拒绝来源,避免在同一镜像上重复循环。用户提示应说明来源不可用或未验证,但不暴露凭据与私密 URL。 应维护相互独立的记录:来源授权、内容身份、传输状态和应用激活。TLS 说明与主机的连接受平台证书规则保护;允许列表说明该主机被发布策略批准;摘要只在预期值来自可信渠道时能证明字节相等;运行时加载说明选定实现接受了文件。没有任何一项能替代全部其他检查。如果模型供应方改变仓库所有权或来源条款,信任决策应重新审查,不能自动继承给镜像。 ### 操作步骤 1. 对特定模型版本列出主站和批准镜像,记录各来源控制方、是否允许重定向,以及可服务的路径与修订。 2. 从权威发布记录固定元数据:修订、格式、文件清单,以及可信时的长度与摘要。不存在的值注明未知,而非默认验证通过。 3. 分别从每个来源获取相同不可变对象。比较状态、响应元数据、完整字节摘要和运行时/包验证;记录中绑定修订与日期。 4. 测试故障转移与续传。模拟主站中断、镜像陈旧、版本变化、部分传输、忽略 Range 以及摘要不匹配。没有表示连续性证据时不得跨来源拼接。 5. 对每个镜像结果批准、拒绝或隔离。来源所有权或内容改变时更新授权记录,防止系统循环重试已拒绝来源。 ### 验收标准 - 每个允许镜像都绑定到相同不可变制品身份,而不只是文件名相似。 - 镜像切换不会绕过缺失或不匹配的修订元数据,也不会混合无关部分字节。 - 只有预期摘要来源可信时才声称摘要校验;否则如实说明保障边界。 - 故障和陈旧镜像夹具会拒绝候选,同时保留活动模型和用户资料。 ### 对照 | 证据 | 能说明什么 | 不能说明什么 | |---|---|---| | 批准的主机/域名 | 发布策略允许访问该来源 | 该来源响应就是预期模型字节 | | 一致的长度和版本标签 | 基础元数据相符 | 密码学等价或发布者真实性 | | 可信摘要比较 | 字节与预期摘要相同 | 运行时支持、许可或任务质量 | ### 常见问题 **主站超时时可以换任何镜像吗?**不可以。镜像必须出现在制品来源策略中,并返回相同固定表示。网络故障本身不能授权新来源或不同模型修订。 **文件名和大小相同是否足以证明镜像一致?**不足。不同内容可能拥有相同名称和长度。可用时要检查不可变修订和可信摘要;否则应明确说明尚未建立字节级完整性。 **能否在另一个主机上续传部分下载?**只有响应元数据和可信制品身份证明范围字节属于同一表示时才可以。缺少证明时,应在独立候选路径从头下载。 **镜像一致是否证明模型兼容设备?**不能。它只证明所检验制品的内容相等。运行时加载与具体任务验收仍是独立检查,也不能推出更广设备系列的兼容性。
主模型源在部分下载期间不可用
设备从配置的主仓库保存了部分临时字节。网络错误使下载器考虑尝试镜像。应用必须确认最终响应与同一制品相符,才能续传,同时避免混入陈旧或不同修订。
决策
只有发布策略授权镜像来源,且响应身份证明是同一不可变制品时才使用;否则重启独立候选或停止并说明状态。
预期结果
获准镜像可带证据使用;身份不匹配时旧活动模型不变,候选部分文件仍保持隔离。
需要收集的证据
只有将以下证据与同一模型文件和测试运行关联起来,结论才可复核:
- 模型仓库与不可变修订
- 主站及镜像的响应元数据
- 摘要和运行时验证记录
收到完整字节流还不够;最终落盘、完整性、运行时加载和恢复路径也必须验证。
实施流程
- 事先批准精确来源. 列出主站及镜像的控制方、允许跳转目标、仓库修订与制品路径。不能只因主机后缀或镜像名称相似就推断已授权。
- 将来源绑定同一制品清单. 记录修订、格式、长度来源、摘要来源及分词器等伴随文件;缺少的摘要或占位大小必须标为未知。
- 比较完整响应. 在受控测试中从每个来源获取固定版本,检查状态、最终 URL、范围、长度、摘要和目标运行时接受结果,并按版本和日期存档。
- 验证跨来源续传. 追加之前证明镜像范围响应和已保存字节属于同一表示。验证器或修订不同则隔离候选,仅在策略允许时从头获取。
- 测试陈旧及拒绝来源. 模拟主站不可用、镜像陈旧、跳转、忽略范围和摘要不符,确认被拒绝来源不会反复循环,也不会替换活动制品。
让每个阶段的状态都可观察。失败信息应指出阶段、模型、运行时和恢复动作,同时避免记录用户私密内容。
验收标准
- 每个获准镜像都明确绑定到固定制品修订。
- 仅凭文件名或长度不能续传或激活制品。
- 缺少可信摘要时如实说明,不能称摘要验证通过。
- 陈旧或不匹配候选不能替换活动模型或删除用户资料。
决策对照表
| 维度 | 选择或证据 | 解读方式 |
|---|---|---|
| 主机允许列表 | 来源授权 | 批准端点,但不证明返回内容正确。 |
| 修订、格式与长度 | 元数据一致性 | 缩小身份范围,但不证明密码学字节相等。 |
| 可信摘要 | 内容一致性检查 | 只有预期值来自获准渠道时才可比较字节。 |
需要避免的失败模式
- 只比较 URL、文件名或长度
- 遇到主站故障就接受任何镜像
- 让另一版本的字节续接旧临时文件
还要避免静默回退、版本未固定、缺少取消处理,以及把不同配置的结果混在一起下结论。失败运行也应与成功记录一并保存。
最小复现记录
| 层级 | 记录内容 |
|---|---|
| 设备 | 厂商、型号、芯片、内存档位、操作系统版本 |
| 软件 | 应用版本和 Git 提交号 |
| 模型 | 系列、变体、版本、格式、文件长度、摘要、量化方式 |
| 运行时 | 名称、版本、请求后端及实际后端证据 |
| 工作负载 | 样例版本、输入摘要、提示词摘要、输出策略 |
| 结果 | 完成、失败、取消、回退及保护隐私的诊断信息 |
发布检查表
- ☐ 主要搜索问题已回答,且没有未经支持的数字。
- ☐ 所有模型文件和运行时版本均已固定。
- ☐ 代表性任务和失败处理策略均有说明。
- ☐ 生命周期、取消、清理和回退均已测试。
- ☐ 用户内容与网络边界均有说明。
- ☐ 结论只适用于被记录的配置。
- ☐ 新增测试结果时链接到原始方法或证据。
来源与相关证据
中文部署与排错专题见。奇连 AI 端侧专题。
常见问题
主站超时后可以切换任意镜像吗?
不可以。发布策略必须批准该来源,而且响应必须标识相同固定表示。网络故障本身不能授权新来源或不同模型修订;未授权结果应隔离。
名称和文件大小相同能证明镜像相等吗?
不能。不同内容可以使用相同名称与长度。可用时核对不可变修订和可信摘要;否则明确说明没有验证字节是否相等,并限制对外结论。
可以从另一个主机续传吗?
只有响应元数据和可信身份证明范围字节来自同一表示时才可以。没有证据就应隔离候选,在独立路径重新开始,并保留活动模型。
镜像内容一致是否代表设备兼容?
不代表。它只确认测试制品相同;目标运行时仍须加载,任务仍须独立验收,不能据此推断更广设备系列支持,结论要限定测试组合。