timdettmers/bitsandbytes

Доступные LLM с помощью k-битной квантования для PyTorch.

Инструменты⭐ 8 486Pythonпоследний релиз: 0.50.2
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

Библиотека для PyTorch, обеспечивающая доступ к большим языковым моделям (LLM) через k-битное квантование.

Зачем нужен

Инструмент радикально снижает потребление памяти при инференсе и обучении моделей без потери качества. Он позволяет запускать и дообучать LLM на оборудовании с ограниченными ресурсами, используя методы 8-битного и 4-битного квантования.

Что можно реализовать

  • Инференс больших языковых моделей с использованием метода LLM.int8() для сокращения памяти вдвое.
  • Дообучение (fine-tuning) LLM с помощью QLoRA, где модель квантуется до 4 бит, а обучаются только адаптационные веса.
  • Использование 8-битных оптимизаторов для тренировки моделей с сохранением точности 32-битных вычислений.
  • Запуск LLM на различных акселераторах: NVIDIA, AMD, Intel GPU и CPU.

Ключевые возможности

  • Поддержка 8-битных оптимизаторов с блочным квантованием.
  • Метод LLM.int8() (векторное квантование) для инференса без деградации производительности.
  • Технология QLoRA для эффективного обучения с 4-битным квантованием.
  • Широкая поддержка аппаратных платформ (Linux, Windows, macOS, CPU, GPU).

👤 Кому подойдёт: Разработчики и исследователи, работающие с PyTorch и нуждающиеся в оптимизации памяти для LLM.

Релизы

0.50.1minor
🕐 1 мес назад · релиз на GitHub ↗

Добавлена поддержка NVIDIA RTX Spark (Windows ARM64), AMD CDNA5 и улучшены эвристики GEMM для GB10.

  • Added: Добавлена поддержка NVIDIA RTX Spark для Windows на ARM64.
  • Added: Реализована поддержка AMD CDNA5 (например, MI455X).
  • Added: Улучшены эвристики диспетчеризации 4-bit GEMM для NVIDIA GB10.
  • Fixed: Исправлено усечение константы FP4 в Triton dequantize_fp4_tree.
  • Fixed: Устранена ошибка компиляции на последних версиях MSVC.
0.50.0majorbreaking
🕐 1 мес назад · релиз на GitHub ↗

Релиз 0.50.0: ускоренный 4-bit GEMM для CUDA/ROCm, стабильный ROCm, улучшенный Apple Silicon и новые CPU-оптимизаторы.

  • Added: Добавлены новые слитные ядра 4-bit GEMM для инференса на CUDA и ROCm, ускоряющие работу в 4 раза при малых батчах.
  • Added: Поддержка Apple Silicon (MPS) теперь работает со всеми 4-bit и LLM.int8() конфигурациями при наличии torch >= 2.9.
  • Added: Значительно ускорены операции квантования на CPU (x86-64 и ARM64) и добавлена поддержка Windows on ARM.
  • Added: Расширена поддержка оптимизаторов: добавлены CPU-оптимизаторы для 8-bit и поддержка LARS/LAMB для Intel XPU.
  • Breaking: Минимальная версия PyTorch повышена до 2.4, удалены устаревшие API и функции динамической квантования.