Llama4 使用指南#

Llama 4 是 Meta 最新的开源大语言模型,具备业界领先的性能。

v0.4.5 版本起,SGLang 已支持 Llama 4 Scout (109B) 和 Llama 4 Maverick (400B)。

正在进行的优化可以在 Roadmap 中跟踪。

使用 SGLang 启动 Llama 4#

在 8 块 H100/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 缓存时,对于 Scout 模型,--context-length 可以在 8*H100 上设置为最高 5M,在 8*H200 上设置为最高 10M。

  • 聊天模板:对于聊天补全任务,添加 --chat-template llama-4

  • 启用多模态:添加 --enable-multimodal 以启用多模态功能。

  • 启用混合 KV 缓存:添加 --hybrid-kvcache-ratio 以启用混合 kv 缓存。详细信息可参考 此 PR

EAGLE 推测解码#

描述:SGLang 已支持使用 EAGLE 推测解码 功能运行 Llama 4 Maverick (400B)。

使用方法: 添加参数 --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 的准确率均可与 官方基准数字 相匹配。

在 MMLU Pro 数据集上使用 8*H100 的基准测试结果:

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 模型
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=http://localhost: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=http://localhost: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