Garder les IA et LLM sous contrôle avec les guardrails

Avr 8, 2024 | Data, Intelligence Artificielle | 0 commentaires

Salut l’équipe 👋,

Les récents événements concernant le retrait temporaire de Gemini AI de Google ont mis en lumière l’importance de mettre en place des Guardrails pour éviter les résultats offensants et inacceptables.

 

🛡️ Qu’est-ce que les LLM Guardrails ?

Les Language Learning Models (LLM) tels que ChatGPT d’OpenAI, Llama 2 de Meta et Bard de Google sont dotés de Guardrails (garde-fous) qui limitent leur utilisation et évitent qu’ils ne fournissent des informations dangereuses, tiennent des propos racistes, sexistes ou amplifient la désinformation. Ces Guardrails sont essentiels pour assurer la sécurité et l’intégrité des interactions entre les utilisateurs et les LLM.

Les LLM Guardrails sont des contrôles de sécurité qui surveillent et dictent les interactions entre les utilisateurs et les applications LLM. Ils sont conçus pour assurer le bon fonctionnement de l’IA dans un cadre défini et pour empêcher les utilisateurs de manipuler le modèle à l’aide de prompts malveillants. Les Guardrails permettent également de filtrer les réponses des modèles contenant un vocabulaire toxique ou à caractère sexuel et de corriger certaines hallucinations générées par les LLM.

 

 

🔗 Quelles sont les différentes formes de Guardrails dans les systèmes d’IA ?

Les Guardrails dans les systèmes d’IA peuvent prendre diverses formes, selon ses caractéristiques et son utilisation prévue.

Ils peuvent inclure des mécanismes:

👉 de protection de la confidentialité des données,

👉 des procédures pour prévenir les résultats discriminatoires,

👉 des politiques d’audit régulier pour la conformité aux normes éthiques et juridiques,

👉 de transparence pour garantir la compréhension et l’explicabilité des décisions prises par les systèmes d’IA.

Un peu de technique

Le fonctionnement des Guardrails peut être illustré par l’architecture orientée événements du runtime de Guardrails, déployée en mode asynchrone. Cela signifie que les différentes tâches sont exécutées de manière indépendante et simultanée, plutôt que de manière séquentielle. Les interactions avec une application sont considérées comme des événements (user_intent ou bot_intent) qui déclenchent des flux prédéfinis.

En réponse à la demande d’un utilisateur, une action de type « execute generate_user_intent » est déclenchée, entraînant une recherche de vecteurs selon la méthode K des plus proches voisins sur deux bases de données à l’aide d’un algorithme de classification. Si la demande correspond à une réponse type, le système charge le flux et l’exécute.
Deux possibilités se présentent alors : la demande est légitime, et la requête appropriée est envoyée au modèle sous-jacent, puis la réponse est retournée à l’utilisateur ; ou la demande est illégitime, et Guardrails déclenche le flux pour la décliner, sans envoyer la demande au modèle sous-jacent.

En somme, les Guardrails fonctionnent en traitant les interactions avec une application comme des événements, qui déclenchent des flux prédéfinis.

Guardrails LLM

🧪 NeMo Guardrails

NeMo Guardrails est une boîte à outils open source développée par NVIDIA pour aider les entreprises à construire des systèmes conversationnels LLM sûrs et fiables. Elle s’interpose entre l’utilisateur et une application propulsée par un grand modèle de langage (LLM) et peut être facilement intégrée à d’autres collections d’outils telles que LangChain ou la plateforme d’intégration SaaS Zapier.

NeMo permet aux utilisateurs de définir des flux d’interaction autorisés et non autorisés, ainsi que la manière dont un agent conversationnel engagera une discussion. Pour ce faire, il utilise CoLang, un langage de modélisation qui fournit une interface lisible et extensible permettant aux utilisateurs de soumettre le comportement de leurs bots ou leurs applications en langage naturel à des règles.

