ModelScope中,https://modelscope.cn/models/codefuse-ai/CodeFuse-CodeLlama-34B-4bits/summary 可以吧这个bin转回到safetensors格式么?这个为啥不是safetensors格式的? 不是一般量化后都是safetensors格式吗? gptq
《CodeFuse-CodeLlama》模型是一个预训练代码生成模型,它不能被转换成 safetensors 格式,因为它的格式不同。Safetensor 格式是由阿里云自主研发的一种轻量级模型格式,它可以提高模型推理性能,但不会影响模型的准确度。可以使用 TensorRT 来进行代码转换,它可以轻松将模型转换成 Safetensor 格式,但不支持这种预训练模型。
ModelScope是阿里云提供的模型开放平台,它提供了大量的预训练模型和工具供用户使用。
根据给出的链接,"CodeFuse-CodeLlama-34B-4bits"是TensorRT-LLM在CodeFuse-CodeLlama-34B上的int4量化实践,它是一个在特定硬件平台上优化过的模型。在这种情况下,该模型可能已经被转换为适合该特定硬件平台的二进制文件格式,而不是SafeTensors格式。这是因为SafeTensors格式主要用于保存具有高精度浮点数的模型权重,而这种量化模型已经将原始浮点数权重转换为了低精度整数。
此外,GPT-Q是一种大规模的语言模型,它是由阿里云开发的大规模语言模型。在进行模型的量化过程中,可能会因为精度损失等问题导致模型性能下降。因此,对于这种大规模语言模型来说,通常不会将其量化为int4等低精度格式,而是会采用更高精度的浮点数格式,如float16或float32。
CodeFuse-CodeLlama-34B-4bits是CodeFuse-CodeLlama-34B模型的4bits量化版本,这是通过QLoRA对基座模型CodeLlama-34b-Python进行训练得到的。而关于为什么它不是采用safetensors格式,这可能与模型的存储和分发需求有关,以及开发者对于模型压缩和优化的考虑。
不过,一般来说,经过量化处理的模型会采用像safetensors这样的专用格式来进行存储和传输,以提供更好的安全性和效率。但也有可能出于某种特定目的或技术原因,某些模型并没有采用这种格式。
您在hf上搜一下,看看有已经转换好的没,方便一些。
https://mp.weixin.qq.com/s/UooFHCr-5m8fIAzzQh8zRg
——此回答整理自钉群:魔搭ModelScope开发者联盟群 ①