Janas 开源 LLM 推理引擎:SSD 流式加载专家突破 RAM 限制,32GB 笔记本跑 48GB MoE 模型提速近 9 倍

原标题:Janas: Run LLMs larger than RAM by streaming experts from SSD
78AI 研判分

Janas 发布开源 LLM 推理引擎,通过从 NVMe SSD 直接流式读取混合专家(MoE)权重,成功在 32GB 内存的笔记本上运行 48GB 的大模型。实测显示其生成速度达 24 tok/s,较 llama.cpp 的 2.8 tok/s 提升近 9 倍,显著降低了大模型本地部署的硬件门槛。

报道正文

本文目录2 个章节

Janas

在一台配备 32 GB 内存的笔记本电脑上,Qwen3-Next-80B(一个 48 GB 的模型)达到了 37 tok/s;在不使用草稿模型的情况下为 24 tok/s,而 llama.cpp 仅为 2.8 tok/s;读取提示词时速度为 62 tok/s,对比 llama.cpp 的 16 tok/s。 在同一台笔记本电脑(Debian 13 Linux、Intel Core Ultra 9 185H、其集成 Arc GPU、32 GB 内存、NVMe SSD;测试时间为 2026 年 10 月 9-11 日;整机配置见下文)上,Janas-LLM 在所有对比模型上的表现均快于 llama.cpp:

模型读取 1,024 tokens: Janas-LLMllama.cpp生成: Janas-LLMllama.cpp
Qwen3-Next-80B-A3B (48.4 GB, 超出内存容量)62 tok/s16 tok/s24 tok/s2.8 tok/s
Qwen3-Coder-Next (48.4 GB, 超出内存容量)66 tok/s14 tok/s22 tok/s2.2 tok/s
Qwen3.6-35B-A3B104 tok/s79 tok/s19 tok/s12 tok/s
Qwen3-30B-A3B135 tok/s122 tok/s32 tok/s15 tok/s
Gemma-4-26B-A4B-it84 tok/s76 tok/s18 tok/s12 tok/s
Gemma-4-12B-it65 tok/s46 tok/s9.9 tok/s7.1 tok/s
Qwen3.5-9B111 tok/s78 tok/s14 tok/s8.7 tok/s
Gemma-4-E4B-it122 tok/s109 tok/s20 tok/s15 tok/s
Qwen3-4B193 tok/s164 tok/s27 tok/s18 tok/s
Gemma-4-E2B-it191 tok/s150 tok/s38 tok/s19 tok/s
Qwen3.5-2B441 tok/s323 tok/s52 tok/s28 tok/s
Qwen3.5-0.8B799 tok/s519 tok/s109 tok/s32 tok/s
Qwen3-0.6B939 tok/s670 tok/s130 tok/s45 tok/s

旁边目录中由其他社区维护的同款模型数据:

模型读取 1,024 tokens: Janas-LLMllama.cpp生成: Janas-LLMllama.cpp
Qwen3-30B-A3B, bartowski 的 Q4_K_M (importance matrix)131 tok/s122 tok/s32 tok/s16 tok/s
Qwen3-30B-A3B, unsloth 的 UD-Q3_K_XL (3 bits)100 tok/s112 tok/s36 tok/s11 tok/s
Qwen3-4B, bartowski 的 Q4_K_M (importance matrix)191 tok/s160 tok/s26 tok/s18 tok/s

有一个例外:3-bit 量化版本的 Qwen3-30B-A3B 在读取阶段略慢于 llama.cpp,但在生成阶段仍快得多。这是因为该模型的权重尚未完全适配到 GPU 加速路径。

测量方法说明:所有基准测试均在相同硬件和软件环境下进行,使用 llama-bench 标准工具链。"读取"指预填充(prefill)阶段处理 1,024 个 token 的速度,"生成"指解码(decode)阶段的平均 token 生成速率。数值为多次运行的中位数,误差范围 ±3%。

SH
curl -LO https://github.com/prabanta-dev/janas/releases/latest/download/janas-linux-x86_64.tar.gz
tar xf janas-linux-x86_64.tar.gz && cd janas
./janas-chat                     # 它支持的模型:选择一个,程序会自动下载并校验

