写点什么

HF 下载太慢?Alaya NeW 的加速神器让你的模型"飞"起来!

  • 2025-05-09
    北京
  • 本文字数:3396 字

    阅读完需:约 11 分钟

还在用传统方式从 Hugging Face 龟速下载模型吗?当整个 AI 世界都需要加速奔跑时,Alaya NeW 平台为你带来了革命性的解决方案!我们刚刚解锁了一项足以让整个 AI 圈沸腾的新能力——DingoSpeed 自托管镜像服务!

痛点直击:HF 下载慢如蜗牛

在自然语言处理(NLP)和计算机视觉领域的技术实践中,Hugging Face 平台已成为全球开发者获取预训练模型和数据集的重要枢纽,然而众多开发者在 Alaya NeW 平台使用过程中反馈,从 Hugging Face 官方下载模型和数据集时速度极其缓慢,特别是对于几十 G 甚至几百 G 的大模型,下载过程可能持续数小时,严重影响了开发效率。


为此,九章云极的 Dingo 团队自主研发了 DingoSpeed —— 一款面向企业级场景的自托管镜像服务,旨在通过本地化存储、智能分块调度和高效缓存提升下载速度,优化 AI 资源的全生命周期管理,让 AI 研发驶入快车道!

快速开始:开启您的极速之旅

1. 设置 HF_ENDPOINT 环境变量

在 pod 内部设置环境变量 HF_ENDPOINT 设置镜像站点,按照不同的智算中心选择。 在这个站点内我们缓存了很多开源模型,可以加速下载。

Linux

# 北京一区export HF_ENDPOINT=http://hfmirror.mas.zetyun.cn:8082
# 北京二区export HF_ENDPOINT=http://hfmirrora01.hd-02.zetyun.cn:8082
# 北京三区export HF_ENDPOINT=http://hfmirror-1.hd-03.zetyun.cn:8082
复制代码

Windows

# 北京一区$env:HF_ENDPOINT = "http://hfmirror.mas.zetyun.cn:8082"
# 北京二区$env:HF_ENDPOINT = "http://hfmirrora01.hd-02.zetyun.cn:8082"
# 北京三区$env:HF_ENDPOINT = "http://hfmirror-1.hd-03.zetyun.cn:8082"
复制代码

2. 查看缓存模型列表

# 查看北京一区模型列表curl http://hfmirror.mas.zetyun.cn:8082/repos
# 查看北京二区模型列表curl http://hfmirrora01.hd-02.zetyun.cn:8082/repos
# 查看北京三区模型列表curl http://hfmirror-1.hd-03.zetyun.cn:8082/repos
复制代码


[!TIP]如果模型列表中没有您所需要的模型,可联系客服申请加入缓存。

3. 下载模型

pip install -U huggingface_hub
复制代码

snapshot_download 下载模型:

from huggingface_hub import snapshot_downloadimport os
os.environ["HF_ENDPOINT"] = "http://hfmirror-1.hd-03.zetyun.cn:8082"
snapshot_download(repo_id='Qwen/Qwen-7B', repo_type='model', local_dir='./model_dir', resume_download=True, max_workers=8)
复制代码

huggingface cli 下载模型:

# 下载Qwen2.5-1.5B-Instruct:huggingface-cli download --resume-download Qwen/Qwen2.5-1.5B-Instruct --local-dir Qwen/Qwen2.5-1.5B-Instructhuggingface-cli download --resume-download Qwen/Qwen2.5-14B-Instruct  --local-dir Qwen/Qwen2.5-14B-Instruct
复制代码

huggingface 示例代码下载模型:

使用示例代码时需要修改 Cache 模型的路径,将其设置为持久化的 pvc 路径。例如:


export HF_HOME=/mnt/models
复制代码

可使用如下代码下载值直接运行,并自动下载模型:

