L’intelligence artificielle peut-elle identifier des armes ?

samedi 11 mai 2024, par Luis Ribeiro - Expert judiciaire

Il ne se passe pas de jour sans annonce sur l’IA (Intelligence Artificielle) dans les médias grand public ou spécialisés. Le SCAE (Service Central des Armes et Explosifs), sous la houlette du Ministère de l’Intérieur, a pour projet d’intégrer dans les outils mis à disposition des forces de sécurité intérieure (FSI) un système de reconnaissance et de classification des armes appelé BASEGUN et reposant sur des prises de photos d’armes.

PNG - 118.8 ko

Le logiciel BASEGUN a été annoncé en trombe en même temps que le SIA (Service d’Information sur les Armes) par certains sites publics comme celui de la Gendarmerie où l’on peut lire :
« Basegun est un outil d’identification rapide des armes destiné aux forces de sécurité intérieure et aux professionnels des armes. Grâce à une base officielle de photos des armes les plus en circulation, associée à la puissance de l’intelligence artificielle pour définir des points de reconnaissance, l’outil permettra d’identifier immédiatement un modèle d’arme (et sa fiche RGA). »

Cette application est donc aussi fondée sur la notion d’IA et devrait permettre à terme d’identifier automatiquement une arme, de la classifier et même, nous dit-on, de trouver sa fiche RGA (Registre Général des Armes). Le fameux RGA que chaque expert ou armurier connait bien pour s’y être parfois déjà perdu lors de recherches pas toujours évidentes, et ce malgré leur grande connaissance et expertise des armes.

Mais qu’est-ce que L’IA ?

Afin d’être à l’aise avec la lecture de ce qui va suivre, nous allons tenter de simplifier à l’extrême et sans entrer dans la technique que recouvre la notion des intelligences artificielles au pluriel, car il n’existe pas une seule IA mais plusieurs. Elles reposent sur des technologies différentes qui peuvent se conjuguer en fonction des objectifs applicatifs proposés.

- L’IA cognitive, on en parle beaucoup dans le grand public, sans d’ailleurs toujours se rendre compte qu’on l’utilise au quotidien. C’est par exemple Chat-GPT [1]. L’IA cognitive est appelée ainsi car son interface de dialogue s’efforce d’être le plus proche possible d’un dialogue humain, que ce soit par le texte (Chat-GPT) ou la voix (SIRI, Alexa, etc..). De manière très synthétique, cela permet d’interroger une machine sur des sujets divers plus ou moins généralistes ou bien de se faire assister de la manière la plus naturelle possible pour un être humain. La machine nous répond alors sur le même mode avec le texte, la voix, des images, etc…
Il existe aussi les IA connexionnistes, les IA évolutionnistes, les IA hybrides, les IA spécifiques et les IA générales. Là aussi, nous utilisons parfois ces technologies sans le savoir. Par exemple, si vous déverrouillez votre smartphone favori à l’aide des fonctionnalités de reconnaissance faciale, alors vous utilisez une IA de type évolutionniste. C’est aussi la même technologie qui est utilisée par les systèmes de télésurveillance avec reconnaissance faciale.

PNG - 2.6 Mo

Les applications utilisant l’IA sont souvent technologiquement mixées. Par exemple Chat-GPT utilise aussi des fonctionnalités d’IA évolutionnistes dès lors qu’il est capable d’identifier et d’interpréter le contenu d’une photo ou d’une vidéo.
Enfin, toujours dans une approche de simplification absolue, il existe trois composantes importantes dans une application d’IA.
- La machine Learning, véritable centre d’apprentissage de l’IA que l’on alimente avec des quantités d’informations importantes voire gigantesques. Des données très spécialisées peuvent être revues ou requalifiées par l’humain afin de ne pas fournir à L’IA des données erronées ou incomplètes. Plus les données sont nombreuses et fiables et meilleur sera le résultat à la sortie. Le niveau d’exactitude requis n’est pas le même pour une application à qui nous allons demander la liste des résultats du tour de France depuis sa création que pour une application IA à qui un médecin va demander une assistance dans un diagnostic médical pointu après analyse d’une IRM ou d’un séquencement ADN.
- Les modèles ou algorithmes qui vont analyser les questions demandées et construire des réponses ou des modèles de réponses. Il y a une longue phase d’apprentissage entre la logique des algorithmes et l’adéquation des données fournies. Une application IA en début d’apprentissage qui ne fournit que 20 à 30 % de bonnes réponses est assez courante, l’objectif étant qu’elle puisse fournir au moins 95% voire 99,9 % de bonnes réponses pour certaines applications très pointues. De manière tout à fait simpliste, on peut faire le parallèle avec l’apprentissage d’un enfant au cerveau vierge et capable techniquement de raisonner mais qui ne sera pertinent dans ses raisonnements qu’après avoir reçu culturellement les données qui vont lui permettre de construire un raisonnement, une capacité de décision et son intégration dans un bain social et culturel. De la même manière, nourrir une application IA au cours de son apprentissage continu avec des informations inadéquates d’un point de vue éthique ou au contraire à vouloir être trop éthique va conduire l’IA à intégrer ces raisonnements conduisant à des réponses aberrantes ou inadéquates.
- Enfin l’interface Homme Machine (IHM) grâce à laquelle nous allons interagir avec l’IA, avec interface de type texte (clavier informatique) ou vocal (microphone et haut-parleurs) pour l’essentiel.

