赞
踩
在大模型中,.safetensors
、.ckpt
、.gguf
、.pth
和 .bin
文件都是用于保存和加载模型参数的文件格式,它们之间的区别和转换方式如下:
.safetensors
文件:
tf.train.Checkpoint
类来加载和保存 .safetensors
文件。.ckpt
文件:
tf.train.Saver
类来加载和保存 .ckpt
文件。tf.compat.v1.train.Saver
类来加载和保存 .ckpt
文件。.gguf
文件:
fstcompile
和 fstrain
工具来加载和保存 .gguf
文件。.pth
文件:
torch.save
函数来加载和保存 .pth
文件。.bin
文件:
.bin
文件。对于这些文件格式之间的转换,可以使用以下方法:
.ckpt
文件到 .pth
文件:
tf.compat.v1.train.Saver
类来加载 .ckpt
文件,然后使用 PyTorch 的 torch.Tensor.cpu
函数将模型参数转换为 CPU 张量,最后使用 PyTorch 的 torch.save
函数保存为 .pth
文件。.pth
文件到 .ckpt
文件:
torch.load
函数加载 .pth
文件,然后使用 TensorFlow 2.x 的 tf.convert_to_tensor
函数将模型参数转换为 TensorFlow 张量,最后使用 TensorFlow 2.x 的 tf.train.Checkpoint
类保存为 .ckpt
文件。.ckpt
文件或 .pth
文件到 ONNX 模型:
tf2onnx.convert
函数或 PyTorch 的 torch.onnx.export
函数将模型转换为 ONNX 模型,然后使用 ONNX 的 onnxruntime.InferenceSession
类加载和使用 ONNX 模型。ONNX 模型到 .pth
文件或 .ckpt
文件:
onnxruntime.InferenceSession
类加载 ONNX 模型,然后使用 PyTorch 的 torch.Tensor
或 TensorFlow 2.x 的 tf.convert\_to\_tensor
函数将模型参数转换为 PyTorch 或 TensorFlow 张量,最后使用 PyTorch 的 torch.save
函数或 TensorFlow 2.x 的 tf.train.Checkpoint
类保存为 .pth
文件或 .ckpt
文件。.gguf
文件到 ONNX 模型:
fst2onnx
工具将 .gguf
文件转换为 ONNX 模型,然后使用 ONNX 的 onnxruntime.InferenceSession
类加载和使用 ONNX 模型。ONNX 模型到 .gguf
文件:
onnxruntime.InferenceSession
类加载 ONNX 模型,然后使用 Google 的 onnx2fst
工具将 ONNX 模型转换为 .gguf
文件。需要注意的是,由于不同框架之间的 API 和序列化格式的差异,在进行转换时可能需要进行一些额外的处理,例如调整数据类型、调整形状、调整维度等。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。