compressed-tensors 0.11.1a20250908__tar.gz → 0.11.1a20250909__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/PKG-INFO +1 -1
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/quantized_compressors/nvfp4_quantized.py +5 -4
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/quant_scheme.py +11 -1
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/offload.py +0 -26
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/version.py +1 -1
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors.egg-info/PKG-INFO +1 -1
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/quantized_compressors/test_nvfp4_quant.py +14 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/.gitkeep +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/actions/test/action.yml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/scripts/step-status +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/workflows/build-test.yml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/workflows/build.yml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/workflows/quality-check.yaml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/workflows/report.yml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/workflows/test-check.yaml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/workflows/test.yml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/workflows/trigger-all.yml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/workflows/upload.yml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.gitignore +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/LICENSE +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/Makefile +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/README.md +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/examples/bit_packing/ex_quantize_and_pack.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/examples/bit_packing/int4_config.json +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/examples/bitmask_compression.ipynb +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/examples/llama_1.1b/ex_config_quantization.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/examples/llama_1.1b/ex_llmcompressor_quantization.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/examples/llama_1.1b/example_quant_config.json +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/examples/llama_1.1b/example_quant_recipe.yaml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/examples/quantize_and_pack_int4.ipynb +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/pyproject.toml +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/setup.cfg +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/setup.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/README.md +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/base.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/base.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/helpers.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/model_compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/model_compressors/model_compressor.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/quantized_compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/quantized_compressors/base.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/quantized_compressors/naive_quantized.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/quantized_compressors/pack_quantized.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/sparse_compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/sparse_compressors/base.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/sparse_compressors/dense.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/sparse_compressors/sparse_24_bitmask.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/sparse_compressors/sparse_bitmask.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/sparse_quantized_compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/compressors/sparse_quantized_compressors/marlin_24.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/config/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/config/base.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/config/dense.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/config/sparse_24_bitmask.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/config/sparse_bitmask.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/linear/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/linear/compressed_linear.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/lifecycle/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/lifecycle/apply.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/lifecycle/compressed.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/lifecycle/forward.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/lifecycle/helpers.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/lifecycle/initialize.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/quant_args.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/quant_config.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/utils/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/quantization/utils/helpers.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/registry/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/registry/registry.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/apply.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/factory/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/factory/base.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/factory/hadamard.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/factory/matrix_multiply.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/factory/random_hadamard.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/transform_args.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/transform_config.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/transform_scheme.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/utils/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/utils/hadamard.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/utils/hadamards.safetensors +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/transform/utils/matrix.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/helpers.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/internal.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/match.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/permutations_24.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/permute.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/safetensors_load.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/semi_structured_conversions.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors/utils/type.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors.egg-info/SOURCES.txt +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors.egg-info/dependency_links.txt +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors.egg-info/requires.txt +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/src/compressed_tensors.egg-info/top_level.txt +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/conftest.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/model_compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/model_compressors/test_model_compressor.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/quantized_compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/quantized_compressors/test_fp8_quant.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/quantized_compressors/test_int_quant.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/quantized_compressors/test_pack_quant.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/sparse_compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/sparse_compressors/test_bitmask.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/sparse_compressors/test_sparse_24_bitmask.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/sparse_quantized_compressors/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_compressors/sparse_quantized_compressors/test_marlin_24.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_configs/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_configs/test_base.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_examples/test_bitmask_compression_ipynb.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_linear/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_linear/test_compressed_linear.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/lifecycle/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/lifecycle/conftest.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/lifecycle/test_apply.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/lifecycle/test_dynamic_lifecycle.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/lifecycle/test_enabled.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/lifecycle/test_forward.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/lifecycle/test_helpers.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/lifecycle/test_initialize.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/lifecycle/test_lifecycle.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/test_configs/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/test_configs/test_bit_depths.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/test_configs/test_strategies.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/test_quant_args.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/test_quant_config.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/test_quant_scheme.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_quantization/test_utils/test_helpers.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_registry.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_transform/conftest.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_transform/factory/test_correctness.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_transform/factory/test_memory.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_transform/factory/test_serialization.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_transform/test_transform_args.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_transform/test_transform_config.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_transform/test_transform_scheme.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_transform/utils/test_hadamard.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_utils/__init__.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_utils/test_helpers.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_utils/test_match.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_utils/test_offload.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_utils/test_safetensors_load.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_utils/test_type.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/testing_utils.py +0 -0
- {compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/utils/copyright.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: compressed-tensors
|
3
|
-
Version: 0.11.
|
3
|
+
Version: 0.11.1a20250909
|
4
4
|
Summary: Library for utilization of compressed safetensors of neural network models
|
5
5
|
Home-page: https://github.com/neuralmagic/compressed-tensors
|
6
6
|
Author: Neuralmagic, Inc.
|
@@ -140,6 +140,11 @@ def pack_fp4_to_uint8(x: torch.Tensor) -> torch.Tensor:
|
|
140
140
|
m, n = x.shape
|
141
141
|
device = x.device
|
142
142
|
|
143
|
+
if n % 2 != 0:
|
144
|
+
raise ValueError(
|
145
|
+
"tensor must have an even number of columns for nvfp4 compression"
|
146
|
+
)
|
147
|
+
|
143
148
|
# Create lookup table for FP4 values to indices
|
144
149
|
# Map the absolute values to 0-7 indices
|
145
150
|
kE2M1 = torch.tensor(FLOAT_TO_E2M1, device=device, dtype=x.dtype)
|
@@ -155,10 +160,6 @@ def pack_fp4_to_uint8(x: torch.Tensor) -> torch.Tensor:
|
|
155
160
|
# Reshape to prepare for packing pairs of values
|
156
161
|
indices = indices.reshape(-1)
|
157
162
|
|
158
|
-
# Handle odd length by padding if necessary
|
159
|
-
if indices.numel() % 2 != 0:
|
160
|
-
indices = torch.cat([indices, torch.zeros(1, dtype=torch.long, device=device)])
|
161
|
-
|
162
163
|
# Reshape to pair consecutive elements
|
163
164
|
indices = indices.reshape(-1, 2)
|
164
165
|
|
@@ -63,9 +63,19 @@ class QuantizationScheme(BaseModel):
|
|
63
63
|
if inputs.strategy not in (
|
64
64
|
QuantizationStrategy.TOKEN,
|
65
65
|
QuantizationStrategy.TENSOR,
|
66
|
+
QuantizationStrategy.GROUP,
|
66
67
|
QuantizationStrategy.TENSOR_GROUP,
|
67
68
|
):
|
68
|
-
|
69
|
+
if (
|
70
|
+
inputs.strategy == QuantizationStrategy.GROUP
|
71
|
+
and inputs.dynamic is True
|
72
|
+
):
|
73
|
+
raise NotImplementedError(
|
74
|
+
"Static and local group-wise activation "
|
75
|
+
"quantization is not supported"
|
76
|
+
)
|
77
|
+
|
78
|
+
raise NotImplementedError(
|
69
79
|
f"Using {inputs.strategy} strategy is not supported for "
|
70
80
|
"activation quantization"
|
71
81
|
)
|
@@ -68,10 +68,8 @@ except ImportError:
|
|
68
68
|
|
69
69
|
|
70
70
|
__all__ = [
|
71
|
-
"is_module_offloaded",
|
72
71
|
"get_execution_device",
|
73
72
|
"get_offloaded_device",
|
74
|
-
"update_prefix_dict",
|
75
73
|
"update_parameter_data",
|
76
74
|
"register_offload_parameter",
|
77
75
|
"update_offload_parameter",
|
@@ -117,11 +115,6 @@ def check_accelerate(fallback: Any):
|
|
117
115
|
""" Candidates for Depreciation """
|
118
116
|
|
119
117
|
|
120
|
-
@check_accelerate(fallback=False)
|
121
|
-
def is_module_offloaded(module: torch.nn.Module) -> bool:
|
122
|
-
return has_offloaded_params(module)
|
123
|
-
|
124
|
-
|
125
118
|
def get_offloaded_device(module: torch.nn.Module) -> torch.device:
|
126
119
|
"""
|
127
120
|
:param module: module to check
|
@@ -137,25 +130,6 @@ def get_offloaded_device(module: torch.nn.Module) -> torch.device:
|
|
137
130
|
return get_execution_device(module)
|
138
131
|
|
139
132
|
|
140
|
-
@check_accelerate(fallback=None)
|
141
|
-
def update_prefix_dict(module: torch.nn.Module, key: str, data: torch.Tensor):
|
142
|
-
"""
|
143
|
-
Updates the offloaded state dict for a given module. Parameter named key is replaced
|
144
|
-
by data. This is neccesary because parameter updates for offloaded modules do not
|
145
|
-
persist automatically between loads. This function only affects the offloaded
|
146
|
-
state dict and not the current state of the loaded module.
|
147
|
-
|
148
|
-
:param module: module containing the parameter to update
|
149
|
-
:param key: name of parameter to update
|
150
|
-
:param data: tensor to update parameter with in the offloaded state dict
|
151
|
-
"""
|
152
|
-
if not has_offloaded_params(module):
|
153
|
-
raise ValueError("Prefix dict is only applicable to offloaded modules")
|
154
|
-
|
155
|
-
weights_map = module._hf_hook.weights_map
|
156
|
-
offload_to_weights_map(weights_map, key, data)
|
157
|
-
|
158
|
-
|
159
133
|
def update_parameter_data(
|
160
134
|
module: torch.nn.Module, new_param_data: torch.Tensor, param_name: str
|
161
135
|
):
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: compressed-tensors
|
3
|
-
Version: 0.11.
|
3
|
+
Version: 0.11.1a20250909
|
4
4
|
Summary: Library for utilization of compressed safetensors of neural network models
|
5
5
|
Home-page: https://github.com/neuralmagic/compressed-tensors
|
6
6
|
Author: Neuralmagic, Inc.
|
@@ -12,6 +12,7 @@
|
|
12
12
|
# See the License for the specific language governing permissions and
|
13
13
|
# limitations under the License.
|
14
14
|
|
15
|
+
import pytest
|
15
16
|
import torch
|
16
17
|
from compressed_tensors.compressors.quantized_compressors.nvfp4_quantized import (
|
17
18
|
pack_fp4_to_uint8,
|
@@ -41,3 +42,16 @@ def test_pack_unpack():
|
|
41
42
|
sign_bitx = torch.signbit(x)
|
42
43
|
sign_bitout = torch.signbit(unpacked)
|
43
44
|
assert torch.equal(sign_bitout, sign_bitx)
|
45
|
+
|
46
|
+
|
47
|
+
def test_pack_unpack_odd_dims():
|
48
|
+
x = torch.Tensor(
|
49
|
+
[
|
50
|
+
[-0.5000, -6.0000, -0.5000, -1.5000, -1.0000, 6.0000, 0.0000],
|
51
|
+
[-1.0000, -6.0000, -0.5000, -0.0000, 0.5000, 0.5000, -0.0000],
|
52
|
+
[1.5000, 6.0000, -0.0000, -0.5000, 1.0000, 1.0000, -0.0000],
|
53
|
+
]
|
54
|
+
)
|
55
|
+
|
56
|
+
with pytest.raises((ValueError, torch._dynamo.exc.Unsupported)):
|
57
|
+
_ = pack_fp4_to_uint8(x)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/.github/workflows/test.yml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/test_registry.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/tests/testing_utils.py
RENAMED
File without changes
|
{compressed_tensors-0.11.1a20250908 → compressed_tensors-0.11.1a20250909}/utils/copyright.py
RENAMED
File without changes
|