| 16 | |
| 17 | |
| 18 | def parse_args() -> argparse.Namespace: |
| 19 | parser = argparse.ArgumentParser(description="Python reference Chatterbox voice-clone warmbench.") |
| 20 | parser.add_argument("--model", type=Path, default=Path("models/chatterbox")) |
| 21 | parser.add_argument("--backend", choices=("cpu", "cuda"), default="cpu") |
| 22 | parser.add_argument("--device", type=int, default=0) |
| 23 | parser.add_argument("--threads", type=int, default=4) |
| 24 | parser.add_argument("--warmup", type=int, default=1) |
| 25 | parser.add_argument("--iterations", type=int, default=1) |
| 26 | parser.add_argument("--text", action="append", dest="texts", default=[]) |
| 27 | parser.add_argument("--warmup-text", default="This is a fixed warmup request for Chatterbox voice cloning.") |
| 28 | parser.add_argument("--language", default="en") |
| 29 | parser.add_argument("--clone-audio", type=Path, default=Path("resources/sample.wav")) |
| 30 | parser.add_argument("--seed", type=int, default=1234) |
| 31 | parser.add_argument("--exaggeration", type=float, default=0.5) |
| 32 | parser.add_argument("--cfg-weight", type=float, default=0.5) |
| 33 | parser.add_argument("--s3gen-cfg-rate", type=float, default=0.7) |
| 34 | parser.add_argument("--temperature", type=float, default=0.8) |
| 35 | parser.add_argument("--repetition-penalty", type=float, default=1.2) |
| 36 | parser.add_argument("--min-p", type=float, default=0.05) |
| 37 | parser.add_argument("--top-p", type=float, default=1.0) |
| 38 | parser.add_argument("--audio-out", type=Path, default=Path("chatterbox_python_audio.wav")) |
| 39 | parser.add_argument("--audio-out-dir", type=Path, default=None) |
| 40 | parser.add_argument("--timing-file", type=Path, default=Path("chatterbox_python_timing.log")) |
| 41 | return parser.parse_args() |
| 42 | |
| 43 | |
| 44 | def add_repo_paths(repo_root: Path) -> None: |