MiroFish : moteur d'intelligence en essaim pour la prédiction multi-agents
MiroFish est un moteur d'intelligence en essaim qui bâtit un monde numérique parallèle à partir de données amorces pour simuler l'avenir avec des milliers d'agents.
En bref
- De quoi s’agit-il ?
- Plateforme Python qui simule des mondes numériques remplis d'agents autonomes pour prévoir des trajectoires futures à partir de matériaux sources et de données réelles.
- À qui s’adresse-t-il ?
- MiroFish s'exécute sur Node.js 18+ et Python 3.11-3.12, avec Zep Cloud pour la gestion de mémoire et des APIs LLM au format OpenAI. Le projet AGPL-3.0 bénéficie de l'incubation de Shanda Group et du moteur de simulation OASIS de CAMEL-AI.
- Puis-je l’utiliser commercialement ?
- Oui, sous conditions strictes. AGPL-3.0 est une licence à copyleft réseau : si des personnes utilisent une version modifiée via un réseau, par exemple comme service hébergé, vous devez leur proposer son code source sous la même licence.
- Est-il encore maintenu ?
- Oui. Les derniers commits datent d’il y a 13 jours.
- En quel langage est-il écrit ?
- Principalement Python, d’après les statistiques de langage de GitHub.
Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 15 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.
ANALYSE OPEN SOURCE APPROFONDIE
Architecture multi-agents et construction de mondes numériques
MiroFish est un moteur de prédiction basé sur la simulation multi-agents. Son fonctionnement central consiste à extraire des informations sources du monde réel : actualités de dernière minute, ébauches de politiques, signaux financiers, ou même contenus littéraires. À partir de ces graines, le système construit automatiquement un monde numérique parallèle haute fidélité. Dans ce monde simulé habitent des milliers d'agents dotés de personnalités indépendantes, de mémoire à long terme et de logique comportementale. Ces agents interagissent librement et subissent une évolution sociale, mimant le processus par lequel des individus au comportement simple produisent un collectif complexe. L'utilisateur injecte ensuite des variables depuis une vue de dessus et observe comment le système prédit les trajectoires futures. Le dépôt compte 71 659 étoiles et 11 132 forks, la dernière poussée remontant au 7 mars 2026.
Workflow en cinq étapes de la construction à l'interaction
Le README décrit le pipeline complet de prédiction en cinq étapes. La construction de graphe extrait les informations sources, injecte la mémoire individuelle et collective, puis construit une représentation GraphRAG. La configuration de l'environnement procède à l'extraction des relations entre entités identifiées dans les sources, génère des personas pour les agents, et injecte la configuration des agents. La simulation exécute une simulation parallèle sur deux plateformes, analyse automatiquement les exigences de prédiction formulées en langage naturel, et met à jour dynamiquement la mémoire temporelle au fil du temps simulé. La génération de rapport utilise un agent dédié doté d'un ensemble riche d'outils pour interagir profondément avec l'environnement post-simulation. L'interaction profonde permet à l'utilisateur de converser avec n'importe quel agent du monde simulé et d'interagir avec le ReportAgent pour clarifier ou explorer les résultats.
Dépendances système et configuration des LLM
MiroFish exige Node.js version 18 ou plus récente (pour le frontend et les outils de construction), Python entre 3.11 et 3.12 (pour le backend et le moteur de simulation), et le gestionnaire de paquets uv. Le processus de démarrage commence par copier le fichier `.env.example` en `.env`. Trois variables d'environnement sont obligatoires. LLM_API_KEY est la clé d'authentification pour un service LLM quelconque utilisant l'API compatible OpenAI SDK. LLM_BASE_URL fournit l'URL de base du service : l'exemple du README pointe vers le point de terminaison en mode compatible de DashScope d'Alibaba. LLM_MODEL_NAME spécifie le modèle, l'exemple recommandant qwen-plus pour sa qualité et son coût. ZEP_API_KEY est requise pour Zep Cloud, qui gère la mémoire persistante des agents ; le README note que le quota gratuit mensuel suffit pour un usage simple. Le README prévient aussi que les simulations consomment beaucoup : il conseille d'essayer d'abord des simulations avec moins de 40 tours.
Installation unifiée et démarrage depuis le code source
MiroFish fournit un chemin d'installation unifié. L'utilisateur copie `.env.example` vers `.env`, puis exécute `npm run setup:all` qui installe en cascade toutes les dépendances : racine du projet, frontend et backend Python. Cette commande crée aussi automatiquement un environnement virtuel Python. Une alternative étape par étape est disponible : `npm run setup` pour les dépendances Node, puis `npm run setup:backend` pour les dépendances Python. Une fois les dépendances prêtes, `npm run dev` depuis la racine du projet démarre le frontend à http://localhost:3000 et le backend API à http://localhost:5001. Les services peuvent aussi démarrer individuellement : `npm run backend` ou `npm run frontend`. Cette flexibilité permet aux développeurs de tester le backend indépendamment ou de travailler sur le frontend sans attendre le backend.
Déploiement via Docker avec configuration centralisée
Pour le déploiement en production, MiroFish fournit un compose Docker. L'utilisateur suit les mêmes étapes initiales : copier `.env.example` vers `.env` et remplir les variables. Ensuite, une seule commande lance tous les services : `docker compose up -d`. Le fichier compose lit `.env` depuis la racine du projet et mappe les ports 3000 (frontend) et 5001 (backend). Le README mentionne que le fichier compose inclut des adresses miroir alternative en commentaires pour un téléchargement plus rapide si les images par défaut sont lentes à récupérer. Cette approche centralisée de configuration signifie que une seule copie de `.env` gère tous les services, qu'ils tournent en source ou en Docker.
Démos interactives et vidéos de cas d'usage
Le projet lie une démo en ligne mirofish-live-demo, un site GitHub Pages proposant des simulations de prédiction sur des événements d'opinion publique tendance. Les utilisateurs peuvent expérimenter l'interface et voir comment les agents se comportent sans configurer le backend. Deux vidéos de démonstration complètent la documentation. La première couvre une simulation d'opinion publique de l'Université de Wuhan : elle montre comment MiroFish utilise un rapport d'opinion généré par le projet compagnon BettaFish pour alimenter la simulation d'agents. La seconde simule la fin perdue du Rêve du Pavillon Rouge, se basant sur les 80 premiers chapitres pour prédire comment l'histoire aurait pu se dérouler. Le README indique que d'autres cas comme la prédiction financière et la prédiction d'actualités politiques sont en préparation. Six captures d'écran montrent l'application web en action.
Moteur de simulation OASIS et incubation Shanda
MiroFish construit son moteur de simulation sur OASIS (Open Agent Social Interaction Simulations), un projet open source de l'équipe CAMEL-AI dédiée aux simulations multi-agents. Le README remercie explicitement CAMEL-AI pour cette contribution. En paralèlle, MiroFish a reçu un soutien stratégique et une incubation de la part de Shanda Group, un conglomérat technologique chinois, ce qui indique un engagement sur le long terme et des ressources significatives derrière le projet. L'équipe recrute activement pour des postes à temps plein et des stages dans les domaines de la simulation multi-agents et des applications LLM ; les intéressés peuvent envoyer un CV à mirofish@shanda.com. Cette combinaison d'une base open source forte et d'un backing corporate suggère que le projet bénéficie de deux sources de crédibilité.
Licence AGPL-3.0 et implications de déploiement
MiroFish est distribué sous la licence AGPL-3.0, une licence copyleft conçue spécifiquement pour les logiciels serveur. Contrairement aux licences permissives, AGPL-3.0 exige que quiconque opère une version modifiée de MiroFish en tant que service réseau accessible au public fournisse à ses utilisateurs le code source modifié. Cela signifie que si une organisation déploie une version personnalisée de MiroFish à titre de service SaaS, elle doit mettre la source à disposition. Pour une utilisation interne ou une intégration dans des outils fermés n'offrant pas un service réseau public, les exigences sont moins strictes. Le README ne docummente pas de garanties de sécurité ou de posture de sécurité spécifique. Les métadonnées du dépôt indiquent que Python est le langage principal, que le site officiel se trouve à https://mirofish.ai, et qu'au moment du rapport, 122 problèmes étaient ouverts.
Conclusion éditoriale
MiroFish s'exécute sur Node.js 18+ et Python 3.11-3.12, avec Zep Cloud pour la gestion de mémoire et des APIs LLM au format OpenAI. Le projet AGPL-3.0 bénéficie de l'incubation de Shanda Group et du moteur de simulation OASIS de CAMEL-AI. Les utilisateurs potentiels doivent d'abord essayer les démos en ligne et les vidéos pour comprendre les capacités et les limites de la simulation avant déploiement en environnement réel.
Notes de la communauté