AI软件下载
有趣网站推荐及实用软件下载

HuggingFace模型压缩打包时符号链接引起的文件夹过大问题解决方法

windows电脑上python应用从huggingface上下载模型,默认会在保存位置生成类似目录:

models--Systran--faster-whisper-medium #模型名
   --blobs
      --242aa06a480a7b5509375c645097e87af5136774 #乱码文件名真实大小无格式文件 1GB
      --...
   --refs
   --snapshots
      --08e178d48790749d25932bbc082711ddcfdfbc4f #哈希值
         --config.json #正常文件名0K快捷方式
         --...

假设原来文件夹总共大小1GB,如果把模型文件夹直接压缩打包发给别人,别人解压后可能就会变成2GB。

原本只有blobs文件夹内的文件有实际大小,snapshots文件夹下的文件只是0K 的快捷方式不占用空间。但是压缩打包后这些快捷方式被实体化了,成为了有实际大小的文件。这样就会导致模型文件夹大小翻倍。

解决方法:

打包时只压缩有实际大小的文件即可。

创建checkpoint文件夹,接着创建faster-whisper-medium模型名文件夹,将snapshots>08e178d48790749d25932bbc082711ddcfdfbc4f文件夹下的文件复制到faster-whisper-medium文件夹内,这时这些原本0KB的快捷方式都变成了有实际大小的文件。这时再把模型文件夹压缩打包的话就不会出现解压大小翻倍的问题了。

然后修改代码。

原本python内代码是使用模型ID来引用文件的,我们把它改成本地电脑内模型文件的相对路径即可。

如原来加载模型代码如下:

pipeline = Trellis2ImageTo3DPipeline.from_pretrained("microsoft/TRELLIS.2-4B")

改为:

pipeline = Trellis2ImageTo3DPipeline.from_pretrained("./hf/checkpoint/TRELLIS.2-4B")

有的模型是在json内配置的,也一并修改即可,如:

"image_cond_model": {
            "name": "DinoV3FeatureExtractor",
            "args": {
                "model_name": "facebook/dinov3-vitl16-pretrain-lvd1689m"
            }
        },

改为:

"image_cond_model": {
            "name": "DinoV3FeatureExtractor",
            "args": {
                "model_name": "./hf/checkpoint/dinov3-vitl16-pretrain-lvd1689m"
            }
        },

但是有时候需要注意代码里是使用的某个模型ID,还是某个模型内的仅仅几个文件

Python应用内使用模型ID的话应用启动时会有联网检查这一步,如果使用本地电脑上的缓存文件的话就不会引起联网检查了。当然你也可以手动设置为离线。


AI软件用不了?2元爽玩4090: 立即体验>>

热门大语言模型API免费体验: 立即获取>>

软件催更及1对1人工答疑支持: https://nuowa.net/1806
赞(0) 打赏
软件无法使用?点击查看常见问题说明>>

最近更新

FunASR语音识别转文字软件区分说话人版-诺瓦小站

FunASR语音识别转文字软件区分说话人版

FunASR是一款优秀的基础语音识别框架,配合阿里通义团队开发的其它语音识别模型,能够实现非常好语音转文字效果,尤其在中文语音识别方面,鉴于有些用户需要对语音识别内容区分说话人,我重新做了一版区分说话人的版本。软件支持多语言识别,但是还是尽...

觉得文章对你有帮助就打赏一下作者

非常感谢你的打赏,我将有更多的动力继续提供优质内容,让我们一起创建更加美好的世界!

支付宝扫一扫

微信扫一扫