一些意外的bug

类型一:安装包问题

1、包内部代码报错,如:某方法没有

检查版本:

python -> import 包名 -> 包名.version -> 包名.file

若import 的包名与 pip安装的包的路径不一致,则copy过去

具体:

1、key llama error transformers问题,需安装4.28

2、deepspeed没有adam_cuda属性,需要安装0.8.3 (torch的版本要1.12.1的)

类型二:目录没有权限

sudo chmod 777 dir

sudo chmod 777 dir/* (目录下的文件负最大权限)

类型三、python使用版本不对

sudo python与python用的不是同一个python

解决办法:

iii. sudo cp /usr/bin/python /usr/bin/python_bak

iv. sudo rm /usr/bin/python

v. sudo ln -s /opt/conda/bin/python /usr/bin/python

类型三、cpu与gpu上的半精度问题

def normalize(x, axis=-1):

x = 1. * x / (torch.norm(x, 2, axis, keepdim=True).expand_as(x)+1e-12)

return x

embed 目前在显卡上且是半精度

normalize(embed_f).cpu() 与 normalize(embed_f.cpu()) 的结果会不一样,后者会改变精度

解决办法:采用normalize(embed_f.cpu().float())

tips:这三种结果都有细微 的差别,只是normalize(embed_f.cpu())差别很明显

numpy与tensor 取值问题:

复制代码
[str(i.item()) for i in normalize(embed_f[0]).cpu().numpy()]

result:['0.02435302734375', '0.0052337646484375']

[str(i) for i in normalize(embed_f[0]).cpu().numpy()]

result:['0.02435', '0.005234']

cuda error:

RuntimeError: CUDA error: device-side assert triggered

CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect.

For debugging consider passing CUDA_LAUNCH_BLOCKING=1.

Compile with `TORCH_USE_CUDA_DSA` to enable device-side assertions.

解决办法:python 前面加入CUDA_VISIBLE_DEVICES=3

llama1 加入这一串也能解决:

复制代码
if tokenizer.pad_token is None:
        DEFAULT_PAD_TOKEN = "[PAD]"
        DEFAULT_EOS_TOKEN = "</s>"
        DEFAULT_BOS_TOKEN = "</s>"
        DEFAULT_UNK_TOKEN = "</s>"
        tokenizer.add_special_tokens(
            {
                "eos_token": DEFAULT_EOS_TOKEN,
                "bos_token": DEFAULT_BOS_TOKEN,
                "unk_token": DEFAULT_UNK_TOKEN,
                "pad_token": DEFAULT_PAD_TOKEN,
            }
        )
        tokenizer.add_eos_token = False
相关推荐
Shadow(⊙o⊙)15 小时前
Bug调试1.0
bug
T01156182 天前
艺培场馆课时预约小程序用户端 & 后台联动踩坑上篇(预约、课时、缓存、消息、学员端自身问题)
java·缓存·小程序·bug·全栈项目实战手记·艺培课时系统‘’
zone_z2 天前
07 · 等待事件与 OWI 方法:从 OSW 到 BUG 的完整破案实录
linux·数据库·oracle·ffmpeg·bug·troubleshooting
黑猫学长呀2 天前
【驱动开发常见问题】编译出现rm: cannot remove `asm/arch‘: Is a directory
驱动开发·单片机·嵌入式硬件·bug·编译报错·kernrl
姚青&3 天前
测试流程搭建
测试用例·bug·jira
mmsx3 天前
return false 不是拦截:一次按键触发两个动作的事件冒泡陷阱
android·bug
随风丶飘4 天前
[特殊字符] 告别“update“和“fix bug“——Smart Git Commit LLM 让 AI 帮你写专业的 Git 提交信息
人工智能·git·bug
czhc11400756634 天前
崩溃复查与“回声“bug:异常码判案、漏网之鱼和耳塞开关
bug
mmsx5 天前
我明明调用了 zoomToBounds,地图却总是停在别处?延迟加到 5 秒也没用,真相只有一个
android·人工智能·bug·地图
mmsx6 天前
置灰按钮为什么自己又“亮“了?一次状态缓存“双写冲突“的排查记录
java·缓存·bug·livedata