Garde-corps Nemo
Gratuit
Nemo Guardrails est la boîte à outils de garde-corps programmable open source de NVIDIA. Il propose cinq types de mécanismes de garde-fou : entrée/sortie/récupération/exécution/dialogue. Il prend en charge le langage de configuration Colang, l'intégration du service API compatible OpenAI LangChain et le déploiement Docker. Il convient aux scénarios d’application LLM qui nécessitent une conformité en matière de sécurité.
NemoGuardrails
Paramètres et statistiques de base
Nemo Guardrails est une boîte à outils de garde-corps de sécurité programmable pour les applications LLM. Il est open source et maintenu par NVIDIA. Il est officiellement positionné comme « ajoutant facilement des garde-fous programmables pour les applications conversationnelles basées sur LLM ». Il ne fournit pas directement d'interface de discussion ni de modèle de raisonnement, mais est intégré en tant que couche middleware entre les applications et LLM, filtrant et limitant les entrées, les sorties, les processus de dialogue, les résultats de récupération et les actions d'exécution via cinq types de mécanismes de garde-fou.
| Projets | Informations publiques |
|---|---|
| Positionnement officiel | Boîte à outils de garde-corps programmable pour les applications de dialogue LLM |
| Type de garde-corps | Entrée, sortie, dialogue, récupération, exécution |
| Langage de configuration | Colang 1.0 / 2.0 |
| Formulaire de déploiement | Bibliothèque Python CLI, Serveur (Docker) |
| Licence Open Source | Apache2.0 |
| Étoiles GitHub | ~6 700 |
| Fourches GitHub | 769 |
| Contributeurs | 126 |
| Dernière version | v0.23.0 (02/07/2026) |
| Version Python | 3.10 / 3.11 / 3.12 / 3.13 |
| Plateformes prises en charge | Web (API serveur), bureau (CLI) |
Formulaires de déploiement : Nemo Guardrails propose trois méthodes d'utilisation : intégration de bibliothèque Python, conteneur de serveur indépendant et CLI. La bibliothèque Python convient à l'intégration de code existant, le mode Serveur convient à l'isolation de l'architecture des microservices et le mode CLI convient à une vérification rapide pendant la période de développement.
Système de garde-corps : les cinq types de garde-corps correspondent à différentes sections de l'application LLM : couche d'entrée (filtrage des demandes de l'utilisateur), couche de sortie (examen des réponses du modèle), couche de dialogue (contrôle du processus de dialogue), couche de récupération (filtrage au niveau des blocs RAG) et couche d'exécution (vérification des appels d'outils), formant une couverture de sécurité complète de la demande à la réponse.
Activité communautaire : plus de 6 700 étoiles, 769 Forks, 126 contributeurs, ce qui reflète que le projet a formé un écosystème open source stable et que l'intégration des contributions de la communauté inclut des services de sécurité tiers tels que PolicyAI, CrowdStrike, Cisco, Trend Micro et Pangea.
Reconnaissance des utilisateurs et du marché
La valeur marchande de Nemo Guardrails se reflète dans le double soutien de la marque NVIDIA et de la communauté open source, le positionnant dans le domaine de conformité en croissance rapide de la sécurité LLM.
Reconnaissance académique : ce projet dispose d'un document de présentation du système EMNLP 2023 (Rebedea et al., 2023) et dispose d'un dossier de citation public dans la communauté universitaire, indiquant que sa conception architecturale a été évaluée par des pairs.
Adoption par la communauté : les données GitHub montrent plus de 6 700 étoiles et 126 contributeurs, avec une activité de développement intensive - le dernier commit montre qu'il y avait encore des mises à jour de code d'il y a 16 heures. Les problèmes et les demandes de tirage restent à deux chiffres (111 problèmes / 64 PR), et les commentaires et réparations des problèmes de la communauté sont actifs.
Intégration de l'écosystème d'entreprise : Nemo Guardrails s'est intégré à un certain nombre de fournisseurs de sécurité, notamment ActiveFence, PolicyAI, CrowdStrike AIDR, Cisco AI Defense, Trend Micro Vision One, Pangea AI Guard, GuardrailsAI, Clavata, etc., couvrant des scénarios de sécurité au niveau de l'entreprise tels que l'audit de contenu, la détection des menaces et la désensibilisation des informations personnelles.
Prérequis : La valeur de Nemo Guardrails dépend du fait que l'utilisateur possède déjà ou est en train de créer une application LLM. Si l’équipe n’est pas encore connectée à des fonctionnalités LLM, la boîte à outils Guardrail ne peut pas générer de revenus de manière indépendante. Il est plus adapté aux équipes qui « existent des liens d'inférence LLM et doivent compléter la couche de gouvernance de sécurité ».
Avantage de coût
- C-side/Individuel : Généralement, une version gratuite est fournie pour découvrir les fonctions de base, et l'utilisation à haute fréquence nécessite un abonnement payant.
- API/Développeur : Facturé au volume d'appels, adapté aux équipes de développement qui peuvent être intégrées de manière flexible dans leurs propres systèmes.
- Entreprise/Privatisé : contactez le propriétaire de l'entreprise pour un devis personnalisé et un plan de déploiement. Le prix spécifique est soumis à la page officielle de tarification en temps réel.
Fonctions principales
Les principales capacités de Nemo Guardrails s'articulent autour de « cinq types de garde-corps programmables + langage de configuration Colang + intégration de sécurité tierce » :
- Input Rails : effectue un audit avant que les requêtes des utilisateurs n'atteignent LLM, qui peut rejeter l'entrée (si une invite de jailbreak est détectée), désensibiliser les données sensibles (remplacement des PII) et réécrire le contenu de l'entrée. Prend en charge plusieurs méthodes de détection telles que la correspondance régulière, les services tiers de l'API du modèle de classificateur, etc.
- Output Rails : post-examen des réponses générées par LLM, vous permettant de rejeter la sortie (par exemple, un contenu nuisible est détecté), de réécrire les réponses (par exemple, de supprimer des données sensibles) et de vérifier les faits. La version 0.23.0 ajoute une détection d'expansion de contexte, qui peut intercepter un contenu excessivement long/dupliqué/à faible entropie/remplissage.
- Dialog Rails (Dialog Guardrail) : définissez les contraintes de flux de dialogue via le langage Colang, contrôlez LLM pour répondre dans le chemin prédéfini et évitez de vous écarter du sujet ou d'entrer dans des sujets non autorisés. Prend en charge la gestion de l'état des conversations à plusieurs tours.
- Retrieval Rails : dans les scénarios RAG, les morceaux de documents récupérés sont examinés morceau par morceau, permettant à des morceaux spécifiques d'être rejetés ou réécrits avant d'être envoyés à LLM, empêchant ainsi l'inclusion d'informations sensibles dans le contexte de construction.
- Execution Rails : Vérifiez les paramètres d'appel et les valeurs de retour des outils/fonctions pour garantir que les actions externes appelées par LLM sont exécutées dans la limite de sécurité.
- Langage de configuration Colang : un langage spécifique à un domaine avec une syntaxe de type Python pour définir des règles de protection, des flux de conversation et l'intention de l'utilisateur. Colang 1.0 (par défaut) et Colang 2.0 sont pris en charge.
- Serveur Guardrails : service API HTTP compatible OpenAI, prend en charge
/v1/chat/completions,/v1/models,/v1/checkset d'autres points de terminaison, et peut être utilisé comme couche de remplacement direct pour les applications existantes. - Bibliothèque de garde-corps intégrée : des garde-corps prédéfinis tels que la détection de jailbreak, la sécurité du contenu, la sécurité des sujets, la vérification des faits, la détection des hallucinations, la désensibilisation des PII, etc. peuvent être activés directement.
Evolution du modèle et de la version
Mises à jour itératives continues, la dernière version introduit une optimisation des performances et de nouvelles fonctionnalités. Les informations sur la version historique peuvent être consultées sur la page de version officielle. Il n’existe pas encore de calendrier complet d’évolution de la version publique. Il est recommandé de prêter attention à l'annonce officielle pour comprendre le rythme des mises à jour des fonctionnalités.
Avantages techniques
La différenciation technique des Garde-corps Nemo vient de sa conception architecturale de « garde-corps en couches + contrôle de processus programmable + intégration écologique par tiers » :
Couverture complète des liaisons du garde-corps à cinq couches : Entrée → Boîte de dialogue → Récupération → Exécution → Sortie Le garde-corps à cinq couches est connecté en série et chaque couche peut configurer indépendamment la stratégie d'interception/modification/libération. Cette conception en couches évite les angles morts d'un seul point de détection - par exemple, le garde-corps de sortie ne peut à lui seul empêcher les tentatives de jailbreak lors de l'entrée de l'utilisateur, tandis que la combinaison à trois couches d'entrée + dialogue + sortie peut former une surface de défense plus complète.
Contrôle de conversation programmable Colang : contrairement à d'autres solutions de garde-fou qui ne fournissent que des catégories fixes de modération, Colang permet aux développeurs de définir des flux de conversation personnalisés, les intentions des utilisateurs et les comportements des robots avec un DSL de type Python. Cela fait du garde-corps non seulement une classification binaire « bon/mauvais », mais peut concevoir des contraintes d'interaction complexes à plusieurs tours (telles que devoir s'authentifier d'abord, poser des questions plus tard).
Moteur parallèle IRails : le moteur IORails introduit à partir de la v0.21.0 prend en charge l'exécution parallèle des garde-corps d'entrée et de l'inférence LLM (c'est-à-dire la génération spéculative). En mode sans streaming, le retard des garde-fous d'entrée est masqué dans le temps de réponse LLM, réduisant ainsi le retard perçu de bout en bout. La version 0.22.0 étend les capacités de parallélisation aux garde-fous de sortie de streaming.
Architecture de dépendance facultative : LangChain est rétrogradé de dépendance principale à facultative à partir de la v0.22.0, avec un client compatible OpenAI basé sur httpx intégré. Ce changement réduit le risque de conflits de dépendances et permet aux scénarios qui ne nécessitent pas que LangChain obtienne un package de déploiement plus léger. La v0.23.0 réduit encore la taille de la roue d'environ 10 fois.
Compatibilité des modèles d'inférence : la v0.20.0+ prend en charge les modèles d'inférence OpenAI (tels que la série o), gère automatiquement les différences de compatibilité dans les paramètres tels que « température », « stop », « max_tokens », etc., de sorte que la couche de garde-corps ne soit pas affectée par les changements dans le type de modèle sous-jacent.
Comment utiliser
Nemo Guardrails propose trois parcours d'utilisation, adaptés aux équipes de différents niveaux de maturité :
| Comment utiliser | Convient aux scénarios | Caractéristiques |
|---|---|---|
| Bibliothèque Python (pip) | Code d'application LLM existant, nécessité d'intégrer des garde-corps | Modifications minimes, remplacez l'appel LLM d'origine via LLMRails.generate() |
| Serveur Guardrails (CLI/Docker) | Architecture de microservices, j'espère que les garde-corps pourront être déployés indépendamment | API compatible OpenAI, accessible de manière transparente en tant que couche proxy |
| Conteneur Docker | Isolation des limites de production, gestion et contrôle des ressources | Dockerfile complet, peut lier des fichiers de configuration et des actions personnalisées |
Exemple d'accès rapide à la bibliothèque Python :
à partir de nemoguardrails, importez LLMRails, RailsConfig
# Configuration du garde-corps de charge
config = RailsConfig.from_path("CHEMIN/VERS/CONFIG")
rails = LLMRails(config)
# Appelez LLM via la couche de garde-corps
achèvement = rails.generate(
messages=[{"role": "user", "content": "Bonjour tout le monde !"}]
)
Exemple de démarrage du serveur :
# Démarrer le serveur de garde-corps
serveur nemoguardrails --config CHEMIN/TO/CONFIGS --port 8000
# Utiliser l'API compatible OpenAI
curl -X POST http://localhost:8000/v1/chat/completions \
-H "Type de contenu : application/json" \
-d '{
"config_id": "échantillon",
"messages": [{"role": "user", "content": "Bonjour!"}]
}'
Structure typique du fichier de configuration du garde-corps (config.yml) :
modèles:
- type : principal
moteur: openai
modèle : gpt-4
rails :
entrée :
flux :
- vérifier le jailbreak
- masquer les données sensibles lors de la saisie
sortie :
flux :
- auto-vérification des faits
- hallucination d'autocontrôle
La mise en œuvre est généralement effectuée selon « d'abord partielle, puis complète » : activez d'abord les garde-fous d'entrée + sortie sur 1 à 2 points de capacité LLM à faible risque (tels que la génération de résumés, la classification du contenu), vérifiez le taux de faux positifs et l'impact des retards, puis étendez progressivement aux processus de dialogue et aux scénarios à haut risque (tels que l'authentification de l'identité de l'utilisateur, les interactions liées au paiement). Vous devez accorder une attention particulière au taux de faux positifs des garde-corps lors du premier accès - une interception excessive affectera considérablement l'expérience utilisateur.
Prix des produits
Nemo Guardrails lui-même est un projet open source, sous licence Apache 2.0, sans frais d'achat de logiciel. Le coût se reflète principalement dans la couche de raisonnement et la couche d’exploitation et de maintenance :
- Développeurs côté C/individuels :
pip install nemoguardrailspour utiliser gratuitement toutes les fonctions de base et les bibliothèques de garde-corps intégrées. Les coûts supplémentaires d'inférence LLM (modèles appelés garde-corps) sont à la charge du développeur. - Développeur/Auto-hébergé : Pas de frais de licence, de coûts d'infrastructure (serveurs GPU/CPU, stockage, réseau), de main d'œuvre d'exploitation et de maintenance, de coûts de développement de règles de garde-corps personnalisées. Il est recommandé de préparer au moins 2 à 4 semaines pour le réglage de la configuration du garde-corps et la convergence du taux de fausses alarmes.
- Déploiement de production en entreprise : si vous utilisez le point de terminaison NVIDIA Build pour l'inférence de garde-fou, vous devez vous référer à la page officielle de tarification en temps réel ; il n'y a pas de frais d'inférence externe lorsqu'il est entièrement auto-hébergé. Les entreprises doivent également prendre en compte des termes tels que l'intégration SSO et le SLA du journal d'audit, qui doivent être confirmés avec l'équipe commerciale de NVIDIA.
Scénarios d'application
Les scénarios applicables pour Nemo Guardrails sont concentrés dans les domaines où des applications LLM existent déjà ou sont en cours de création et où une gouvernance de la conformité en matière de sécurité est requise :
- Support client et robot de conversation : déployez des garde-fous d'entrée (pour filtrer les demandes malveillantes/jailbreakées) et des garde-fous de sortie (pour garantir que les réponses sont conformes aux politiques de l'entreprise et ne contiennent pas d'informations sensibles) dans l'IA du service client afin de réduire les coûts d'examen manuel et d'interception. Objectif de vérification : impact du taux de fausses alarmes du garde-corps sur la durée de la première sonnerie.
- FAQ sur la base de connaissances RAG : activez les garde-fous de recherche pour effectuer des audits de sécurité bloc par bloc des blocs de documents vérifiés afin d'empêcher les employés d'exposer accidentellement des informations confidentielles lors de requêtes dans la base de connaissances interne. Objectif de la vérification : l'impact des garde-corps au niveau des blocs sur le taux de rappel de récupération.
- Conformité financière et examen juridique : dans les scénarios à haut risque tels que l'examen des contrats et les questions-réponses sur la conformité, des garde-fous à lien complet (entrée + dialogue + sortie) sont activés et des API de sécurité tierces (telles qu'ActiveFence et PolicyAI) sont utilisées pour le filtrage à plusieurs niveaux. Objectif de vérification : délai de bout en bout après la connexion en série des garde-corps multicouches.
Personnes concernées
- Développeurs d'applications LLM : les équipes qui ont besoin d'ajouter une couche de sécurité à leurs applications d'IA auto-construites peuvent rapidement les intégrer via les bibliothèques Python ou le serveur. L'apprentissage du Colang coûte environ 1 à 3 jours.
- Ingénieur sécurité et conformité IA : rôle responsable de la formulation et de la mise en œuvre des politiques de sécurité des applications IA. Colang peut être utilisé pour coder les politiques de sécurité dans des règles de garde-corps exécutables afin de remplacer l'examen manuel des SOP.
- Platform Architect/SRE : les équipes qui ont besoin d'unifier la gouvernance de la couche de sécurité LLM peuvent utiliser Guardrails Server pour réaliser un découplage architectural des garde-corps et de la logique métier.
Ne convient pas à la foule : Équipes qui n'utilisent aucune capacité LLM (les garde-corps n'ont aucun sens) ; les utilisateurs individuels qui ont besoin de solutions de sécurité « prêtes à l'emploi, sans configuration » (nécessitant un certain investissement en développement et en configuration) ; des scénarios extrêmement sensibles à la latence de bout en bout (chaque inférence de garde-corps ajoute 200 à 1 000 ms, selon le modèle et la méthode de déploiement).
Résumé et Outlook
Nemo Guardrails fournit une solution middleware personnalisable, auditable et évolutive pour la gestion de la sécurité des applications LLM grâce à une combinaison de cinq types de garde-corps programmables + langage de configuration Colang + licence open source. Il ne s'agit pas d'un interrupteur de sécurité « à un seul bouton », mais d'un cadre de garde-corps qui nécessite un investissement dans la configuration et le réglage. L'itération intensive de la v0.14.1 à la v0.23.0 (environ 4 à 6 versions du lundi) montre l'investissement continu de NVIDIA dans ce domaine, en particulier le moteur parallèle IORails et le découplage LangChain, qui réduisent les risques de latence et de dépendance dans le déploiement réel.
Limites et incertitudes actuelles : Il n'existe pas de données de référence publiques pour le taux de faux positifs (faux positifs) et de faux négatifs (faux négatifs) du garde-corps, et l'équipe doit effectuer elle-même des tests de résistance dans le scénario cible ; l'applicabilité de la bibliothèque de garde-corps intégrée doit être évaluée en conjonction avec des scénarios commerciaux réels, et le document officiel indique clairement que « les garde-corps intégrés peuvent ne pas être applicables à tous les scénarios de production » ; les conditions d'autorisation de production et les prix des points de terminaison NVIDIA Build n'ont pas encore été affichés publiquement et de manière stable ; Colang 2.0 est encore en phase d'amélioration fonctionnelle et il est recommandé d'utiliser Colang 1.0 pour la production.
Suggestions d'approvisionnement et d'adoption : Il est recommandé aux nouvelles équipes de terminer d'abord le PoC dans un délai d'une à deux semaines via "pip install nemoguardrails" + un exemple de configuration officiel, en se concentrant sur l'évaluation si le délai de raisonnement du garde-corps, le taux de faux positifs et la configuration de Colang répondent à la complexité des règles métier. Les entreprises doivent confirmer auprès de l'équipe commerciale de NVIDIA avant d'acheter : les termes de la licence NVIDIA Build dans le contexte de production, l'architecture prenant en charge les limites du déploiement privé et la compatibilité de l'intégration de LangChain sur le fournisseur LLM cible.
Outils associés : Copilote GitHub,
Curseur
Evolution de la version des garde-corps Nemo
À en juger par les informations publiques des versions de GitHub, le rythme d'itération de la version de Nemo Guardrails est d'environ 4 à 6 lundis, et la ligne principale d'évolution de 0.14.1 à 0.23.0 peut être résumée en trois étapes :
Période de renforcement des capacités de base (v0.14.1 - v0.17.0)
- v0.14.1 (09/07/2025) : configuration simplifiée de la détection de jailbreak, correctif du constructeur LLMRails.
- v0.15.0 (08/08/2025) : exécution de garde-corps parallèle, infrastructure de traçage OpenTelemetry de garde-corps de sortie en streaming.
- v0.16.0 (05/09/2025) : suivi des conventions sémantiques OpenTelemetry GuardrailsAI intégré à la communauté Pangea.
- v0.17.0 (2025-10-10) : les appels d'outils passent par la réécriture de RunnableRails, les garde-corps d'entrée/sortie de l'outil.
Période de reconstruction du moteur et d'expansion écologique (v0.18.0 - v0.20.0)
- v0.18.0 (07/11/2025) : garde-corps de trace d'inférence BotThinking, cache LFU intégré du fournisseur multi-embarqué Cisco AI Defense.
- v0.19.0 (04/12/2025) : compatible LangChain v1.x.
- v0.20.0 (2026-01-22) : modèle de sécurité du contenu d'inférence, détection GLiNER PII, messages de rejet multilingues.
IORails et période d'optimisation (v0.21.0 - v0.23.0)
- v0.21.0 (2026-03-12) : moteur d'optimisation IORails (garde-corps parallèle sans streaming), serveur compatible OpenAI, middleware LangChain Agent.
- v0.22.0 (2026-05-23) : garde-corps de sortie de streaming IORails traçage OTEL LangChain découplé en prise en charge facultative du modèle d'inférence.
- v0.23.0 (02/07/2026) : garde-corps du classificateur Hugging Face, détection de ballonnement contextuel, détection Polygraf PII, remplacement de la recherche NumPy Annoy, paquet de roues réduit de 10 fois.
Informations de version
- Garde-corps Nemo 0.23.0 :Ajout de garde-corps de classificateur Hugging Face, de détection d'expansion de contexte, de détection et de désensibilisation Polygraf PII ; La recherche précise NumPy remplace Annoy ; Les appels d'outils prennent en charge les requêtes en streaming et hors streaming ; la taille de l'ensemble de roues est réduite d'environ 10 fois.
- Garde-corps Nemo 0.22.0 :IORails prend en charge les garde-fous de sortie de streaming et le traçage OpenTelemetry ; LangChain est découplé en tant que dépendance facultative ; prise en charge du modèle d'inférence ; Azure est prédéfini comme framework par défaut de première classe. La page officielle en temps réel prévaudra.
- Garde-corps Nemo 0.21.0 :Présentation du moteur de garde-corps d'entrée/sortie optimisé IORails pour prendre en charge l'exécution parallèle ; Serveur de garde-corps compatible OpenAI ; Intégration du middleware LangChain Agent ; Intégration de la communauté PolicyAI et CrowdStrike AIDR. La page officielle en temps réel prévaudra.
- Garde-corps Nemo 0.20.0 :Prise en charge du modèle de sécurité du contenu d’inférence ; Détection PII open source GLiNER ; messages de refus multilingues ; configuration du streaming simplifiée. La page officielle en temps réel prévaudra.
- Garde-corps Nemo 0.19.0 :Prise en charge compatible LangChain v1.x. La page officielle en temps réel prévaudra.
- Garde-corps Nemo 0.18.0 :Garde-fous de trace d'inférence BotThinking ; Fournisseurs d'intégration Azure OpenAI/Cohere/Google ; Intégration de Cisco AI Defense ; Cache en mémoire LFU. La page officielle en temps réel prévaudra.
- Garde-corps Nemo 0.17.0 :Prise en charge du relais d'appel d'outil ; Réécriture de RunnableRails ; garde-corps d'entrée/sortie d'outils ; Intégration de la communauté Trend Micro. La page officielle en temps réel prévaudra.
Avis des utilisateurs