| 360 | def build_command(args: argparse.Namespace, case: dict[str, Any], case_dir: Path) -> list[str]: |
| 361 | model_path = resolve_model_override(args.model_path) or resolve_model_path(args.models_root, case["model"]) |
| 362 | command = [ |
| 363 | str(args.audiocpp_cli_bin), |
| 364 | "--task", |
| 365 | case["task"], |
| 366 | "--family", |
| 367 | case["family"], |
| 368 | "--model", |
| 369 | str(model_path), |
| 370 | "--backend", |
| 371 | case.get("backend", args.backend), |
| 372 | "--mode", |
| 373 | case.get("mode", "offline"), |
| 374 | "--device", |
| 375 | str(args.device), |
| 376 | "--threads", |
| 377 | str(args.threads), |
| 378 | ] |
| 379 | append_key_values(command, "--load-option", case.get("load_options", {})) |
| 380 | append_key_values(command, "--session-option", case.get("session_options", {})) |
| 381 | for override in getattr(args, "session_option", []) or []: |
| 382 | command.extend(["--session-option", override]) |
| 383 | if args.log: |
| 384 | command.append("--log") |
| 385 | |
| 386 | outputs = set(case.get("outputs", [])) |
| 387 | mode = case.get("mode", "offline") |