mrkeyoor.com_
Wed 21 Oct 20:05 UTC
AI Toolsevaluationupdated 21 Oct 2026

VoxCPM review

VoxCPM is OpenBMB's software for generating speech from text. Its README presents VoxCPM2 as the current model and documents voice design from written descriptions and cloning from reference recordings. Our sandbox evaluated repository installation and build behavior, not generated speech.

+254stars / 7d
Verdict

The VoxCPM installation occupied 6,431 MB and the source build passed, but pytest stopped during collection without running tests. Consider a VoxCPM2 trial if voice design or cloning fits your application. Before selecting it for deployment, load the model and generate representative speech in the intended image and device configuration, then listen against the input text.

We ran it

Lab card: what happened when we ran VoxCPMScreenshot of VoxCPM (github.com/OpenBMB/VoxCPM)
Install✓ · 78s199 packages · 6431 MB
Build✓ · 2s
Tests✗ · 11s0 passed · 0 failed of 0 (pytest)
Known vulns2(pip-audit)
Repo82 files~12,930 lines of source · 6 MB · 1 CI workflows · tests dir

Answers from our run

Does VoxCPM build from source?

Dependencies installed in 78 seconds (199 packages), and the build succeeded in 2 seconds. We cloned commit cce58a5 into a clean Debian container with 3 CPUs and no project-specific setup.

Do VoxCPM's tests pass?

No. The project's own test command finished in 11 seconds and reported 0 passed, 0 failed (pytest).

Does VoxCPM have known vulnerabilities in its dependencies?

pip-audit flagged 2 known advisories in the dependency tree at the time of our run.

Who should not use VoxCPM?

Teams that require Python 3.13 or newer without maintaining another runtime: the documented requirement is Python below 3.13.

What are the alternatives to VoxCPM?

Pocket TTS, F5-TTS. The VoxCPM installation occupied 6,431 MB and the source build passed, but pytest stopped during collection without running tests.

SetupN/AN/A. Installation and source build completed, but the run did not establish a usable speech setup. Model loading, weight access, device configuration, and the first generation call remain unverified, so a numerical setup rating would overstate the evidence.
DocsN/AN/A. The supplied README covers generation, device choices, serving, and fine-tuning. We can describe that coverage, but the documented workflows were not reproduced. Their completeness and operational reliability remain unassessed.
CommunityN/AN/A. The packet records an October push and an October issue report. These establish dated activity, but do not establish adoption, maintainer response quality, or resolution times. They cannot support a numerical community rating.
MaturityN/AN/A. The source build passed while pytest stopped during collection without running tests. The supplied run contains no speech-quality, serving, or deployment-stability results. A numerical maturity rating would imply evidence this review does not have.

Discussed on

  1. hnVoxCPM: Tokenizer-Free TTS for Context-Aware Speech Generation and Voice Cloning3 points

Who it’s for

Developers evaluating voice design or reference-audio cloning who can listen to representative output.
Speech teams prepared to test model loading and generation on their intended device.
Researchers considering the documented full fine-tuning and LoRA workflows.

Who it’s NOT for

Teams that require Python 3.13 or newer without maintaining another runtime: the documented requirement is Python below 3.13.
Operators who need this review to establish concurrent serving readiness: no serving engine was exercised.
Teams that cannot evaluate generated speech before deployment: this run contains no pronunciation, voice-similarity, or generation-speed results.

Setup reality

Our sandbox installed VoxCPM commit cce58a5 in 78 seconds on 2026-10-12, recording 199 dependencies and 6,431 MB on disk. The source build passed in 2 seconds. Pytest failed with exit code 3 after 11 seconds, reporting 0 passed and 0 failed out of 0 tests. During collection, scripts/test_pick_runtime_dtype.py called sys.exit(0 if passed == total else 1), and pytest reported SystemExit: 0 as an internal error. No pytest tests ran. A separate script summary in the log does not establish a passing pytest suite.

Pip-audit reported 2 known vulnerabilities. The supplied results do not identify the affected packages, severity, or fixes. The checkout occupied 6 MB across 82 files and roughly 12,930 source lines; the scan found one CI workflow file, a tests directory, and no Dockerfile.

The README shows model loading through from_pretrained and through a local model directory. These documentation examples were not executed in the supplied run. They show no hosted speech API credential, but access to model files, storage requirements, and device configuration still need checking. The README directs concurrent serving to separate projects.

The main installation requirements specify Python at least 3.10 and below 3.13, PyTorch at least 2.5.0, and CUDA at least 12.0. The Web demo also documents CPU and MPS device choices. Our recorded sandbox configuration was 3 CPUs, 8 GB RAM, and image label ghcr.io/astral-sh/uv:python3.12-bookworm. That label does not establish the actual runtime or operating-system versions. Installation and a successful source build leave model loading, speech quality, and serving readiness unverified.

A source build leaves speech generation unverified

VoxCPM installed and built in our sandbox, but the run did not load model weights or generate speech. Developers considering VoxCPM2 for voice design still need a listening trial on the device and deployment image they intend to use.

