自动编程开源技术

Meta出品下一代开源大语言模型

作者头像
项目作者

Inference code for LLaMA models

Meta出品下一代开源大语言模型 预览图

Meta出品下一代开源大语言模型 介绍

了解项目的详细信息和使用方法

Llama 2

项目文档

我们正在释放大型语言模型的力量。我们最新版本的 Llama 现在可以让个人、创作者、研究人员和各种规模的企业都能够负责地进行实验、创新和扩展他们的想法。

此版本包括预训练和微调的 Llama 语言模型的模型权重和起始代码,参数范围从 7B 到 70B。

该存储库旨在作为加载 Llama 2 模型并进行推理的最小示例。有关使用 HuggingFace 的更详细示例,请参见 llama-recipes

发布后的更新

请参阅 UPDATES.md

下载

⚠️ 7/18:我们知道今天有人遇到了许多下载问题。任何仍然遇到问题的人应该删除所有本地文件,重新克隆存储库,并请求新的下载链接。这是非常重要的,以防您有本地损坏的文件。当您收到电子邮件时,只复制链接文本本身 - 它应该以 https://download.llamameta.net 开头,而不是以 https://l.facebook.com 开头,否则会出错。

要下载模型权重和分词器,请访问 Meta AI 网站 并接受我们的许可协议。

一旦您的请求获得批准,您将通过电子邮件收到一个签名的 URL。然后运行 download.sh 脚本,并在提示时传递提供的 URL 开始下载。确保您只复制 URL 文本本身,不要使用“复制链接地址”选项,而是在右键单击 URL 时。如果复制的 URL 文本以 https://download.llamameta.net 开头,那么您复制正确了。如果复制的 URL 文本以 https://l.facebook.com 开头,那么您复制错误了。

先决条件:确保已安装 wgetmd5sum。然后运行脚本:./download.sh

请注意,链接在 24 小时后和一定数量的下载后会过期。如果出现“403:禁止访问”等错误,请随时重新请求链接。

在 Hugging Face 上访问

我们还在 Hugging Face 上提供下载。您必须首先使用与您的 Hugging Face 帐户相同的电子邮件地址从 Meta AI 网站请求下载。在这样做之后,您可以请求访问 Hugging Face 上的任何模型,1-2 天后您的帐户将获得访问所有版本的权限。

设置

在具有 PyTorch / CUDA 的 conda 环境中,克隆存储库并在顶级目录中运行:

pip install -e .

推理

不同的模型需要不同的模型并行(MP)值:

模型MP
7B1
13B2
70B8

所有模型都支持最多 4096 个标记的序列长度,但我们根据 max_seq_lenmax_batch_size 的值预先分配缓存。因此,请根据您的硬件设置这些值。

预训练模型

这些模型没有为聊天或问答进行微调。您应该通过提示使预期的答案成为提示的自然延续。

有关示例,请参见 example_text_completion.py。为了说明,以下命令演示了如何使用 llama-2-7b 模型运行它(nproc_per_node 需要设置为 MP 的值):

torchrun --nproc_per_node 1 example_text_completion.py \
    --ckpt_dir llama-2-7b/ \
    --tokenizer_path tokenizer.model \
    --max_seq_len 128 --max_batch_size 4

微调的聊天模型

这些微调的模型用于对话应用程序。为了获得所需的特性和性能,需要遵循 chat_completion 中定义的特定格式,包括 INST<<SYS>> 标签、BOSEOS 标记,以及其中的空格和换行符(我们建议在输入上调用 strip() 以避免双空格)。

您还可以部署额外的分类器来过滤掉被认为是不安全的输入和输出。请参阅 llama-recipes 存储库的 示例,了解如何将安全检查器添加到推理代码的输入和输出中。

使用 llama-2-7b-chat 的示例:

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 4

Llama 2 是一项新技术,使用时存在潜在风险。迄今为止进行的测试不能涵盖所有情况。 为了帮助开发人员解决这些风险,我们创建了负责任使用指南。更多细节也可以在我们的研究论文中找到。

问题

请通过以下方式之一报告模型的任何软件“错误”或其他问题:

模型卡片

请参阅 MODEL_CARD.md

许可证

我们的模型和权重适用于研究人员和商业实体,遵守开放原则。我们的使命是通过这个机会来赋予个人和行业权力,同时营造一种发现和道德人工智能进步的环境。

请查看 LICENSE 文件,以及我们的附带的 可接受使用政策

参考资料

  1. 研究论文
  2. Llama 2 技术概述
  3. 开放创新 AI 研究社区

原始 LLaMA

原始 llama 发布的存储库位于 llama_v1 分支中。

Stars
39.1k
Forks
6.5k
Watch
369
Other
更新于 2023年8月11日
LLM
免责声明:本站大资源来自网络收集整理,小部分资源来自原创,如有侵权等,请联系处理。

相关项目

探索更多类似的开源项目