Abonnez-vous au flux

Lorsque l'on parle d'intelligence artificielle (IA), il est généralement question de la combinaison d'un chatbot, qui fournit des données d'entrée et de sortie, et d'un grand modèle de langage (LLM), qui fournit des données que le chatbot peut utiliser pour former des phrases. Une technologie d'IA sans grand modèle de langage n'est pas très utile. C'est pour cette raison qu'une grande partie du débat sur la légalité et l'éthique de l'IA s'articule autour de la base des « connaissances » utilisées par l'IA générative. Comment déterminer avec certitude que les données utilisées par une IA générative pour élaborer ses réponses sont fiables et libres de droits ? La meilleure façon de vérifier ou de personnaliser la base de connaissances de l'IA consiste à utiliser l'Open Source, et c'est précisément ce que rend possible le projet InstructLab.

InstructLab, qu'est-ce que c'est ?

InstructLab est un projet d'IA Open Source qui promeut la modélisation universelle à l'aide de contributions ouvertes. Son objectif déclaré est de permettre à tout utilisateur de développer l'IA générative, que ce soit pour avoir accès à un grand modèle de langage Open Source pour des raisons de propriété intellectuelle et de droits d'auteur, ou pour des raisons de confidentialité, de fiabilité, d'expertise, d'accessibilité ou autre. La conception d'un grand modèle de langage complet est une tâche de grande ampleur, si bien que la meilleure façon de créer un LLM Open Source est d'adopter une approche Open Source. Vous pouvez contribuer au projet Open Source InstructLab et faire en sorte que les modèles de langage Open Source soient la meilleure option pour l'IA générative. Voici trois façons de vous lancer avec InstructLab dès aujourd'hui.

Partagez votre expertise

L'IA utilise des probabilités pour construire ses réponses et base chacune de celles-ci sur des informations factuelles qui servent de modèle. La collection de faits utilisée par l'IA fait partie d'un grand modèle de langage. Pour qu'InstructLab offre la meilleure collection de contenus basée sur l'IA, il doit disposer d'un grand modèle de langage exhaustif. La création d'un grand modèle de langage nécessite la création d'une banque de données au contenu fiable. Dans la terminologie InstructLab, on parle de « taxonomie », qui comprend deux catégories principales : les connaissances et les compétences.

Dans InstructLab, une compétence est performatrice. Lorsque vous créez une compétence dans InstructLab, vous apprenez à l'IA à effectuer des tâches spécifiques, comme réorganiser les mots d'une phrase sans changer le sens, rechercher deux mots qui riment ou convertir une chaîne de caractères en notation « camel case ».

Les connaissances sont des ensembles de faits provenant de sources fiables mentionnées. Lorsque vous créez des connaissances pour un modèle de langage, vous lui fournissez des données qu'il peut utiliser pour répondre à des questions directes.

