Guide du développeur sur les garde-fous NeMo pour la sécurité de l’IA en entreprise

Nouvelle information marquante dans l’actualité IA.

Guide du développeur sur les garde-fous NeMo pour la sécurité de l’IA en entreprise

Dans ce tutoriel, nous mettons en place un pipeline NeMo Guardrails complet qui présente comment des garde-fous à plusieurs niveaux peuvent contrôler un assistant financier basé sur un LLM tout au long du cycle de vie complet d’une requête. Nous combinons la détection et la masquage déterministes des informations à caractère personnel, des autocontrôles des entrées et des sorties basés sur des modèles de langage de grande envergure (LLM), le filtrage des résultats de travaux de recherche, le masquage des numéros de compte, les restrictions thématiques et le contrôle d’accès aux outils basé sur des politiques. Nous mettons également en œuvre des interactions multi-étapes avec état, un suivi détaillé de l’activation des voies, la comptabilisation des jetons et un rapport de couverture de type « red team », ce qui nous autorise d’évaluer si l’assistant répond de manière sécurisée, quelle commande gère chaque requête et quel est le coût de calcul lié à cette protection.

Nous installons NeMo Guardrails et configurons le modèle OpenAI, le point de terminaison de l’API et les paramètres d’authentification nécessaires à son exécution. Nous définissons la configuration YAML à l’aide d’instructions générales destinées à l’assistant et de rails hiérarchisés pour l’entrée, la recherche et la sortie. Nous définissons également des messages d’alerte d’autocontrôle qui détectent les jailbreaks, les contenus inappropriés, les accès non autorisés aux comptes et les réponses financières à risque.

Nous définissons les flux Colang qui mettent en œuvre la gestion déterministe des informations à caractère personnel (PII), le filtrage des résultats de recherche et la réécriture des réponses. Nous ajoutons des modèles de dialogue thématiques pour les requêtes d’ordre politique et liées à l’investissement, tout en permettant des interactions contrôlées concernant le solde des comptes et les virements bancaires. Nous mettons également en place un flux de transfert soumis à des règles qui distingue les transactions autorisées des demandes dépassant la limite quotidienne configurée.

Dans le même temps, nous mettons en œuvre des actions Python déterministes pour la détection des données à caractère personnel, leur masquage, le filtrage des résultats de recherche, le masquage des comptes, la récupération des soldes et l’évaluation des politiques de virement. Nous utilisons les mises à jour de contexte ActionResult pour transmettre des informations de politique condensées et des segments récupérés sans injecter inutilement des retombées d’action volumineux dans l’invite. Nous créons également un moteur de exploration de connaissances léger basé sur des mots-clés, qui dévoile comment les documents internes peuvent être filtrés avant d’atteindre le modèle.

En parallèle, nous créons les objets `RailsConfig` et `LLMRails`, puis nous enregistrons chaque action personnalisée auprès du moteur d’exécution de Guardrails. Nous vérifions les flux et les rails configurés afin de nous assurer que nos contrôles personnalisés sont chargés parallèlement à la bibliothèque de flux intégrée de NeMo Guardrails. Nous procédons ensuite à des démonstrations représentatives tout en enregistrant les rails activés, les temps d’exécution, l’utilisation des jetons et les appels au LLM pour chaque requête.

Nous testons le comportement en de multiples tours en conservant l’historique de la conversation d’une requête à l’autre, tout en permettant aux garde-fous de s’exécuter à nouveau à chaque tour. Nous exécutons ensuite une suite de tests de couverture comprenant des sondes de type « jailbreak », « PII », « transfert », « thématique », « investissement » et « récupération », puis nous comparons les garde-fous activés aux gestionnaires attendus. Nous résumons les résultats en termes de taux de réussite, de blocages définitifs et de consommation de jetons, ce qui nous fournit une mesure synthétique de la couverture des garde-fous et du coût opérationnel.

En conclusion, nous avons démontré comment NeMo Guardrails nous permet d’aller au-delà du simple filtrage des invites pour évoluer vers une architecture de sécurité multicouche et vérifiable. Nous avons dissocié les contrôles déterministes peu coûteux des vérifications basées sur les grands modèles de langage (LLM), filtré les contenus sensibles issus de la recherche avant qu’ils n’atteignent le modèle d’IA, réécrit les performances dangereux et appliqué des politiques explicites avant d’autoriser les opérations d’écriture. Nous avons ensuite validé cette conception par le biais d’exécutions multi-tours, de traçage de parcours, de mesures de jetons et de tests de couverture, ce qui nous a permis de disposer d’un cadre permettant de comprendre à la fois l’efficacité et le coût opérationnel des garde-fous dans les applications LLM destinées à la production.

Il faudra attendre les retours concrets pour juger de l’impact réel.

À découvrir aussi :


D’après MarkTechPost : MarkTechPost