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

本站现有博文333篇,共被浏览922938

本站已经建立2629天!

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