[codex] Add full Windows CUDA installer - #349
Conversation
7a69f13 to
063dd27
Compare
063dd27 to
72fe380
Compare
|
I did a light pass over this Windows CUDA installer / ASR backend PR at head What I checked in
I could not run From the code review side, the SenseVoice fallback path looks intentionally covered by the new tests: backend normalization, tag stripping, local Parakeet-vs-SenseVoice fallback selection, ASR model load locking, preload ordering, and reference-audio path normalization all have targeted test cases in |
|
I reproduced the current merge conflict against The conflict is narrow: The only conflict marker is in the final asr_backend=args.asr_backend,
preload=not args.no_preload,
preload_denoiser=args.preload_denoiser,
open_browser=not args.no_browser,I tested that disposable local resolution with: The upstream merge also brings in |
Summary
install.batthat creates/reuses.venv, installsuv, selects CUDA PyTorch/torchaudio automatically for NVIDIA GPUs, falls back to CPU wheels otherwise, installs.[timestamps,dev], creates runtime directories, downloads required models, and runs smoke checks.models\openbmb__VoxCPM2, plus local ModelScope denoiser and ASR model directories used by the web UI to avoid runtime network fetches where possible.nvidia/parakeet-tdt-0.6b-v3) tomodels\nvidia__parakeet-tdt-0.6b-v3by default ininstall.bat.app.py --asr-backend autonow uses that local Parakeet model on CUDA withlocal_files_only=True, and falls back to SenseVoice when Parakeet is not installed or CUDA is not selected.--no-preloadkeeps the old lazy-load behavior if needed.Processing: ASR backend/device/language line, transcribing progress messages, voice-prompt preparation, synthesising speech percentages from the actual model inference loop, and finalising/complete messages.Recognizing...forever.--preload-denoiseris used.pytestcollection and add focused app/denoiser coverage.Root Cause
Recognizing reference audio...placeholder.nvidia-smi, which misses some Windows NVIDIA setups where the adapter is visible butnvidia-smiis not on PATH.Validation
.\.venv\Scripts\python.exe -m py_compile app.py src\voxcpm\core.py src\voxcpm\model\voxcpm.py src\voxcpm\model\voxcpm2.py.\.venv\Scripts\python.exe -m black --check app.py tests\test_app.py src\voxcpm\core.py src\voxcpm\model\voxcpm.py src\voxcpm\model\voxcpm2.py.\.venv\Scripts\python.exe -m pytest->71 passed, 2 warningscmd /c install.bat --cuda --dry-run --no-smoke-checks-> selectedTorch: cuda, listed the Parakeet pre-download step, and emitted--device cuda --asr-backend autostart commands.cmd /c install.bat --cpu --dry-run --no-smoke-checks-> selectedTorch: cpu, listed the Parakeet pre-download step, and emitted--device cpu --asr-backend autostart commands.nvidia/parakeet-tdt-0.6b-v3tomodels\nvidia__parakeet-tdt-0.6b-v3, which is git-ignored undermodels/.app.pywithHF_HUB_OFFLINE=1,--device cuda, and--asr-backend auto; verified TTS warmup and Parakeet weights loaded before the Gradio URL was printed.ASR: NVIDIA Parakeet TDT 0.6B v3 | language: auto-detect | device: cuda.Synthesising speech, 36%instead of only genericProcessing./_run_asr_if_neededonexamples/reference_speaker.wavfills the transcript through the running Gradio server./generatewith Ultimate Cloning enabled, reference audio provided, and an empty transcript auto-transcribes with Parakeet and returns generated audio plus the filled transcript.torch.cuda.is_available() == True, GPUNVIDIA GeForce RTX 4060 Laptop GPU,parakeet_device cuda:0,tts_device cuda, generatedsr 48000,wav_samples 307200, and CUDA memory was allocated/reserved during generation./generatewith Ultimate Cloning but no audio fails fast withUpload reference audio before using Ultimate Cloning Mode.