L’IA et les armes

Si nous revenons aux promesses de BASEGUN, il était intéressant et aussi très ludique de vérifier comment se comporte une IA standard et grand public dont les algorithmes n’ont absolument pas été adaptés, ni optimisés et encore moins alimentés en données très spécialisées et expertes sur les armes et la règlementation française.
La comparaison étant possible car BASEGUN est accessible publiquement en test.
Notre dévolu d’IA standard s’est jeté sur CHAT GPT 4.0, une version d’IA payante de CHAT GPT supposée être plus performante que la version 3.5 accessible gratuitement. Chat GPT étant une IA dite cognitive (c’est-à-dire qui simule un fonctionnement humain en langage naturel). Nous allons donc dialoguer avec elle en mode textuel comme avec un humain à l’aide d’un clavier d’ordinateur.

PNG - 368.8 ko

Les interactions avec Chat GPT 4.0

Après avoir décliné notre fonction d’expert en armes munitions et balistique, nous demandons à CHAT GPT en quoi il peut nous aider dans nos tâches. La machine nous précise aussitôt la liste des assistances proposées, dont l’aide à l’identification des armes. Nous proposons alors de nous faire assister dans l’identification d’armes en fournissant des photographies. Chat-GPT, toujours très poli, nous invite donc à poster des photographies via l’interface de dialogue.

Nous allons faire défiler les photographies de plus ou moins bonne qualité (certaines venant du web), d’autres étant des photographies d’armes personnelles. Il sera proposé un AR15 en 300 BLK, un colt 1911 A1, un STG44, un Pardini SP22 de compétition, un fusil Lebel et enfin la photographie d’un pistolet à silex réalisée avec un smartphone au musée d’Art et d’Industrie de Saint-Etienne. Cette dernière photographie a la particularité d’être pleine de reflets de vitrine.

  • Chat GPT s’en sort bien avec l’AR15 même s’il n’est pas capable d’identifier la marque. Il identifie malgré tout le type d’arme comme un AR15, la présence du rail à accessoires mais sans préciser PICATINNY, la présence d’une optique, la crosse rétractable caractéristique selon lui des AR15 ainsi que le garde main au standard M-LOCK. A la question complémentaire « Quel est le calibre ? », voilà sa réponse exhaustive :
    « L’inscription sur le côté du récepteur semble dire "CAL. MULTI", ce qui suggère que le lower receiver est conçu pour accepter plusieurs calibres différents. C’est courant pour les récepteurs AR-15 qui peuvent être utilisés avec des upper receivers chambrés pour différents calibres, tels que le 5.56 NATO, le .223 Remington, le .300 Blackout, etc. En outre, les caractéristiques de la culasse, du chargeur et du canon peuvent donner des indications, mais ces éléments ne sont pas clairement visibles ou distincts sur cette image pour une identification certaine du calibre. Pour une détermination précise, l’examen de l’arme elle-même, ou au moins du marquage sur le canon qui indique souvent le calibre, serait nécessaire. »
    PNG - 6.6 Mo
    Photographie fournie

