【LLM】大语言模型学习之LLAMA 2:Open Foundation and Fine-Tuned Chat Model

大语言模型学习之LLAMA 2:Open Foundation and Fine-Tuned Chat Model

  • 快速了解
    • 预训练
    • 预训练模型评估
    • 微调
      • 有监督微调(SFT)
      • 人类反馈的强化学习(RLHF)
      • RLHF结果
      • 局限性
    • 安全性
      • 预训练的安全性
      • 安全微调
  • 上手就干
    • 使用登记
    • 代码下载
    • 获取模型
    • 转换模型
    • 搭建Text-Generation-WebUI
    • 分发模型
  • 参考资料

自从开源以来,LLAMA可以说是 AI 社区内最强大的开源大模型。但因为开源协议问题,一直不可免费商用。近日,Meta发布了期待已久的免费可商用版本LLAMA 2。

Llama 2
在这项工作中,我们开发并发布了LLAMA 2,这是一系列预训练和微调的大型语言模型(LLMs),规模从70亿到700亿个参数不等。我们的微调LLMs,称为Llama 2-Chat,专为对话场景进行了优化。我们的模型在大多数我们测试的基准中表现优于开源对话模型,并且根据我们的人工评估,其有益性和安全性使其成为闭源模型的合适替代品。我们详细描述了我们对Llama 2-Chat的微调和安全性改进方法,旨在让社区能够在我们的工作基础上发展并为负责任的LLM发展做出贡献。

项目地址:https://github.com/facebookresearch/llama
论文地址:https://ai.meta.com/research/publications/llama-2-open-foundation-and-fine-tuned-chat-models/

快速了解

简单来说,LLaMa 2 是 LLaMA 的下一代版本,具有商业友好的许可证。它有 3种不同的尺寸:7B、13B 和 70B。预训练阶段使用了2万亿Token,SFT阶段使用了超过10w数据,人类偏好数据超过100w。7B & 13B 使用与 LLaMA 1 相同的架构,并且是商业用途的 1 对 1 替代。
Llama 2 vs Llama
另外大家最关心的Llama2和ChatGPT模型的效果对比,在论文里也有提到,对比GPT-4,Llama2评估结果更优,绿色部分表示Llama2优于GPT4的比例,据介绍,相比于 Llama 1,Llama 2 的训练数据多了 40%,上下文长度也翻倍,并采用了分组查询注意力机制,可以理解和生成更长的文本。
llama2 VS gpt-4
LLAMA 2体验链接:

  • https://www.llama2.ai/
  • https://replicate.com/a16z-infra/llama13b-v2-chat
  • https://huggingface.co/meta-llama

总的来说,作为一组经过预训练和微调的大语言模型(LLM),Llama 2 模型系列的参数规模从 70 亿到 700 亿不等。其中的 Llama 2-Chat 针对对话用例进行了专门优化,使用来自人类反馈的强化学习来确保安全性和帮助性。
LLAMA 2-CHAT的训练pipeline
训练 Llama-2-chat:Llama 2 使用公开的在线数据进行预训练。然后通过使用监督微调创建 Llama-2-chat 的初始版本。接下来,Llama-2-chat 使用人类反馈强化学习 (RLHF) 进行迭代细化,其中包括拒绝采样和近端策略优化 (PPO)。

Llama 2 模型系列除了在大多数基准测试中优于开源模型之外,根据 Meta 对有用性和安全性的人工评估,它或许也是闭源模型的合适替代品。
Llama 2-chat与其他开源和闭源模型在安全性人类评估上的结果

预训练

为了创建全新的 Llama 2 模型系列,Meta 以 Llama 1 论文中描述的预训练方法为基础,使用了优化的自回归 transformer,并做了一些改变以提升性能。
(1)数据方面
具体而言,Meta 执行了更稳健的数据清理,更新了混合数据,训练 token 总数增加了 40%,上下文长度翻倍。下表 1 比较了 Llama 2 与 Llama 1 的详细数据。
LLAMA 2 family of models
Llama 2 的训练语料库包含了来自公开可用资源的混合数据,不包括 Meta 产品或服务相关的数据。而且努力从某些已知包含大量个人信息的网站中删除数据,注重隐私。对 2 万亿个token的数据进行了训练,因为这提供了良好的性能与成本权衡,对最真实的来源进行上采样,以增加知识并抑制幻觉,保持真实。同时进行了各种预训练数据调查,以便用户更好地了解模型的潜在能力和局限性,保证安全。

