kongds/MoRA

运行时报错:MoRA/peft-mora/src/peft/tuners/lora /layer.py文件中有俩个小bug

Opened this issue · 1 comments

修改:
1.在源文件261行前加入:
while pad_size > in_f :
x = torch.cat([x, x[..., :]], dim=-1)
pad_size-=in_f
这是由于没考虑pad_size > in_f得情况导致。

2.在源文件293行代码替换为:
if out_x.numel() == 0:
out_x = out_x.view(*x.shape[:-1], out_f)
else :
out_x = out_x.view(*x.shape[:-1], -1)[..., :out_f]
这是由于未考虑 out_x 中element=0得情况。

感谢您的反馈,不过您提到的情况都比较特殊。

  1. 如果pad_size>in_f, mora的r就超过了in_f。这种情况下可能失去使用mora的必要了
  2. 另外out_x中element=0的情况,out_x是大小为0的tensor,并不会出现在一般情况下,且out_x对后续的操作也会有异常。