aiXcoder-7B icon indicating copy to clipboard operation
aiXcoder-7B copied to clipboard

code_string和later_code的输入长度有限制吗?

Open mechigonft opened this issue 1 year ago • 5 comments

你好,请问下,code_string和later_code的输入长度有限制吗?

mechigonft avatar Apr 15 '24 08:04 mechigonft

预训练时是32K的序列长度,但是现在推理脚本并没有限制长度,可能需要自行限制长度。code_string和later_code 在完成分词后,可以将ID序列截断为小于32K,需要注意截断时不能把特殊词给截掉了,修改可以参考 input_wrapper 函数。

HoratioJSY avatar Apr 16 '24 05:04 HoratioJSY

你好,我的意思是在使用你们的底座模型进行加训/sft时,我构造训练集,code_string和later_code的输入长度的限制是多长?是跟你们预训练的32K保持一致吗?还有就是32K指的是token的个数吗?3.2w个token?有什么脚本可以判断我的训练集的token长度吗?我想过滤一下,不然会影响我的训练效果

mechigonft avatar Apr 16 '24 05:04 mechigonft

预训练是 32768 的BPE Token数,如果你需要微调的话,小于等于这个长度都没问题。code_string和later_code本身没有限制,但是它们加起来后需要限制在32768 Token数。只要过滤的时候,不删掉特殊词,大概率就没问题。

HoratioJSY avatar Apr 16 '24 06:04 HoratioJSY

预训练是 32768 的BPE Token数,如果你需要微调的话,小于等于这个长度都没问题。code_string和later_code本身没有限制,但是它们加起来后需要限制在32768 Token数。只要过滤的时候,不删掉特殊词,大概率就没问题。

怎么跑起来的的32768token的预训练? 我尝试 80GB A800,bs=1,gradient=2,跑不起来的7B的llm

yiyepiaoling0715 avatar Apr 16 '24 07:04 yiyepiaoling0715

我们预训练中会采用多种并行方式,例如张量并行、pipeline并行、ZeRO、Recompute等,这样将模型拆到多台机器多张卡上才能进行长序列的预训练。我们建议您可以确认所使用的分布式训练框架支不支持多种并行方式,支不支持FlashAttention等,这样才能有可能跑起来。

HoratioJSY avatar Apr 16 '24 11:04 HoratioJSY