md5sum校验模型文件完整性

492 阅读4分钟

大模型时代,文件越来越大,有时候提供方会提供很多分片。

当下载了模型文件之后,怎么确定文件的完整性和正确性呢?这时候就需要MD5出马。

以最近刚刚开放下载的grok-1为例,没错,就是马斯克的那个grok-1,刚刚下载完了。文件夹长的这个样子:

.
├── ckpt-0
│   ├── tensor00000_000
│   ├── tensor00001_000
│   ├── tensor00002_000
│   ├── tensor00003_000
│   ├── tensor00004_000
│   ├── tensor00005_000
│   ├── tensor00006_000
│   ├── tensor00007_000
│   ├── tensor00008_000
│   ├── tensor00009_000
│   ├── tensor00010_000
此处省略一大堆
│   ├── tensor00763_000
│   ├── tensor00764_000
│   ├── tensor00765_000
│   ├── tensor00766_000
│   ├── tensor00767_000
│   ├── tensor00768_000
│   └── tensor00769_000
├── LICENSE
├── md5sum.txt
└── RELEASE

这里有一个md5sum.txt文件,文件内容大致如下:

ea5774684fe8af0c8dbc73f0587b3ed3  ./tensor00251_000
5e5ac7153ade3bc0258ea8909b411aef  ./tensor00084_000
6358c62cef61d79c24fd223b21798b49  ./tensor00093_000
13f15b98afecc281d84801acf347e220  ./tensor00442_000
392f867c92b96f8c8c7214190f853f2c  ./tensor00277_000
6f5a97ddc80c8d5207d4d165d53121c6  ./tensor00072_000
d6b4317b176fcd0054a70a3a8675daf5  ./tensor00609_000
fceacb314134d5d0218df727954a8596  ./tensor00119_000
2f9382f1ee95d86708fac2e379c34715  ./tensor00743_000
73bf0aa342ed62e1c14625a55fc2b80e  ./tensor00716_000
fa808f9f9ae616bb189b66b08a8a27ce  ./tensor00384_000
54ae3b8f008be8dee1bffb550964334a  ./tensor00572_000
db2c5892465c8bf246e481c92f7af378  ./tensor00001_000
8bd8fd0ed2540eec0c45f6f6f619cd67  ./tensor00389_000
ae2bd497a2c36da6a5b96663dcb5ec65  ./tensor00017_000
c364acc683d6ededc53e5ac4bf7e9d59  ./tensor00297_000
6672a65c4fa1638e055378001536c289  ./tensor00125_000

一共有770行,表示的就是每一个文件的md5值。这时候只要一一确认每个文件的md5与txt文件里的相同即可。

总不能逐个敲命令然后人工比对吧。

这时候可以使用下面这个命令来完成自动检查。

cd ckpt-0
md5sum -c ../md5sum.txt

如果运行结束之后全是OK那就OK

./tensor00617_000: OK
./tensor00381_000: OK
./tensor00367_000: OK
./tensor00438_000: OK
./tensor00742_000: OK
./tensor00561_000: OK
./tensor00546_000: OK
./tensor00684_000: OK
./tensor00593_000: OK
./tensor00344_000: OK