The VoxCPM README documents voice design by placing a description in parentheses before the text to synthesize. It also documents reference-audio cloning, style instructions, continuation with a reference transcript, streaming output, and 30 supported languages. These are project-documented capabilities. Our run measured none of their output quality or performance.

The README warns that Voice Design and Controllable Voice Cloning results can vary between runs. A trial should therefore assess whether the requested voice and style are consistent enough for the application, as well as whether the output says the supplied text correctly.

What happened when we ran it

Our sandbox installed VoxCPM commit cce58a5 in 78 seconds on 2026-10-12, recording 199 dependencies and 6,431 MB on disk. The source build passed in 2 seconds. The checkout occupied 6 MB across 82 files and roughly 12,930 source lines. That checkout size is much smaller than the installed environment observed in this run.

Pytest failed with exit code 3 after 11 seconds, reporting 0 passed and 0 failed out of 0 tests. During collection, it imported scripts/test_pick_runtime_dtype.py. The log shows that script calling sys.exit(0 if passed == total else 1), followed by SystemExit: 0 and an internal error. No pytest tests ran. The separate script summary in the log is not evidence that the pytest suite passed.

Pip-audit reported 2 known vulnerabilities. The supplied results do not identify affected packages, severity, or fixes, so exploitability cannot be assessed here. The repository scan found one CI workflow file and a tests directory, with no Dockerfile.

The recorded sandbox configuration was 3 CPUs, 8 GB RAM, and image label ghcr.io/astral-sh/uv:python3.12-bookworm. The image label does not establish actual runtime or operating-system versions. These findings describe repository setup, not a working model-serving deployment.

Model loading and serving need separate checks

The README shows loading openbmb/VoxCPM2 through from_pretrained and downloading weights from ModelScope for local loading. These are unexecuted documentation examples in this review. Neither example shows a hosted speech API credential. Model-file access, storage, and the intended device configuration still need checking.

For concurrent serving, the README points to Nano-vLLM-VoxCPM and vLLM-Omni. For deployment without Python, it describes a separate C++ implementation and GGUF weights. We did not exercise those projects. Our 6,431 MB installation measurement is not a storage budget for a complete speech service.

The main installation requirements specify Python at least 3.10 and below 3.13, PyTorch at least 2.5.0, and CUDA at least 12.0. The Web demo documents CPU, MPS, and CUDA device choices. Those documented choices do not establish that a particular deployment configuration works.

Issue 419 reports a compiler failure during generation

Issue 419 was opened on October 16, 2026. The reporter describes optimized generation failing on a machine with Triton but no C compiler. The reported environment uses voxcpm 2.0.3. According to the report, optimization setup returns without warning and the first generation call fails; model loading can encounter this during its warm-up generation.

The reporter lists installing a compiler or passing optimize=False as workarounds. We have not reproduced either. This is a user-submitted execution report, separate from our pytest collection failure. The supplied test log does not connect that collection failure to a missing compiler. Include model loading and the first generation call in acceptance checks for a minimal deployment image.

Release notes describe changes, not our test results

The release shown in the packet is 2.0.3, published on May 11, 2026. Its notes document runtime device handling, streaming changes, training-manifest validation, and safer legacy LoRA loading. Those changes do not establish that our later checkout passes its tests or that deployment will be stable on a particular device.

Supplied repository metadata records a push on October 8, 2026. Together with the October issue report, this establishes dated activity. It does not establish maintainer response quality or resolution times. Numerical product ratings remain unassessed because the packet does not support them.

Choose alternatives by the constraint you need to resolve

Pocket TTS is designed for CPU speech generation. Evaluate it when CPU execution is your main constraint. This review provides no comparison of its voices or speed against VoxCPM2.

F5-TTS documents inference and training workflows. Its code is MIT-licensed, while its pretrained models use CC-BY-NC. Check that distinction against the intended use before selecting those weights.

For a VoxCPM2 trial, save a voice description and representative text, including names and numbers your application needs to pronounce. Generate speech in the intended environment and listen against the text before adding a serving engine. Retain the configuration and output so the team can judge pronunciation and voice consistency.

Alternatives

ProjectWhat it isPick it when
Pocket TTS gh↗Kyutai's text-to-speech application is designed to run on CPUs.Evaluate it when CPU execution is your main requirement. Its stated design goal is not a measured speed or speech-quality advantage over VoxCPM2 in this review.
F5-TTSA speech project with inference and training workflows, MIT-licensed code, and CC-BY-NC pretrained models.Evaluate it when its training workflow fits your experiment and the pretrained-model license fits your intended use. We did not compare its generated speech with VoxCPM2.

Sources

  1. VoxCPM README
  2. Compiler failure report, issue 419
  3. Pocket TTS README
  4. F5-TTS README and licensing
  5. VoxCPM repository metadata
  6. VoxCPM release 2.0.3

More ai tools reviews

Beav · PilotDeck · rakazo · BeefTV · OpenDots · reelmimic · the whole board →