Score AI supply chain risk across model weights, datasets, serialisation formats, dependencies and provider concentration.
The distinctive AI supply chain risk is that model weights are executable in practice: a pickle-serialised checkpoint runs arbitrary Python on load, so pulling an unverified fine-tune is equivalent to running an unsigned binary as your inference service. Artefact integrity therefore carries half the weight, dependencies matter because AI frameworks pull enormous trees with native code, and concentration is included as a resilience rather than a compromise risk. Model hubs are package registries with fewer controls, and 'download the latest checkpoint by tag' is the AI equivalent of curl-piping a script into a shell.
AI Supply Chain Risk
risk = (0.5×artefactIntegrity + 0.3×dependencyRisk + 0.2×providerConcentration) × sbomFactor, where artefactIntegrity averages weight source, verification, serialisation format and dataset provenance.
risk = (0.5×artefactIntegrity + 0.3×dependencyRisk + 0.2×providerConcentration) × sbomFactor, where artefactIntegrity averages weight source, verification, serialisation format and dataset provenance. The distinctive AI supply chain risk is that model weights are executable in practice: a pickle-serialised checkpoint runs arbitrary Python on load, so pulling an unverified fine-tune is equivalent to running an unsigned binary as your inference service. Artefact integrity therefore carries half the weight, dependencies matter because AI frameworks pull enormous trees with native code, and concentration is included as a resilience rather than a compromise risk.
Model hubs are package registries with fewer controls, and 'download the latest checkpoint by tag' is the AI equivalent of curl-piping a script into a shell.
This calculator takes 8 inputs: Source of model weights, Weight integrity verification, Serialisation format, Training or fine-tuning dataset provenance, Direct AI framework dependencies, Dependencies with known vulnerabilities, Share of AI capability from one provider, Model and software bill of materials coverage. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.
Yes, for the loading step. It is a tensor container with no code path, so a malicious file cannot execute on load. It does not tell you whether the model itself was poisoned or backdoored — that is a separate evaluation problem.
Because availability is a security property. A single provider outage, policy change or account suspension can remove a capability your product depends on, and having no tested fallback is the same class of failure as an unpatched dependency.