La boîte à outils permet également de définir des règles dans trois domaines : le sujet d’une conversation, la sûreté de l’interaction et la sécurité. Par exemple, une entreprise peut utiliser NeMo Guardrails pour déterminer la manière dont la base de connaissances sera interrogée, s’assurer que les demandes ne dérivent pas du sujet principal de l’application, et que le ton des réponses est cohérent avec la politique de communication de l’entreprise.

🤖 Guardrails AI

Guardrails AI est un paquet Python open source qui fournit des cadres de gardrail pour les applications LLM. Il met en œuvre une validation des réponses LLM de type pydantic (bibliothèque Python pour effectuer de la validation de données), y compris la validation sémantique, comme la vérification du biais dans le texte généré, ou la vérification des bogues dans un morceau de code écrit par LLM.

Guardrails AI utilise la spécification RAIL (Reliable AI Markup Language) pour faire respecter des règles spécifiques sur les sorties LLM et fournir une enveloppe légère autour des appels API LLM. RAIL est un dialecte de XML qui permet de spécifier des règles et des mesures correctives.

Chaque spécification RAIL contient trois éléments principaux :

➡️ Produit : cette composante contient des informations sur la réponse attendue de l’application d’IA. Elle doit inclure les spécifications de la structure des résultats escomptés (par exemple en JSON), le type de chaque champ en réponse, les critères de qualité de la réponse attendue et les mesures correctives à prendre si les critères de qualité ne sont pas remplis.

➡️ Prompt : ce composant contient les instructions de pré-prompt de haut niveau qui sont envoyées à une application LLM.

➡️ Script : ce composant optionnel peut être utilisé pour implémenter du code personnalisé pour le schéma, ce qui est particulièrement utile pour mettre en œuvre des valideurs personnalisés et des mesures correctives personnalisées.

Par exemple, une spécification RAIL peut être utilisée pour générer du code SQL sans bogues à partir d’une description en langage naturel du problème. Si les critères de sortie échouent en raison d’un bogue, le LLM ne se contente pas de réitérer l’invite, mais génère une réponse améliorée.

Guardrails AI permet également de prendre des mesures correctives et de faire respecter la structure et les garanties de type. Il peut être utilisé avec LangChain en créant un “Guardrails Output Parser”.

 

 

💼 Pourquoi les entreprises doivent-elles investir dans les Guardrails des LLM ?

L’évolution rapide de la technologie de l’IA dépasse souvent les cadres juridiques et réglementaires existants. Les entreprises peuvent être confrontées à des incertitudes concernant les problèmes de conformité lors du déploiement de systèmes d’IA. Les garde-fou des LLM peuvent aider à atténuer ces préoccupations en fournissant des contrôles de sécurité pour surveiller et dicter les interactions des utilisateurs avec les applications LLM. Cependant, la mise en œuvre de garde-fou nécessite une surveillance, une évaluation et un ajustement constants pour s’adapter aux changements dans les lois et les réglementation, tels que l’AI Act en cours d’élaboration par l’Union Européenne.

La fin en quelques mots 

Les Gardrail sont un élément crucial pour garantir que les systèmes d’IA fonctionnent de manière éthique et responsable. Les entreprises doivent s’adapter aux changements dans les lois et les réglementations et investir dans le développement et la mise en œuvre de Guardrails pour garantir que leurs systèmes d’IA sont conformes aux normes éthiques et juridiques. Leurs perspectives d’avenir sont prometteuses, car ils peuvent aider à préserver la sécurité, l’équité et la transparence des systèmes d’IA tout en permettant l’innovation.

La gestion des données vous intéresse et vous êtes un professionnel ? Renseignez-vous sur mon programme de formation DARE – Data Manager: une formation de 2 jours pour acquérir les fondamentaux de la gestion des données et construire la stratégie de gestion de données associée 🔥.

Have fun!
Laura

 

Sources
– Image 1: Medium 
– Image 3: Forbes 

Continuer la lecture…

0 commentaires

Soumettre un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *