Home
开源技术本页
大模型应用
author_avatarllama3

The official Meta Llama 3 GitHub site

点击访问meta-llama/llama3
llama3

llama3基本信息

Other
27189stars
3080forks
226watching
最近更新时间:2024/08/01, 01:18
最新版本:未发布

llama3介绍

Meta Llama 3

我们正在释放大型语言模型的力量。最新版本的 Llama 现已对个人、创作者、研究人员和各类规模的企业开放,使他们能够负责任地实验、创新和扩展他们的想法。

此版本包括 Llama 3 语言模型的预训练和指令微调模型的权重和初始代码——包括从 8B 到 70B 参数的模型。

该仓库旨在作为加载 Llama 3 模型并运行推理的最小化示例。如需更详细的示例,请参阅 llama-recipes

下载

为了下载模型权重和分词器,请访问 [Meta Llama 网站](https://ll

ama.meta.com/llama-downloads/) 并接受我们的许可证。

一旦你的请求被批准,你将通过电子邮件收到一个签名的 URL。然后运行 download.sh 脚本,按提示传入 URL 开始下载。

请注意链接会在 24 小时后失效。如看到 403: Forbidden 错误,可以重新申请链接。

Hugging Face 下载

我们也提供 Hugging Face 上的下载,有 transformers 和原生 llama3 格式。要从 Hugging Face 下载权重,请访问其中一个仓库,例如 meta-llama/Meta-Llama-3-8B-Instruct。阅读并接受许可证。一旦获得批准,你将获得所有 Llama 3 模型的访问权限。

要下载原生权重,点击 "Files and versions" 标签下载 original 文件夹内容。也可用命令行 pip install huggingface-hub

huggingface-cli download meta-llama/Meta-Llama-3-8B-Instruct --include "original/*" --local-dir meta-llama/Meta-Llama-3-8B-Instruct

使用 transformers 时,下述代码会下载缓存权重:

import transformers
import torch

model_id = "meta-llama/Meta-Llama-3-8B-Instruct"

pipeline = transformers.pipeline(
  "text-generation",
  model="meta-llama/Meta-Llama-3-8B-Instruct",
  model_kwargs={"torch_dtype": torch.bfloat16},
  device="cuda",
)

快速开始

按照以下步骤快速使用 Llama 3 模型。本地推理更多示例请参阅 Llama recipes 仓库

  1. 在 PyTorch/CUDA 的 Conda 环境中克隆并下载仓库。
  2. 在顶层目录运行:
pip install -e .
  1. 访问 Meta Llama 网站 注册下载模型。
  2. 注册后,你会收到含 URL 的邮件下载模型。在运行 download.sh 脚本时需用到此 URL。
  3. 收到邮件后,进入下载的 llama 仓库并运行 download.sh 脚本。
    • 确保给予 download.sh 执行权限
    • 手动复制链接,而非使用“复制链接”选项
  4. 下载所需模型后,运行:
torchrun --nproc_per_node 1 example_chat_completion.py \
    --ckpt_dir Meta-Llama-3-8B-Instruct/ \
    --tokenizer_path Meta-Llama-3-8B-Instruct/tokenizer.model \
    --max_seq_len 512 --max_batch_size 6

注意

  • Meta-Llama-3-8B-Instruct/ 替换为检查点目录,将 Meta-Llama-3-8B-Instruct/tokenizer.model 替换为分词器路径。
  • –nproc_per_node 应设为模型的 MP 值。
  • 可调整 max_seq_lenmax_batch_size
  • 示例运行仓库中的 example_chat_completion.py,可替换为其他 .py 文件。

推理

不同模型需要不同 MP 值:

模型MP
8B1
70B8

所有模型支持长度至 8192 token,但根据 max_seq_lenmax_batch_size 预分配缓存。

预训练模型

这些模型未为聊天或问答微调。需提示使答案为自然延续。

example_text_completion.py。如用 llama-3-8b 模型运行:

torchrun --nproc_per_node 1 example_text_completion.py \
    --ckpt_dir Meta-Llama-3-8B/ \
    --tokenizer_path Meta-Llama-3-8B/tokenizer.model \
    --max seq_len 128 --max batch size 4

指令微调模型

微调模型为对话训练。需遵循 ChatFormat 格式:提示从 <s> 特殊 token 开始,跟随 <m> 消息,每个含角色 systemuserassistant,和 </m> 结尾,双换行 \n\n 后消息内容。消息以 </s> 结尾。

可部署额外分类器过滤不安全输入输出。见 llama-recipes 示例

用 llama-3-8b-chat 示例:

torchrun --nproc_per_node 1 example_chat_completion.py \
    --ckpt_dir Meta-Llama-3-8B-Instruct/ \
    --tokenizer_path Meta-Llama-3-8B-Instruct/tokenizer.model \
    --max seq len 512 --max batch size 6

Llama 3 有潜在风险。测试未涵盖所有场景。我们创建了 责任指南 帮助开发者应对风险。

问题

请通过以下方式报告:

模型卡

MODEL_CARD.md

许可证

模型权重对研究者和商业实体开放,贯彻开放原则。我们的使命是赋能个体和行业,促进发现与伦理 AI 进步。

LICENSE,以及 合规使用政策

常见问题

FAQ 持续更新。

免责声明:本站大资源来自网络收集整理,小部分资源来自原创,如有侵权等,请联系处理。
AI奇想空间
AI奇想空间
https://aimazing.site
AI惊奇站是一个汇聚人工智能工具、资源和教程的导航网站。 在这里,你可以发现最新的AI技术、工具和应用,学习如何使用各种AI平台和框架,获取丰富的AI资源。 欢迎广大AI爱好者加入我们的社区,开启你的AI之旅!
AI交流群
Copyright © 2024 AI奇想空间.微信