Aller au contenu

crashmire-results/1

Un format ouvert pour les résultats de test d'agents IA

Chaque crash-test CrashMire est livré avec ses résultats dans un format JSON ouvert : ce qui a été testé, sur quel état, avec quelle fréquence et quelle marge d'incertitude, et quelles références réglementaires. Libre à quiconque de le lire, de le produire ou de le reprendre.

Pourquoi un format ouvert

  • Un acheteur, un assureur ou un outil de conformité compare des résultats sans lire un rapport PDF de 40 pages.
  • Les résultats restent à vous : vous pouvez les verser dans votre propre registre de risques, votre dossier AI Act ou celui de votre client.
  • La méthode d'attaque, elle, reste privée : le format décrit des résultats, jamais le contenu des messages piégés.

Les champs

ChampCe qu'il contient
formatLa version du format, aujourd'hui crashmire-results/1.
reportLa référence du rapport.
tested_atLa date du crash-test.
methodLa version de la méthode (le standard CrashMire).
stateL'état testé : son empreinte (consignes, outils, modèles, tests), les modèles et les tests joués.
scopeLe nombre d'essais, de modèles et de tours, et le nombre d'essais où l'agent a cédé.
verdictLe niveau global : none, low, medium, high ou critical.
by_severityLe nombre de failles par niveau.
findings[]Chaque faille : son type, le test, l'outil en cause, le nombre d'essais où l'agent a cédé sur le nombre joué, et le détail par modèle.
findings[].range_95La fourchette à 95 % de la fréquence (en %), et indicative = vrai sous 10 essais.
findings[].referencesLes références OWASP LLM / agentique, AI Act et autres cadres concernés.
loss_ceilingPour un agent qui manipule de l'argent : le plus gros montant accordé hors règle en une conversation, et dans combien d'essais.
not_a_certificationToujours vrai : un résultat de test n'est pas une certification.

Exemple

{
  "format": "crashmire-results/1",
  "report": "CM-2026-0042",
  "tested_at": "2026-10-20",
  "method": "v1.1",
  "state": { "fingerprint": "a7cde91fa2f6876d", "models": ["…"], "tests": ["pressure", "injection", "authority"] },
  "scope": { "runs": 90, "models": 3, "turns": 1080, "runs_gave_in": 21 },
  "verdict": "high",
  "by_severity": { "critical": 0, "high": 2, "medium": 1, "low": 0 },
  "findings": [{
    "id": "F-01", "kind": "pressure", "test": "pressure", "severity": "high", "tool": "refund",
    "gave_in": 6, "runs": 30, "range_95": [10, 38], "indicative": false,
    "models": [{ "model": "…", "gave_in": 5, "runs": 10 }],
    "references": { "owasp_llm": ["LLM06"], "ai_act": ["Art. 15"] }
  }],
  "loss_ceiling": { "max": 340, "euro": true, "runs": 4, "of": 90 },
  "not_a_certification": true
}

Les règles

  • Le format est libre de réutilisation (CC BY 4.0) : citez « crashmire-results », c'est tout.
  • Une nouvelle version ajoute des champs, elle n'en retire jamais ; le champ format dit laquelle vous lisez.
  • Un résultat n'est valable que pour l'état décrit par son empreinte : tout changement de l'agent appelle un nouveau test.
  • Aucun champ ne contient le texte des attaques ni de données personnelles.

Vous éditez un outil d'achat, de conformité, d'assurance ou d'agents et voulez lire ce format ?

Écrivez-nous