()
| 224 | |
| 225 | |
| 226 | def main(): |
| 227 | logging.basicConfig( |
| 228 | level=logging.INFO, |
| 229 | format="%(asctime)s [%(levelname)s] %(name)s: %(message)s", |
| 230 | ) |
| 231 | |
| 232 | parser = argparse.ArgumentParser( |
| 233 | description="Batch TTS evaluation (llama.cpp backend)", |
| 234 | formatter_class=argparse.RawDescriptionHelpFormatter, |
| 235 | ) |
| 236 | parser.add_argument("--config", required=True, help="Pipeline YAML config") |
| 237 | parser.add_argument( |
| 238 | "--benchmark-dir", |
| 239 | default="/inspire/hdd/project/embodied-multimodality/public/speech_generation/data/eval/tts", |
| 240 | ) |
| 241 | parser.add_argument("--result-dir", required=True) |
| 242 | parser.add_argument("--tasks", nargs="+", default=None) |
| 243 | parser.add_argument("--suite", choices=["seed-tts", "cv3", "all"], default=None) |
| 244 | parser.add_argument("--max-cases", type=int, default=0) |
| 245 | parser.add_argument("--no-skip", action="store_true") |
| 246 | |
| 247 | parser.add_argument("--text-temp", type=float, default=None) |
| 248 | parser.add_argument("--audio-temp", type=float, default=None) |
| 249 | parser.add_argument("--audio-top-p", type=float, default=None) |
| 250 | parser.add_argument("--audio-top-k", type=int, default=None) |
| 251 | parser.add_argument("--audio-rep-penalty", type=float, default=None) |
| 252 | parser.add_argument("--n-gpu-layers", type=int, default=None) |
| 253 | parser.add_argument("--max-tokens", type=int, default=None) |
| 254 | parser.add_argument("--heads-backend", choices=["auto", "numpy", "torch"], default=None) |
| 255 | |
| 256 | args = parser.parse_args() |
| 257 | config = PipelineConfig.from_yaml(args.config) |
| 258 | |
| 259 | if args.text_temp is not None: |
| 260 | config.text_temperature = args.text_temp |
| 261 | if args.audio_temp is not None: |
| 262 | config.audio_temperature = args.audio_temp |
| 263 | if args.audio_top_p is not None: |
| 264 | config.audio_top_p = args.audio_top_p |
| 265 | if args.audio_top_k is not None: |
| 266 | config.audio_top_k = args.audio_top_k |
| 267 | if args.audio_rep_penalty is not None: |
| 268 | config.audio_repetition_penalty = args.audio_rep_penalty |
| 269 | if args.n_gpu_layers is not None: |
| 270 | config.n_gpu_layers = args.n_gpu_layers |
| 271 | if args.max_tokens is not None: |
| 272 | config.max_new_tokens = args.max_tokens |
| 273 | if args.heads_backend is not None: |
| 274 | config.heads_backend = args.heads_backend |
| 275 | |
| 276 | if args.tasks: |
| 277 | tasks = args.tasks |
| 278 | elif args.suite == "seed-tts": |
| 279 | tasks = SEED_TTS_TASKS |
| 280 | elif args.suite == "cv3": |
| 281 | tasks = CV3_TASKS |
| 282 | else: |
| 283 | tasks = ALL_TASKS |
no test coverage detected