You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Add overview figure, ArXiv citation, and quick-start usage to README
- Fix pre-process and DBF docs to match v1.1.0 API signatures
- Add LPCD documentation
See merge request onecomp/onecomp-lab!57
Copy file name to clipboardExpand all lines: README.md
+26-1Lines changed: 26 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,14 +2,39 @@
2
2
3
3
Fujitsu One Compression (OneComp) is a Python package for LLM compression.
4
4
5
+
<palign="center">
6
+
<imgsrc="figs/onecomp.gif"alt="OneComp" />
7
+
</p>
8
+
9
+
## ⚡ Just one line.
10
+
11
+
```bash
12
+
onecomp <generative AI>
13
+
```
14
+
15
+
**That's all you need.** OneComp detects your GPU VRAM, picks the best bit-width per layer, quantizes with error propagation, evaluates, and saves — fully automatic.
Full documentation is available at **[https://FujitsuResearch.github.io/OneCompression/](https://FujitsuResearch.github.io/OneCompression/)**.
8
33
9
34
## 📦 Features
10
35
11
36
-**Quantization Error Propagation (QEP)**: A post-training quantization method that corrects quantization errors by propagating them to subsequent layers, improving the accuracy of quantized LLMs. See [Arai & Ichikawa, NeurIPS 2025](https://openreview.net/forum?id=a3l3K9khbL) for details. The original reference implementation is available at [FujitsuResearch/qep](https://github.com/FujitsuResearch/qep).
12
-
-**Layer-Projected Coordinate Descent (LPCD)**: A unified PTQ framework that extends layer-wise quantization to arbitrary submodules by optimising relaxed objectives and projecting the solutions with layer-wise quantizers. See [Ichikawa et al., 2025](https://arxiv.org/abs/2512.01546) for details.
37
+
-**Layer-Projected Coordinate Descent (LPCD)**: A unified Post Training Quantization (PTQ) framework that extends layer-wise quantization to arbitrary submodules by optimising relaxed objectives and projecting the solutions with layer-wise quantizers. See [Ichikawa et al., 2025](https://arxiv.org/abs/2512.01546) for details.
13
38
-**vLLM Plugin Integration**: Serve OneComp-quantized models with [vLLM](https://docs.vllm.ai/) via built-in plugins for DBF and Mixed-GPTQ quantization methods. Pair with [Open WebUI](https://github.com/open-webui/open-webui) for a ChatGPT-like chat experience on your local machine.
14
39
-**AutoBit**: Mixed-precision quantization with ILP-based bitwidth assignment. Automatically estimates the target bitwidth from available VRAM and assigns per-layer bitwidths to minimize quantization error under the memory budget.
15
40
-**JointQ**: Joint quantization method that optimizes weight assignments and scale parameters simultaneously for improved quantization accuracy. Supports group-wise quantization (e.g., 4-bit, groupsize=128).
Copy file name to clipboardExpand all lines: docs/index.md
+37-6Lines changed: 37 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,17 +2,45 @@
2
2
3
3
**Open-source Python library for post-training quantization of Large Language Models**
4
4
5
+
<palign="center">
6
+
<imgsrc="../figs/onecomp.gif"alt="OneComp" />
7
+
</p>
8
+
5
9
---
6
10
7
11
Fujitsu One Compression (OneComp) is an open-source Python library for post-training quantization of Large Language Models (LLMs).
8
12
It implements state-of-the-art quantization algorithms including GPTQ, DBF, RTN, and the
9
13
research methods **Quantization Error Propagation (QEP)** and
10
14
**Layer-Projected Coordinate Descent (LPCD)**.
11
15
16
+
## Just one line.
17
+
18
+
```bash
19
+
onecomp <generative AI>
20
+
```
21
+
22
+
**That's all you need.** OneComp detects your GPU VRAM, picks the best bit-width per layer, quantizes with error propagation, evaluates, and saves — fully automatic.
For full control over each step, see the [step-by-step workflow](user-guide/basic-usage.md#detailed-workflow).
39
+
12
40
## Key Features
13
41
14
42
-**Quantization Error Propagation (QEP)** -- A post-training quantization method that corrects quantization errors by propagating them to subsequent layers, improving the accuracy of quantized LLMs. See [Arai & Ichikawa, NeurIPS 2025](https://openreview.net/forum?id=a3l3K9khbL) for details.
15
-
-**Layer-Projected Coordinate Descent (LPCD)** -- A unified PTQ framework that extends layer-wise quantization to arbitrary submodules by optimising relaxed objectives and projecting the solutions with layer-wise quantizers. See [Ichikawa et al., 2025](https://arxiv.org/abs/2512.01546) for details.
43
+
-**Layer-Projected Coordinate Descent (LPCD)** -- A unified Post Training Quantization (PTQ) framework that extends layer-wise quantization to arbitrary submodules by optimising relaxed objectives and projecting the solutions with layer-wise quantizers. See [Ichikawa et al., 2025](https://arxiv.org/abs/2512.01546) for details.
16
44
-**vLLM Plugin Integration** -- Serve OneComp-quantized models with [vLLM](https://docs.vllm.ai/) via built-in plugins for DBF and Mixed-GPTQ quantization methods. Pair with [Open WebUI](https://github.com/open-webui/open-webui) for a ChatGPT-like chat experience on your local machine. See the [setup guide](user-guide/vllm-inference.md#3-chat-with-open-webui-optional).
17
45
-**AutoBit** -- Mixed-precision quantization with ILP-based bitwidth assignment. Automatically estimates the target bitwidth from available VRAM and assigns per-layer bitwidths to minimize quantization error under the memory budget.
18
46
-**JointQ** -- Joint quantization method that optimizes weight assignments and scale parameters simultaneously for improved quantization accuracy. Supports group-wise quantization (e.g., 4-bit, groupsize=128).
@@ -91,11 +119,14 @@ If you use OneComp in your research, please cite our paper:
title={OneComp: One-Line Revolution for Generative AI Model Compression},
124
+
author={Yuma Ichikawa and Keiji Kimura and Akihiro Yoshida and Yudai Fujimoto and Hiroki Tokura and Yamato Arai and Yoshiyuki Ishii and Yusei Kawakami and Genki Shikada and Achille Jacquemond and Yoshihiko Fujisawa and Katsuki Fujisawa and Takumi Honda and Akira Sakai},
|`seed`| Seed for rotation init and calibration data |`0`|
87
+
|`calibration_config`| Calibration data configuration. See [`CalibrationConfig`](configuration.md#calibrationconfig). When `None`, a default `CalibrationConfig()` is used. |`None`|
88
+
|`seed`| Seed for rotation matrix initialisation. The calibration-data seed is controlled by `calibration_config.seed`. |`0`|
68
89
69
90
!!! note "Input validation"
70
91
`prepare_rotated_model` validates all parameters on entry. Invalid values for
71
-
`rotation_mode`, `scaling_mode`, `calibration_strategy`, or out-of-range numeric
0 commit comments