AirLLM Skill:单卡4GB跑70B大模型的显存压缩推理神器

AirLLM 实现了在不依赖量化、蒸馏或剪枝的前提下,将 70B 参数大模型的推理显存需求压缩到单张 4GB GPU 可运行的范围。项目基于分层权重分割与流式加载机制,模型各层按需从磁盘读取而非一次性全部驻留显存,同时保留了几乎无损的精度表现。凭借这一设计,项目在 GitHub Trending 持续霸榜,成为 LLM 推理优化领域最受关注的新星。

核心能力

AirLLM 的设计原则是”让硬件不再是瓶颈”。传统推理 70B 模型需要多卡 GPU 服务器,硬件成本极高;AirLLM 通过块级量化压缩与分层流式加载相结合,实现了 3 倍推理加速(v2.0+ 引入模型压缩模块),同时将显存占用控制在消费级显卡范围内。项目支持 FP8 模型、MacOS CPU 推理,以及稀疏 MoE 模型(如 DeepSeek-V3、Kimi K3)的单卡运行,覆盖当前主流开源大模型生态。

认可度

  • GitHub Star:截至 2026-08-03 约 25,597(持续增长中)
  • PyPI 下载:全量 263,400 次,近 30 天 14,312 次,24 小时 721 次
  • Trending 排名:多次登顶 GitHub Trending,Twitter/X 与 Reddit r/LocalLLaMA 讨论热度高
  • 版本活跃:最新 v3.1.0(2026-07-29),更新节奏稳定

链接

GitHub:https://github.com/lyogavin/airllm

原作者

lyogavin(GitHub @lyogavin),专注于大模型推理优化与工程落地,同时维护技术博客 Medium(@lyo.gavin) 与 Discord 社区。

详细介绍

AirLLM 最早于 2023 年 11 月发布,至今已迭代至 v3.1.0。项目初始解决了”消费级显卡跑不了大模型”的核心痛点——不需要任何量化技巧,不需要蒸馏压缩权重,模型精度与 BF16 原版完全一致。

v2.0 引入了基于块级量化(block-wise quantization)的模型压缩模块,在几乎不损失精度的情况下实现最高 3 倍推理提速。2026 年 6 月的 v3.0 新增 FP8 支持与最新模型兼容,包括 DeepSeek-V3(671B)可在约 12GB 显存运行、Qwen3-235B 约 3GB。2026 年 7 月的 v3.1.0 更进一步:Kimi K3(2.8T 参数,目前开源最大模型)在单张 RTX 6000 Ada 上全流程仅需 3.72GB 显存——原因是稀疏 MoE 模型按需只加载实际调度的 Expert,而非整层加载。

特点

  • 无需量化/蒸馏/剪枝:精度与原版 BF16 完全一致,不依赖有损压缩
  • 单卡 4GB 即可跑 70B:Llama3 70B 在单张 4GB 显存 GPU 正常运行
  • 支持 405B / 671B / 2.8T 参数:Llama3.1 405B 约 8GB,DeepSeek-V3 671B 约 12GB,Kimi K3 2.8T 约 3.72GB
  • 3 倍推理加速:v2.0+ 模型压缩模块,基于块级量化,精度损失可忽略
  • MacOS / CPU / 多硬件支持:不仅限 NVIDIA GPU,覆盖主流推理场景
  • 统一 AutoModel 接口AutoModel.from_pretrained() 一行代码自动识别模型类型

使用方法

安装

pip install airllm

基本推理(一行加载,几乎支持所有主流模型):

from airllm import AutoModel

model = AutoModel.from_pretrained("Qwen/Qwen3-32B")
# 更大的模型同理:
# model = AutoModel.from_pretrained("Qwen/Qwen3-235B-A22B")  # 235B, ~3GB
# model = AutoModel.from_pretrained("deepseek-ai/DeepSeek-V3")  # 671B, ~12GB

input_text = ['What is the capital of United States?']
input_tokens = model.tokenizer(input_text, return_tensors="pt", return_attention_mask=False, truncation=True, max_length=128, padding=False)
generation_output = model.generate(
    input_tokens['input_ids'].cuda(),
    max_new_tokens=20,
    use_cache=True,
    return_dict_in_generate=True
)
output = model.tokenizer.decode(generation_output.sequences[0])
print(output)

启用模型压缩加速(需安装 bitsandbytes):

pip install -U bitsandbytes
# v2.0 以上版本初始化时自动启用压缩加速

使用场景与人群

  • 个人开发者 / 研究者:没有多卡服务器,但需要本地跑大模型做实验
  • 边缘部署场景:显存受限的生产环境,需要单卡部署大模型服务
  • 模型对比评测:在同一硬件上快速对比不同模型的输出质量
  • MoE 模型探索者:对 DeepSeek-V3、Kimi K3 等稀疏大模型有本地运行需求

输入与输出案例

案例 1:Qwen3-32B 单卡推理

Input: "What is the capital of United States?"
Output: "The capital of the United States is Washington, D.C."
(RTX 3090 单卡,约 4GB 显存占用)

案例 2:DeepSeek-V3 671B 大模型推理

Input: "Explain quantum entanglement in one sentence."
Output: "Quantum entanglement is a phenomenon where two particles become interconnected..."
(12GB 显存,稀疏 MoE 按 Expert 流式加载,无需全量加载 671B 参数)

GitHub:https://github.com/lyogavin/airllm | Apache-2.0 License


GitHub: https://github.com/lyogavin/airllm

评论区

0 条评论

登录后可评论。

Skill超级捕获手 11 阅读