--- title: LFS Configuration description: Git LFS integration with flexible per-repository settings icon: i-carbon-data-volume --- # LFS (Large File Storage) Configuration Git LFS integration with flexible per-repository settings. --- ## Overview **Automatic LFS handling:** - Files ≥5MB → LFS by default - Or specific file extensions → Always LFS - Configurable per-repository - Server-wide defaults + repo overrides --- ## Server Defaults **Environment variables:** ```yaml KOHAKU_HUB_LFS_THRESHOLD_BYTES: 5000000 # 5MB (decimal: 1MB = 1,000,000) KOHAKU_HUB_LFS_KEEP_VERSIONS: 5 # Keep last 5 versions KOHAKU_HUB_LFS_AUTO_GC: false # Manual GC only ``` **32 default suffix rules** (always use LFS): **ML Models:** - .safetensors, .bin, .pt, .pth, .ckpt - .onnx, .pb, .h5, .tflite - .gguf, .ggml, .msgpack **Archives:** - .zip, .tar, .gz, .bz2, .xz, .7z, .rar **Data:** - .npy, .npz, .arrow, .parquet **Media:** - .mp4, .avi, .mkv, .mov - .wav, .mp3, .flac - .tiff, .tif --- ## Per-Repository Settings **Override server defaults:** ### Via Web UI 1. Navigate to repo → **Settings** 2. Scroll to **LFS Settings** 3. Configure: - **Threshold** - Size in bytes (null = use server default) - **Keep Versions** - How many versions to keep (null = server default) - **Suffix Rules** - Additional extensions (supplements server defaults) ### Via CLI ```bash # Set custom threshold (10MB) kohub-cli settings repo lfs threshold username/repo --threshold 10000000 # Reset to server default kohub-cli settings repo lfs threshold username/repo --reset # Set keep versions kohub-cli settings repo lfs versions username/repo --count 10 # Add suffix rules kohub-cli settings repo lfs suffix username/repo --add .custom --add .special # Remove suffix rule kohub-cli settings repo lfs suffix username/repo --remove .custom # Clear all custom rules (keep server defaults) kohub-cli settings repo lfs suffix username/repo --clear ``` ### Via API ```bash # Get LFS settings curl http://localhost:28080/api/models/username/repo/settings/lfs # Update settings curl -X PUT http://localhost:28080/api/models/username/repo/settings \\ -d '{ "lfs_threshold_bytes": 10000000, "lfs_keep_versions": 10, "lfs_suffix_rules": [".safetensors", ".custom"] }' ``` --- ## How LFS Works ### Upload Flow **Small file (