Llama4 使用方法#
Llama 4 是 Meta 推出的最新一代开源 LLM 模型,具有业界领先的性能。
SGLang 自 v0.4.5 版本起已支持 Llama 4 Scout (109B) 和 Llama 4 Maverick (400B)。
持续的优化工作正在 路线图 (Roadmap) 中更新。
使用 SGLang 启动 Llama 4#
在 8xH100/H200 GPU 上部署 Llama 4 模型
python3 -m sglang.launch_server \
--model-path meta-llama/Llama-4-Scout-17B-16E-Instruct \
--tp 8 \
--context-length 1000000
配置技巧#
显存溢出 (OOM) 缓解:调整
--context-length以避免 GPU 显存不足问题。对于 Scout 模型,我们建议在 8*H100 上设置该值最高为 1M,在 8*H200 上最高为 2.5M。对于 Maverick 模型,在 8*H200 上无需手动设置上下文长度。启用混合 KV 缓存(hybrid kv cache)时,Scout 模型在 8*H100 上的--context-length可设置为最高 5M,在 8*H200 上最高可达 10M。Attention 后端自动选择:SGLang 会根据您的硬件自动为 Llama 4 选择最佳的 Attention 后端。通常情况下,您无需手动指定
--attention-backend。Blackwell GPU (B200/GB200):
trtllm_mhaHopper GPU (H100/H200):
fa3AMD GPU:
aiterIntel XPU:
intel_xpu其他平台:
triton(兜底方案)
若要覆盖自动选择,请显式指定
--attention-backend为以下支持的后端之一:fa3、aiter、triton、trtllm_mha或intel_xpu。对话模板:对于对话补全任务,请添加
--chat-template llama-4。启用多模态:添加
--enable-multimodal以开启多模态能力。启用混合 KV 缓存 (Hybrid-KVCache):添加
--hybrid-kvcache-ratio以使用混合 KV 缓存。详情请参阅 此 PR。
EAGLE 投机采样#
描述:SGLang 已支持 Llama 4 Maverick (400B) 配合 EAGLE 投机采样解码 使用。
用法:添加参数 --speculative-draft-model-path、--speculative-algorithm、--speculative-num-steps、--speculative-eagle-topk 和 --speculative-num-draft-tokens 来启用此功能。例如:
python3 -m sglang.launch_server \
--model-path meta-llama/Llama-4-Maverick-17B-128E-Instruct \
--speculative-algorithm EAGLE3 \
--speculative-draft-model-path nvidia/Llama-4-Maverick-17B-128E-Eagle3 \
--speculative-num-steps 3 \
--speculative-eagle-topk 1 \
--speculative-num-draft-tokens 4 \
--trust-remote-code \
--tp 8 \
--context-length 1000000
注意:Llama 4 草稿模型 nvidia/Llama-4-Maverick-17B-128E-Eagle3 仅能识别对话模式下的会话。
基准测试结果#
使用 lm_eval 进行准确率测试#
SGLang 在 Llama4 Scout 和 Llama4 Maverick 上的准确率能够匹配 官方基准数据。
基于 8*H100 的 MMLU Pro 数据集基准测试结果
Llama-4-Scout-17B-16E-Instruct |
Llama-4-Maverick-17B-128E-Instruct |
|
|---|---|---|
官方基准 |
74.3 |
80.5 |
SGLang |
75.2 |
80.7 |
命令
# Llama-4-Scout-17B-16E-Instruct model
python -m sglang.launch_server \
--model-path meta-llama/Llama-4-Scout-17B-16E-Instruct \
--port 30000 \
--tp 8 \
--mem-fraction-static 0.8 \
--context-length 65536
lm_eval --model local-chat-completions --model_args model=meta-llama/Llama-4-Scout-17B-16E-Instruct,base_url=https://:30000/v1/chat/completions,num_concurrent=128,timeout=999999,max_gen_toks=2048 --tasks mmlu_pro --batch_size 128 --apply_chat_template --num_fewshot 0
# Llama-4-Maverick-17B-128E-Instruct
python -m sglang.launch_server \
--model-path meta-llama/Llama-4-Maverick-17B-128E-Instruct \
--port 30000 \
--tp 8 \
--mem-fraction-static 0.8 \
--context-length 65536
lm_eval --model local-chat-completions --model_args model=meta-llama/Llama-4-Maverick-17B-128E-Instruct,base_url=https://:30000/v1/chat/completions,num_concurrent=128,timeout=999999,max_gen_toks=2048 --tasks mmlu_pro --batch_size 128 --apply_chat_template --num_fewshot 0
详情请参阅 此 PR。