(2)模型结构
Llama 2 采用了 Llama 1 中的大部分预训练设置和模型架构,包括标准 Transformer 架构、使用 RMSNorm 的预归一化、SwiGLU 激活函数和旋转位置嵌入RoPE。与 Llama 1 的主要架构差异包括增加了上下文长度和分组查询注意力(GQA)。

  • 上下文长度
    Llama 2 的上下文窗口从 2048 个标记扩展到 4096 个字符。越长上下文窗口使模型能够处理更多信息,这对于支持聊天应用程序中较长的历史记录、各种摘要任务以及理解较长的文档。多个评测结果表示较长的上下文模型在各种通用任务上保持了强大的性能。
    表 16 比较了 2k 和 4k 上下文预训练在长上下文基准上的性能。 两个模型都针对 150B 令牌进行训练,保持相同的架构和超参数作为基线,仅改变上下文长度。 观察到 SCROLLS 的改进,其中平均输入长度为 3.5k,并且 SQUAD 的性能没有下降。 表 17 显示较长的上下文模型在各种通用任务上保持了强大的性能。
    表 16 比较了 2k 和 4k 上下文预训练在长上下文基准上的性能
  • Grouped-Query Attention 分组查询注意力
    • 自回归解码的标准做法是缓存序列中先前标记的键 (K) 和值 (V) 对,从而加快注意力计算速度。然而,随着上下文窗口或批量大小的增加,多头注意力 (MHA) 模型中与 KV 缓存大小相关的内存成本显着增长。对于较大的模型,KV 缓存大小成为瓶颈,键和值投影可以在多个头之间共享,而不会大幅降低性能。可以使用具有单个 KV 投影的原始多查询格式(MQA)或具有 8 KV 投影的分组查询注意力变体(GQA)。
    • Meta 将 MQA 和 GQA 变体与 MHA 基线进行了比较,使用 150B 字符训练所有模型,同时保持固定的 30B 模型大小。为了在 GQA 和 MQA 中保持相似的总体参数计数,增加前馈层的维度以补偿注意力层的减少。对于 MQA 变体,Meta 将 FFN 维度增加 1.33 倍,对于 GQA 变体,Llama将其增加 1.3 倍。从结果中观察到 GQA 变体在大多数评估任务上的表现与 MHA 基线相当,并且平均优于 MQA 变体。
      Table 18 Attention architecture ablations

(3)参数方面
在超参数方面,Meta 使用 AdamW 优化器进行训练,其中 β 1 = 0.9 β_1 = 0.9 β1=0.9 β 2 = 0.95 β_2 = 0.95 β

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/50470.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

高效率,38V最大输入单电感同步升/降稳压器SYV939C

SYV939是一种高压同步降压-升压转换器。该器件工作在4V至28V的宽输入电压范围内,具有10max平均电感电流能力。四个集成的低RDS(ON)开关最大限度地减少了传导损耗。 SYV939c包括完整的保护功能,如输出过流/短路保护,过压保护和热停机&#xff…

了解Unity编辑器之组件篇Playables和Rendering(十)

Playables 一、Playable Director:是一种用于控制和管理剧情、动画和音频的工具。它作为一个中央控制器,可以管理播放动画剧情、视频剧情和音频剧情,以及它们之间的时间、顺序和交互。 Playable Director组件具有以下作用: 剧情控…

【MATLAB第61期】基于MATLAB的GMM高斯混合模型回归数据预测

【MATLAB第61期】基于MATLAB的GMM高斯混合模型回归数据预测 高斯混合模型GMM广泛应用于数据挖掘、模式识别、机器学习和统计分析。其中,它们的参数通常由最大似然和EM算法确定。关键思想是使用高斯混合模型对数据(包括输入和输出)的联合概率…

最新版Onenet云平台HTTP协议接入上传数据

2023年最新版Onenet更新后,原来的多协议接口已经找不到,由于需要用HTTP接入,就研究了一下新版Onenet云平台,搞清楚Onenet云平台的鉴权信息,就知道怎么上传数据了,包括后续上传实际数据,其实只需…

JVM简述

JDK&JRE&JVMJVM运行时内存结构图方法区堆区栈区程序计数器本地方法栈 JVM 的主要组成部分及其作用 JDK&JRE&JVM JVM就是java虚拟机,一台虚拟的机器,用来运行java代码 但并不是只有这台机器就可以的,java程序在运行时需要依赖…

【图论】kruskal算法

一.介绍 Kruskal(克鲁斯卡尔)算法是一种用于解决最小生成树问题的贪心算法。最小生成树是指在一个连通无向图中,选择一棵包含所有顶点且边权重之和最小的树。 下面是Kruskal算法的基本步骤: 将图中的所有边按照权重从小到大进行…

C# 快速写入日志 不卡线程 生产者 消费者模式

有这样一种场景需求,就是某个方法,对耗时要求很高,但是又要记录日志到数据库便于分析,由于访问数据库基本都要几十毫秒,可在方法里写入BlockingCollection,由另外的线程写入数据库。 可以看到,在…

2023河南萌新联赛第(三)场:郑州大学 A - 发工资咯