Au vu de la seule photographie fournie, nous ne sommes pas sûr qu’un expert aurait pu faire beaucoup mieux.
A chaque identification demandée, CHAT GPT liste les arguments qui plaident selon lui pour l’identification produite. Nous ne l’aidons pas particulièrement en relevant ses petites omissions ou erreurs, le but est de réellement savoir si une IA cognitive et généraliste est capable de fournir ce service, et si oui quelle est sa qualité de restitution. CHAT GPT semble capable d’analyser une photo en prenant en compte les besoins intrinsèques de l’identification d’une arme. L’IA va chercher notamment à identifier des marquages et à les interpréter.

  • Sur le Remington 1911-A1 (fabriqué sous licence colt en 1943), il l’identifie à un 1911 et non pas un modèle A1, il faut dire que nous ne lui avons fourni qu’une partie des marquages et une photo de profil qui contient de manière peu visible le gravure « M1911 A1 ». Le numéro de série est lui bien visible en revanche sur la même photographie. CHAT-GPT nous précise que l’arme a été la propriété de l’état US en relevant sans ambiguïté la gravure "UNITED STATES PROPERTY" et nous informe que ce type d’arme était en dotation réglementaire dans l’armée US une grande partie du 20ème siècle. CHAT GPT fournit dans sa réponse les éléments qui concourent à la pertinence de son analyse. Il y mentionne les marquages, la forme et le type des crosses, la palette de sureté et la forme de la glissière. Il précise avec conviction que : « La forme et le style de la glissière, avec son arrière biseauté et les rainures de préhension à l’avant et à l’arrière, sont emblématiques du M1911 »
    .
    Ce qui s’avère être une incohérence puisque l’on distingue parfaitement que les rainures de préhension ne sont présentes sur la photographie qu’à l’arrière de la glissière. Aucun Colt 1911 d’origine, à notre connaissance, n’a possédé de rainures à l’avant de la glissière. Nous demandons à CHAT-GPT d’identifier la marque et l’année de fabrication en lui précisant la possibilité d’utiliser le numéro de série sur le site de Colt. Chat GPT nous répond qu’il ne peut pas faire de requêtes dynamiques sur des bases de données externes. Ce n’est pas tout à fait juste car si sur l’interface d’ordinateur nous ne voyons pas la manière dont CHAT GPT trouve ou complète ses informations, en revanche sur l’interface de l’application mobile nous voyons clairement l’appel au moteur de recherche BING de Microsoft lorsque nous réalisons des requêtes plus génériques comme « Qui est Monsieur X ou Y ? ». L’IA peut donc compléter au besoin ses informations dynamiquement en faisant appel à la toile mais uniquement au travers de requêtes web standards qu’il collecte et synthétise dans sa réponse.
  • A la soumission des photos d’un STG44 et compte tenu de la matière photographique perfectible fournie, CHAT GPT réalise un sans-faute. Il va jusqu’à faire référence au chargeur courbe créé spécifiquement pour la munition intermédiaire 7,92 x33 Kurtz. Juste pour le plaisir, voici sa réponse exhaustive : « Les images que vous avez partagées semblent montrer un Sturmgewehr 44 (StG 44), qui était un fusil d’assaut utilisé par l’Allemagne pendant la Seconde Guerre mondiale. Il est reconnu comme l’un des premiers fusils d’assaut modernes et a introduit des concepts tels que le calibre intermédiaire et le design de chargeur détachable qui sont devenus standards dans les armes militaires suivantes. Caractéristiques visibles qui suggèrent qu’il s’agit d’un StG 44 :
    • Le design global : Le profil du StG 44 est assez distinctif, avec un long canon, un chargeur incurvé et une crosse en bois.
    • Le chargeur : Le chargeur incurvé est typique du StG 44, conçu pour le calibre intermédiaire 7,92×33mm Kurz.
    • La crosse : La crosse en bois a une forme reconnaissable qui correspond à celle du StG 44.
    • La poignée et la détente : Le carénage autour de la poignée de détente et la forme de la poignée elle-même sont caractéristiques du StG 44.
    • Le poinçon : Bien qu’il soit difficile de lire clairement les marques sur la deuxième image, elles semblent être des poinçons et des numéros de série qui sont utilisés pour identifier les armes militaires. Il est important de noter que, comme avec toute identification basée uniquement sur des images, il serait nécessaire de vérifier les marques et les numéros de série exacts pour confirmer l’authenticité et les détails spécifiques de l’arme, comme l’année de production et le fabricant. Des répliques et des copies peuvent parfois être confondues avec les originaux si on ne peut pas examiner l’arme de près. »

Vient le moment du pistolet à platine silex.

PNG - 15 Mo
Mauvaise photo prise à travers la vitrine d’un musée

