VoxCPM2: Tokenizer-Free TTS for Multilingual Speech Generation, Creative Voice Design, and True-to-Life Cloning
148 matches across 6 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | lora_ft_webui.py | 194 | def load_lora_config_from_checkpoint(lora_path): |
| LOW | lora_ft_webui.py | 1001 | def on_pretrained_path_change(path): |
| LOW | tests/test_lora_checkpoint_loading.py | 118 | def test_load_lora_weights_accepts_tensor_only_legacy_checkpoints(monkeypatch, tmp_path, module_name): |
| LOW | tests/test_lora_checkpoint_loading.py | 132 | def test_load_lora_weights_rejects_malicious_pickle_payloads(monkeypatch, tmp_path, module_name): |
| LOW | tests/test_model_utils.py | 23 | def test_resolve_runtime_device_auto_falls_back_to_cpu(monkeypatch): |
| LOW | tests/test_model_utils.py | 30 | def test_resolve_runtime_device_auto_uses_mps_when_available(monkeypatch): |
| LOW | tests/test_model_utils.py | 37 | def test_resolve_runtime_device_respects_explicit_cpu(monkeypatch): |
| LOW | tests/test_model_utils.py | 44 | def test_resolve_runtime_device_rejects_unavailable_explicit_cuda(monkeypatch): |
| LOW | tests/test_validate.py | 177 | def test_validation_result_properties(self): |
| LOW | tests/test_validate.py | 187 | def test_invalid_audio_not_counted_as_valid(self, tmp_dir): |
| LOW | tests/test_validate.py | 200 | def test_sample_rate_mismatch(self, tmp_dir): |
| LOW | tests/test_validate.py | 221 | def test_mixed_ref_audio_warns_for_each_missing(self, tmp_dir): |
| LOW | tests/test_validate.py | 240 | def test_cli_validate_exit_code(self, tmp_dir): |
| LOW | tests/test_cli.py | 70 | def test_load_model_respects_no_optimize_for_local_model(monkeypatch): |
| LOW | tests/test_cli.py | 98 | def test_load_model_defaults_optimize_for_hf(monkeypatch): |
| LOW | tests/test_cli.py | 124 | def test_load_model_respects_no_optimize_for_hf(monkeypatch): |
| LOW | tests/test_cli.py | 151 | def test_load_model_passes_explicit_device_to_hf(monkeypatch): |
| LOW | tests/test_cli.py | 178 | def test_design_subcommand_applies_control(monkeypatch, tmp_path): |
| LOW | tests/test_cli.py | 201 | def test_clone_subcommand_reads_prompt_file(monkeypatch, tmp_path): |
| LOW | tests/test_cli.py | 278 | def test_legacy_root_args_still_work_and_warn(monkeypatch, tmp_path, capsys): |
| LOW | tests/test_cli.py | 298 | def test_batch_subcommand_applies_control(monkeypatch, tmp_path): |
| LOW | tests/test_cli.py | 325 | def test_legacy_clone_with_prompt_file_still_works(monkeypatch, tmp_path, capsys): |
| LOW | tests/test_cli.py | 354 | def test_invalid_prompt_text_and_prompt_file_combination(monkeypatch, tmp_path, capsys): |
| LOW | tests/test_cli.py | 385 | def test_missing_prompt_file_reports_parser_error(monkeypatch, tmp_path, capsys): |
| LOW | tests/test_cli.py | 411 | def test_design_rejects_prompt_audio_args(monkeypatch, tmp_path, capsys): |
| LOW | tests/test_cli.py | 437 | def test_clone_rejects_prompt_audio_without_transcript(monkeypatch, tmp_path, capsys): |
| LOW | tests/test_cli.py | 464 | def test_clone_rejects_transcript_without_prompt_audio(monkeypatch, tmp_path, capsys): |
| LOW | tests/test_cli.py | 488 | def test_batch_rejects_control_with_prompt_transcript(monkeypatch, tmp_path, capsys): |
| LOW | tests/test_cli.py | 518 | def test_detect_model_architecture_uses_local_configs(): |
| LOW | src/voxcpm/cli.py | 88 | def detect_model_architecture(args) -> str | None: |
| LOW | src/voxcpm/cli.py | 116 | def validate_prompt_related_args(args, parser, prompt_text: str | None): |
| LOW | src/voxcpm/cli.py | 129 | def validate_reference_support(args, parser): |
| LOW | src/voxcpm/cli.py | 371 | def _add_common_generation_args(parser): |
| LOW | src/voxcpm/cli.py | 395 | def _add_prompt_reference_args(parser): |
| LOW | src/voxcpm/training/packers.py | 322 | def process_tts_data_with_ref( |
| LOW | src/voxcpm/model/voxcpm.py | 584 | def generate_with_prompt_cache(self, *args, **kwargs) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: |
| LOW | src/voxcpm/model/voxcpm.py | 587 | def generate_with_prompt_cache_streaming( |
| LOW | src/voxcpm/model/voxcpm.py | 593 | def _generate_with_prompt_cache( |
| LOW | src/voxcpm/model/utils.py | 24 | def mask_multichar_chinese_tokens(tokenizer: PreTrainedTokenizer): |
| LOW | src/voxcpm/model/voxcpm2.py | 774 | def generate_with_prompt_cache(self, *args, **kwargs) -> Tuple[torch.Tensor, torch.Tensor, torch.Tensor]: |
| LOW | src/voxcpm/model/voxcpm2.py | 777 | def generate_with_prompt_cache_streaming( |
| LOW | src/voxcpm/model/voxcpm2.py | 783 | def _generate_with_prompt_cache( |
| LOW | src/voxcpm/modules/layers/lora.py | 98 | def apply_lora_to_named_linear_modules( |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | app_old.py | 54 | except Exception as e: |
| LOW | app.py | 394 | except Exception as e: |
| LOW | lora_ft_webui.py | 144 | except Exception as e: |
| LOW | lora_ft_webui.py | 204 | except Exception as e: |
| LOW | lora_ft_webui.py | 280 | except Exception as e: |
| LOW | lora_ft_webui.py | 290 | except Exception as e: |
| LOW | lora_ft_webui.py | 316 | except Exception as e: |
| LOW | lora_ft_webui.py | 322 | except Exception as e: |
| MEDIUM | lora_ft_webui.py | 323 | print(f"Error loading LoRA: {e}", file=sys.stderr) |
| LOW | lora_ft_webui.py | 351 | except Exception as e: |
| LOW | lora_ft_webui.py | 367 | except Exception as e: |
| LOW | lora_ft_webui.py | 446 | except Exception: |
| LOW | scripts/train_voxcpm_finetune.py | 241 | except Exception: |
| LOW | scripts/train_voxcpm_finetune.py | 248 | except Exception as e: |
| MEDIUM | scripts/train_voxcpm_finetune.py | 249 | print(f"Error saving checkpoint on signal: {e}", file=sys.stderr) |
| LOW | scripts/train_voxcpm_finetune.py | 449 | except Exception as e: |
| LOW | scripts/train_voxcpm_finetune.py | 583 | except Exception as e: |
| LOW | scripts/train_voxcpm_finetune.py | 637 | except Exception as e: |
| LOW | scripts/train_voxcpm_finetune.py | 640 | except Exception as e: |
| LOW | scripts/train_voxcpm_finetune.py | 655 | except Exception as e: |
| LOW | scripts/train_voxcpm_finetune.py | 823 | except Exception: |
| MEDIUM | scripts/train_voxcpm_finetune.py | 226 | def _signal_handler( |
| LOW | scripts/test_pick_runtime_dtype.py | 36 | except Exception as e: |
| LOW | scripts/test_pick_runtime_dtype.py | 55 | except Exception as e: |
| MEDIUM | scripts/test_pick_runtime_dtype.py | 30 | def expect_raises(fn, exc_type, label): |
| LOW | src/voxcpm/zipenhancer.py | 65 | except Exception as e: |
| LOW | src/voxcpm/cli.py | 215 | except Exception as e: |
| LOW | src/voxcpm/cli.py | 234 | except Exception as e: |
| LOW | src/voxcpm/cli.py | 360 | except Exception as e: |
| LOW | src/voxcpm/training/validate.py | 55 | except Exception as e: |
| LOW | src/voxcpm/training/validate.py | 66 | except Exception: |
| LOW | src/voxcpm/training/validate.py | 112 | except Exception as e: |
| LOW | src/voxcpm/model/voxcpm.py | 245 | except Exception as e: |
| LOW | src/voxcpm/model/utils.py | 119 | except Exception as e: |
| LOW | src/voxcpm/model/voxcpm2.py | 74 | except Exception: |
| LOW | src/voxcpm/model/voxcpm2.py | 293 | except Exception as e: |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/test_lora_checkpoint_loading.py | 1 | |
| LOW | tests/test_model_utils.py | 1 | |
| LOW | tests/test_validate.py | 3 | |
| LOW | tests/test_validate.py | 6 | |
| LOW | tests/test_cli.py | 1 | |
| LOW | src/voxcpm/__init__.py | 1 | |
| LOW | src/voxcpm/training/config.py | 1 | |
| LOW | src/voxcpm/training/__init__.py | 9 | |
| LOW | src/voxcpm/training/__init__.py | 10 | |
| LOW | src/voxcpm/training/__init__.py | 11 | |
| LOW | src/voxcpm/training/__init__.py | 11 | |
| LOW | src/voxcpm/training/__init__.py | 11 | |
| LOW | src/voxcpm/training/__init__.py | 11 | |
| LOW | src/voxcpm/training/__init__.py | 17 | |
| LOW | src/voxcpm/training/__init__.py | 18 | |
| LOW | src/voxcpm/training/__init__.py | 18 | |
| LOW | src/voxcpm/training/tracker.py | 1 | |
| LOW | src/voxcpm/training/accelerator.py | 1 | |
| LOW | src/voxcpm/training/state.py | 1 | |
| LOW | src/voxcpm/model/__init__.py | 1 | |
| LOW | src/voxcpm/model/__init__.py | 2 | |
| LOW | src/voxcpm/model/voxcpm.py | 233 | |
| LOW | src/voxcpm/model/voxcpm2.py | 281 | |
| LOW | src/voxcpm/modules/layers/__init__.py | 1 | |
| LOW | src/voxcpm/modules/audiovae/__init__.py | 1 | |
| LOW | src/voxcpm/modules/audiovae/__init__.py | 1 | |
| LOW | src/voxcpm/modules/audiovae/__init__.py | 2 | |
| LOW | src/voxcpm/modules/audiovae/__init__.py | 2 | |
| LOW | src/voxcpm/modules/locenc/__init__.py | 1 | |
| LOW | src/voxcpm/modules/minicpm4/__init__.py | 1 | |
| LOW | src/voxcpm/modules/minicpm4/__init__.py | 2 | |
| LOW | src/voxcpm/modules/minicpm4/__init__.py | 3 | |
| LOW | src/voxcpm/modules/locdit/__init__.py | 1 | |
| LOW | src/voxcpm/modules/locdit/__init__.py | 1 | |
| LOW | src/voxcpm/modules/locdit/__init__.py | 2 | |
| LOW | src/voxcpm/modules/locdit/__init__.py | 3 |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | src/voxcpm/cli.py | 16 | # ----------------------------- |
| MEDIUM | src/voxcpm/cli.py | 18 | # ----------------------------- |
| MEDIUM | src/voxcpm/cli.py | 166 | # ----------------------------- |
| MEDIUM | src/voxcpm/cli.py | 168 | # ----------------------------- |
| MEDIUM | src/voxcpm/cli.py | 239 | # ----------------------------- |
| MEDIUM | src/voxcpm/cli.py | 241 | # ----------------------------- |
| MEDIUM | src/voxcpm/cli.py | 366 | # ----------------------------- |
| MEDIUM | src/voxcpm/cli.py | 368 | # ----------------------------- |
| MEDIUM | src/voxcpm/cli.py | 621 | # ----------------------------- |
| MEDIUM | src/voxcpm/cli.py | 623 | # ----------------------------- |
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | src/voxcpm/zipenhancer.py | 41 | Audio denoising enhancement Args: input_path: Input audio file path output_path |
| HIGH | src/voxcpm/core.py | 117 | Instantiate ``VoxCPM`` from a Hugging Face Hub snapshot. Args: hf_model_id: Explicit Hugging Face r |
| HIGH | src/voxcpm/core.py | 318 | Load LoRA weights from a checkpoint file. Args: lora_weights_path: Path to LoRA weights (.pth file |
| HIGH | src/voxcpm/model/utils.py | 99 | Call the tokenizer and return token IDs. This method provides the same interface as the original tokenizer |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | app_old.py | 150 | |
| LOW | app.py | 345 | |
| LOW | lora_ft_webui.py | 149 | |
| LOW | lora_ft_webui.py | 255 | |
| LOW | scripts/train_voxcpm_finetune.py | 45 | |
| LOW | scripts/train_voxcpm_finetune.py | 365 | |
| LOW | scripts/train_voxcpm_finetune.py | 538 | |
| LOW | scripts/train_voxcpm_finetune.py | 745 | |
| LOW | src/voxcpm/core.py | 180 | |
| LOW | src/voxcpm/training/validate.py | 70 | |
| LOW | src/voxcpm/model/voxcpm.py | 357 | |
| LOW | src/voxcpm/model/voxcpm.py | 593 | |
| LOW | src/voxcpm/model/voxcpm.py | 860 | |
| LOW | src/voxcpm/model/utils.py | 125 | |
| LOW | src/voxcpm/model/voxcpm2.py | 463 | |
| LOW | src/voxcpm/model/voxcpm2.py | 783 | |
| LOW | src/voxcpm/model/voxcpm2.py | 1111 | |
| LOW | src/voxcpm/modules/audiovae/audio_vae_v2.py | 219 | |
| LOW | src/voxcpm/modules/audiovae/audio_vae_v2.py | 532 |