compressed-tensors 0.12.3a20251110__tar.gz → 0.12.3a20251114__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.
Files changed (158) hide show
  1. {compressed_tensors-0.12.3a20251110/src/compressed_tensors.egg-info → compressed_tensors-0.12.3a20251114}/PKG-INFO +1 -1
  2. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/utils/helpers.py +40 -1
  3. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/version.py +1 -1
  4. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114/src/compressed_tensors.egg-info}/PKG-INFO +1 -1
  5. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_utils/test_helpers.py +18 -0
  6. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/.github/.gitkeep +0 -0
  7. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/.github/actions/test/action.yml +0 -0
  8. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/.github/scripts/step-status +0 -0
  9. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/.github/workflows/quality-check.yaml +0 -0
  10. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/.github/workflows/test-check.yaml +0 -0
  11. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/.gitignore +0 -0
  12. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/LICENSE +0 -0
  13. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/Makefile +0 -0
  14. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/README.md +0 -0
  15. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/examples/bit_packing/ex_quantize_and_pack.py +0 -0
  16. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/examples/bit_packing/int4_config.json +0 -0
  17. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/examples/bitmask_compression.ipynb +0 -0
  18. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/examples/llama_1.1b/ex_config_quantization.py +0 -0
  19. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/examples/llama_1.1b/ex_llmcompressor_quantization.py +0 -0
  20. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/examples/llama_1.1b/example_quant_config.json +0 -0
  21. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/examples/llama_1.1b/example_quant_recipe.yaml +0 -0
  22. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/examples/quantize_and_pack_int4.ipynb +0 -0
  23. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/pyproject.toml +0 -0
  24. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/setup.cfg +0 -0
  25. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/setup.py +0 -0
  26. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/__init__.py +0 -0
  27. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/README.md +0 -0
  28. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/__init__.py +0 -0
  29. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/base.py +0 -0
  30. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/__init__.py +0 -0
  31. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/base.py +0 -0
  32. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/helpers.py +0 -0
  33. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/model_compressors/__init__.py +0 -0
  34. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/model_compressors/model_compressor.py +0 -0
  35. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/quantized_compressors/__init__.py +0 -0
  36. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/quantized_compressors/base.py +0 -0
  37. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/quantized_compressors/fp4_quantized.py +0 -0
  38. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/quantized_compressors/naive_quantized.py +0 -0
  39. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/quantized_compressors/pack_quantized.py +0 -0
  40. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/sparse_compressors/__init__.py +0 -0
  41. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/sparse_compressors/base.py +0 -0
  42. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/sparse_compressors/dense.py +0 -0
  43. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/sparse_compressors/sparse_24_bitmask.py +0 -0
  44. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/sparse_compressors/sparse_bitmask.py +0 -0
  45. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/sparse_quantized_compressors/__init__.py +0 -0
  46. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/compressors/sparse_quantized_compressors/marlin_24.py +0 -0
  47. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/config/__init__.py +0 -0
  48. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/config/base.py +0 -0
  49. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/config/dense.py +0 -0
  50. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/config/format.py +0 -0
  51. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/config/sparse_24_bitmask.py +0 -0
  52. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/config/sparse_bitmask.py +0 -0
  53. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/linear/__init__.py +0 -0
  54. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/linear/compressed_linear.py +0 -0
  55. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/logger.py +0 -0
  56. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/modeling/__init__.py +0 -0
  57. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/modeling/attention.py +0 -0
  58. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/modeling/kvcache.py +0 -0
  59. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/__init__.py +0 -0
  60. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/lifecycle/__init__.py +0 -0
  61. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/lifecycle/apply.py +0 -0
  62. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/lifecycle/compressed.py +0 -0
  63. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/lifecycle/forward.py +0 -0
  64. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/lifecycle/helpers.py +0 -0
  65. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/lifecycle/initialize.py +0 -0
  66. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/quant_args.py +0 -0
  67. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/quant_config.py +0 -0
  68. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/quant_metadata.py +0 -0
  69. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/quant_scheme.py +0 -0
  70. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/utils/__init__.py +0 -0
  71. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/utils/helpers.py +0 -0
  72. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/quantization/utils/mxfp4_utils.py +0 -0
  73. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/registry/__init__.py +0 -0
  74. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/registry/registry.py +0 -0
  75. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/__init__.py +0 -0
  76. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/apply.py +0 -0
  77. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/factory/__init__.py +0 -0
  78. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/factory/base.py +0 -0
  79. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/factory/hadamard.py +0 -0
  80. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/factory/matrix_multiply.py +0 -0
  81. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/factory/random_hadamard.py +0 -0
  82. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/transform_args.py +0 -0
  83. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/transform_config.py +0 -0
  84. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/transform_scheme.py +0 -0
  85. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/utils/__init__.py +0 -0
  86. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/utils/hadamard.py +0 -0
  87. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/utils/hadamards.safetensors +0 -0
  88. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/transform/utils/matrix.py +0 -0
  89. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/utils/__init__.py +0 -0
  90. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/utils/internal.py +0 -0
  91. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/utils/match.py +0 -0
  92. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/utils/offload.py +0 -0
  93. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/utils/permutations_24.py +0 -0
  94. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/utils/safetensors_load.py +0 -0
  95. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/utils/semi_structured_conversions.py +0 -0
  96. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors/utils/type.py +0 -0
  97. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors.egg-info/SOURCES.txt +0 -0
  98. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors.egg-info/dependency_links.txt +0 -0
  99. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors.egg-info/requires.txt +0 -0
  100. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/src/compressed_tensors.egg-info/top_level.txt +0 -0
  101. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/__init__.py +0 -0
  102. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/conftest.py +0 -0
  103. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/mock_observer.py +0 -0
  104. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/__init__.py +0 -0
  105. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/model_compressors/__init__.py +0 -0
  106. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/model_compressors/test_model_compressor.py +0 -0
  107. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/quantized_compressors/__init__.py +0 -0
  108. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/quantized_compressors/test_fp4_quant.py +0 -0
  109. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/quantized_compressors/test_fp8_quant.py +0 -0
  110. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/quantized_compressors/test_int_quant.py +0 -0
  111. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/quantized_compressors/test_pack_quant.py +0 -0
  112. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/quantized_compressors/test_packed_asym_decompression.py +0 -0
  113. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/sparse_compressors/__init__.py +0 -0
  114. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/sparse_compressors/test_bitmask.py +0 -0
  115. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/sparse_compressors/test_sparse_24_bitmask.py +0 -0
  116. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/sparse_quantized_compressors/__init__.py +0 -0
  117. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_compressors/sparse_quantized_compressors/test_marlin_24.py +0 -0
  118. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_configs/__init__.py +0 -0
  119. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_configs/test_base.py +0 -0
  120. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_configs/test_infer_quant.py +0 -0
  121. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_examples/test_bitmask_compression_ipynb.py +0 -0
  122. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_linear/__init__.py +0 -0
  123. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_linear/test_compressed_linear.py +0 -0
  124. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_modeling/test_attention_and_cache.py +0 -0
  125. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/__init__.py +0 -0
  126. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/lifecycle/__init__.py +0 -0
  127. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/lifecycle/conftest.py +0 -0
  128. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/lifecycle/test_apply.py +0 -0
  129. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/lifecycle/test_dynamic_lifecycle.py +0 -0
  130. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/lifecycle/test_enabled.py +0 -0
  131. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/lifecycle/test_forward.py +0 -0
  132. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/lifecycle/test_initialize.py +0 -0
  133. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/lifecycle/test_lifecycle.py +0 -0
  134. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/lifecycle/test_static_lifecycle.py +0 -0
  135. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/test_configs/__init__.py +0 -0
  136. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/test_configs/test_bit_depths.py +0 -0
  137. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/test_configs/test_strategies.py +0 -0
  138. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/test_quant_args.py +0 -0
  139. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/test_quant_config.py +0 -0
  140. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/test_quant_scheme.py +0 -0
  141. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/test_utils/test_helpers.py +0 -0
  142. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_quantization/test_utils/test_mxfp4_utils.py +0 -0
  143. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_registry.py +0 -0
  144. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_transform/conftest.py +0 -0
  145. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_transform/factory/test_correctness.py +0 -0
  146. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_transform/factory/test_memory.py +0 -0
  147. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_transform/factory/test_serialization.py +0 -0
  148. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_transform/test_transform_args.py +0 -0
  149. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_transform/test_transform_config.py +0 -0
  150. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_transform/test_transform_scheme.py +0 -0
  151. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_transform/utils/test_hadamard.py +0 -0
  152. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_utils/__init__.py +0 -0
  153. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_utils/test_match.py +0 -0
  154. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_utils/test_offload.py +0 -0
  155. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_utils/test_safetensors_load.py +0 -0
  156. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/test_utils/test_type.py +0 -0
  157. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/tests/testing_utils.py +0 -0
  158. {compressed_tensors-0.12.3a20251110 → compressed_tensors-0.12.3a20251114}/utils/copyright.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: compressed-tensors
3
- Version: 0.12.3a20251110
3
+ Version: 0.12.3a20251114
4
4
  Summary: Library for utilization of compressed safetensors of neural network models
5
5
  Home-page: https://github.com/vllm-project/compressed-tensors
6
6
  Author: Neuralmagic, Inc.
@@ -16,7 +16,17 @@ import contextlib
16
16
  import warnings
17
17
  from functools import wraps
18
18
  from types import MappingProxyType
19
- from typing import TYPE_CHECKING, Any, Callable, Dict, List, Mapping, Optional, TypeVar
19
+ from typing import (
20
+ TYPE_CHECKING,
21
+ Any,
22
+ Callable,
23
+ Dict,
24
+ Iterable,
25
+ List,
26
+ Mapping,
27
+ Optional,
28
+ TypeVar,
29
+ )
20
30
 
21
31
  import numpy
22
32
  import torch
@@ -44,6 +54,7 @@ __all__ = [
44
54
  "pack_bitmasks",
45
55
  "unpack_bitmasks",
46
56
  "patch_attr",
57
+ "patch_attrs",
47
58
  "ParameterizedDefaultDict",
48
59
  "get_num_attn_heads",
49
60
  "get_num_kv_heads",
@@ -368,6 +379,34 @@ def patch_attr(base: object, attr: str, value: Any):
368
379
  delattr(base, attr)
369
380
 
370
381
 
382
+ @contextlib.contextmanager
383
+ def patch_attrs(bases: Iterable[Any], attr: str, values: Iterable[Any]):
384
+ """
385
+ Same as `patch_attr` but for a list of objects to patch
386
+ Patch attribute for a list of objects with list of values.
387
+ Original values are restored upon exit
388
+
389
+ :param bases: objects which has the attribute to patch
390
+ :param attr: name of the the attribute to patch
391
+ :param values: used to replace original values. Must be same
392
+ length as bases
393
+
394
+ Usage:
395
+ >>> from types import SimpleNamespace
396
+ >>> obj1 = SimpleNamespace()
397
+ >>> obj2 = SimpleNamespace()
398
+ >>> with patch_attr([obj1, obj2], "attribute", ["value1", "value2"]):
399
+ ... assert obj1.attribute == "value1"
400
+ ... assert obj2.attribute == "value2"
401
+ >>> assert not hasattr(obj1, "attribute")
402
+ >>> assert not hasattr(obj2, "attribute")
403
+ """
404
+ with contextlib.ExitStack() as stack:
405
+ for base, value in zip(bases, values):
406
+ stack.enter_context(patch_attr(base, attr, value))
407
+ yield
408
+
409
+
371
410
  class ParameterizedDefaultDict(dict):
372
411
  """
373
412
  Similar to `collections.DefaultDict`, but upon fetching a key which is missing,
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '0.12.3.a20251110'
20
+ __version__ = version = '0.12.3.a20251114'
21
21
  __version_tuple__ = version_tuple = (0, 12, 3)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: compressed-tensors
3
- Version: 0.12.3a20251110
3
+ Version: 0.12.3a20251114
4
4
  Summary: Library for utilization of compressed safetensors of neural network models
5
5
  Home-page: https://github.com/vllm-project/compressed-tensors
6
6
  Author: Neuralmagic, Inc.
@@ -21,6 +21,7 @@ from compressed_tensors import (
21
21
  ParameterizedDefaultDict,
22
22
  load_compressed,
23
23
  patch_attr,
24
+ patch_attrs,
24
25
  save_compressed,
25
26
  save_compressed_model,
26
27
  )
@@ -176,6 +177,23 @@ def test_patch_attr():
176
177
  assert not hasattr(obj, "attribute")
177
178
 
178
179
 
180
+ def test_patch_attrs():
181
+ num_objs = 4
182
+ objs = [SimpleNamespace() for _ in range(num_objs)]
183
+ for idx, obj in enumerate(objs):
184
+ if idx % 2 == 0:
185
+ obj.attribute = f"original_{idx}"
186
+ with patch_attrs(objs, "attribute", [f"patched_{idx}" for idx in range(num_objs)]):
187
+ for idx, obj in enumerate(objs):
188
+ assert obj.attribute == f"patched_{idx}"
189
+ obj.attribute = "modified"
190
+ for idx, obj in enumerate(objs):
191
+ if idx % 2 == 0:
192
+ assert obj.attribute == f"original_{idx}"
193
+ else:
194
+ assert not hasattr(obj, "attribute")
195
+
196
+
179
197
  def test_parameterized_default_dict():
180
198
  def add_one(value):
181
199
  return value + 1