-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
多卡运行 和 参数问题 #12
Comments
您好,感谢您对我们项目的兴趣! 本项目绝大多数实验仅使用了单卡,多卡推理的问题可以参考LLaMA-Factory原仓库。参数问题以控制台实际输出为准。 |
哦噢谢谢。那请问参数问题呢? |
应该就是llama-factory的默认参数,我没有调这些 |
收到 |
我觉得没有影响。我在实验的时候没管warnings |
可能是环境原因吧... |
哦噢好的感谢 |
@zmr66z6xx6 能否详细说一下这个具体的setup呀?是用的本repo提供的command跑的evaluation吗,还是改动了什么参数?是否检查过模型self-disilltation 生成的数据呢? |
@zmr66z6xx6 另外,这个出问题是在单卡环境下,还是多卡环境下呢? |
main分支跑的哟 参数没改 就用原来的 |
多卡 乱码结果很差。上面发的是单卡跑出来的 |
@zmr66z6xx6 可以试试reproduce branch的code,不确定是不是因为Llama-Factory最新的codebase引起的问题 |
@SivilTaram 收到谢谢 |
@SivilTaram 请问一下这个warning有影响吗 |
@zmr66z6xx6 没有影响的,这个是说这个API马上会弃用 |
@SivilTaram 好的 谢谢 目前用 分支部分 跑出了seed结果 openfunctions的结果差的有点多了 只有10.71% |
@zmr66z6xx6 是指seed model自己inference的结果在openfunctions只有10.71%,是吗? |
@SivilTaram 对的 之前main分支也是openfunctions上的test不太理想 |
@zmr66z6xx6 因为seed model本身和方法没有任何关系,就是llama-2-chat,请问你是用什么精度做的inference,什么显卡呢?以及是只有openfunctions上的结果不理想吗还是? |
@SivilTaram 我参数啥的都没改 全是项目里头指定的 卡是RTX 3090 |
@zmr66z6xx6 好的,谢谢反馈!可以先在reproduce下试试其他的dataset,比如GSM8K是否能复现sdft v.s. sft 的结果吗?感觉听起来像是硬件支持精度的问题😂 但我还不太确定 |
@SivilTaram 好的收到,感谢 |
@SivilTaram gsm8k数据集训练的结果:感觉还是openfunction上的出入有点大 |
部分实验用3090,部分用A800 |
@rickyang1114 还请问一下为什么分支在gsm8k跑出来的结果和论文对不上,没有出现论文表现的遗忘 |
可能是因为有一些环境方面的微小差异导致随机性未能完全被抹去= = |
但是这里出现的openfunction效果增长了这么多着实有点奇怪wwww,对了还要问一下论文跑predict的时候用了do_sample吗?我在部分任务上跑了几次发现正确率是一模一样的 |
humaneval 评估太慢了,用了 结果未能完全复现可能是我当时做实验的环境和复现的环境不是完全一样,可能由requirements.txt中某些未指定版本的package带来,也可能由操作系统带来。。。具体是什么原因我也不清楚。。。 |
好的好的谢谢 |
@zmr66z6xx6 openfunctions 的性能我觉得可能是因为do sample的原因,可以试试打开do sample 试多次看看?因为humaneval本身的example数量太少了,很容易导致variance比较大; 另一个问题就是,seed model 如果用greedy(do sample=False)理应复现论文中的结果,现在看seed model的性能都不能match,很奇怪... |
@rickyang1114 哦噢 我看项目中seed脚本没有对do_sample指定 我稍后 指定其为False然后跑一下试试 (上述得到的结果我没有改动任何地方) |
@rickyang1114 还要麻烦请问一下HumanEval 测试 要用到api吗?报错提示找不到dataset 该怎么办 |
检查一下bigcode-evaluation-harness是否为空目录?我没有遇到过这个问题 |
@rickyang1114 是不是我的服务器没办法连外网导致的呢,数据是从hub上在线抓取的吗? |
很有可能。可以试试 |
OK感谢 |
先前对于openfunction数据集的评估只匹配了模型输出的keyword argument,而未考虑position argument,存在将正确答案误判的情况。例如一个样例的标签为: 此外,由于先前的实验环境已经丢失,我按照reproduce分支的requirements.txt重新构建了环境并且进行了实验,以下将实验结果粘贴: test_seed_LM.sh
gsm8k/sft.sh
gsm8k/sdft.sh
openfunction/sft.sh
openfunction/sdft.sh
magicoder/sft.sh
magicoder/sdft.sh
可以看出,结果与论文中的数值存在一些波动,但是仍然能体现sdft相对于sft的优势。 此外,由于本项目使用去年12月左右的LLaMA-Factory构建,彼时其并不支持多卡推理,因而使用多卡可能出现未预期的错误,请和script示范中一样使用单卡。 |
好的 感谢 |
@zmr66z6xx6 请再试试是否可以复现上述结果哈,欢迎更多feedback! |
为什么项目使用多 GPU 运行 导致推理结果乱码,得到的评估结果很差呢 ?请问是什么原因导致的呢
另外一个问题是,论文说的是实验运用llama2的默认参数,比如温度等。但是实际推理时好像用的是llama-factory的参数,是0.95。而模型的默认温度是0.6。
The text was updated successfully, but these errors were encountered: