L’IA Générative, qui transforme profondément notre manière de travailler et d’interagir avec la technologie, fait aujourd’hui partie intégrante de notre quotidien. Nous avons tous déjà vu dans les films de science-fiction ces ordinateurs futuristes capables de comprendre la voix humaine, d’exécuter des tâches complexes et de répondre instantanément aux demandes de leurs utilisateurs. Des assistants virtuels capables de contrôler tout un écosystème technologique sans jamais avoir besoin de clavier ni de souris. Ce qui semblait autrefois hors de portée est désormais plus proche de la réalité que jamais, grâce aux avancées de l’intelligence artificielle. Adrien AGWALI développeur chez Wemanity, nous fait part de son expérience et du potentiel que l’IA Générative peut apporter au sein d’une entreprise.
Cet article vous propose un retour d’expérience sur l’un des rouages de cette technologie en plein essor : la récupération augmentée de connaissances (RAG). Au sein de Wemanity, nos développeurs ont réalisé un POC (proof of concept) pour explorer les possibilités offertes par le RAG dans le cadre de la gestion des interventions de support d’une équipe de développeurs. Nous aborderons ici les défis, les solutions et les résultats issus de cette expérimentation.
1. L’intégration des données d’entreprise : Vers une exploitation intelligente de l’IA générative
L’intégration de l’IA dans les environnements de travail n’est plus une nouveauté. L’exemple de Microsoft Copilot, intégré aux environnements de développement, a permis de révolutionner la création de code répétitif, en particulier pour des tâches comme la génération de tests unitaires ou le démarrage rapide de projets. Grâce à l’apprentissage basé sur des dépôts de code publics et les documentations, les outils d’IA peuvent proposer des complétions automatisées qui accélèrent considérablement ces tâches. Toutefois, lorsqu’il s’agit de développer du code plus complexe, les développeurs ont constaté que la relecture nécessaire pour éviter les erreurs, peut fortement réduire l’efficacité initiale de l’outil.
En parallèle, des outils comme ChatGPT ont pris une place centrale dans les processus quotidiens. ChatGPT se distingue en étant capable de générer du texte sur mesure, utile pour la rédaction technique (comptes rendus, notes de release), mais aussi pour la traduction, la recherche d’informations ou encore l’apprentissage de nouveaux frameworks. Nos développeurs chez Wemanity l’utilisent en supplément de Copilot pour aider à l’analyse de code complexe, créer des scripts d’automatisation, ou suggérer des optimisations dans le code.
Notre conseil : Enrichir l’IA avec des données spécifiques
Bien que ces outils soient déjà performants, la question de leur personnalisation pour répondre aux besoins spécifiques d’une entreprise reste centrale. Les IA standard n’intègrent pas les données internes qui sont souvent essentielles dans la prise de décision ou la gestion de projets complexes. C’est ici qu’intervient le RAG (retrieval-augmented generation). Cet « IA framework » permet d’enrichir les résultats avec des données internes propres à une entreprise, pour générer des réponses pertinentes et contextualisées.
2. Développement du POC pour l’IA générative : Des défis techniques et des solutions innovantes
Afin de limiter le périmètre de l’expérimentation du RAG, l’objectif du POC a été restreint à la mise en place d’un micro programme pour assister un développeur dans le reporting des tâches de support quotidiennes. Il s’agissait de tester la faisabilité d’un système capable d’enregistrer des rapports vocaux et de les structurer de manière à les rendre consultables par la suite, a l’aide d’une seconde commande vocale. Un exemple basique de consultation serait une requête du type “Quels incidents sont survenus cette semaine ?”, permettant de récupérer les rapports d’interventions pertinents de la période.Pour réaliser ce projet, les développeurs ont conçu une application basée sur OpenAi GPT, avec pour seule fonctionnalité l’activation de microphone. L’utilisateur résume alors, en langage naturel, le détail de l’activité de support qu’il vient d’achever, en y incluant toutes les informations pertinentes.
Le programme se charge ensuite de convertir la voix en texte grâce à l’API d’OpenAi.
Une fois généré, le texte est restructuré en deux catégories : les informations sémantiques (les mots-clés pertinents) et les informations techniques (comme les dates ou les identifiants d’utilisateur). Les informations sémantiques sont stockées sous forme vectorielle, permettant des recherches basées sur le sens des mots, tandis que les informations techniques sont enregistrées dans une base de données traditionnelle.
Lorsqu’un utilisateur active à nouveau le microphone pour récupérer des informations, la même méthode est utilisée pour structurer le contenu de la demande, et les données sémantiques/techniques sont utilisées pour effectuer une recherche parmi les rapports d’activités existant, et isoler les plus pertinents.
Ces derniers sont ensuite analysés par l’IA pour générer une réponse pertinente à la requête initiale, enrichie de toutes les informations nécessaires.
Extrait de prompt utilisé dans ce cadre de l’extraction des informations du transcript générés par l’utilisateur :
“You are an AI designed to extract and structure information from a transcript. Generate a concise, accurate JSON object with information from the transcript. Output only the JSON object, with no additional text.”
Ce prompt est conçu pour organiser les résultats du processus de conversion voix-texte en un format structuré (JSON), permettant une intégration efficace dans le système de stockage.
3. Résultats et obstacles rencontrés dans l’utilisation de l’IA Générative
Les résultats de ce POC ont été prometteurs. En capturant des échanges vocaux sur une période donnée, nous avons pu effectuer des requêtes telles que “Résume-moi les événements liés à la base de données survenus entre lundi et mercredi, et liste-moi les différents intervenants” et obtenir le résultat attendu. Cependant, plusieurs défis se sont révélés, notamment celui de garantir une cohérence prédictive dans les réponses. Le séquencement des actions dans le prompt s’est avéré crucial, tandis que l’utilisation des options avancées de l’API OpenAI, comme les rôles “system” et “user”, a permis de peaufiner les instructions envoyées à l’IA. Par ailleurs, des ajustements techniques ont été nécessaires, notamment en implémentant du code pour parser et structurer correctement les réponses générées afin d’assurer le bon fonctionnement de l’ensemble du programme. Il est intéressant de noter que la majorité du temps a été consacré à la conception et à l’ajustement des instructions pour le moteur IA, et que les connaissances requises diffèrent de celles utiles dans le développement moderne.
4. L’avenir de l’IA générative en entreprise : De nouveaux horizons
Les possibilités offertes par le RAG
Cette expérimentation a permis de découvrir le potentiel des systèmes RAG, tout en soulignant que les cas d’usage avancés de l’IA en entreprise restent encore à définir et à explorer. On pourrait envisager de mettre au point plusieurs RAG au périmètre limités, communicants dans un contexte semblable à celui d’une architecture en micro-services, les possibilités d’agencements sont nombreuses, et elles doivent êtres sélectionnées pour répondre à un besoin et une vision qui évolue sans cesse, particulièrement dans la phase d’adoption d’une nouvelle technologie.
En parallèle, la question de la sécurité des données internes est une préoccupation majeure : l’accès à des informations sensibles via l’IA nécessite une gestion stricte des droits d’accès et des autorisations et un protection, ce qui représente un défi supplémentaire.
La notion de coût des requêtes est aussi une problématique majeure à adresser, que nous avons écartée dans le cadre de ce POC.
Défis majeurs à relever
L’avenir de l’intelligence artificielle semble se diriger vers une personnalisation toujours plus poussée, où les systèmes comme le RAG intègrent naturellement les données internes des entreprises. À une échelle plus large, on peut facilement envisager un futur (proche) où des assistants personnels IA, développés par des géants de l’industrie, interagissent de manière transparente avec les données personnelles du matériel sur lesquels ils sont livrés, combinant des informations issues des calendriers, e-mails ou autres sources de données. Ces assistants vocaux pourront non seulement fournir des réponses contextuelles pertinentes, mais aussi suggérer des activités en se basant sur les habitudes, ou exécuter des actions spécifiques au sein des applications compatibles, perfectionnant ainsi une approche de l’interaction logicielle ayant le potentiel de réduire l’espace qui sépare la science-fiction de la réalité.
Le retour d’expérience sur ce POC montre qu’en dépit des avancées impressionnantes de l’IA, des défis techniques et organisationnels demeurent. Pourtant, il est évident que l’intégration de l’IA, et plus spécifiquement du RAG, dans les processus quotidiens des entreprises, va continuer à croître. Que ce soit pour optimiser la gestion des connaissances ou pour automatiser des tâches complexes, l’IA se positionne comme un outil indispensable. À mesure que ces technologies évoluent, elles offrent de nouvelles perspectives passionnantes pour le monde de l’entreprise.
L’IA générative, comme ChatGPT, produit du contenu automatisé à partir de données existantes. Le RAG (Retrieval-Augmented Generation) enrichit ces capacités en intégrant des données internes spécifiques à une entreprise, permettant des réponses plus précises et contextualisées pour des tâches complexes.
Le POC a démontré la faisabilité d’un système de transcription vocale structuré, permettant la gestion et la consultation de rapports techniques via des requêtes vocales. Il a permis de répondre à des demandes comme “Quels incidents ont eu lieu cette semaine ?” avec des résultats pertinents et exploitables.
Les défis incluent la sécurité des données internes, le coût des requêtes, et l’ajustement des prompts pour garantir la cohérence des réponses. De plus, l’adoption nécessite une personnalisation poussée pour répondre aux besoins spécifiques des entreprises.