diff --git a/examples/meter-detection/FAIL.md b/examples/meter-detection/FAIL.md deleted file mode 100644 index 8245c9f..0000000 --- a/examples/meter-detection/FAIL.md +++ /dev/null @@ -1,156 +0,0 @@ -❯ qc-cli ai-hub upload \ - "examples/meter-detection/data/aihub_calibration" \ - "examples/meter-detection/data/inputs.npz" -╭────────────────────────────── Traceback (most recent call last) ───────────────────────────────╮ -│ /Users/sami/dev/qualcomm/qc-cli/src/commands/ai_hub.py:371 in upload │ -│ │ -│ 368 │ quantized_model_id: str | None = None │ -│ 369 │ compiled_model_id: str | None = None │ -│ 370 │ if UploadStep.quantize in selected: │ -│ ❱ 371 │ │ quantized_model_id = _quantize_step(cfg, config, calibration_path, from_job, │ -│ model_s3_uri, onnx_path) │ -│ 372 │ if UploadStep.compile in selected: │ -│ 373 │ │ compiled_model_id = _compile_step( │ -│ 374 │ │ │ cfg, │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/src/commands/ai_hub.py:142 in _quantize_step │ -│ │ -│ 139 │ st = state_ops.store(config_path) │ -│ 140 │ specs = _input_specs(cfg) │ -│ 141 │ try: │ -│ ❱ 142 │ │ resolved = resolve_onnx( │ -│ 143 │ │ │ cfg=cfg, │ -│ 144 │ │ │ output_dir=cfg.aihub.output_dir, │ -│ 145 │ │ │ from_job=from_job, │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/src/qualcomm/artifacts.py:69 in resolve_onnx │ -│ │ -│ 66 │ run_name = job or Path(artifact).name.removesuffix(".tar.gz").replace("/", "-") │ -│ 67 │ root = Path(output_dir) / run_name / "source" │ -│ 68 │ tar_path = root / "model.tar.gz" │ -│ ❱ 69 │ s3_ops.download_file(cfg.aws.region, cfg.aws.profile, artifact, str(tar_path)) │ -│ 70 │ │ -│ 71 │ extract_dir = root / "extracted" │ -│ 72 │ extract_dir.mkdir(parents=True, exist_ok=True) │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/src/aws/s3.py:38 in download_file │ -│ │ -│ 35 │ │ raise ValueError(f"Expected S3 URI with bucket and key, got: {s3_uri}") │ -│ 36 │ dest = Path(local_path) │ -│ 37 │ dest.parent.mkdir(parents=True, exist_ok=True) │ -│ ❱ 38 │ _client(region, profile).download_file(bucket, key, str(dest)) │ -│ 39 │ return str(dest) │ -│ 40 │ -│ 41 │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/botocore/context.py:123 in │ -│ wrapper │ -│ │ -│ 120 │ │ │ with start_as_current_context(): │ -│ 121 │ │ │ │ if hook: │ -│ 122 │ │ │ │ │ hook() │ -│ ❱ 123 │ │ │ │ return func(*args, **kwargs) │ -│ 124 │ │ │ -│ 125 │ │ return wrapper │ -│ 126 │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/boto3/s3/inject.py:223 in │ -│ download_file │ -│ │ -│ 220 │ │ transfer. │ -│ 221 │ """ │ -│ 222 │ with S3Transfer(self, Config) as transfer: │ -│ ❱ 223 │ │ return transfer.download_file( │ -│ 224 │ │ │ bucket=Bucket, │ -│ 225 │ │ │ key=Key, │ -│ 226 │ │ │ filename=Filename, │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/boto3/s3/transfer.py:406 in │ -│ download_file │ -│ │ -│ 403 │ │ │ bucket, key, filename, extra_args, subscribers │ -│ 404 │ │ ) │ -│ 405 │ │ try: │ -│ ❱ 406 │ │ │ future.result() │ -│ 407 │ │ # This is for backwards compatibility where when retries are │ -│ 408 │ │ # exceeded we need to throw the same error from boto3 instead of │ -│ 409 │ │ # s3transfer's built in RetriesExceededError as current users are │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/s3transfer/futures.py:111 │ -│ in result │ -│ │ -│ 108 │ │ │ # Usually the result() method blocks until the transfer is done, │ -│ 109 │ │ │ # however if a KeyboardInterrupt is raised we want want to exit │ -│ 110 │ │ │ # out of this and propagate the exception. │ -│ ❱ 111 │ │ │ return self._coordinator.result() │ -│ 112 │ │ except KeyboardInterrupt as e: │ -│ 113 │ │ │ self.cancel() │ -│ 114 │ │ │ raise e │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/s3transfer/futures.py:287 │ -│ in result │ -│ │ -│ 284 │ │ # Once done waiting, raise an exception if present or return the │ -│ 285 │ │ # final result. │ -│ 286 │ │ if self._exception: │ -│ ❱ 287 │ │ │ raise self._exception │ -│ 288 │ │ return self._result │ -│ 289 │ │ -│ 290 │ def cancel(self, msg='', exc_type=CancelledError): │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/s3transfer/tasks.py:272 in │ -│ _main │ -│ │ -│ 269 │ │ │ │ -│ 270 │ │ │ # Call the submit method to start submitting tasks to execute the │ -│ 271 │ │ │ # transfer. │ -│ ❱ 272 │ │ │ self._submit(transfer_future=transfer_future, **kwargs) │ -│ 273 │ │ except BaseException as e: │ -│ 274 │ │ │ # If there was an exception raised during the submission of task │ -│ 275 │ │ │ # there is a chance that the final task that signals if a transfer │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/s3transfer/download.py:355 │ -│ in _submit │ -│ │ -│ 352 │ │ │ transfer_future.meta.size is None │ -│ 353 │ │ │ or transfer_future.meta.etag is None │ -│ 354 │ │ ): │ -│ ❱ 355 │ │ │ response = client.head_object( │ -│ 356 │ │ │ │ Bucket=transfer_future.meta.call_args.bucket, │ -│ 357 │ │ │ │ Key=transfer_future.meta.call_args.key, │ -│ 358 │ │ │ │ **transfer_future.meta.call_args.extra_args, │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/botocore/client.py:602 in │ -│ _api_call │ -│ │ -│ 599 │ │ │ │ │ f"{py_operation_name}() only accepts keyword arguments." │ -│ 600 │ │ │ │ ) │ -│ 601 │ │ │ # The "self" in this scope is referring to the BaseClient. │ -│ ❱ 602 │ │ │ return self._make_api_call(operation_name, kwargs) │ -│ 603 │ │ │ -│ 604 │ │ _api_call.__name__ = str(py_operation_name) │ -│ 605 │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/botocore/context.py:123 in │ -│ wrapper │ -│ │ -│ 120 │ │ │ with start_as_current_context(): │ -│ 121 │ │ │ │ if hook: │ -│ 122 │ │ │ │ │ hook() │ -│ ❱ 123 │ │ │ │ return func(*args, **kwargs) │ -│ 124 │ │ │ -│ 125 │ │ return wrapper │ -│ 126 │ -│ │ -│ /Users/sami/dev/qualcomm/qc-cli/.venv/lib/python3.13/site-packages/botocore/client.py:1078 in │ -│ _make_api_call │ -│ │ -│ 1075 │ │ │ │ 'error_code_override' │ -│ 1076 │ │ │ ) or error_info.get("Code") │ -│ 1077 │ │ │ error_class = self.exceptions.from_code(error_code) │ -│ ❱ 1078 │ │ │ raise error_class(parsed_response, operation_name) │ -│ 1079 │ │ else: │ -│ 1080 │ │ │ return parsed_response │ -│ 1081 │ -╰────────────────────────────────────────────────────────────────────────────────────────────────╯ -ClientError: An error occurred (404) when calling the HeadObject operation: Not Found \ No newline at end of file