automatically quant GGUF models
Go to file
BuildTools 6070aac200
refactor: use localization keys for HF conversion
- reduce base class length
- reorganize English, French, and Simplified Chinese
2024-08-05 19:21:30 -07:00
.github ci: add formatting check 2024-08-04 21:04:21 -07:00
assets edit favicon 2024-08-04 16:04:04 -07:00
docs feat: support multiple quantization types 2024-08-05 12:11:08 -07:00
src refactor: use localization keys for HF conversion 2024-08-05 19:21:30 -07:00
.gitattributes chore: add .gitattributes 2024-08-04 18:52:14 -07:00
.gitignore feat(model): implement model sharding management 2024-08-05 11:26:29 -07:00
.pre-commit-config.yaml ci: remove crlf 2024-08-04 21:15:34 -07:00
CHANGELOG.md docs: update changelog to v1.4.3 2024-08-05 12:24:33 -07:00
CODE_OF_CONDUCT.md docs: add code of conduct 2024-08-05 11:47:18 -07:00
CONTRIBUTING.md docs: update pre commit instructions 2024-08-04 21:03:39 -07:00
LICENSE add details 2024-08-03 19:41:08 -07:00
README.md docs: update verification instructions and update to v1.5.0 prerel 2024-08-05 14:06:47 -07:00
SECURITY.md docs: Add SECURITY.md 2024-08-05 11:53:49 -07:00
build.bat edit favicon 2024-08-04 16:04:04 -07:00
build.sh build: add cross-platform build scripts 2024-08-04 19:04:02 -07:00
build_nfo.bat build: add cross-platform build scripts 2024-08-04 19:04:02 -07:00
build_nfo.sh build: add cross-platform build scripts 2024-08-04 19:04:02 -07:00
requirements.txt fix: Hide Base Model label when GGML type selected 2024-08-04 19:32:07 -07:00
run.bat modify backend check logic 2024-08-04 09:12:07 -07:00
run.sh feat(conversion): add HF to GGUF conversion + refactor localization 2024-08-05 13:29:30 -07:00

README.md

AutoGGUF-banner

AutoGGUF - automated GGUF model quantizer

GitHub release GitHub last commit CI/CD Status

Powered by llama.cpp GitHub top language Platform Compatibility GitHub license

GitHub stars GitHub forks GitHub repo size

Code Style: Black Issues PRs Welcome

AutoGGUF provides a graphical user interface for quantizing GGUF models using the llama.cpp library. It allows users to download different versions of llama.cpp, manage multiple backends, and perform quantization tasks with various options.

Features

  • Download and manage llama.cpp backends
  • Select and quantize GGUF models
  • Configure quantization parameters
  • Monitor system resources during quantization
  • Parallel quantization + imatrix generation
  • LoRA conversion and merging

Usage

Cross-platform

  1. Install dependencies:
    pip install -r requirements.txt
    
    or
    pip install PyQt6 requests psutil shutil numpy torch safetensors gguf
    
  2. Run the application:
    python src/main.py
    
    or use the run.bat script.

Windows

  1. Download the latest release
  2. Extract all files to a folder
  3. Run AutoGGUF.exe

Verifying Releases

Linux/macOS:

gpg --import AutoGGUF-v1.5.0-prerel.asc
gpg --verify AutoGGUF-v1.5.0-Windows-avx2-prerel.zip.sig AutoGGUF-v1.5.0-Windows-avx2-prerel.zip
sha256sum -c AutoGGUF-v1.5.0-prerel.sha256

Windows (PowerShell):

# Import the public key
gpg --import AutoGGUF-v1.5.0-prerel.asc

# Verify the signature
gpg --verify AutoGGUF-v1.5.0-Windows-avx2-prerel.zip.sig AutoGGUF-v1.5.0-Windows-avx2-prerel.zip

# Check SHA256
$fileHash = (Get-FileHash -Algorithm SHA256 AutoGGUF-v1.5.0-Windows-avx2-prerel.zip).Hash.ToLower()
$storedHash = (Get-Content AutoGGUF-v1.5.0-prerel.sha256 | Select-String AutoGGUF-v1.5.0-Windows-avx2-prerel.zip).Line.Split()[0]
if ($fileHash -eq $storedHash) { "SHA256 Match" } else { "SHA256 Mismatch" }

Release keys are identical to ones used for commiting.

Building

Cross-platform

cd src
pip install -U pyinstaller
pyinstaller main.py --onefile
cd dist/main
./main

Windows

build RELEASE | DEV

Find the executable in build/<type>/dist/AutoGGUF.exe.

Dependencies

  • PyQt6
  • psutil
  • shutil
  • numpy
  • torch
  • safetensors
  • gguf (bundled)

Localizations

View the list of supported languages at AutoGGUF/wiki/Installation#configuration (LLM translated, except for English).

To use a specific language, set the AUTOGGUF_LANGUAGE environment variable to one of the listed language codes.

Known Issues

  • Saving preset while quantizing causes UI thread crash (planned fix: remove this feature)
  • Cannot delete task while processing (planned fix: disallow deletion before cancelling or cancel automatically)

Planned Features

  • Actual progress bar tracking
  • Download safetensors from HF and convert to unquantized GGUF (added in v1.5.0 prerelease)
  • Perplexity testing
  • Time estimation for quantization

Troubleshooting

  • SSL module cannot be found error: Install OpenSSL or run from source using python src/main.py with the run.bat script (pip install requests)

Contributing

Fork the repo, make your changes, and ensure you have the latest commits when merging. Include a changelog of new features in your pull request description. Read CONTRIBUTING.md for more information.

User Interface

image

Stargazers

Star History Chart