Skip to content

BLD: fix CPU Docker image and add non-publishing manual builds - #5524

Merged
qinxuye merged 4 commits into
mainfrom
rls/cpu-docker-base
Sep 11, 2026
Merged

BLD: fix CPU Docker image and add non-publishing manual builds#5524
qinxuye merged 4 commits into
mainfrom
rls/cpu-docker-base

Conversation

@qinxuye

@qinxuye qinxuye commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Upgrade the CPU image from Miniconda 23.10.0-1 (Debian 11) to 24.11.1-0 (Debian 12 / Python 3.12). Debian 11's expired security repository metadata broke the v3.4.0 CPU image build.
  • Replace the CPU image's Linux-only onnxruntime-gpu==1.16.0 dependency with onnxruntime==1.30.0, which provides Python 3.12 CPU wheels. Assert CPU provider availability and CUDA provider absence during image construction.
  • Align text normalization dependencies on nemo_text_processing==1.1.0, WeTextProcessing==1.2.0, and pynini==2.1.6.post1. Require a binary Pynini distribution to avoid falling back to its unsupported legacy source build.
  • Add manual Docker workflow inputs: dry-run defaults to true and can select CPU/GPU/aarch64/all. Dry-runs skip Docker Hub login, publishing, latest tagging, and failure issue creation. Scheduled/tag publishing retains all-image behavior. Normalize branch-name slashes in image tags.

The final image retains Python 3.12; the intermediate Python 3.11 downgrade was removed.

Validation

  • Full Linux CPU image build succeeded at commit 142caacfc2e258e8afe3128e5552b9200fa988eb: https://github.com/xorbitsai/inference/actions/runs/34610480052
  • Dependency installation, frontend build, Xinference installation, ONNX Runtime provider assertions, and image export all passed.
  • Confirmed Docker Hub login, publishing, and latest tagging were skipped; no release image was published.
  • Local Python 3.12 ONNX CPU inference smoke test passed.
  • Linux x86_64/Python 3.12 text-normalization dependency resolution with binary-only Pynini passed.
  • Workflow actionlint, dry-run/publish shell-path checks, pre-commit, and git diff checks passed.

Full model inference and text-normalization runtime behavior have not been tested. GPU and ARM64 builds were not rerun for this branch.

Release note

This PR does not change the existing v3.4.0 tag. Rerunning that tag's old workflow will still use the old Dockerfile; publishing the fix requires a separate release decision after merge.

@XprobeBot XprobeBot added this to the v3.x milestone Sep 11, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the CPU Dockerfile and its model requirements. Specifically, it upgrades the base Miniconda image to version 24.11.1-0 (Debian 12), replaces platform-specific ONNX Runtime dependencies with a single CPU-only onnxruntime==1.30.0 package, and updates text processing dependencies (nemo_text_processing, WeTextProcessing, and pynini) to versions compatible with Python 3.12. Additionally, a post-installation check has been added to verify that only the CPU execution provider is available in ONNX Runtime. There are no review comments, so no feedback is provided.

@qinxuye
qinxuye requested a review from rogercloud September 11, 2026 16:16
@qinxuye
qinxuye merged commit 99868ea into main Sep 11, 2026
10 of 21 checks passed
@qinxuye
qinxuye deleted the rls/cpu-docker-base branch September 11, 2026 16:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants