| 236 | |
| 237 | |
| 238 | def load_requests(args: argparse.Namespace) -> list[dict[str, Any]]: |
| 239 | if args.request_sequence_json: |
| 240 | payload = json.loads(args.request_sequence_json) |
| 241 | if not isinstance(payload, list): |
| 242 | raise RuntimeError("--request-sequence-json must decode to a list") |
| 243 | return payload |
| 244 | if args.request_json: |
| 245 | payload = json.loads(args.request_json) |
| 246 | if not isinstance(payload, dict): |
| 247 | raise RuntimeError("--request-json must decode to an object") |
| 248 | return [payload] |
| 249 | if args.prompts: |
| 250 | return [ |
| 251 | { |
| 252 | "prompt": prompt, |
| 253 | "negative_prompt": args.negative_prompt, |
| 254 | "duration": args.duration, |
| 255 | "steps": args.steps, |
| 256 | "cfg_scale": args.cfg_scale, |
| 257 | "seed": args.seed, |
| 258 | } |
| 259 | for prompt in args.prompts |
| 260 | ] |
| 261 | return [dict(request) for request in TEST_CASES[args.case]] |
| 262 | |
| 263 | |
| 264 | def chunked_decode_value(value: Any) -> bool | None: |