关于 Llama 2 的一切资源,我们都帮你整理好了

Llama 2 是一个由 Meta 开发的大型语言模型,是 LLaMA 1 的继任者。Llama 2 可通过 AWS、Hugging Face 获取,并可以自由用于研究和商业用途。Llama 2 预训练模型在 2 万亿个标记上进行训练,相比 LLaMA 1 的上下文长度增加了一倍。它的微调模型则在超过 100 万个人工标注数据下完成。

这篇博客包含了所有的相关资源,以帮助您快速入门。来自 Meta 官方的公告可以在这里找到:

https://ai.meta.com/llama/

LLaMA 2 是什么?

Meta 发布的 Llama 2,是新的 SOTA 开源大型语言模型(LLM)。Llama 2 代表着 LLaMA 的下一代版本,可商用。Llama 2 有 3 种不同的大小 —— 7B、13B 和 70B 个可训练参数。与原版 LLaMA 相比,新的改进包括:

  • 在 2 万亿个标记的文本数据上进行训练

  • 允许商业使用

  • 默认使用 4096 个前后文本视野

  • 70B 模型采用了分组查询注意力(GQA)

  • 可以在 Hugging Face Hub 上直接获取

    https://hf.co/models?other=llama-2

即刻解锁 Llama2

有几个不同的游乐场供与 Llama 2 来测试:

HuggingChat

在我们推出的 HuggingChat 中使用 Llama 2 70B:

https://hf.co/chat

Hugging Face Space 应用

我们在 Space 应用上提供了三个大小的 Llama 2 模型的体验,分别是:

  • 7B

    https://hf.co/spaces/huggingface-projects/llama-2-7b-chat

  • 13B

    https://huggingface.co/spaces/huggingface-projects/llama-2-13b-chat

  • 70B

    https://huggingface.co/spaces/ysharma/Explore_llamav2_with_TGI

Perplexity

Perplexity 的对话 AI 演示提供 7B 和 13B 的 Llama 2 模型:

https://llama.perplexity.ai/

Llama 2 背后的研究工作

Llama 2 是一个基础大语言模型,它由网络上公开可获取到的数据训练完成。另外 Meta 同时发布了它的 Chat 版本。Chat 模型的第一个版本是 SFT(有监督调优)模型。在这之后,LLaMA-2-chat 逐步地经过人类反馈强化学习(RLHF)来进化。RLHF 的过程使用了拒绝采样与近端策略优化(PPO)的技术来进一步调优聊天机器人。Meta 目前仅公布了模型最新的 RLHF (v5) 版本。若你对此过程背后的过程感兴趣则请查看:

  • Llama 2: 开源并已微调的聊天模型

    https://arxiv.org/abs/2307.09288

  • Llama 2: 一个超赞的开源大语言模型

    https://www.interconnects.ai/p/llama-2-from-meta

  • Llama 2 的全面拆解

    https://www.youtube.com/watch?v=zJBpRn2zTco

Llama 2 的性能有多好,基准测试?

Meta 表示:

Llama 2 在众多外部基准测试中都优于其他开源的语言模型,包括推理、编程、熟练程度与知识测验。

关于其性能你可以在这里找到更多信息:

  • Hugging Face 开源大语言模型排行榜

    https://hf.co/spaces/HuggingFaceH4/open_llm_leaderboard

  • Meta 官方公告

    https://ai.meta.com/llama/

如何为 LLaMA 2 Chat 写提示词 (prompts)

Llama 2 Chat 是一个开源对话模型。想要与 Llama 2 Chat 进行高效地交互则需要你提供合适的提示词,以得到合乎逻辑且有帮助的回复。Meta 并没有选择最简单的提示词结构。

以下是单轮、多轮对话的提示词模板。提示词模板遵循模型训练过程,你可以在这里查看到详细描述:

  • Llama 2 论文

    https://hf.co/papers/2307.09288

  • Llama 2 提示词模板

    https://gpus.llm-utils.org/llama-2-prompt-template/

单轮对话

<s>[INST] <<SYS>>
{
   
   { system_prompt }}
<</SYS>>

{
   
   { user_message }} [/INST]

多轮对话

<s>[INST] <<SYS>>
{
   
   { system_prompt }}
<</SYS>>

{
   
   { user_msg_1 }} [/INST] {
   
   { model_answer_1 }} </s><s>[INST] {
   
   { user_msg_2 }} [/INST] {
   
   { model_answer_2 }} </s><s>[INST] {
   
   { user_msg_3 }} [/INST]

如何训练 LLaMA 2

因 LLaMA 2 为开源模型,使得可以轻易的通过微调技术,比如 PEFT,来训练它。这是一些非日适合于训练你自己版本 LLaMA 2 的学习资源:

  • 扩展指引:指令微调 Llama 2

    https://www.philschmid.de/instruction-tune-llama-2

  • 在 Amazon SageMaker 上微调 Llama 2 (7-70B)

    https://www.philschmid.de/sagemaker-llama2-qlora

  • 使用 PEFT 技术微调

    https://hf.co/blog/zh/llama2#fine-tuning-with-peft

  • Meta 提供的 Llama 模型示例以及方案

    https://github.com/facebookresearch/llama-recipes/tree/main

  • 在本地机器上微调 LLAMA-v2 最简单的方法!

    https://www.youtube.com/watch?v=3fsn19OI_C8

如何部署 Llama 2?

Llama 2 可以在本地环境部署,使用托管服务如 Hugging Face Inference Endpoints 或通过 AWS、Google Cloud、Microsoft Azure 等。

你可以查阅下述资源:

  • llama.cpp

    https://github.com/ggerganov/llama.cpp

  • 使用文本生成接口与推理终端来部署 LLama 2

    https://hf.co/blog/llama2#using-text-generation-inference-and-inference-endpoints

  • 使用 Amazon SageMaker 部署 LLaMA 2 70B

    https://www.philschmid.de/sagemaker-llama-llm

  • 在你的 M1/M2 Mac 上通过 GPU 接口来本地部署 Llama-2-13B-chat

    https://gist.github.com/adrienbrault/b76631c56c736def9bc1bc2167b5d129

猜你喜欢

转载自blog.csdn.net/weixin_48827824/article/details/132356900