Voici sa réponse exhaustive :
« L’arme sur la photo que vous avez partagée semble être un pistolet à silex richement décoré, probablement du XVIIIème siècle ou du début du XIXème siècle. L’ornementation détaillée avec ce qui semble être de l’incrustation d’or indique qu’il pourrait s’agir d’une pièce de maître ou d’un pistolet de présentation, possiblement fabriqué sur commande pour une personne de haut rang ou de la noblesse. Les pistolets de cette époque étaient souvent personnalisés avec des gravures, de l’or et des pierres précieuses pour refléter le statut du propriétaire. Ils étaient utilisés non seulement comme armes mais aussi comme symboles de statut social. Sans marque de fabricant visible ou d’autres marquages spécifiques, l’identification exacte du fabricant ou de l’origine peut être difficile à déterminer à partir d’une image seule. Ces armes étaient fabriquées par des artisans armuriers européens, et chacun avait son propre style et ses motifs distinctifs. Pour une identification précise, il serait idéal d’examiner l’arme de près, de rechercher des poinçons ou des marquages et de consulter des experts en armes anciennes ou des historiens. »
Nous laissons le lecteur juge de la pertinence de la réponse au vu du peu d’informations fournies dans la photographie, et pour notre part seul un expert aguerri en armes anciennes pourrait sans doute faire mieux.

Classifier les armes

Nous décidons de corser un peu le jeu et afin de nous rapprocher encore plus des fonctionnalités annoncées sur BASEGUN, demandons à CHAT-GPT s’il connait la réglementation française en matière de détention d’armes et s’il peut nous aider à classifier des armes à partir de photos.
Il nous répond que oui tout en nous offrant la synthèse de la classification telle que définie par le code de sécurité intérieure (CSI), non sans nous préciser en fin de laïus :
« Cette réglementation est complexe et peut être sujet à des mises à jour fréquentes. Il est toujours conseillé de consulter un avocat ou une source officielle pour des informations précises et actualisées. »

Encore un essai, nous lui soumettons de nouveaux l’AR15, le colt, un Pardini SP22, le STG44, un fusil lebel 1886. Les résultats sont les suivants :

-  L’AR15 est correctement classifié en B avec même des précisions plutôt pertinentes même s’il semble considérer que la seule manière d’être classé en B2 est justifié par un canon supérieur à 45 cm.
« En France, un fusil de ce type serait très probablement classé dans la catégorie B. Si c’est une arme semi-automatique avec un chargeur amovible et un canon de longueur supérieure à 45 cm, elle serait alors classée sous la sous-catégorie B2. Si le fusil a été modifié pour le tir à un coup par action manuelle, il pourrait être classé différemment. »
Nous décidons de le pousser dans ses retranchements en demandant la sous-catégorie. A part sur le colt 1911 classé d’emblée correctement en B1, CHAT GPT se prend un peu les pieds dans le tapis de notre règlementation dès lors que l’on veut savoir si une arme est classée en B1, B2, B4, C1 ou D.

- Le STG 44 est classé d’entrée de jeux en A, il nous précise néanmoins de vérifier s’il s’agit d’une réplique ou d’une copie, ce qui veut dire qu’il sait que ces répliques existent notamment dans le monde de l’airsoft. Les échanges avec CHAT GPT peuvent être aussi amusants car si le Pardini SP22 est correctement identifié et classé en B, il devient B2, puis après avoir précisé l’erreur à CHAT GPT, l’arme se retrouve classifiée en B4 puis B8 dès lors que l’on redemande des précisions.

- Dans le cas du Lebel 1886, il nous le classe d’emblée en C1 et malgré toutes nos tentatives, y compris de vérifier si CHAT GPT connait la doctrine des armes conçues avant 1900, ce qu’il confirme dans ses réponses, nous sommes dans un dialogue de sourds pour le faire changer d’avis, jusqu’à l’échange suivant :

  • « Question : Donc un fusil fabriqué avant 1900 est susceptible d’être en catégorie D ?
  • Réponse : Oui, c’est correct. En France, les armes fabriquées avant le 1er janvier 1900 qui ne sont pas conçues pour l’usage de munitions à étui métallique combustible ou qui utilisent des munitions ne pouvant pas être acquises commercialement sont généralement classées en catégorie D [..] Toutefois, si un fusil fabriqué avant 1900 est chambré pour des munitions qui sont toujours en production et disponibles commercialement, il serait alors classé en catégorie C et devrait être déclaré à la préfecture, avec la nécessité de présenter soit un permis de chasse valide, soit une licence de tir sportif. Il est important de noter que la législation peut changer, et il est conseillé de consulter les textes officiels ou les autorités compétentes pour des informations à jour.
  • Question : Quand a été fabriqué le lebel modèle 1886 ?
  • Réponse : Le fusil Lebel modèle 1886 a été officiellement adopté par l’armée française en mars 1887, bien que son appellation fasse référence à l’année de sa conception, 1886 […].
  • Question : Alors s’il a été fabriqué en 1886 et mis en service en mars 1887 pourquoi n’est-il pas classé en catégorie D suivant la réglementation et que tu prétends qu’il est en catégorie C dans tes réponses précédentes ?
  • Réponse : La classification des armes selon la date de fabrication est en effet un critère important, mais elle n’est pas le seul élément pris en compte dans la législation française sur les armes. Pour le fusil Lebel modèle 1886, malgré sa date de conception et de mise en service, il est classé en catégorie C en raison de sa capacité à utiliser des munitions qui sont encore fabriquées industriellement […] en résumé, la date de fabrication n’est pas le seul critère déterminant pour la classification d’une arme. La disponibilité des munitions joue également un rôle clé dans cette classification.
  • Question  : Qui fabrique encore de manière industrielle des cartouches pour fusils lebel modèle 1886 ?
  • Réponse : […] Parmi les entreprises qui ont produit ou produisent encore des cartouches 8 mm Lebel, on peut citer la société française Prvi Partizan (PPU), qui est bien connue pour la fabrication de munitions pour armes anciennes et obsolètes […] La disponibilité de ces munitions, bien que potentiellement limitée, signifie que le fusil Lebel modèle 1886 ne se qualifie pas pour la catégorie D selon la législation française sur les armes, mais est plutôt classé en catégorie C, nécessitant ainsi une déclaration pour sa détention. »

Nous avons reproduit ce dialogue presque dans son intégralité car nous avons essayé de comprendre pourquoi techniquement CHAT GPT se trompe dans la classification par défaut du fusil Lebel et surtout quel est son cheminement logique pour arriver en conclusion à cette certitude quant à la classification en catégorie C1. CHAT-GPT connait la production chez Partizan de munitions en calibre 8X51R LEBEL et pour lui si la munition est classée en C alors l’arme l’est aussi obligatoirement.
Nous avons réalisé un test supplémentaire le lendemain demandant de simplement classifier un Pardini SP22. CHAT GPT nous a amené immédiatement à la bonne réponse de classification en catégorie B1.

La veille, la même question associée à une demande d’identification par photo, nous avait fait errer dans presque toutes les sous catégories avec moultes justifications toutes plus erronées les unes que les autres. Comment expliquer ces erreurs lorsque l’on essaye d’entrer dans les subtilités de la classification des armes en France avec ce type d’IA ?
Le lecteur doit garder à l’esprit ce qui a été vulgarisé au début de cet article. Les modèles ou algorithmes doivent être entrainées pour faire moins d’erreurs.

Dans l’affaire du Lebel, faire en sorte que CHAT GPT fasse le distinguo entre le classement d’une arme et le classement d’une munition est juste une affaire d’entrainement et d’apprentissage un peu plus poussé. Il sait déjà que le Lebel entre dans la doctrine des armes anciennes, que l’acquisition de la munition est classifiée en C et nécessite un permis de chasser ou une licence de tir valide. C’est l’association des deux classements vers un classement unique résultant du plus restrictif des deux qui est source de l’erreur.

Dans l’affaire du Pardini, c’est vraisemblablement le point d’entrée dans les modèles (avec ou sans reconnaissance photographique) qui est source de l’erreur. En effet les algorithmes ne sont pas sollicités de la même manière et l’enchainement logique dans la réponse est différent. Si tel est le cas, là aussi ce n’est qu’un problème d’optimisation et d’entrainement des algorithmes. L’ensemble reste très acceptable si l’on prend en compte le fait que CHAT GPT 4.0 est une IA cognitive généraliste avant tout. Il va analyser la sollicitation en langage naturel avant de tenter « comprendre » la demande dans ce contexte. Nous sommes là, de ce point de vue, dans une « copie » des comportements humains car chez les humains aussi un énoncé de problème mal compris peut aboutir à une réponse potentiellement erronée.

Qu’en est-il de BASEGUN ?

L’ergonomie de BASEGUN est totalement différente de celle de CHAT-GPT. Nous n’interagissons pas en langage naturel et après avoir posté une photographie quelques informations assez basiques sont demandées.

PNG - 49.9 ko
Tout d’abord nous avons droit à quelques écrans d’informations sur la finalité fonctionnelle de BASEGUN.
PNG - 68.3 ko
Nous arrivons ensuite sur un 2ème écran qui nous propose soit de nous aider à l’identification d’une arme, soit de nous aider à la mettre en sécurité.
PNG - 59.1 ko
PNG - 256 ko
Explication du type de photo à télécharger
PNG - 542.1 ko
La première phase de l’identification, la reconnaissance de la typologie de l’arme.

.
Après avoir fait un petit tour dans le module d’assistance à la mise en sécurité, nous ne sommes pas allés jusqu’au bout. Après avoir répondu à des questions basiques sur la position des boutons de déverrouillage des chargeurs, la vidéo censée nous enseigner ne s’est jamais exécutée correctement au sein de notre navigateur.

PNG - 104.9 ko
Un nouvel écran avec d’autre questions

Nous choisissons donc l’option d’identification et présentons exactement les mêmes photographies qu’à CHAT-GPT. Le premier candidat étant notre AR15 en 300 BLK classifiée en B2.

Le premier écran nous invite à télécharger une photo dans l’application.

Puis un typage de l’arme est effectué par BASEGUN avec un pourcentage estimé de véracité. Ici il nous précise qu’il s’agit d’une arme automatique ou semi-automatique à 99%. Nous lui précisons que cela semble cohérent et continuons vers l’écran suivant.

Nous arrivons ensuite sur un écran qui nous invite à répondre à des questions supplémentaires.

PNG - 248.1 ko
Nous continuons, et avons droit à tutoriel qui nous enseigne la différence entre un chargeur balles et un chargeur à billes de type airsoft.
PNG - 334.7 ko
Nous cliquons sur l’option qui confirme notre bonne compréhension de la différence et qui nous permet de continuer. Nous sélectionnons le type de chargeur correspondant.
PNG - 542.4 ko
Nous arrivons enfin à l’écran tant attendu de la classification.
PNG - 331.8 ko
Le colt 1911 est identifié comme Pistolet semi-automatique en B à 99%, le modèle n’est pas identifié dans la sous-catégorie en B1 alors que CHAT GPT y était arrivé sans soucis.
PNG - 287.9 ko
Encore plus étonnant le Lebel est classé en B ou en C !
PNG - 493.7 ko
Avec l’identification du Pardini SP22, BASEGUN frise le ridicule face à CHAT GPT avec une classification potentielle en A, B ou… D mais avec une fiabilité donnée à 98 % quand même.
PNG - 477.6 ko
Nous demandons l’identification du STG44 et avant de cliquer nous faisons le pari que nous aurons une classification normande de type A, B ou C, et nous gagnons haut la main ce pari audacieux.


.
Force est de constater qu’en l’état actuel de la version de démonstration accessible en ligne sur le site WEB du ministère de l’Intérieur, cette version de BASEGUN est très loin des promesses annoncées.

PNG - 193.3 ko
Les mentions légales de BASEGUN


Nous apprenons sur l’onglet « Mentions Légales » de la page applicative que BASEGUN est un projet de développement open source et que le code source est librement accessible sur la base de données coopérative Github [2]. Cela veut dire que le code est librement consultable. Nous décidons d’y aller pour mener quelques investigations techniques sur BASEGUN et essayer de comprendre la quasi-inutilité de l’application telle qu’elle est présentée aujourd’hui sur le site du Ministère de l’Intérieur.

Après la connexion sur le site GITHUB en mode invité, nous parcourons l’arborescence du projet.
L’idée n’est pas de faire une analyse détaillée du code de l’application qui demanderait un temps non négligeable. La restitution de cette analyse ne serait compréhensible que par des experts en IA et développeurs informatique. Nous allons toutefois essayer de comprendre en synthèse, la pauvreté fonctionnelle de l’application testée face à CHAT GPT, et de restituer en langage compréhensible par tous, ce comportement étonnant après un démarrage du projet en 2021.
Nous découvrons que le code a été modifié il y a peine trois jours mais que les modifications récentes sont peu nombreuses.

PNG - 363.1 ko
Parcours des branches de code et de ses mises à jour
PNG - 188 ko
Voici le code modifié

Par curiosité nous cliquons sur la portion de code modifiée.

Nous y lisons un code qui a la charge de classifier par la longueur du canon des typologies d’armes. Le premier étonnement c’est que ce type d’instructions n’a rien à voir avec des fonctions d’IA. Il est basé sur des tests logiques conditionnels tout à fait génériques et présents dans tout langage de programmation depuis la préhistoire de l’informatique.

