Skip to main content

InspectRT

CI Python 3.11 | 3.12 License: Apache-2.0

InspectRT is a reproducible, reduced feature-memory baseline for one MVTec AD category at a time. RT means Runtime. InspectRT records scientific outputs and runtime measurements for its frozen workloads.

Status

inspectrt_feature_memory_v1 is the implemented profile. It uses a frozen ResNet-50 feature extractor, a complete nominal patch bank, exact nearest-neighbor retrieval, raw anomaly maps, and threshold-free metrics. The supported installed/user commands are evaluate, benchmark, fixture validate and onnx validate. Fixture and ONNX export are source-checkout reproducibility workflows; portability commands are scoped maintainer/evidence tooling. The complete command, schema and experimental Python API boundary is in docs/public-interface.md. See docs/retrieval-fixtures.md for the format, commands, and validation limits.

The baseline freeze covers bottle and leather on a ThinkPad P53 with a Quadro T1000 and the current locked Linux stack. The frozen bottle workload also has reviewed results for Intel Core i7-9850H CPU, RTX 4080 Super CUDA under WSL 2, M1 Pro CPU, and M1 Pro MPS. Floating outputs and metrics stayed within the reviewed envelope, although exact nearest-neighbour indices varied across devices. The synchronized wall-clock record contains six descriptive timing rows. See docs/portability.md and the baseline method contract in docs/baseline.md.

The frozen bottle workload also has a reviewed ONNX feature boundary for layer2 and row-major patch embeddings. ONNX Runtime CPU results pass the policy-v2 calibration and independent Ryzen/WSL2 holdout. See docs/onnx-portability.md and the compact scientific evidence.

Bundled fixture quickstart

InspectRT supports CPython 3.11 and 3.12. Install a reviewed wheel by following docs/installation.md, including the CPU-first or CUDA-first PyTorch sequence for Linux.

An installed distribution can validate the bundled canonical synthetic fixture offline on CPU:

inspectrt fixture validate --device cpu

The fixture identity and validation limits are documented in docs/retrieval-fixtures.md.

ONNX feature artifact

The optional ONNX tools use the onnx extra in a locked source checkout:

uv sync --locked --extra onnx

Export is a source-checkout reproducibility workflow. It requires a clean source tree and the accepted pretrained weight already cached:

uv run --extra onnx inspectrt onnx export \
  --output-root outputs

The generated artifact contains only manifest.json and model.onnx. Its model bytes remain ignored. Validation is a supported installed/user workflow when inspectrt[onnx] is installed:

uv run --extra onnx inspectrt onnx validate \
  --artifact \
  outputs/artifacts/inspectrt_onnx_feature_portability_v1/<artifact-id>

Validation covers artifact structure and graph identities. The graph emits the two feature tensors; InspectRT's PyTorch pipeline handles preprocessing, retrieval, scoring, maps, and metrics. See the ONNX portability guide for the experimental direct CPU consumer API and reviewed limits.

MVTec AD

Obtain MVTec AD from the official dataset page. The download form asks for your email, name, and occupation, and commercial use is not allowed. Place the categories below one dataset root:

datasets/mvtec_ad/
├── bottle/
└── leather/

The dataset remains untracked through .gitignore. Pass datasets/mvtec_ad, not an individual category directory, as --dataset-root.

Installed MVTec quickstart

inspectrt evaluate \
  --dataset-root /path/to/mvtec_ad \
  --category bottle \
  --device cpu \
  --output-root /path/to/output

The wheel includes the frozen baseline profile. Use a separately obtained MVTec root; torchvision supplies the official pretrained weight. An explicit --config remains supported. See the baseline guide for the method, complete run bundle and benchmark command.

Benchmark

benchmark is supported for the frozen bottle workload with exactly five warm-ups and 30 measured repetitions. See docs/baseline.md for the command, device rules, eight-file bundle and reviewed measurements.

Method scope

inspectrt_feature_memory_v1 is InspectRT's reduced feature-memory reference. Interpret its results under the method in the baseline guide. Supported installation paths are listed in the installation and support guide, while reviewed scientific portability evidence is documented in docs/portability.md.

License and distribution

InspectRT-authored code is licensed under the Apache License 2.0, and NOTICE preserves first-party attribution. Dependencies, datasets, and pretrained weights retain separate terms. MVTec AD is obtained separately by the user.

Release archives contain InspectRT code, the baseline profile, the synthetic fixture, and legal metadata. Users obtain MVTec and torchvision weights separately and generate run bundles or ONNX models locally. THIRD_PARTY_NOTICES.md records the dependency, dataset, weight, and generated-artifact boundaries.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

inspectrt-0.1.0.tar.gz (140.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

inspectrt-0.1.0-py3-none-any.whl (107.6 kB view details)

Uploaded Python 3

File details

Details for the file inspectrt-0.1.0.tar.gz.

File metadata

  • Download URL: inspectrt-0.1.0.tar.gz
  • Upload date:
  • Size: 140.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for inspectrt-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e20f2c5a8dc30a19a196d9e882e5b158155259f290f2e4e19764ac314b221080
MD5 f8b4ad26e3ddbf25850bc352b6309e63
BLAKE2b-256 3324e3dbf39377cd6cff39396ad245b994b1ddfb1c8c7eb7f151ffab2e616407

See more details on using hashes here.

Provenance

The following attestation bundles were made for inspectrt-0.1.0.tar.gz:

Publisher: pypi.yml on splicer3/inspectrt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file inspectrt-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: inspectrt-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 107.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for inspectrt-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7e2f45813cc5795866b625092074ab8ea01ec29c72ede86a722665af6c5ef05c
MD5 5776c5b8f8c2bea2aad84fa7c2aa0181
BLAKE2b-256 76fda2b4816b23ecad5c4489f0a8812b9708fb8913ac5d045150a89d51ad4fdb

See more details on using hashes here.

Provenance

The following attestation bundles were made for inspectrt-0.1.0-py3-none-any.whl:

Publisher: pypi.yml on splicer3/inspectrt

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page