EADST

Sharding and SafeTensors in Hugging Face Transformers

In the Hugging Face transformers library, managing large models efficiently is crucial, especially when working with limited disk space or specific file size requirements. Two key features that help with this are sharding and the use of SafeTensors.

Sharding

Sharding is the process of splitting a large model's weights into smaller files or "shards." This is particularly useful when dealing with large models that exceed file size limits or when you want to manage storage more effectively.

Usage

To shard a model during the saving process, you can use the max_shard_size parameter in the save_pretrained method. Here's an example:

# Save the model with sharding, setting the maximum shard size to 1GB
model.save_pretrained('./model_directory', max_shard_size="1GB")

In this example, the model's weights will be divided into multiple files, each not exceeding 1GB. This can make storage and transfer more manageable, especially when dealing with large-scale models.

SafeTensors

The safetensors library provides a new format for storing tensors in a safe and efficient way. Unlike traditional formats like PyTorch's .pt files, SafeTensors ensures that the tensor data cannot be accidentally executed as code, offering an additional layer of security. This is particularly important when sharing models across different systems or with the community.

Usage

To save a model using SafeTensors, simply specify the safe_serialization parameter when saving:

# Save the model using SafeTensors format
model.save_pretrained('./model_directory', safe_serialization=True)

This will create files with the .safetensors extension, ensuring the saved tensors are stored safely.

Combining Sharding and SafeTensors

You can combine both sharding and SafeTensors to save a large model securely and efficiently:

# Save the model with sharding and SafeTensors
model.save_pretrained('./model_directory', max_shard_size="1GB", safe_serialization=True)

This setup splits the model into shards, each in the SafeTensors format, offering both manageability and security.

Conclusion

By leveraging sharding and SafeTensors, Hugging Face transformers users can handle large models more effectively. Sharding helps manage file sizes, while SafeTensors ensures the safe storage of tensor data. These features are essential for anyone working with large-scale models, providing both practical and security benefits.

相关标签
About Me
XD
Goals determine what you are going to be.
Category
标签云
Template uwsgi Website WAN GPTQ ONNX Web GGML Python PIP Markdown Breakpoint 继承 logger git-lfs C++ Freesound VPN Animate 图形思考法 SPIE OpenCV llama.cpp tqdm RAR FP8 CEIR HuggingFace Logo Vim NLP Video 强化学习 GoogLeNet Nginx Food Qwen2.5 Image2Text Django Permission scipy ChatGPT 净利润 Bipartite Sklearn LeetCode GPT4 Pillow Conda BF16 Gemma 报税 NLTK MD5 PyCharm DeepStream CV Github FlashAttention Mixtral WebCrawler 多线程 Shortcut VSCode Tiktoken CLAP FastAPI Plate Quantization Tracking LLM TensorFlow 算法题 UI SAM COCO LaTeX JSON Crawler Statistics Jetson TTS Michelin PDB 云服务器 Distillation 域名 关于博主 Interview TensorRT UNIX Heatmap Quantize NameSilo Jupyter 图标 HaggingFace Ubuntu 公式 搞笑 Base64 CC OpenAI ModelScope CTC FP16 IndexTTS2 LoRA icon hf mmap Dataset Color 递归学习法 多进程 LLAMA Algorithm PyTorch Pickle Card OCR RGB Bert Paddle Knowledge InvalidArgumentError Review PDF Claude diffusers Hungarian QWEN YOLO Vmess Docker 第一性原理 版权 Augmentation Tensor Attention CUDA 证件照 Land Ptyhon Clash Bin Disk VGG-16 阿里云 Streamlit Firewall CSV Agent News Data DeepSeek Google CAM 顶会 Safetensors FP32 torchinfo v2ray git 腾讯云 XGBoost EXCEL Pandas Windows Transformers printf ResNet-50 GIT uWSGI SQL Math Bitcoin Anaconda Git v0.dev Input Excel Hotel API Miniforge 飞书 Zip BeautifulSoup Plotly Datetime tar Password XML 签证 Paper Random Llama Baidu Magnet Hilton Use Qwen2 Domain Translation SQLite transformers Numpy BTC 音频 Pytorch Cloudreve AI Diagram Search SVR Proxy 财报 FP64 Qwen TSV Linux
站点统计

本站现有博文322篇,共被浏览783907

本站已经建立2477天!

热门文章
文章归档
回到顶部