← 返回日报
🌐 机器翻译 · DeepSeek · GitHub

lyogavin airllm


Quickstart | Configurations | MacOS | Example notebooks | FAQ

AirLLM 大幅降低推理内存占用,让 70B 大语言模型在单张 4GB GPU 卡上运行——无需量化、蒸馏或剪枝。你甚至可以在不到 4GB 的显存上运行 Kimi K3(2.8T)——迄今为止发布的最大的开源模型,在 6GB 上运行 Qwen3.8-Flash-Next(125B),在约 12GB 上运行 DeepSeek-V3(671B)。我们现在还支持在小显存上训练超大模型:Qwen3.8-Flash-Next(125B)在 6GB 以下即可训练。

AI Agents 推荐: 最佳 AI 游戏精灵生成器 最佳 AI 面部表情编辑器

更新

[2026/09] 训练支持:逐层流式加载冻结权重,并将适配器保留在 GPU 上。Qwen3.8-Flash-Next(125B)在 6GB(RTX 3060 Ti)以下训练;Qwen3.8-27B 在序列长度 512 时约 2GB 即可训练。参见 Training。

[2026/08] Qwen3.8-Flash-Next 支持:Qwen 的 125B MoE 旗舰模型(Qwen4ExpForConditionalGeneration),带有约 51B 的 n-gram 嵌入,在 5.95GB 显存中运行,已在单张 RTX 4090 上端到端实测。n-gram 表在主机上以文件映射方式加载(64GB 内存的机器足够);解码器层采用流式加载。需要带有内置 qwen4_exp 的 transformers 构建(目前可执行 pip install git+https://github.com/huggingface/transformers.git),以及约 360GB 的检查点磁盘空间(delete_original=True 会在拆分后回收原始文件)。

[2026/08] Qwen3.8-27B 支持:Qwen 的新稠密 VL 模型(Gated DeltaNet + Gated Attention,原生视觉)在 3.33GB 显存中运行,已在单张 RTX 3090 上端到端实测。需要 transformers 5.8+。

[2026/07] Kimi K3(2.8T)支持:最大的开源模型在单张卡上以 3.72GB 显存运行,已在单张 RTX 6000 Ada 上端到端实测。按专家流式加载仅加载 token 实际路由到的专家。K3 自身带来三项要求:pip install compressed-tensors flash-attn(其模型代码强制要求 flash attention,无论你请求什么)、CUDA 12 构建的 torch(因为目前尚无 CUDA 13 的预构建 flash-attn wheel),以及 transformers 4.56.x(其远程代码无法在 5.x 上加载)。

[2026/06] v3.0:FP8 模型支持 + 最新模型。在约 12GB 上运行 DeepSeek-V3(671B),在约 3GB 上运行 Qwen3-235B,此外还有 Qwen3、Llama 3.x/4、DeepSeek V2/V3、Phi-4、Gemma 等——全部通过单一的 AutoModel。

[2024/08/20] v2.11.0:支持 Qwen2.5

[2024/08/18] v2.10.1 支持 CPU 推理。支持非分片模型。感谢 @NavodPeiris 的出色工作!

[2024/07/30] 支持 Llama3.1 405B(示例 notebook)。支持 8bit/4bit 量化。

[2024/04/20] AirLLM 已原生支持 Llama3。在 4GB 单 GPU 上运行 Llama3 70B。

[2023/12/25] v2.8.2:支持 MacOS 运行 70B 大语言模型。

[2023/12/20] v2.7:支持 AirLLMMixtral。

[2023/12/20] v2.6:新增 AutoModel,自动检测模型类型,无需提供模型类来初始化模型。

[2023/12/18] v2.5:新增预取以重叠模型加载与计算。速度提升 10%。

[2023/12/03] 新增对 ChatGLM、QWen、Baichuan、Mistral、InternLM 的支持!

[2023/12/02] 新增对 safetensors 的支持。现在支持 open llm leaderboard 中所有排名前 10 的模型。

[2023/12/01] airllm 2.0。支持压缩:运行时速度提升 3 倍!

[2023/11/20] airllm 初始版本!

Star History

目录

首先,安装 airllm pip 包。

pip install airllm

2. 推理

然后,初始化 AirLLMLlama2,传入所用模型的 huggingface 仓库 ID 或本地路径,即可像普通 transformer 模型一样进行推理。(你也可以在初始化 AirLLMLlama2 时通过 layer_shards_saving_path 指定保存拆分后分层模型的路径。)

from airllm import AutoModel

MAX_LENGTH = 128

# just pass a hugging face repo id — works with almost any popular model:
model = AutoModel.from_pretrained("Qwen/Qwen3-32B")

# go bigger with the exact same one line:
#model = AutoModel.from_pretrained("Qwen/Qwen3.8-27B") # 27B dense VL, 3.33GB
#model = AutoModel.from_pretrained("Qwen/Qwen3.8-Flash-Next") # 125B MoE + 51B PLE, 5.95GB
#model = AutoModel.from_pretrained("Qwen/Qwen3-235B-A22B") # 235B, runs in ~3GB
#model = AutoModel.from_pretrained("deepseek-ai/DeepSeek-V3") # 671B, runs in ~12GB

# or use a model's local path...
#model = AutoModel.from_pretrained("/home/ubuntu/.cache/huggingface/hub/models--Qwen--Qwen3-32B/snapshots/...")

input_text = [
    'What is the capital of United States?',
    #'I like',
]

input_tokens = model.tokenizer(input_text,
    return_tensors="pt",
    return_attention_mask=False,
    truncation=True,
    max_length=MAX_LENGTH,
    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)

注意:推理期间,原始模型会首先被分解并按层保存。请确保 huggingface 缓存目录中有足够的磁盘空间。

Model Compression - 3x Inference Speed Up!

我们刚刚新增了基于分块量化的模型压缩。这可以进一步将推理速度提升最多 3 倍,而精度损失几乎可以忽略!(更多性能评估以及我们为何使用分块量化,请参见这篇论文)

如何启用模型压缩加速:

步骤 1. 确保已通过 pip install -U bitsandbytes 安装 bitsandbytes

步骤 2. 确保 airllm 版本高于 2.0.0:pip install -U airllm

步骤 3. 初始化模型时,传入参数 compression('4bit' 或 '8bit'):

model = AutoModel.from_pretrained("garage-bAInd/Platypus2-70B-instruct",
                     compression='4bit' # specify '8bit' for 8-bit block-wise quantization
                    )

模型压缩与量化有什么区别?

量化通常需要同时量化权重和激活值才能真正加速。而……

📖 阅读原文 →