"server/vscode:/vscode.git/clone" did not exist on "e9f03f822a766f071620457bd977f7987e65b20e"
  1. 30 Sep, 2025 1 commit
  2. 16 Sep, 2025 1 commit
  3. 03 Sep, 2025 1 commit
  4. 02 Sep, 2025 1 commit
  5. 25 Aug, 2025 1 commit
  6. 11 Aug, 2025 2 commits
  7. 01 Jul, 2025 1 commit
    • Michał Górny's avatar
      Automatically call CMake as part of PEP 517 build (#1512) · ed9c8fca
      Michał Górny authored
      * Automatically call CMake as part of PEP 517 build
      
      Call CMake and build the CPU extension when invoking the build
      via a PEP 517 backend, to ensure that at least some extension is built
      when users are building from source.  This improves consistency with
      other Python packages, and reduces the risk of accidents.
      
      We are using `scikit-build-core` setuptools plugin to take care of CMake
      dependencies and call into CMake.  However, we need to modify
      the `build_py` command to ensure that CMake is called prior to
      the setuptools command, as otherwise the newly built shared library
      won't be picked up by `build_py`.
      
      Since setuptools is still responsible for collecting the Python package,
      it also collects all other shared libraries that were built earlier,
      for example via manual CMake calls as done in the CI pipeline.
      Furthermore, if the user does not have `scikit-build-core` installed
      and calls `setup.py` directly, we output a warning but continue working
      as before.
      
      The logic can be further extended in the future, for example to detect
      the best COMPUTE_BACKEND default.
      
      Fixes #1511
      
      * Include C sources and build files in source distribution
      
      * Fix formatting
      ed9c8fca
  8. 22 Apr, 2025 1 commit
    • Matthew Douglas's avatar
      Updates for device agnosticism (#1601) · 1088ec52
      Matthew Douglas authored
      * Include device support tags for transformers multi-backend compatability; add xpu() and cpu() to Params4bit
      
      * Make test suite more device-agnostic
      
      * Additional device agnostic tests
      
      * Additional device agnosticism for tests
      
      * Add BNB_TEST_DEVICE env var to manually select device for unit tests
      
      * Include device support tags for transformers multi-backend compatability; add xpu() and cpu() to Params4bit
      
      * Make test suite more device-agnostic
      
      * Additional device agnostic tests
      
      * Additional device agnosticism for tests
      
      * Add BNB_TEST_DEVICE env var to manually select device for unit tests
      
      * Small bugfix for int8 test
      
      * Exclude backward() from code coverage reports
      
      * Params4bit: don't try to quantize when moving to meta device
      1088ec52
  9. 27 Mar, 2025 2 commits
  10. 25 Mar, 2025 1 commit
    • Matthew Douglas's avatar
      PyTorch Custom Operator Integration (#1544) · e82f72b3
      Matthew Douglas authored
      
      
      * Sketch out first custom op registration
      
      * Add note
      
      * Initial int8 op registration
      
      * Cleanup some deprecated functions.
      
      * Int8 ops updates; tests
      
      * Implement 4bit quant/dequant ops
      
      * Fix nested quant
      
      * cleanup
      
      * Test improvements
      
      * Clean up and improve tests
      
      * Add higher level custom op for int8 matmul + dequant + bias
      
      * Add gemv 4bit custom op
      
      * Cleanup
      
      * Implement out kwarg overloads for custom ops
      
      * Update PyTorch minimum to 2.1
      
      * Deprecation updates
      
      * Deprecation updates
      
      * Cleanup; rename int8_linear_dequant -> int8_scaled_mm
      
      * Bump min pytorch to 2.2
      
      * cleanup
      
      * Test reorganization
      
      * Remove deprecated supports_igemmlt
      
      * More cleanup
      
      * Cleanup obsolete C++/CUDA code
      
      * Cleanup
      
      * Create 'default' backend for fallback op implementations; initial CPU nf4 work
      
      * Stub out for multi-platform
      
      * Fix serialization tests for torch>=2.6.0
      
      * Add example for torch.compile e2e inference
      
      * Test update
      
      ---------
      Co-authored-by: default avatarTitus von Koeller <9048635+Titus-von-Koeller@users.noreply.github.com>
      e82f72b3
  11. 25 Feb, 2025 1 commit
  12. 06 Feb, 2025 1 commit
  13. 28 Jan, 2025 1 commit
  14. 23 Jan, 2025 1 commit
  15. 14 Jan, 2025 1 commit
  16. 17 Dec, 2024 1 commit
  17. 05 Dec, 2024 1 commit
    • Matthew Douglas's avatar
      LLM.int8() Refactoring: Part 1 (#1401) · 81e6345d
      Matthew Douglas authored
      
      
      * Start of int8 refactor: remove col32/col_ampere/col_turing transforms in new igemmlt implementation
      
      * Fix unintended change
      
      * New naive mm_dequant kernel for row-major; cleanup
      
      * fix
      
      * int8 refactor: initial sparse decomp, cleanup
      
      * Int8 refactoring: remove separate NO_CUBLASLT build; more cleanup
      
      * int8: inference optimizations, some cleanup
      
      * int8: more tests passing, cleanup
      
      * int8 - more cleanup, most tests passing
      
      * int8: specify CUDA stream for int8 ops
      
      * perf: reduce overhead from getting cudaStream ptr
      
      * Mark some functions for deprecation.
      
      * int8 sparse decomp: small perf improvement
      
      * update setup.py
      
      * Update bitsandbytes/autograd/_functions.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update bitsandbytes/functional.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update bitsandbytes/functional.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update bitsandbytes/research/autograd/_functions.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * int8 - perf improvement for sparse decomposition inference; deprecate get_tensor_stream() in favor of new private fn
      
      * int8 cleanup
      
      * Ignore ruff rule ISC001 (incompatible with formatter)
      
      * add comment
      
      * int8 more cleanup
      
      * Update bitsandbytes/functional.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * int8: rename / deprecate old fn signatures
      
      * Update bitsandbytes/functional.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * type annotation
      
      * format update
      
      * Update bitsandbytes/research/autograd/_functions.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * cleanup
      
      * Add comment to explain division optimization
      
      * more cleanup
      
      * Update bitsandbytes/functional.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update bitsandbytes/functional.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update bitsandbytes/functional.py
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * cleanup
      
      * Type annotations, cleanup
      
      * remove unused kernels; improved type annotations
      
      * small perf optimization for single-GPU systems
      
      * small perf optimization for single-GPU systems
      
      * update docstrings
      
      * Improve docs and tests
      
      * Update docstring
      
      * Update test
      
      * add benchmarking script
      
      * test cleanup: add deprecated marker, move benchmarks out
      
      * Add int8 dequant function; misc improvements
      
      * int8 matmul fallback for inner dims not divisible by 4
      
      * improve register usage of kInt8VectorQuant - especially for A100/H100
      
      * disable fail-fast for package build
      
      * maxwell compat
      
      * ptxas verbose
      
      * docs update
      
      * doc update
      
      * backward fix
      
      * Bugfix sparse decomp
      
      * Int8 fix for PEFT OLoRA init
      
      * Fix test for deprecated spmm_coo
      
      * test improvement
      
      * doc update
      
      * typo
      
      * doc cleanup
      
      * docs
      
      * add inference benchmark script
      
      * Add benchmarks, doc update
      
      ---------
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      81e6345d
  18. 19 Nov, 2024 1 commit
  19. 23 Oct, 2024 1 commit
  20. 13 Mar, 2024 1 commit
  21. 05 Feb, 2024 1 commit
    • Rickard's avatar
      Make native code portable and add GitHub workflow for building (#949) · 73d3e7b6
      Rickard authored
      
      
      * Make native code portable and add GitHub workflow for building
      
      * Removed deprecated Python versions
      
      * Update python-package.yml
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update python-package.yml
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update python-package.yml
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update python-package.yml
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update python-package.yml
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update python-package.yml
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update python-package.yml
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      
      * Update python-package.yml
      
      * Do not test on Python 3.13 until released
      
      * Update python-package.yml
      
      * Update python-package.yml
      
      * Update python-package.yml
      
      * Update python-package.yml
      
      * Refactor build stage
      
      * Fixed breaking actions change
      
      * Slim down Windows cuda
      
      * Create dependabot.yml
      
      * Bespoke local dev requirements.txt
      
      * Enable VS integration
      
      * Group Dependabot updates
      
      * Cleanup
      
      * Update python-package.yml
      
      * Reinstate file that was wrongly merged
      
      * Fixed regression caused by new version of download-artifact
      
      * Update python-package.yml
      
      * Update python-package.yml
      
      * Fix matrix
      
      * Update python-package.yml
      
      * Merge
      
      * Pipeline
      
      * Fixed conflict
      
      * Fixed conflict
      
      * Update CMakeLists.txt
      
      * Fixed merge error
      
      * cleanup
      
      * cleanup
      
      * Find CUDA
      
      * Fix
      
      * Fixing merge error from latest merge from main
      
      * Fix setup.py
      
      * Fixed typo in artifact name
      
      * Remove linker flags
      
      * Build nocublaslt versions
      
      * Fixed formatting
      
      * Fixed VS Code format on save
      
      * Ran format on save from VScode
      
      * Re-saved the json files using the new settings
      
      * Re-saved CMakeLists.txt to get formatting right
      
      * Add path filter
      
      * Formatting
      
      ---------
      Co-authored-by: default avatarAarni Koskela <akx@iki.fi>
      73d3e7b6
  22. 30 Jan, 2024 1 commit
    • Aarni Koskela's avatar
      Ruff fixes (#984) · 706ec24d
      Aarni Koskela authored
      
      
      * Adjust Ruff configuration
      
      * do not autofix always
      * be less strict around tests and benchmarks
      * adjust ignores for now
      
      * Ruff: autofix I and F401
      
      * Apply ruff autofixes
      
      * Fix RUF013 complaint
      
      * Fix mutable default in replace_linear
      
      * Don't use bare except
      
      * Wrap bitsandbytes.__main__ entrypoint in function; fix "sensible" typo
      
      * Fix ruff B008 (function call in arguments)
      
      * Add ruff noqas as suitable
      
      * Fix RUF005 (splat instead of concatenating)
      
      * Fix B018 (useless expression)
      
      * Add pre-commit configuration + GitHub Actions lint workflow
      
      * Fix unused `e` in bitsandbytes/__main__.py
      
      * fix merge conflict resolution error
      
      * run pre-commit hook
      
      ---------
      Co-authored-by: default avatarTitus <9048635+Titus-von-Koeller@users.noreply.github.com>
      706ec24d
  23. 29 Jan, 2024 1 commit
    • Aarni Koskela's avatar
      Fix some issues found by Mypy (#995) · a8c9dfa6
      Aarni Koskela authored
      * Fix erroneous type aliasing
      
      * Fix `Optional` typings (see PEP 484)
      
      * Add Mypy ignores
      
      * Fix Mypy complaints for method tables
      
      * Fix type for get_ptr
      
      * Fix various Mypy errors
      
      * Fix missed call to is_triton_available
      a8c9dfa6
  24. 03 Dec, 2023 1 commit
  25. 06 Oct, 2021 1 commit