RileyShe
RileyShe
> 我成功了 堆了8块显卡 没这么多显卡。。
显卡不够用,想使用 ` ZeRO Stage 3` 的方式。 改用了官网配置后报错 ` File "/root/anaconda3/lib/python3.9/site-packages/deepspeed/runtime/zero/partition_parameters.py", line 1128, in _partition_param param.ds_tensor.copy_(src_tensor) NotImplementedError: Cannot copy out of meta tensor; no data!` @duzx16 请问 能使用 ` ZeRO Stage...
> 你们就没发现deepspeed 启动的时候,显存是gpu数量的倍数吗? 无法模型并行,所有卡都加载了同样的显存,至少推理时候测试是这样 这个 我猜测是 ZeRO Stage 2方式的原因,模型参数没有并行。但是我尝试用ZeRO Stage 3 时 会报错。
> > @duzx16 参考 #530 通过zero3 offload微调还是不行,求大神指导下。 > > 之前不能是bug,大神已经修复了,用最新的代码,然后载入模型的部分加上empty_init=False,使用zero3的模式,4张3090能跑起来,我试了下,单卡显存占用16G,cpu offload大概100G 1. 更新了最新模型 和最新的代码(master) 2. 加载模型时加上了相应的参数(model = AutoModel.from_pretrained(model_args.model_name_or_path, config=config, trust_remote_code=True, empty_init=False)) Zero3方式 还是报错。 @Fcc-Roy 可以看下你的deepspeed.json的配置吗
@694344851 @wujindou 请假两位大佬,上面的问题解决了吗?我有4张3090,想做finetune,不知道模型并行怎么写?可以分享下相关的代码吗?谢谢
> 总的来说模型的任务是预测下一个token。 首先你贴的预处理代码中记录了prompt的长度。 > > https://github.com/mymusise/ChatGLM-Tuning/blob/997393046a49510e6cda36962f9a399297959311/finetune.py#L29 > > 然后在这个函数中,将prompt部分的label设为了-100(CrossEntropyLoss 的ignore_index),也就是这部分的loss不计算,只保留target_id 部分的loss。 明白了 谢谢! 请教一下,在信息抽取任务上做的微调,微调后的效果很差,而用小模型T5微调后效果就很好。不明白是为什么??
> > 总的来说模型的任务是预测下一个token。 首先你贴的预处理代码中记录了prompt的长度。 > > https://github.com/mymusise/ChatGLM-Tuning/blob/997393046a49510e6cda36962f9a399297959311/finetune.py#L29 > > > > 然后在这个函数中,将prompt部分的label设为了-100(CrossEntropyLoss 的ignore_index),也就是这部分的loss不计算,只保留target_id 部分的loss。 > > 明白了 谢谢! > > 请教一下,在信息抽取任务上做的微调,微调后的效果很差,而用小模型T5微调后效果就很好。不明白是为什么?? 增加了训练epoch, 现在看起来是有效的了。但有发现新的问题。 1. 提示信息:The dtype of attention mask (torch.int64)...
> 我这里展示的是某个特定任务的数据格式,你就使用通用的instructing tuning语料也可以训练。 https://github.com/beyondguo/LLM-Tuning 请问是否支持chatglm2-6b ?
> ``` > model = PeftModel.from_pretrained(model, "weights/xxx") > model_dict = model.state_dict() > model_dict.update(torch.load("weights/xxx/adapter_model.bin")) > model.load_state_dict(model_dict) > ``` > > 勉强先这样解决,但是感觉训练时loss算的有问题,我loss一直训到后面全是0了,推理时才能看到效果。 我基于baichuan-7b 微调的,也出现了lora_weight为零的情况,手工导入lora权重 看到了finetune的效果。