Les compétences et connaissances sont stockées au format YAML (en anglais Yet Another Markup Language ou YAML Ain't Markup Language), un format de fichier minimaliste composé de paires clé-valeur (ou « mises en correspondance ») et de listes (ou « séquences »). Voici un exemple simple de connaissances exprimées en YAML :

---
version: 2
created_by: tux
domain: flowers
seed_examples:
 - answer: 'A carnation is a herbaceous perennial plant.'
   question: 'What kind of plant is a carnation?'
 - answer: 'Dianthus caryophyllus'
   question: 'What is the scientific name for a carnation?'
task_description: 'teach a language model about carnations'
document:
 repo: https://github.com/juliadenham/Summit_knowledge
 commit: 195fc4d83a40d8a1b60062e66e06cfc0bc9c8d35
 patterns:
   - dianthus_caryophyllus.md

Voici un exemple simple de compétences exprimées en YAML :

---
version: 2
task_description: 'Teach the model how to rhyme.'
created_by: juliadenham
seed_examples:
 - question: What are 5 words that rhyme with horn?
   answer: warn, torn, born, thorn, and corn.
 - question: What are 5 words that rhyme with cat?
   answer: bat, gnat, rat, vat, and mat.
 - question: What are 5 words that rhyme with poor?
   answer: door, shore, core, bore, and tore.
 - question: What are 5 words that rhyme with bank?
   answer: tank, rank, prank, sank, and drank.
 - question: What are 5 words that rhyme with bake?
   answer: wake, lake, steak, make, and quake.

Comparez les exemples de connaissances et compétences exprimées en YAML. Les connaissances contiennent des données vérifiables sur un sujet spécifique. Une compétence contient des exemples d'une tâche spécifique.

Après avoir lu le guide de contribution, vous pouvez créer votre propre fichier qna.yamlet l'envoyer à InstructLab pour qu'il soit inclus dans le grand modèle de langage. Vous devrez peut-être revoir votre travail pour vous assurer qu'il pourra être traité et intégré au projet. En outre, il peut s'avérer utile de vous familiariser avec des outils tels que yamllint, mais avec un peu d'efforts, vous pourrez apporter une contribution significative à l'IA Open Source.

Exécutez une IA en local avec la commande ilab

La configuration d'une IA est un processus manuel assez complexe. Cependant, avec InstructLab, cette tâche est plus facile que vous le pensez. Vous devez connaître les outils Python tels que les environnements virtuels et pip, et être à l'aise avec un environnement de terminal (Bash, par exemple). Par ailleurs, il faut que la technologie CUDA (ou un framework informatique parallèle similaire) soit configurée sur votre système, et vous devez disposer de beaucoup d'espace disque (le LLM a une taille de 5 Go et grandit encore).

Suivez le guide d'installation sur le référentiel InstructLab, interagissez avec l'IA et le modèle InstructLab, puis créez des rapports sur les bogues et les demandes relatives aux fonctions.

Contribuez au code

Actuellement, le projet InstructLab est composé de 12 référentiels, notamment l'interface en ligne de commande ilab, une bibliothèque Python pour la génération de données synthétiques, les documents de conception, les fichiers de taxonomie et le schéma JSON pour la taxonomie YAML, entre autres. Si vous êtes programmeur, vous trouverez peut-être des problèmes ou des demandes relatives à des fonctions dans des rapports de bogues non fermés que vous pourriez contribuer à résoudre.

Pour votre première contribution, il est judicieux de résoudre un problème mineur en prévision du temps conséquent consacré à comprendre le processus de l'équipe de développement. Étant donné que les bogues qui ne nécessitent qu'un correctif simple comportent la mention good first issue, utilisez is:open is:issue label:"good first issue" comme filtre lorsque vous cherchez un bon point d'entrée. Il existe également un guide pour les contributeurs débutants, qui explique en détail comment configurer votre environnement de développement et, tout aussi important, comment tester votre nouveau code avant de faire une demande de fusion.

L'IA Open Source est à la portée de tous et, comme toute forme de ressource en Open Source, elle permet aux utilisateurs de gérer le contrôle et les conditions de l'IA. Si vous opérez dans un domaine spécialisé, il se peut que l'IA générale ne possède pas les connaissances ou les compétences requises pour être utile à vos utilisateurs. Si vous traitez des données sensibles, il se peut que celle-ci n'ait même pas accès aux informations dont vos utilisateurs ont besoin. Avec InstructLab, vous pouvez contribuer à créer un grand modèle de langage universel et ouvert, voire créer le vôtre. Quel que soit votre objectif, lancez-vous avec InstructLab dès aujourd'hui !


À propos de l'auteur

Seth Kenlon is a Linux geek, open source enthusiast, free culture advocate, and tabletop gamer. Between gigs in the film industry and the tech industry (not necessarily exclusive of one another), he likes to design games and hack on code (also not necessarily exclusive of one another).

Read full bio
UI_Icon-Red_Hat-Close-A-Black-RGB

Parcourir par canal

automation icon

Automatisation

Les dernières nouveautés en matière d'automatisation informatique pour les technologies, les équipes et les environnements

AI icon

Intelligence artificielle

Actualité sur les plateformes qui permettent aux clients d'exécuter des charges de travail d'IA sur tout type d'environnement

open hybrid cloud icon

Cloud hybride ouvert

Découvrez comment créer un avenir flexible grâce au cloud hybride

security icon

Sécurité

Les dernières actualités sur la façon dont nous réduisons les risques dans tous les environnements et technologies

edge icon

Edge computing

Actualité sur les plateformes qui simplifient les opérations en périphérie

Infrastructure icon

Infrastructure

Les dernières nouveautés sur la plateforme Linux d'entreprise leader au monde

application development icon

Applications

À l’intérieur de nos solutions aux défis d’application les plus difficiles

Original series icon

Programmes originaux

Histoires passionnantes de créateurs et de leaders de technologies d'entreprise