L'IA générative représente la dernière technique qu'une entreprise peut utiliser pour déverrouiller les données piégées à l'intérieur de ses frontières. Le moyen le plus simple de conceptualiser ce qui est possible avec l'IA générative est d'imaginer un modèle de langage étendu personnalisé - similaire à celui qui alimente ChatGPT - s'exécutant à l'intérieur de votre pare-feu. Désormais, ce LLM personnalisé n’est pas le même que celui qu’OpenAI héberge sur l’Internet public. Au lieu de cela, il a acquis une « formation avancée » sur votre entreprise. Cela se fait en lui donnant accès à un corpus de documents inaccessible au monde extérieur. Cependant, ce nouvel outil n'est pas un moteur de recherche conventionnel qui fournira une liste de liens qu'il vous faudra des heures pour examiner et filtrer davantage. Il s’agit plutôt d’une solution capable de générer le contenu dont vous avez besoin. Au fil du temps, vous vous retrouverez à lui donner des ordres et à lui poser des questions. Voici quelques exemples pour vous donner une idée de ce qui est possible :
"Retrouvez nos récentes découvertes sur la bourse européenne."
"Créez un résumé pour mon exposé sur l'IA générative."
« Retrouvez tout ce que nous avons publié ce trimestre. »
Les exemples ci-dessus sont des scénarios de recherche, mais un Large Language Model (LLM) bien construit peut également être utilisé pour le support client (chatbot), le résumé, la recherche, la traduction et la création de documents, pour n'en nommer que quelques-uns.
Ces exemples simples mettent en évidence la puissance de l'IA générative : il s'agit d'un outil permettant d'effectuer votre travail plus efficacement plutôt que de générer une liste de lecture.
Un tel outil ne peut pas exister, et les choses peuvent tourner très mal si des préoccupations telles que la sécurité et la qualité des données ne sont pas prises en compte. De plus, les modèles qui alimentent l’IA générative ne peuvent pas fonctionner dans un centre de données conventionnel. Ils ont besoin d'un environnement moderne avec des outils modernes pour gérer les données non structurées (lac de données), créer des pipelines AI/ML pour vos LLM (outils MLOP) et de nouveaux outils qui permettent aux LLM d'obtenir la formation dont ils ont besoin concernant votre corpus personnalisé. (Je parle de bases de données vectorielles pour implémenter la génération augmentée de récupération - j'expliquerai plus en détail plus tard dans cet article).
Dans cet article, je souhaite aborder au niveau conceptuel ce qui doit être pris en compte pour qu'une entreprise puisse mettre en œuvre avec succès l'IA générative.
Commençons par une conversation sur les données.
Une distinction importante est que les données nécessaires à l’IA générative ne sont pas les mêmes que les données utilisées pour l’IA conventionnelle. Les données ne seront pas structurées : en particulier, les données dont vous avez besoin seront des documents enfermés dans des outils tels que SharePoint, Confluence et les partages de fichiers réseau. Une bonne solution d’IA générative peut également gérer du contenu non textuel tel que des fichiers audio et vidéo. Vous aurez besoin d’un pipeline de données qui collecte toutes ces données et les regroupe sous un même toit.
Il s’agit peut-être de la tâche la plus difficile d’une initiative d’IA générative. Nous savons tous à quelle vitesse les sites Confluence et les sites Sharepoint apparaissent au sein d'une organisation. Il n'y a aucune garantie que les documents qu'ils contiennent soient complets, véridiques et exacts. D'autres préoccupations concernent la sécurité, les informations personnelles identifiables et les conditions de licence si les documents proviennent d'une source extérieure.
Une fois que vous avez identifié les documents qui contiennent de véritables renseignements, vous avez besoin d’un endroit où les placer. Malheureusement, ils ne peuvent pas rester à leur emplacement d’origine. SharePoint, Confluence et les partages de fichiers réseau sont des outils qui n'ont pas été conçus pour servir rapidement des documents à des fins de formation et d'inférence. C'est là que MinIO entre en jeu. Vous souhaiterez stocker vos documents dans une solution de stockage dotée de toutes les fonctionnalités auxquelles vous êtes habitué : évolutive selon vos besoins , performances à grande échelle , fiable , tolérante aux pannes et interface cloud native . L'essentiel est que vous devez créer un pipeline de données qui regroupe les données brutes provenant de plusieurs sources, puis les transforme pour être consommées par un LLM. Le diagramme ci-dessous montre la variété de sources qui peuvent exister au sein d'une organisation et les contrôles de haut niveau qui doivent être effectués.
Examinons de plus près le pipeline de données en approfondissant les contrôles de sécurité et de qualité nécessaires pour transformer les données brutes en données de qualité.
Les organisations devraient commencer par dresser un inventaire de toutes les sources de documents. Pour chaque source de document, tous les documents trouvés doivent être catalogués. Les documents doivent être examinés concernant les licences et la sécurité. Certains documents devront peut-être être exclus de votre solution. Une partie importante de ce processus consiste à identifier les données restreintes qui doivent être modifiées avant d'être incluses dans votre solution d'IA générative.
Une fois que vous avez examiné vos documents pour en vérifier la sécurité et les licences, les contrôles de qualité viennent ensuite. Par exemple, la véracité, la diversité (s’il s’agit de personnes) et la redondance. Des modèles précis ne peuvent être créés sans données de haute qualité. Cela est vrai avec l’IA conventionnelle (apprentissage supervisé, apprentissage non supervisé et apprentissage par renforcement) – et c’est particulièrement vrai avec l’IA générative. Les documents de moindre qualité, les documents redondants et les documents contenant des données inexactes dilueront les réponses d'un LLM ou même créeront des hallucinations.
Une visualisation d'un pipeline plus détaillé ressemble à ceci :
Quelques réflexions sur l'importance d'une solution de stockage : vos documents de qualité doivent se trouver dans une solution de stockage capable de servir rapidement vos données à des fins de formation, de réglage fin et d'inférence. Plus vos ingénieurs peuvent effectuer d’expériences, plus vos modèles seront finalement performants. Vous souhaiterez également suivre les expériences, enregistrer les données traitées et versionner vos modèles. Cela peut être fait manuellement en enregistrant directement ces informations dans MinIO ou en utilisant l'outil MLOP de votre choix. De nombreux outils MLOP utilisent le stockage d'objets sous le capot. Par exemple, MLFlow de DataBricks et KubeFlow de Google utilisent tous deux MinIO. De plus, l'instance de MinIO représentée dans les diagrammes ci-dessus devrait provenir d'une implémentation d'un lac de données moderne. Un lac de données moderne est au centre d’une architecture système capable de prendre en charge l’IA.
Passons à autre chose et discutons de la manière dont les LLM peuvent utiliser le magasin d'objets contenant vos documents qualité.
Dans cette section, nous examinerons deux manières d'utiliser les LLM open source et vos documents qualité pour générer du contenu spécifique à un domaine. Ces deux techniques sont la génération augmentée de réglage fin et de récupération (RAG).
Lorsque nous peaufinons un modèle, nous l’entraînons un peu plus avec des informations personnalisées. Cela pourrait être un bon moyen d'obtenir un LLM spécifique à un domaine. Bien que cette option nécessite un calcul pour effectuer un réglage précis par rapport à votre corpus personnalisé, elle n'est pas aussi intensive que la formation d'un modèle à partir de zéro et peut être réalisée dans un laps de temps modeste.
Si votre domaine comprend des termes introuvables dans l'usage quotidien, un réglage fin améliorera la qualité des réponses du LLM. Par exemple, les projets qui utiliseront des documents issus de la recherche médicale, de la recherche environnementale et de tout ce qui touche aux sciences naturelles bénéficieront d'un ajustement précis. Le réglage fin prend la langue vernaculaire très spécifique trouvée dans vos documents et les intègre dans les paramètres paramétriques du modèle.
Désavantages
Le réglage précis nécessitera des ressources de calcul.
L’explicabilité n’est pas possible.
Vous devrez périodiquement affiner les ajustements avec de nouvelles données à mesure que votre corpus évolue.
Les hallucinations sont une préoccupation.
Avantages
Le LLM possède des connaissances issues de votre corpus personnalisé via un réglage fin.
Meilleur délai de valorisation par rapport à RAG.
Bien que le réglage fin soit un bon moyen d'enseigner à un LLM le langage de votre entreprise, cela dilue les données puisque la plupart des LLM contiennent des milliards de paramètres et vos données seront réparties sur tous ces paramètres.
Examinons une technique qui combine vos données personnalisées et vos données paramétriques au moment de l'inférence.
La génération augmentée de récupération (RAG) est une technique qui commence par la question posée, l'associe à des données supplémentaires, puis transmet la question et les données à un LLM et à une base de données vectorielles pour la création de contenu. Avec RAG, aucune formation n'est nécessaire car nous formons le LLM en lui envoyant des extraits de texte pertinents issus de notre corpus de documents de qualité.
Cela fonctionne comme ceci en utilisant une tâche de réponse à des questions : un utilisateur pose une question dans l'interface utilisateur de votre application. Votre application prendra la question - en particulier les mots qu'elle contient - et, à l'aide d'une base de données vectorielles, recherchera dans votre corpus de documents de qualité des extraits de texte contextuellement pertinents. Ces extraits, ainsi que la question originale, sont envoyés au LLM. L'ensemble de ce package - question plus extraits (contexte) est connu sous le nom d'invite. Le LLM utilisera ces informations pour générer votre réponse. Cela peut sembler idiot - si vous connaissez déjà la réponse (les extraits), pourquoi s'embêter avec le LLM ? Eh bien, rappelez-vous : cela se produit en temps réel et l'objectif est de générer du texte, quelque chose que vous pouvez copier et coller dans votre recherche. Vous avez besoin du LLM pour créer le texte qui intègre les informations de votre corpus personnalisé.
C'est plus compliqué qu'un réglage fin. Vous avez peut-être entendu parler des bases de données vectorielles : elles constituent un élément clé lors de la recherche du meilleur contexte pour une question. La configuration de bases de données vectorielles peut être délicate. Si vous avez besoin d'une solution provisoire simple, vous pouvez utiliser un outil de recherche de texte comme Elastic Search. Cependant, les bases de données vectorielles sont meilleures car elles peuvent apprendre la signification sémantique des mots et les extraire dans un contexte qui utilise différents mots ayant une signification identique ou similaire.
Désavantages
Nécessite une base de données vectorielles.
Délai de valorisation plus long par rapport au réglage fin. (En raison de la base de données vectorielles et du prétraitement nécessaire avant d'envoyer une requête au LLM.)
Avantages
La mise en œuvre réussie de l’IA générative est à la portée de toute entreprise désireuse de planifier de manière appropriée.
Comme tout ce qui concerne l’IA, l’IA générative commence par les données. Les données nécessaires aux grands modèles linguistiques qui alimentent l'IA générative constituent le corpus personnalisé qui définit les connaissances uniques au sein de vos pare-feu. Ne vous limitez pas aux documents textuels. Des vidéos de formation, des réunions enregistrées et des événements enregistrés au format audio et vidéo peuvent être utilisés. Construire un pipeline de données ne sera pas facile, il faut veiller à préserver la sécurité et les licences tout en garantissant la qualité.
Les modèles open source simplifient la conception des modèles et, comme la plupart sont pré-entraînés, ils suppriment également le coût élevé de la formation initiale. Les organisations devraient expérimenter des ajustements précis pour voir si cela améliore la qualité du contenu généré.
Enfin, la génération augmentée par récupération (RAG) est une technique puissante qui peut être utilisée pour combiner les connaissances du corpus de documents personnalisé de votre organisation avec les connaissances paramétriques d'un LLM. Contrairement au réglage fin, les informations de votre corpus ne sont pas intégrées aux paramètres paramétriques du modèle. Au lieu de cela, les extraits pertinents sont localisés au moment de l'inférence et transmis au modèle en tant que contexte.
L'IA générative est une nouvelle technologie et les nouvelles technologies nécessitent des mises à jour de l'infrastructure. Pour les organisations qui s'intéressent sérieusement à l'IA générative, l'étape suivante consiste à créer une architecture système comprenant un pipeline IA/ML, un pipeline de données, un lac de données moderne et une base de données vectorielle (si RAG doit être utilisé). Dans cet article, j'ai couvert ces technologies à un niveau élevé.
Restez à l'écoute de ce blog pour une explication plus détaillée de l'architecture du système d'IA générative. Si vous avez des questions, envoyez-nous un ping à [email protected] ou rejoignez la communauté Slack .
Apparaît également ici .