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-13…
- 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://huggingface.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://huggingface.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://huggingface.co/blog/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://huggingface.co/blog/llama2#using-text-generation-infe…
- 应用 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
英文原文: https://www.philschmid.de/llama-2
原文作者: Philipp Schmid