开源AI安全 🇺🇸 27.07.2026 21:04

在Transformers.js中实验跨域存储API提案

Hugging FaceHugging Face
跨域存储(COS)API提案旨在解决不同Web源之间共享AI模型和运行时资源的重复下载与缓存问题。由于浏览器缓存隔离,Transformers.js当前会重复存储模型权重和Wasm文件。COS通过加密哈希而非URL标识文件,从而在保证完整性和访问控制的前提下实现跨域共享。
Transformers.js 允许 Web 开发者通过特定任务的管线在浏览器中运行 AI 模型。然而,像 Xenova/whisper-tiny.en 这类流行模型会按来源分别下载并缓存,导致存储重复(例如,一个简单的语音识别示例就占用 177 MB)。即便是来自 ONNX Runtime 的 ort-wasm-simd-threaded.asyncify.wasm 等 Wasm 运行时文件,也因内容相同却在跨来源间冗余缓存。这是由于浏览器缓存隔离使用了基于顶层站点和当前帧站点的网络隔离密钥。提议的跨来源存储 API 引入了 `navigator.crossOriginStorage`,它使用加密哈希(如 SHA-256)来标识文件。应用可以通过哈希请求文件句柄;若存在则直接读取,若不存在则下载并存储,并可选可见性:`origins: '*'` 表示全局共享,来源列表表示受限共享,或仅限同站点。浏览器会在写入时验证哈希以确保完整性,且可见性只能升级不能降级,以防止恶意缩小范围。COS 是一个早期提案,尚未原生实现,但可通过浏览器扩展进行测试。
来源: Hugging Face blog — 原文
我们之前关于此话题的帖子 ↓
最新新闻