SuperAPI AI 工具集

flash-moe-inference

智能体与模型

查看项目

更新于 10-16 07:27

技能介绍

用途:在 Apple Silicon Mac 上以极简 C/Objective-C/Metal 实现运行 397B 参数混合专家(MoE)大模型 Qwen3.5-397B-A17B,通过 SSD 流式加载专家权重,不依赖 Python 或常见 ML 框架。

主要能力:按需从 NVMe SSD 流式读取每层 K=4 个激活专家;纯 C/Metal 手写内核;支持 4-bit 生产量化与可选的 2-bit 量化;提供基础推理、交互式聊天(支持工具调用)以及仅 MoE 的基准测试命令;含权重提取、专家打包与重打包脚本。

使用方式(保留原始命令):克隆仓库并构建。 git clone https://github.com/danveloper/flash-moe cd flash-moe/metal_infer make ls infer chat main

准备权重(需自行从 HuggingFace 下载 Qwen3.5-397B-A17B safetensors 权重): python3 extract_weights.py /path/to/Qwen3.5-397B-A17B-Instruct/ python3 repack_experts.py /path/to/Qwen3.5-397B-A17B-Instruct/ metal_infer/packed_experts/ 可选 2-bit 重量化: python3 metal_infer/repack_experts_2bit.py metal_infer/packed_experts/ metal_infer/packed_experts_2bit/

推理与聊天: ./infer --prompt "Explain quantum computing" --tokens 100 ./infer --prompt "Explain quantum computing" --tokens 100 --2bit ./infer --prompt "Hello" --tokens 20 --timing ./chat ./main

适用场景:在 Mac 上本地运行大型 MoE 模型、工具调用型智能体工作负载,以及研究 MoE 专家吞吐与 SSD 流式加载性能。

限制与要求:需要 Apple Silicon(如 M3 Max)、48GB 以上统一内存、约 210GB 可用 SSD 空间、macOS 26+(Darwin 25+)、Xcode 命令行工具和 Python 3.x(仅用于权重提取);4-bit 约 4.36 tok/s、占用 209GB,2-bit 更快(约 5.74 tok/s、120GB)但会破坏 JSON/工具调用;2-bit 不适合智能体场景。资料还列出多种不应尝试的优化方式(如 mmap 专家文件、dispatch_io、LZ4 压缩、时间专家预测等)及故障排查步骤。其他如收费、价格、平台等信息暂未提供。