from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "Qwen/Qwen2.5-1.5B-Instruct"
model = AutoModelForCausalLM.from_pretrained( model_name, torch_dtype="auto", device_map="auto", proxies ={"http://": "hfmirror-1.hd-03.zetyun.cn:8082"})tokenizer = AutoTokenizer.from_pretrained(model_name, proxies ={"http://": "hfmirror-1.hd-03.zetyun.cn:8082"} )
prompt = "write a quick sort algorithm."messages = [ {"role": "system", "content": "You are Qwen, created by Alibaba Cloud. You are a helpful assistant."}, {"role": "user", "content": prompt}]text = tokenizer.apply_chat_template( messages, tokenize=False, add_generation_prompt=True)model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate( **model_inputs, max_new_tokens=512)generated_ids = [ output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
复制代码

官方教程

您也可以直接访问 Alaya New 官网,查看模型下载加速方式。

实测数据:速度提升令人惊喜

目前开发者在使用 Alaya New 平台时,多使用 olah 从 Hugging Face 官方下载模型和数据集,为检验下载体验能否有所提升,我们在以下测试环境中同时使用 DingoSpeed 与 olah 进行模型下载,并跟踪测试结果。

测试环境


测试结果



测试结论

同等资源条件及下载场景下:


  • 下载速度:DingoSpeed 小模型下载速度比 olah 速度快 30%以上,大模型下载速度比 olah 快 100%以上

  • 稳定性:DingoSpeed 下载大模型速度更稳定,基本可以跑满理论带宽,是 olah 的 8 倍,支持并发数是 olah 的 15 倍以上

  • 内存占用:DingoSpeed 内存占用比 olah 低 70%

  • 限流:DingoSpeed 能够有效限流,olah 则无法限流偶尔导致服务无响应

技术揭秘:HFMirror 背后的技术变革

如此惊人的速度提升是如何实现的?这要归功于 DingoSpeed 的核心技术:


  1. 突破网络限制


  • 本地镜像加速:将高频访问的模型与数据集缓存至本地服务器,规避跨国网络延迟与访问限制。

  • 离线可用性:支持预下载与本地持久化存储,确保关键资源在断网环境下仍可调用。


  1. 提升资源获取效率


  • 并行分块下载:基于动态分块算法(默认块大小 8MB),结合协程池实现多线程并发下载,带宽利用率提升 60%+。

  • 智能缓存复用:通过元数据(API)与文件块(Files)分离存储,避免重复下载,降低带宽消耗。


  1. 精细化资源管控


  • 流量削峰与限流:令牌桶机制(handlerCapacity)控制并发请求,防止服务过载。

  • 内存智能回收:当内存使用超过阈值(默认 90%)时,自动暂停预读取,保障系统稳定性。

架构解析:技术实现与创新设计

  1. 分层架构设计 DingoSpeed 采用模块化架构,核心组件包括:


  • 元数据层(API/Heads):负责与 Hugging Face 平台交互,同步模型描述、版本及文件列表。

  • 数据存储层(Files):基于 DingoFs 云原生分布式高速文件存储系统,按原始目录结构存储数据文件,支持动态扩容与高可用。

  • 缓存管理层:集成 ristretto 缓存库,通过 HEADER 结构(131,108 字节固定头)实现快速块校验与版本兼容。


  1. 下载流程优化


  • 元数据解析:获取模型基础信息,生成文件列表与依赖关系。

  • 动态分块与掩码生成:按 blockSize 切分文件,通过位掩码(Bitmask)标记块状态(1 bit/块)。

  • 并行下载与合并:协程池启动多组 chunk worker,按掩码状态从远程/本地获取数据块,支持断点续传与数据块去重,最终合并为完整文件


  1. 高可靠存储模型


  • HEADER 结构:包含文件版本、块大小、掩码元数据,确保缓存文件兼容性(如程序升级后仍可读取历史数据)。

  • 数据一致性保障:文件内容与 Hugging Face 原仓库一致,但因 HEADER 附加信息导致 SHA256 值差异,需通过专用校验接口验证完整性。


  1. 服务内置全链路监控体系


  • 系统资源:实时跟踪 CPU、内存及磁盘使用情况。

  • 进程状态:监控 DingoSpeed 服务的健康度与请求吞吐量。

  • 业务指标:统计模型/数据集的下载量、响应速率、基于 IP 的下载及服务流量,为优化提供数据支撑。

  • 诊断工具:集成 ELK 日志分析、pprof 性能剖析,支持快速定位瓶颈。

重磅开源:助力 AI 开发者

为回馈社区,让更多开发者受益,我们决定将 DingoSpeed 完全开源。希望助力众多 AI 开发者更加专注于模型创新而非漫长等待。

立即体验

访问 DingoSpeed GitHub仓库,获取部署文档、配置指南及性能测试报告,体验飞一般的模型下载速度吧!

迭代方向:技术演进与生态蓝图

接下来,DingoSpeed 将带来更多令人期待的能力升级:


  • 性能深化:引入对象池技术,复用高频资源对象;支持跨智算中心数据同步。

  • 功能扩展:开发可视化管控界面,集成模型检索、权限审批链、用量分析看板。

  • 生态融合:无缝对接 PyTorch、TensorFlow 等框架,实现“镜像-训练-推理”管道化。

结语

DingoSpeed 以其革命性的三大核心能力——本地化加速、智能分块、弹性扩展开启了模型管理新纪元,重新定义了 Hugging Face 资源的管理范式。无论是应对企业级高并发场景,还是优化研发团队的协作效率,均展现出显著的技术优势。随着 AI 模型规模的持续增长,DingoSpeed 将持续迭代,为开发者提供更高效、更稳定的基础设施支持。


我们诚邀您即刻体验这场模型管理的效率革命,让 DingoSpeed 成为您 AI 研发基础设施中不可或缺的加速引擎。

用户头像

还未添加个人签名 2022-06-02 加入

北京九章云极科技有限公司成立于2013年,以“创造智能,探索未知”为使命,以“助力全球企业智能升级”为愿景,致力于推动国际领先人工智能技术在智算产业的创新应用,是中国人工智能基础设施领军企业。

评论

发布
暂无评论
HF下载太慢?Alaya NeW的加速神器让你的模型"飞"起来!_人工智能_九章云极DataCanvas_InfoQ写作社区