欢迎关注我的CSDN:https://spike.blog.csdn.net/
本文地址:https://spike.blog.csdn.net/article/details/140697827
免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。
使用 Left Padding (左填充) 或者 Right Padding (右填充),HuggingFace 的 transformer 库使用的 Left Padding,而 Llama 源码使用的是 Right Padding,两者各有不同,各有优势。做大模型 Batch 推理时,当请求的语句不等长时,需要使用 Padding,即填充一个无意义的 token,一般推荐 eos_token
。
- Left Padding:填充在序列前面,不影响之后的推理,符合常见认知,最后 Token 有意义,直接推理下一个 Token,但是导致无效空间占用,Transformer 库的方式。
- Right Padding:填充在序列后面,需要以最短序列开始推理,