Nous cherchons les usages de l’IA dans le programme et finissons par remonter dans l’arborescence du projet. Nous identifions au passage des clés de chiffrement SHA (système d’encryptage) et la description des certificats que nous ne reproduirons pas ici par discrétion.
Cette partie de code aurait pu être non publique. Elle aurait dû être stockée dans une branche privée et protégée comme le préconise d’ailleurs GitHub (l’application de gestion des sources du programme parcourue) dans ses bonnes pratiques. Nous espérons que les certificats seront changés dans la future version de production.

Nous continuons notre parcours et découvrons trois branches différentes dont une qui semble liée à des modules fonctionnels d’IA. Nous identifions dans un dossier public appelé « Basegun-ml » l’usage de « YOLO version 8 » qui est un « moteur » IA de reconnaissance d’image fourni par la société Ultralytics.
Nous comprenons la raison de la publication du code de l’application car cela est imposé par les termes de la licence qui régit l’usage de la version gratuite ou professionnelle (Tarifée 20 $US par mois et par utilisateur) du moteur IA choisi par le Ministère. Cette licence d’utilisation est de type « code source libre de AGPL-3.0 ». Cela implique que n’importe qui peut aller consulter et analyser le code, évaluer sa robustesse voire même l’installer chez soi après avoir téléchargé librement les sources de l’application. On peut légitimement s’interroger sur le fait qui a conduit le ministère à faire le choix de ce type de licence pour les développements et non pas la version entreprise tarifée 500 $US par mois. Cette dernière version affranchit les clients de la contrainte de la publication ouverte du code.
Peut-être que l’état Français ne dispose pas des 6000 $US de budget annuels nécessaires à assurer la confidentialité d’une application qui sera utilisée par les forces de sécurité intérieure ?

En continuant notre exploration nous découvrons l’ensemble du travail réalisé et documenté dans l’apprentissage et l’optimisation des algorithmes. Il a été réalisé en 2021 et 2023 lors de deux campagnes d’apprentissage du moteur IA. Les férus de technologie IA y trouveront un document assez complet sur la manière dont cela s’est passé et avec quels résultats.

Nous n’aurons aucune appréciation ou critique technique du travail d’apprentissage et d’optimisation réalisé. Nous pouvons néanmoins dire de manière triviale que l’application aujourd’hui testable sur le site du Ministère de l’Intérieur ressemble plus à une maquette de l’interface utilisateur qu’à une application totalement opérationnelle avec un usage complet de l’IA tel que prévu et annoncé.

Nous pouvons aussi dire que contrairement à CHAT-GPT, qui est apparemment capable d’isoler et d’analyser automatiquement dans une photographie des parties de l’arme à la recherche de marquages, BASEGUN se contente visiblement de tenter d’identifier une arme par comparaison et reconnaissance d’images simplement. BASEGUN aura sans doute beaucoup de mal à faire la différence entre un Mauser 1896 et un Mauser allemand 1898.

Des résultats sidérants

En fin de rédaction de cet article, nous pensions pouvoir finir sur une note d’humour en mettant peut être dos à dos les deux IA, celle qui est censée devenir une experte des armes et la généraliste qui n’a pas été enseignée spécialement à cela, le résultat est une nouvelle fois assez sidérant.

PNG - 1.3 Mo


Images (source Wikipédia) et réponse complète de Chat GPT 4.0
La photo que vous avez envoyée montre un fusil qui semble être un modèle de fusil militaire ancien. En se basant sur la conception, il pourrait s’agir d’un Mauser Suédois, modèle M1896. Ce fusil a été largement utilisé par la Suède à la fin du 19ème et au début du 20èmesiècle. Il est reconnaissable par son long canon, sa crosse en bois, et son chargeur interne. Le M1896 est un fusil à verrou, ce qui signifie que les cartouches sont chargées dans un chargeur fixe et que l’opération du verrou est nécessaire pour chaque tir. Si cela correspond à ce que vous voyez ou si vous avez besoin d’informations plus détaillées ou d’une confirmation supplémentaire, n’hésitez pas à me le faire savoir !

PNG - 345.4 ko


Images (source Wikipédia) et réponse complète de Chat GPT 4.0
La deuxième photo que vous avez envoyée montre également un fusil qui semble être de type Mauser. Plus précisément, il ressemble au Mauser Gewehr 98, un fusil de service allemand largement utilisé pendant la Première Guerre mondiale. Ce modèle est très influent et a servi de base pour de nombreux autres fusils militaires dans le monde. Il est reconnaissable par son mécanisme à verrou robuste, son long canon, et son montage typique de la hausse et de la mire. Le Gewehr 98 est également connu pour sa fiabilité et sa précision, ce qui en a fait une pièce d’armement très respectée et un précieux collectible pour les amateurs d’histoire militaire. Si vous avez besoin de plus d’informations ou d’autres questions, n’hésitez pas à me demander !

