只需58行代码,让llama3升级到100万上下文!

AI前沿2个月前发布 wanglu852
3,783 0 0
广告也精彩

Llama 3模型的扩展实践

引言

问题:Llama 3的原始上下文窗口有多大?

答:Llama 3的原始上下文窗口仅有8k。

问题:Llama 3的上下文窗口为何这么小?

答:可能是为了给开源社区留下贡献的空间。

Llama 3的自动扩展实现

问题:如何扩展Llama 3的上下文窗口?

答:通过简单的58行代码,任何Llama 3 70b的微调版本都能自动扩展到1048k(一百万)上下文。

关键技术:LoRA

  • LoRA 是从扩展好上下文的Llama 3 70B Instruct微调版本中提取出来的技术,文件大小为800mb。
  • 使用 Mergekit 工具,可以将LoRA与其他同架构模型一起运行或直接合并到模型中。

详细的技术细节

如何创建1048k上下文版Llama 3

调整位置编码

  • 方法:使用NTK-aware插值初始化RoPE theta的最佳调度。
  • 目的:优化并防止扩展长度后丢失高频信息。

渐进式训练

  • 方法:应用UC伯克利Pieter Abbeel团队提出的 Blockwise RingAttention 方法。
  • 优势:自定义网络拓扑分层并行化,利用大型GPU集群应对网络瓶颈,使模型训练速度提高了33倍。

长文本检索性能评估

  • 挑战:在“针”藏在文本中间部分时,检索性能会有所下降。

开源贡献

Eric Hartford的贡献

  • Eric Hartford开源了合并LoRA到其他模型的代码,该代码仅包含58行,可在GitHub上找到。

链接资源

总结与感悟

Llama 3的这次上下文扩展展示了开源社区在AI领域的创新和合作精神。从一个仅8k的基础上下文窗口到扩展至1048k的巨大跨步,不仅体现了技术的进步,还凸显了社区合作的重要性。这种通过开源工具和社区力量来不断推进技术前沿的实践,为整个AI领域的发展提供了宝贵的经验和启示。

标签 :人工智能, 开源, Llama 3, LoRA, Mergekit

https://www.bmanhua.com/manhua/46/

© 版权声明
chatgpt4.0

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...
error: Content is protected !!