2023河南萌新联赛第(三)场:郑州大学 A - 发工资咯 时间限制:C/C 2秒,其他语言4秒 空间限制:C/C 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 一个公司有n个人,每个月都…

TCP如何保证服务的可靠性

TCP如何保证服务的可靠性 确认应答超时重传流量控制滑动窗口机制概述发送窗口和接收窗口的工作原理几种滑动窗口协议1比特滑动窗口协议(停等协议)后退n协议选择重传协议 采用滑动窗口的问题(死锁可能,糊涂窗口综合征)死…

iostat工具使用

文章目录 iostat命令简介iostat命令参数 iostat输出信息CPU利用率输出信息磁盘利用率输出信息更详细的磁盘利用率输出信息 iostat命令使用示例iostat -kdx 1 iostat数据来源相关参考 iostat命令简介 iostat工具可用于CPU使用统计信息和设备的输入输出统计信息。iostat能支持显…

数据结构—数组和广义表

4.2数组 数组:按一定格式排列起来的,具有相同类型的数据元素的集合。 **一维数组:**若线性表中的数据元素为非结果的简单元素,则称为一维数组。 **一维数组的逻辑结构:**线性结构,定长的线性表。 **声明…

Vue通过指令 命令将打包好的dist静态文件上传到腾讯云存储桶 (保存原有存储目录结构)

1、在项目根目录创建uploadToCOS.js文件 (建议起简单的名字 方便以后上传输入命令方便) 2、uploadToCOS.js文件代码编写 const path = require(path); const fs = require(fs); const COS = require(cos-nodejs-sdk-v5);// 配置腾讯云COS参数 const cos = new COS({SecretI…

基于Docker-compose创建LNMP环境并运行Wordpress网站平台

基于Docker-compose创建LNMP环境并运行Wordpress网站平台 1.Docker-Compose概述2.YAML文件格式及编写注意事项3.Docker-Compose配置常用字段4.Docker Compose常用命令5.使用Docker-compose创建LNMP环境,并运行Wordpress网站平台1. Docker Compose 环境安装下载安装查…

《入门级-Cocos2d 4.0塔防游戏开发》---第二课:游戏加载界面开发

目录 一、开发环境介绍 二、开发内容 2.1 修改窗口的大小。 2.2 添加加载场景相关代码 2.3 添加资源 三、显示效果 四、知识点 4.1 Sprite 4.2 定时器 一、开发环境介绍 操作系统:UOS1060专业版本。 cocos2dx:版本 环境搭建教程: 统信UOS下配…

cURL error 1: Protocol “https“ not supported or disabled in libcurl

1、php项目composer update报错 2、curl -V检查 发现curl已经支持了https了 3、php版本检查 4、php插件检查 插件也已经含有openssl组件了 5、phpinfo检查 curl是否开启ssl 定位到问题所在,php7.4的 curl扩展不支持 https 需要重装 php7.4的curl扩展 6、curl下载 下…

大学生活题解

样例输入: 3 .xA ... Bx.样例输出: 6思路分析: 这道题只需要在正常的广搜模板上多维护一个— —方向,如果当前改变方向,就坐标不变,方向变,步数加一;否则坐标变,方向不…

微信小程序radio单选按钮选中与取消

wxml <view bindtapcheckedTap><radio checked"{{checked}}">设为默认</radio> </view> wxss <style lang"less" > radio .wx-radio-input {border-radius: 50%; /* 圆角 */width: 24rpx;border: 2rpx solid #5e5e5f;hei…

centos7安装tomcat

安装tomcat 必须依赖 JDK 环境&#xff0c;一定要提前装好JDK保证可以使用 一、下载安装包 到官网下载 上传到linux 服务器 二、安装tomcat 创建tomcat 文件夹 mkdir -p /usr/local/tomcat设置文件夹权限 chmod 757 tomcat将安装包上传至 新建文件夹 解压安装包 tar zx…

解读 Zebec Protocol 发布的最新路线图,向 Web2 世界跨越的野望

近期&#xff0c;流支付协议 Zebec Protocol 发布了最新的路线图&#xff0c;揭示了生态在未来一年的全新发展规划。目前&#xff0c; Zebec Protocol 生态打造了一套全新的产品矩阵&#xff0c;包括模块化 Layer3 链 Nautilus Chain 、流支付应用 Zebec APP 以及薪酬管理协议 …

深入了解数据库的索引分类以及回表查询原理

索引的分类 在InnoDB存储引擎中的又可以分为以下两种 聚集索引的选取规则 如果有主键&#xff0c;主键索引就是聚集索引。 如果不存在主键&#xff0c;将会使用第一个唯一&#xff08;UNIQUE&#xff09;索引作为聚集索引 如果表没有主键&#xff0c;或者没有合适的唯一索引…