Skip to content

Publish CUDA wheel variants on Hugging Face - #8

Merged
andimarafioti merged 1 commit into
mainfrom
hf-wheel-variants
Jun 26, 2026
Merged

Publish CUDA wheel variants on Hugging Face#8
andimarafioti merged 1 commit into
mainfrom
hf-wheel-variants

Conversation

@andimarafioti

Copy link
Copy Markdown
Owner

Summary

Add a Hugging Face wheel publishing path for CUDA-specific qwentts-cpp-python variants while keeping PyPI as the CUDA 12.8 default.

This PR adds:

  • CUDA 12.4 wheel validation artifacts in the existing PR wheel workflow.
  • A new Publish Hugging Face Wheels workflow that builds local-version CUDA wheels:
    • 0.2.0+cu124
    • 0.2.0+cu128
    • 0.2.0+cu130
  • Static --find-links HTML pages for each CUDA flavor.
  • An upload script that creates the public HF dataset repo if needed and uploads the prepared wheel tree using the HF_TOKEN repository secret.
  • README install instructions for PyPI and HF-hosted CUDA variants.

Why --find-links

PyTorch uses custom package indexes such as https://download.pytorch.org/whl/cu128. A plain Hugging Face repo is raw file hosting, not a PEP 503 directory index, so the reliable equivalent is a static HTML wheel page consumed by pip via --find-links:

pip install "qwentts-cpp-python==0.2.0+cu130" \
  -f https://huggingface.co/datasets/andimarafioti/qwentts-cpp-python-wheels/resolve/main/whl/cu130.html

Dependencies still resolve from PyPI normally.

CUDA matrix

  • CUDA 12.4: Ubuntu 22.04 CUDA repo, native sm_80, sm_86, sm_90, PTX sm_75.
  • CUDA 12.8: Ubuntu 24.04 CUDA repo, native sm_80, sm_86, sm_90, sm_120, PTX sm_75, sm_120 for HF wheels.
  • CUDA 13.0: Ubuntu 24.04 CUDA repo, native sm_80, sm_86, sm_90, sm_121, PTX sm_75.

The existing PyPI publish workflow remains unchanged and still publishes CUDA 12.8 wheels only.

Validation

  • Parsed all workflow YAML files with PyYAML.
  • Compiled the new helper scripts with py_compile.
  • Tested local-version rewriting on a temporary repo copy.
  • Tested HF wheel-index generation with temporary wheel filenames.
  • Confirmed CUDA 12.4 packages are available in NVIDIA's Ubuntu 22.04 x86_64 and sbsa repos, but not Ubuntu 24.04.
  • Ran package tests with uv run --with pytest pytest -q tests: 5 passed, 1 skipped.

Setup Needed

Add a repository secret named HF_TOKEN with write access to the target HF account/org. The workflow will create the public dataset repo andimarafioti/qwentts-cpp-python-wheels if it does not exist.

@andimarafioti
andimarafioti merged commit fcf53f3 into main Jun 26, 2026
8 checks passed
@andimarafioti
andimarafioti deleted the hf-wheel-variants branch June 26, 2026 08:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant