LLM:RoPE - 开源代码中的实现 (下)

发布时间:2024年01月23日

本文着重学习一下开源代码中关于RoPE的实现:ChatGLM-6B、ChatGLM2-6B、LLAMA

回顾一下RoPE位置编码:

1:对于 token 序列中的每个词嵌入向量,首先计算其对应的 query 和 key 向量
2:然后对每个 token 位置都计算对应的旋转位置编码
3:接着对每个 token 位置的 query 和 key 向量的元素按照 两两一组 应用旋转变换
4:最后再计算 query 和 key 之间的内积得到 self-attention 的计算结果


 

前文提供了RoPE的基本实现,本文学习一下开源LLM中的RoPE的实现。

ChatGLM-6B:

源码中通过以下方式实现旋转位置编码(代码中 d=64):[注意与上面蓝色公式的区别]

文章来源:https://blog.csdn.net/lilai619/article/details/135772046
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。