L'IA améliore le travail au quotidien y compris celui des développeurs. (crédit : Markus Spiske / Pexels)
Les copilotes d'IA sont formidables, mais l'intelligence artificielle ne se limite pas qu'à cela. Voici 11 projets d'IA open source pour faciliter le développement d'outils bien pratiques.
Le monde de l'open source est souvent à l'origine de nouveautés logicielles parmi les plus créatives et les plus percutantes. Le partage du code invite une communauté mondiale de contributeurs à travailler ensemble pour faire avancer un projet. L'intelligence artificielle ne fait pas exception à la règle. Alors que le besoin en puissance de traitement de l'IA peut limiter les réalisations individuelles, le travail distribué peut apporter une réponse à cette contrainte. L'intelligence artificielle est un domaine technique où la somme de tous les efforts est vraiment plus grande que les parties. Ces 11 projets d'IA open source facilitent le travail des développeurs et peuvent encourager ce secteur vital. Certains affinent le processus d'entraînement des modèles, tandis que d'autres aident à trouver ou à accéder à des sources de données utiles. Dans cette sélection, on trouve aussi bien des outils de productivité, des optimiseurs de performances, que des outils SQL, et bien plus encore. Pris dans leur ensemble, ces projets montrent que les innovations en matière d'IA peuvent transformer le rêve d'un ordinateur intelligent et sensible en une réalité du quotidien et de l'environnement de travail. Il faut les considérer comme point de départ de projets, ou comme modèle pour créer quelque chose d'extraordinaire, si l'on est inspiré.
Upscayl
Parfois, une image a besoin d'un peu plus de détails pour être bien présentée sur une page. Upscayl (voir le projet GitHub ici) augmente la résolution de l'image pour obtenir la netteté et les détails recherchés. Avec le matériel adéquat, Upscayl offre un bon moyen d'améliorer une oeuvre d'art numérique ou d'ajouter des détails à une photographie. Il ne faut pas oublier que l'IA a souvent tendance à halluciner ces détails. Upscayl est donc idéal pour améliorer les images inventées par un artiste numérique. Par contre, il n'est pas aussi performant pour les images qui nécessitent une précision absolue, comme la collecte d'indices sur une scène de crime.
Nyro
Les développeurs passent beaucoup de temps à interagir avec le système d'exploitation de l'ordinateur via la ligne de commande. Certes, ce temps reste négligeable, mais les secondes finissent par s'additionner. Écrit sur la plateforme Electron, le projet open source Nyro gère des tâches banales comme les captures d'écran, le redimensionnement des fenêtres et la synchronisation des données entre les applications. L'automatisation de ces tâches quotidiennes peut faire gagner de nombreuses petites fractions de temps et, au final, augmenter considérablement la productivité.
Geppetto
Certaines équipes de développement effectuent la majeure partie de leur travail dans les canaux Slack, de sorte que les messages finissent par constituer une documentation de première main assez solide. Le Slackbot Geppetto connecte ces canaux avec plusieurs LLM (OpenAI, Anthropic et Gemini) qui peuvent nettoyer et améliorer ses réflexions. Geppetto peut même envoyer une requête à Dall-E pour rendre ces documents plus vivants.
E2B sandboxes
Les premiers LLM répondaient à des questions et généraient peut-être un peu d'art en utilisant toutes les connaissances de leur ensemble d'apprentissage. Mais que se passerait-il s'ils étaient libres de naviguer sur Internet et d'utiliser les mêmes outils que les humains ? E2B est un bac à sable d'agent qui permet aux LLM de se connecter à un grand nombre d'outils que les humains utilisent tous les jours. À savoir des navigateurs web, des dépôts de code GitHub et des outils de ligne de commande comme les linters. Les LLM peuvent alors utiliser la puissance de ces outils pour faire des choses utiles, comme gérer l'infrastructure du cloud, afin que les humains n'aient pas à le faire.
Dataline
Tout le monde n'a pas envie de télécharger toutes ses données vers un GPU d'IA lointain pour l'entraînement. Dataline utilise un LLM pour générer des commandes SQL qui aspirent les données de la base de données. Ensuite, le code crée un rapport de science des données en utilisant une connexion locale aux données locales. Il s'agit d'une approche hybride qui fusionne les algorithmes classiques de science des données pour l'analyse avec les LLM qui les guident.
Swirl Connect
Il arrive parfois que l'on veuille commencer à travailler d'emblée avec un ensemble de données, sans se donner la peine de les extraire et de les reformater. Si l'ensemble de données est volumineux, ces processus peuvent prendre beaucoup de temps. Swirl Connect (voir le projet GitHub ici) relie de nombreuses bases de données standard avec la plupart des LLM et des index de recherche de génération augmentée de récupération (RAG). Toutes les données nécessaires sont réunies en un seul endroit et l'on peut se concentrer sur la formation.
DSPy
L'émergence des LLM a créé une toute nouvelle spécialisation professionnelle dans le domaine de l'ingénierie des prompts. Contrairement aux algorithmes utilisés par les développeurs, les ingénieurs d'invite manipulent des mots et écrivent de longues instructions qui guident le LLM à produire le bon résultat. Pour cette fonction, il faut être doué sur le plan du langage et savoir manipuler les LLM avec finesse. L'outil DSPy veut rendre l'approche de la formation des LLM plus systématique. Au lieu de mots et de phrases, DSPy relie les modules et les optimiseurs et les organise dans un pipeline pour le LLM. Les développeurs qui utilisent DSPy peuvent passer moins de temps à se préoccuper des nuances linguistiques et plus de temps à travailler sur le code.
Guardrails
L'un des défis de l'IA générative est d'empêcher l'IA de s'écarter de son chemin. Les ingénieurs de Portkey Gateway ont trouvé un moyen d'intégrer davantage de contrôles dans le pipeline de l'IA générative. Les fonctions asynchrones, connues sous le nom de garde-fous (ou guardrails), peuvent suivre l'évolution des réponses générées par l'IA et « voter » à différents stades du pipeline. Chaque vote permet d'affiner la réponse pour avoir moins d'hallucinations et plus de réponses correctes.
Unsloth
L'entraînement d'un LLM de fondation sur un nouvel ensemble de données est souvent coûteux. Unsloth est capable d'optimiser cette formation pour quelques modèles open source les plus courants. Selon certains témoignages, la version open source de l'outil est deux à cinq fois plus rapide que la formation de modèles sans Unsloth, et la version professionnelle est jusqu'à 30 fois plus rapide. Le code du noyau soigneusement écrit à la main est appliqué de manière à réduire l'utilisation de la mémoire tout en maintenant, voire en augmentant, la précision.
Wren AI for SQL
La plupart des données dans le monde sont stockées dans de vastes tables, souvent accessibles par SQL. Hélas, peu de gens savent comment écrire de bonnes requêtes SQL. Même les bons programmeurs ont du mal à écrire des requêtes SQL rapides et efficaces. Wren AI est une interface en langage naturel pour SQL. On pose les questions en anglais et l'IA les traduit en SQL, ce qui fait gagner du temps et des efforts à tout le monde.
AnythingLLM
De nos jours, nombreux sont ceux qui stockent quelque part des énormes piles de documents numériques pour référence future. Le défi consiste à trouver à tout moment la citation ou le point de données parfaits. AnythingLLM organise la pile de documents en quelque chose d'utile. Il suffit d'introduire ses documents dans n'importe quel système LLM ou RAG, puis de l'interroger pour obtenir les réponses dont on a besoin. L'outil fonctionne sous Linux, macOS ou Windows, et les réponses peuvent se présenter sous différents formats, y compris la synthèse vocale.
Suivez-nous