Skip to content
Calcrivo

AI Supply Chain Risk Calculator

Score AI supply chain risk across model weights, datasets, serialisation formats, dependencies and provider concentration.

Inputs

packages
packages
%
%

Supply Chain Risk

Medium

Risk Score

5.36/ 10

Artefact Integrity Risk

6.75/ 10

Dependency Risk

2.08/ 10

Provider Concentration Risk

8.50/ 10

Load-Time Code Execution

Yes — pickle-based weights execute arbitrary code on load; convert to safetensors

Highest-Value Control

Convert or re-export weights to safetensors and refuse pickle in the pipeline

Step by step

  1. Values used

    Source of model weights = Official repository on a public hub — 6; Weight integrity verification = Downloaded by tag or latest — 7; Serialisation format = Pickle or PyTorch .bin — 8; Training or fine-tuning dataset provenance = Public scrape with filtering — 6; Direct AI framework dependencies = 45 packages; Dependencies with known vulnerabilities = 6 packages; Share of AI capability from one provider = 85 %; Model and software bill of materials coverage = 30 %

  2. 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.

  3. Supply Chain Risk

    = Medium

  4. Risk Score

    = 5.36 / 10

  5. Artefact Integrity Risk

    = 6.75 / 10

  6. Dependency Risk

    = 2.08 / 10

  7. Provider Concentration Risk

    = 8.50 / 10

  8. Load-Time Code Execution

    = Yes — pickle-based weights execute arbitrary code on load; convert to safetensors

How it works

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.

Formula

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.

artefactIntegrity
Trustworthiness of the weights and data you deploy
dependencyRisk
Vulnerable-package share plus a penalty for dependency count
sbomFactor
Up to 20% reduction for complete bill-of-materials coverage

Frequently Asked Questions

How is AI Supply Chain Risk calculated?

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.

Why does AI Supply Chain Risk matter?

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.

What values do I need to enter?

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.

Is safetensors genuinely safer?

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.

Why include provider concentration as a security risk?

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.

You might also need