Skip to content

whittle-org/whittle

Repository files navigation

Whittle Logo

Whittle 🪒🧠

Whittle Visualization

PyPI - Python Version unit-tests license PyPI version

Whittle is a Python library for compressing large language models (LLMs) by extracting sub-networks to balance performance and efficiency. It is based on LitGPT and allows to compress many state-of-the-art models.

  • Neural Architecture Search: Workflows for pre-training super-networks and multi-objective search to select sub-networks.
  • Structural Pruning: State-of-the-art approaches to pruning structural components of pre-trained LLMs.
  • Evaluation: Easy extraction of sub-networks checkpoint and evaluation using LM-Eval-Harness
  • Efficiency: Different metrics to estimate efficiency of sub-networks, such as latency, FLOPs, or energy consumption.

Installation

Whittle supports and is tested for python 3.9 to 3.12.

You can install whittle with:

pip install whittle

Install from source

Install whittle from source to get the most recent version:

git clone git@github.com:whittle-org/whittle.git
cd whittle
pip install -e .

Getting started with whittle

To explore and understand different functionalities of whittle checkout this colab notebook and examples/

Projects that use whittle

How to get involved

We more than happy for any code contribution. If you are interested in contribution to whittle, please read our contribution guide.

About

Python library to compress LitGPT models for resource efficient inference.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages