?? FunSearch ajouté : des nouvelles passionnantes ! Nous sommes ravis d'annoncer l'intégration de FunSearch dans FlowVerse ! ? Vous pouvez le trouver ici sur FlowVerse. Consultez également le carnet de démonstration présentant FunSearch en action ! Cette démo comprend des exemples de FunSearch exécutés sur des problèmes CodeForce et fournit des instructions étape par étape sur la façon de configurer FunSearch pour vos propres applications.
? Mise à jour majeure : nous sommes ravis d'annoncer la sortie de la version 1.1.0 de notre projet ! Cette version introduit des améliorations significatives à aiFlows, mises en évidence par l'introduction du moteur Flows. Ce moteur permet l'exécution simultanée et la collaboration distribuée peer-to-peer, révolutionnant la façon dont vous interagissez avec vos projets.
Nous sommes encore en train de peaufiner certains aspects de l'expérience des développeurs, alors partagez vos commentaires sur Discord !
?? aiFlows incarne l'abstraction Flows et simplifie grandement la conception et la mise en œuvre de flux (de travail) complexes impliquant des humains, des systèmes d'IA et des outils. En collaboration avec CoLink, il permet :
La bibliothèque est compatible avec Python 3.10+.
pip install aiflows
git clone [email protected]:epfl-dlab/aiflows.git
cd aiflows
pip install -e .
Le cadre est centré sur les flux et les messages . Les flux sont des éléments de base informatiques indépendants, autonomes et axés sur des objectifs, qui peuvent compléter des unités de travail sémantiquement significatives. Pour échanger des informations, les Flows communiquent via une interface standardisée basée sur des messages. Les messages peuvent être de n’importe quel type que le destinataire Flow peut traiter.
Le cadre Flows est un exemple. La première colonne présente des exemples d'outils. Notamment, dans le framework Flows, les systèmes d’IA correspondent à des outils. La deuxième colonne représente les flux atomiques, des wrappers effectivement minimaux autour des outils construits à partir des exemples d'outils. La troisième colonne présente des exemples de flux composites définissant une interaction structurée entre des flux atomiques ou composites . La quatrième colonne illustre un flux de codage compétitif composite spécifique comme ceux utilisés dans les expériences de l'article. La cinquième colonne décrit la structure d'un flux hypothétique, définissant un processus de méta-raisonnement qui pourrait prendre en charge un comportement autonome.
Le FlowVerse est un référentiel de Flows (alimenté par le hub ? HuggingFace) créé et partagé par notre communauté pour que tout le monde puisse l'utiliser ! Avec aiFlows, les Flows peuvent être facilement téléchargés, utilisés, étendus ou composés en de nouveaux Flows plus complexes. Par exemple, partager un flux qui utilise uniquement des outils basés sur des API (les outils englobent les modèles dans l'abstraction Flows) est aussi simple que partager un fichier de configuration (par exemple, voici le flux AutoGPT sur FlowVerse). Pour ceux qui utilisent ChatGPT, vous pouvez les considérer comme des GPT open source entièrement personnalisables (++).
Le FlowVerse est en constante croissance. Pour explorer les flux actuellement disponibles, consultez le forum de partage de flux ?│ sur le serveur Discord. De plus, les didacticiels et les exemples détaillés dans les sections Mise en route couvrent certains des flux que nous fournissons plus en détail (par exemple, ChatAtomicFlow et QA, VisionAtomicFlow et VisualQA, ReAct et ReAct avec commentaires humains, AutoGPT, etc.).
L’IA est en passe de révolutionner notre façon de travailler. Notre mission est de soutenir les chercheurs en IA et de leur permettre de partager en toute transparence leurs avancées avec les praticiens. Cela établira une boucle de rétroaction, guidant les progrès vers des directions bénéfiques tout en garantissant que chacun puisse accéder librement aux outils d’IA de nouvelle génération et en bénéficier.
Pour développer les outils d’IA de nouvelle génération, nous aurons besoin d’une abstraction fondée sur des principes prenant en charge l’exécution simultanée et la collaboration à distance peer-to-peer. Dans le même temps, pour maximiser leurs avantages, les développeurs et les chercheurs devront avoir un contrôle total sur leurs flux de travail. aiFlows s'efforce de vous permettre de vous approprier chaque Flow ! Voir la section de contribution pour plus d'informations.
Ici, vous verrez comment vous pouvez exécuter l'inférence avec votre premier Flow de réponse aux questions, et vous pouvez basculer de manière triviale entre des Flows de réponse aux questions très différents grâce à l'abstraction modulaire et à FlowVerse !
Dans ce didacticiel, nous vous présentons les fonctionnalités de la bibliothèque à travers une procédure pas à pas sur la façon de créer des flux utiles d'une complexité progressivement croissante.
Nous optimisons constamment notre flux de travail de développement Flow (jeu de mots :). Dans ce petit guide, nous partageons nos meilleurs conseils pour que vous n’ayez pas à apprendre à la dure.
Bon nombre des stratégies d'incitation et de collaboration récemment proposées impliquant des outils, des humains et des modèles d'IA sont, par essence, des flux spécifiques (voir la figure ci-dessous). Dans les liens ci-dessus, vous trouverez une présentation détaillée de la façon de créer des flux de travail représentatifs.
Consultez le dossier d'exemples pour plus d'exemples sur la façon de créer et d'utiliser aiFlows.
Comme mentionné ci-dessus, notre objectif est de faire de Flows un projet communautaire qui bénéficiera à la fois aux chercheurs et aux développeurs (voir la section Pourquoi devrais-je utiliser aiFlows ?), et pour atteindre cet objectif, nous avons besoin de votre aide.
Vous pouvez faire partie du projet de plusieurs manières :
Nous avons essayé de trouver un moyen pour que chacun puisse bénéficier en contribuant au projet. Le guide de contribution décrit plus en détail les flux de travail envisagés (nous aimerions connaître vos commentaires à ce sujet - le serveur Discord a déjà un canal pour cela :)).
En un mot, ce n’est qu’un début et nous avons encore un long chemin à parcourir. Restez à l’écoute et travaillons ensemble sur un avenir formidable en matière d’IA (open source) !
Si vous avez trouvé ce travail utile, veuillez le citer comme suit :
@misc{josifoski2023flows,
title={Flows: Building Blocks of Reasoning and Collaborating AI},
author={Martin Josifoski and Lars Klein and Maxime Peyrard and Baldwin Nicolas and Yifei Li and Saibo Geng and Julian Paul Schnitzler and Yuxing Yao and Jiheng Wei and Debjit Paul and Robert West},
year={2023},
eprint={2308.01285},
archivePrefix={arXiv},
primaryClass={cs.AI}
}