sparkle/models/README.md
fiser_jun 4745f264b2
2026-08-04 14:34:00 +08:00

50 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 模型与专家数据(不入库,请本机下载/生成)
## 为什么要做
目标不是「把 80B 常驻塞进 64G」而是用本机 **64G 统一内存** 做压力验证:把约 **77G 专家权重** 以流式专家池压到约 **33G 常驻**,在 8bit 下跑通 Qwen3-Next-80B-A3B。
验证点对应下游的 **黄金拐点**Qwen3 **30B 8bit A3B** 一类模型,用同一套流式装载思路,能放进 **32G / 16G** 统一内存机器,相对「整模进内存」可 **节省 50% 以上统一内存**。本仓库的 80B @ 64G 是这条路径的上限探针;量产形态落在更小机型上的 30B 拐点模型。
---
## 运行依赖版本
权重本身不绑版本,但本仓库预编译扩展与锁文件对齐如下(换版本可能无法 `import native_moe_ext` 或加载 8bit
| 项 | 要求 / 已验证 |
|----|----------------|
| Python | **3.14.***(已验证 3.14.6;须匹配 `native_moe_ext.cpython-314-darwin.so` |
| mlx | `>=0.31`(锁文件 **0.31.2** |
| mlx-lm | `>=0.31`(锁文件 **0.31.3** |
| numpy | `>=2.0`(锁文件 **2.4.6** |
| fastapi | `>=0.115`(锁文件 **0.140.0** |
| uvicorn | `>=0.30`(锁文件 **0.51.0** |
| textual | `>=0.80`(锁文件 **8.2.8** |
安装:在仓库根目录 `uv sync`(或使用已有 `.venv`)。完整约束见根目录 `pyproject.toml` / `uv.lock`。换 Python 小版本需 `make -C native/ext native_moe_ext` 重编 `.so`
权重体积约 **160GB**,不进 Git。按下面准备后目录应类似
```
models/
├── Qwen3-Next-80B-A3B-Instruct-MLX-8bit/ # ~79GB 主模型
├── experts_8bit_g64/ # ~77GB 专家 blob运行时常驻约 33G
└── qn_mtp_weights.safetensors # ~3.1GB MTP
```
## 下载NAS
全部模型与专家数据从 NAS 共享下载:
- 链接https://ug.link/dxp4800plus-8761/filemgr/share-download/?id=86b004b90f4a477e84c7f65c87943b2f
- 密码:`sparkle`
解压/放置到本仓库 `models/` 下,目录结构与上文一致即可。
> 说明:本仓库当前跑通的是 **80B** 探针;包内若含 **Qwen3-30B-A3B-Instruct-2507-MLX-8bit**,供下游 16G/32G 机型对照,不替代本机 80B 数据准备。
## 可选
`prefix_snapshots/` 会在首次跑通后自动生成,可不预置。