PNG - 1.5 Mo
Les mêmes images ont retourné les résultats suivants sur BASEGUN.
Nous laisserons le lecteur tirer ses conclusions définitives sur la pertinence de l’une et l’autre
de ces applications en matière d’identification visuelle des armes.

En conclusion

Notre sentiment est que depuis 3 ans ce projet a avancé de manière erratique sans priorisation et/ou sans budget. Il est encore dans une phase d’exploration, certes avancée par certains aspects mais BASEGUN est toujours englué dans cette étape. Nous sommes encore très loin d’une application capable d’aller chercher un numéro RGA car cela nécessiterait au minimum une reconnaissance complète et fiable de la marque, du modèle, de la longueur du canon et du calibre de l’arme, ce que BASEGUN est très loin de réaliser à ce jour.

Nous avons le sentiment qu’une IA telle que CHAT-GPT, qui n’a absolument pas été entrainée pour remplir une fonction d’assistance à la classification légale des armes, s’en sort de manière beaucoup plus pertinente dans ses fonctions d’identification que ce que nous avons testé sur cette version de BASEGUN. Il est vrai que CHAT-GPT met en œuvre différents modules IA automatiquement en fonction de la demande formulée alors que BASEGUN n’est axé que sur un module de reconnaissance d’image et que tout le reste doit être développé en parallèle.

BASEGUN a semble-t-il buté longtemps sur les aspects reconnaissance de la longueur du canon et sans doute les équipes buttent-elles encore sur ce sujet, au point qu’une « rustine » a dû être codé « traditionnellement » tout à fait récemment pour que cela marche à peu près dans l’application testée.

Nous trouvons la trace dans les documents du projet d’un test réalisé par les équipes de développement. Il s’agissait d’un module spécifique et complémentaire pour renforcer la capacité à déterminer la longueur d’un canon automatiquement. Ces derniers modules font appel aux fonctions des cameras lidars embarqués dans certains smartphones ou tablettes permettant des modélisations 3D ou des prises de mesures précises. Cela pose d’emblée un problème d’équipement, les terminaux utilisés par les FSI ne sont peut-être pas tous équipés de cela.

Déterminer une longueur de canon peut être complexe en fonction des armes, on voit bien là toute la difficulté de l’automatisation du processus. N’hésitez pas à lire l’article de l’UFA sur le sujet.

PNG - 110.7 ko

BASEGUN peut sans doute faire mieux, peut-être même fait-il déjà mieux dans les laboratoires du ministère de l’intérieur, avec lesquels nous n’avons bien sûr aucun contact. Quoiqu’il en soit au vu de ses performances actuelles, l’appel à un expert est fortement recommandé et BASEGUN précise d’ailleurs dans ses réponses que dans le cas d’une procédure ses résultats ne sont pas légitimes.

JPEG - 3.3 Mo

L’utilisation de BASEGUN semble poser aussi un souci important de type juridique, cette fois ci. Les éléments du faisceau de preuves et de leur sincérité étant particulièrement encadré par le Code de Procédure Pénal par exemple.
Nous céderions volontiers ce terrain à un juriste qui pourrait sans doute nous éclairer de manière détaillée sur les limites juridiques de l’usage potentiel de BASEGUN, comme d’ailleurs celui de n’importe quelle IA dans ce type de cadre.
Enfin, si les forces de sécurité intérieures doivent continuer à faire appel aux experts en utilisant BASEGUN dans le cadre de leurs actions de contrôle ou de saisies d’armes alors nous pouvons légitimement nous poser la question de l’utilité de ce projet. Nous pourrons aussi nous questionner sur le niveau d’adoption réel que BASEGUN aura sur le terrain compte tenu des contraintes survolées, à fortiori avec le niveau de performance mesurée actuellement après 3 années de projet
BASEGUN finira peut-être silencieusement dans le carton des projets oubliés sous l’usure du temps et du peu de moyens mis en œuvre. De ce que nous savons ou que nous interprétons entre les lignes de ce projet mené depuis trois ans déjà, cela nous semble être une voie tout à fait plausible.

Voir aussi la rubrique IA : L’intelligence artificielle et les armes.

[1(OpenAI/Microsoft), SIRI (Apple), Google Assistant (Google), Alexa (Amazon), IBM Watson (IBM)

[2Le code source du projet est disponible publiquement.