ITADN

Add riscv64 (linux_riscv64) wheel to PyPI releases

#2138Opengounthar 创建于 2026-03-11
G
gountharcommented
## Add `linux_riscv64` wheel to PyPI releases ### Summary `pip install llama-cpp-python` on riscv64 Linux currently requires building from source (~15 min on a 1.6 GHz RISC-V SoC). Adding `linux_riscv64` to the wheel build matrix would give riscv64 users a prebuilt wheel. ### Evidence | | | |---|---| | **Tested wheel** | [`llama_cpp_python-0.3.16-cp313-cp313-linux_riscv64.whl`](https://github.com/gounthar/riscv64-python-wheels/releases/download/v2026.03.11-cp313/llama_cpp_python-0.3.16-cp313-cp313-linux_riscv64.whl) | | **Hardware** | BananaPi F3 (SpacemiT K1, rv64imafdcv, 8 cores @ 1.6 GHz, 16 GB RAM) | | **Python** | 3.13 (CPython) | | **Build system** | cibuildwheel (scikit-build-core + CMake) | | **Build time** | ~15 min (native, on hardware) | The wheel imports and passes basic smoke tests on riscv64 Linux. ### Suggested CI change **Workflow**: `.github/workflows/build-and-release.yaml` Add a new job following the existing arm64 pattern: ```yaml build_wheels_riscv64: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: submodules: recursive - uses: docker/setup-qemu-action@v3 with: platforms: linux/riscv64 - uses: pypa/cibuildwheel@v2.22.0 env: CIBW_ARCHS: riscv64 CIBW_SKIP: '*musllinux* pp*' CMAKE_ARGS: >- -DCMAKE_CROSSCOMPILING=ON -DGGML_RISCV=ON ``` Critical: `-DGGML_RISCV=ON` enables the RISC-V SIMD (RVV) path in llama.cpp. ### Ecosystem context - `manylinux_2_28_riscv64` images are available on `quay.io/pypa/` (landed in pypa/manylinux, 2025) - cibuildwheel 3.x supports riscv64 via QEMU emulation - auditwheel supports riscv64 platform tags - maturin-action supports `riscv64gc-unknown-linux-gnu` cross-compilation - Packages already shipping riscv64 wheels on PyPI: aiohttp, yarl, regex, markupsafe, charset-normalizer, rpds-py, multidict, propcache, watchfiles, rignore, setproctitle - RISC-V hardware is shipping: SiFive HiFive, SpacemiT K1/K3, Sophgo SG2044 (64-core) ### Our temporary index While upstream support is pending, we maintain a [PEP 503 index](https://gounthar.github.io/riscv64-python-wheels/simple/) with 50+ riscv64 wheels for the Python ML/AI stack, built natively on RISC-V hardware. Tracking repo: https://github.com/gounthar/riscv64-python-wheels
0 条评论