AX 爱鲜报

Llama 2 官方推理代码

Meta 官方开源的 Llama 2 模型推理示例仓库,提供 7B/13B/70B 预训练与对话微调模型的加载与推理最小实现,现已归档,官方建议迁移至 llama-models 等新仓库。

爱鲜报评分

0.0

0 人评分

6k

星数

否

中文

Python

主语言

是

活跃

53

贡献者

人工分析

EDITORIAL

推荐理由

作为 Llama 系列最早期的官方推理参考实现,代码结构简洁,是理解模型并行加载、tokenizer 与对话模板(INST/<<SYS>>)的好材料。但仓库已明确标记废弃,模型权重需在 Meta 官网申请并接受许可,下载链接 24 小时过期。新项目建议直接使用 llama-models、llama-cookbook 或 Hugging Face 生态方案。

适用场景

  • 学习 Llama 2 模型加载与推理流程
  • 复现官方对话模板与文本补全示例
  • 研究模型并行(MP)在多卡上的切分方式
  • 作为旧项目迁移前的代码参考

优点

  • Meta 官方出品,推理逻辑权威可靠
  • 代码量小,便于阅读和理解底层实现
  • 覆盖 7B/13B/70B 全尺寸模型示例
  • 清晰说明对话模型的提示词格式要求

缺点

  • 仓库已废弃,不再维护更新
  • 模型权重需申请许可,下载链接有时效
  • 仅支持 Llama 2,不含 Llama 3 及之后版本
  • 缺少中文文档与本地化支持
上手难度 进阶

项目概况

这是 Meta 官方为 Llama 2 提供的推理示例仓库,包含加载预训练模型与对话微调模型并运行推理的最小代码。仓库现已标记为废弃(Deprecated),官方将功能拆分到多个新仓库中。

迁移指引

官方建议后续使用以下仓库:

  • llama-models:基础模型、模型卡、许可证与使用政策
  • PurpleLlama:安全风险与推理时缓解措施
  • llama-toolchain:推理/微调/安全护栏/合成数据的接口与实现
  • llama-agentic-system:端到端 Llama Stack 智能体系统
  • llama-cookbook:社区驱动的脚本与集成示例

核心能力

  • 支持 7B、13B、70B 三种参数规模的预训练与 Chat 模型
  • 提供文本补全与对话补全两类示例脚本
  • 通过 torchrun 启动,按模型规模设置模型并行度

模型并行参考

模型 MP 值
7B 1
13B 2
70B 8

所有模型支持最长 4096 token 序列,但显存会按 max_seq_len 与 max_batch_size 预分配,需按硬件条件调整。

使用流程示意

  1. 在具备 PyTorch / CUDA 的 conda 环境中克隆仓库并安装:
pip install -e .
  1. 在 Meta 官网申请模型权重并接受许可,通过邮件获得签名下载链接
  2. 运行 download.sh 脚本,按提示粘贴邮件中的链接完成下载
  3. 使用 torchrun 启动推理:
torchrun --nproc_per_node 1 example_chat_completion.py \
    --ckpt_dir llama-2-7b-chat/ \
    --tokenizer_path tokenizer.model \
    --max_seq_len 512 --max_batch_size 6

注意事项

  • 对话模型必须遵循特定的提示词格式,包括 INST、<<SYS>> 标签以及 BOS/EOS token 与空白处理
  • 预训练模型不适合直接问答,应让回答作为提示的自然延续
  • 下载链接 24 小时后过期,出现 403: Forbidden 需重新申请
  • 官方提供 Responsible Use Guide,建议在生产环境中增加输入输出安全过滤

适用建议

若你只是学习 Llama 2 的推理实现或维护旧项目,本仓库仍有参考价值;新项目请直接转向官方新仓库或 Hugging Face 生态。

评论

登录后才可评论与评分

0 条评论

  • 暂无评论,来写第一条吧。