58行代码把Llama 3扩展到100万上下文,任何微调版都适用 | 最新快讯

        量子位公众号 QbitAI

  堂堂开源之王 Llama 3,原版上下文窗口居然只有……8k,让到嘴边的一句“真香”又咽回去了。

  在 32k 起步,100k 寻常的今天,这是故意要给开源社区留做贡献的空间吗?

  开源社区当然不会放过这个机会:

  现在只需 58 行代码,任何 Llama 3 70b 的微调版本都能自动扩展到 1048k(一百万)上下文。

  背后是一个 LoRA,从扩展好上下文的 Llama 3 70B Instruct 微调版本中提取出来,文件只有 800mb

  接下来使用 Mergekit,就可以与其他同架构模型一起运行或直接合并到模型中。

  所使用的 1048k 上下文微调版本,刚刚在流行的大海捞针测试中达到全绿(100% 准确率)的成绩。

  不得不说,开源的进步速度是指数级的。

  1048k 上下文 LoRA 怎么炼成的

  首先 1048k 上下文版 Llama 3 微调模型来自 Gradient AI,一个企业 AI 解决方案初创公司。

  而对应的 LoRA 来自开发者Eric Hartford,通过比较微调模型与原版的差异,提取出参数的变化。

  他先制作了 524k 上下文版,随后又更新了 1048k 版本。

  首先,Gradient 团队先在原版 Llama 3 70B Instruct 的基础上继续训练,得到 Llama-3-70B-Instruct-Gradient-1048k。

  具体方法如下:

  • 调整位置编码:用 NTK-aware 插值初始化 RoPE theta 的最佳调度,进行优化,防止扩展长度后丢失高频信息
  • 渐进式训练:使用 UC 伯克利 Pieter Abbeel 团队提出的 Blockwise RingAttention 方法扩展模型的上下文长度

  值得注意的是,团队通过自定义网络拓扑在 Ring Attention 之上分层并行化,更好地利用大型 GPU 集群来应对设备之间传递许多 KV blocks 带来的网络瓶颈。

  最终使模型的训练速度提高了 33 倍。

  长文本检索性能评估中,只在最难的版本中,当“针”藏在文本中间部分时容易出错。

  有了扩展好上下文的微调模型之后,使用开源工具 Mergekit 比较微调模型和基础模型,提取参数的差异成为 LoRA。

  同样使用 Mergekit,就可以把提取好的 LoRA 合并到其他同架构模型中了。

  合并代码也由 Eric Hartford 开源在 GitHub 上,只有 58 行。

  目前尚不清楚这种 LoRA 合并是否适用于在中文上微调的 Llama 3。

  不过可以看到,中文开发者社区已经关注到了这一进展。

  524k 版本 LoRA:

  https://huggingface.co/cognitivecomputations/Llama-3-70B-Gradient-524k-adapter

  1048k 版本 LoRA:

  https://huggingface.co/cognitivecomputations/Llama-3-70B-Gradient-1048k-adapter

  合并代码:

  https://gist.github.com/ehartford/731e3f7079db234fa1b79a01e09859ac

  参考链接:

  [1]https://twitter.com/erhartford/status/1786887884211138784

来自: 网易科技

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

性能工具使用

systemTap 采集工具 bcc 分析工具 sysstat 监控工具 netstat 网络监控工具 分类 tools/argdist: Display function parameter values as a histogram or frequency count. Examples.tools/bashreadline: Print entered bash commands system wide. Examples.tools/bpfli…

Socket学习记录

本次学习Socket的编程开发,该技术在一些通讯软件,比如说微信,QQ等有广泛应用。 网络结构 这些都是计算机网络中的内容,我们在这里简单回顾一下: UDP(User Datagram Protocol):用户数据报协议;TCP(Transmission Contr…

FastDFS - 无法获取服务端连接资源:can‘t create connection to/xx.xx.xx.xx:0

问题描述 根据官方文档 安装完FastDFS服务器后, 服务正常启动,但是在 SpringBoot 项目使用 fastdfs-client 客户端报错无法获取服务端连接资源:cant create connection to/xx.xx.xx.xx:0, 一系列排查发现是获取到的 tracker 端口为 0 。 co…

开源模型应用落地-CodeQwen模型小试-SQL专家测试(二)

一、前言 代码专家模型是基于人工智能的先进技术,它能够自动分析和理解大量的代码库,并从中学习常见的编码模式和最佳实践。这种模型可以提供准确而高效的代码建议,帮助开发人员在编写代码时避免常见的错误和陷阱。 通过学习代码专家模型&…

Linux:进程信号(一)信号的产生

目录 一、信号是什么? 二、Linux信号 三、信号处理方式 四、信号的产生 1、 通过终端按键产生信号 2、调用系统函数向进程发信号 3、 硬件异常产生信号 一、信号是什么? 在生活中,有许多信号,比如红绿灯,下课铃声…

一键 input 苹果 OpenELM,零门槛 Llama 3 教程,40+ 优质模型/数据集/教程,建议收藏!...

现在 AI 行业什么最火? 「大模型」一定仍然排在前三甲的位置。 自从 2022 年底 ChatGPT 面世以来,大模型在各行各业已经带来了太多的惊喜,应用场景愈发丰富,同时也带动了相关底层技术的普及与普适化。尤其是在开源模型繁荣发展之下…

CkickHouse JDBC 使用整理

1. pom 引入 <dependency><groupId>com.clickhouse</groupId><artifactId>clickhouse-jdbc</artifactId><version>0.4.6</version></dependency><dependency><groupId>org.roaringbitmap</groupId><arti…

星戈瑞CY7-COOH荧光探针,助力生物医学研究

CY7-COOH是一种近红外荧光染料&#xff0c;具有优异的光稳定性、高量子产率和强烈的荧光信号。此外&#xff0c;CY7-COOH还具有较长的激发和发射波长&#xff0c;使其在生物医学成像中具有较高的穿透力和较低的背景干扰。这使得CY7-COOH荧光探针在生物医学研究中具有诸多应用前…

YOLOv5网络结构解析

YOLOv5的实现细节解析&#xff1a;基础组件与实现细节 YOLO&#xff08;You Only Look Once&#xff09;系列作为目标检测领域的重要算法&#xff0c;以其速度快、性能好而著称。YOLOv5是该系列的最新版本&#xff0c;它在保持YOLO一贯的简洁高效特点的同时&#xff0c;进一步…

武汉星起航:跨境电商领域国际竞争力卓越,引领行业再上新台阶

在全球化浪潮的推动下&#xff0c;跨境电商行业日益成为各国经济交流与合作的重要桥梁。武汉星起航电子商务有限公司&#xff0c;作为跨境电商领域的佼佼者&#xff0c;凭借其深厚的行业经验和前瞻性的战略视野&#xff0c;在国际市场上展现出强大的竞争力&#xff0c;为行业的…

pyqt 分组框控件QGroupBox

pyqt 分组框控件QGroupBox 分组框控件QGroupBox介绍效果代码 分组框控件QGroupBox介绍 QGroupBox提供了一个框架&#xff0c;用于将其他控件&#xff08;如按钮、滑块、标签等&#xff09;组合在一起。 QGroupBox 通常包含一个标题栏和一个内容区域。标题栏显示文本标签&#…

Pyserini

文章目录 关于 Pyserini安装&#x1f3ac;如何搜索&#xff1f;&#x1f64b;如何给我的语料集建立索引 关于 Pyserini github : https://github.com/castorini/pyseriniPyserini: An Easy-to-Use Python Toolkit to Support Replicable IR Research with Sparse and Dense Re…