或在 Windows 10(1903 或更高版本)和 11、x86-64 架构上:下载 janas-windows-x86_64.zip,解压后,在其 janas 文件夹中的终端里运行 .\janas-chat。在同一台笔记本电脑的 Windows 11(2026 年 10 月 12 日)环境下,Janas-LLM 的生成速度与 Linux 相当(Qwen3-4B 为 25.6 tok/s,Qwen3-30B-A3B 为 34.2),提示词读取速度在混合专家模型下同样快(Qwen3-30B-A3B 为 132 tok/s),而在稠密模型下则快 1.8 倍(Qwen3-4B 为 346 tok/s,对比 Linux 下的 193),这是因为其完整的数据块通过 Intel 自家的 Windows 驱动程序直接送入 GPU。

这些模型已从 Hugging Face 预先转换完毕;若要从源代码构建,请参阅:快速开始。

文本
  ▄███████████▄    
▄███████████████▄  
███ ▄ █████ ▄ ███ ▄   J A N A S
███▄▄▄█████▄▄▄████ 
▀█████▄▀▀▀▄█████▀ ▀   a family of tools for artificial intelligence, in C
  █████████████    
 █ █ █ █ █ █ █ █   
▀ ▀ ▀ ▀ ▀ ▀ ▀ ▀    

Janas 是一系列用于人工智能的工具,使用 C 语言编写,除了 C 标准库外没有任何其他依赖。其首个组件 Janas-LLM 能够在普通计算机上运行大型混合专家(mixture-of-experts)语言模型,无论是否配备 GPU:权重存储在磁盘上,每个 token 所需的专家从 NVMe SSD 流式加载,而频繁访问的部分则保留在内存中。一个拥有 800 亿参数的模型可以在配备 32 GB RAM 的笔记本电脑上运行并生成回答。

由 Maurizio "camauri" Cammalleri 设计与编写。


⚠️ 请先阅读此部分

这是一个实验项目,而非成熟产品。

阶段早期开发。公共 API 和命令行接口随时可能变更且不予通知,每周甚至会有多次改动。模型文件是例外:发布在 Hugging Face 上的 .jns 文件(格式版本 2)将被 Janas-LLM 的所有后续版本兼容读取。
稳定性未经验证。 该引擎有意对机器施加高负载:它会用专家缓存填满空闲内存,并以 O_DIRECT 模式全速读取磁盘。如果机器的可用资源低于其预期,桌面环境可能会被迫使用交换空间(swap),导致运行缓慢或无响应。曾有一次使用 GPU 导致驱动程序重置,进而使整个桌面环境崩溃。
数据它仅在 ~/.cache/janas 中写入数据(存储关于你机器的学习信息,以及已读取的系统消息以避免重复读取),以及在你指定的位置存放转换后的模型。它不会修改所读取的模型文件。
硬件在单台机器上开发和运行(详见下文)。在其他任何硬件上均未测试:速度可能更慢,可能拒绝加载模型,或出现异常行为。

如果出现任何问题,按 Ctrl-C 可停止回复,按 Ctrl-D 可退出聊天;使用 --cache <GiB> 参数可对其占用的内存设置硬性上限,而设置环境变量 JANAS_GPU=0 则可完全禁用 GPU 加速。

原生开发环境

本仓库中的所有代码均在以下环境中编写和测量:

  • Linux Debian 13 (trixie),x86-64 架构,内核 6.12.107;GPU 驱动 Mesa 26.1.6 (Vulkan);使用 GCC 14.2 构建
  • Intel Core Ultra 9 185H(6 个性能核,8 个能效核,2 个低功耗核;支持 AVX2, FMA, F16C, AVX-VNNI;集成 Arc GPU)
  • 32 GB DDR5 内存
  • 1 TB NVMe SSD(读取速度约 5.7 GB/s)

Windows 版本在同一台笔记本电脑的 Windows 11(Build 26300)环境下运行,使用 Intel 官方图形驱动程序:其测试在该环境下通过,具体性能表现请参见上文 “在 Windows 上运行” 部分。

引擎的所有决策均基于其实时测量结果,因此在不同机器上会做出不同的选择——这部分设计旨在具备跨平台适应性。尚未尝试过的场景包括:其他 CPU(特别是缺乏 AVX-VNNI 指令集的处理器,或 AMD 处理器)、独立显卡、低速磁盘,以及不同大小的内存配置。如果你在其他硬件上运行,janas-bench 生成的报告是你所能反馈的最有价值的信息(请参阅 帮助其在更多硬件上运行)。

(注:更多技术实现细节与完整 API 文档请查阅原项目 README)