AI Town - Créez votre propre ville virtuelle peuplée d'agents IA
Vous vous êtes déjà demandé à quoi ressemblerait une ville peuplée uniquement d’agents IA autonomes ? Et bien c’est exactement ce que propose AI Town, une plateforme de simulation qui transforme des modèles de langage genre llama en véritables citoyens virtuels.
Il s’agit donc d’un monde virtuel en 2D où chaque personnage est doté d’une personnalité unique, de motivations propres et d’une capacité à interagir naturellement avec ses voisins. C’est en tout cas, ce qu’ont réussi à créer les équipes d’a16z en s’inspirant des travaux de recherche de Google et Stanford sur les agents génératifs.
Dans cet univers pixelisé qui rappelle les RPG rétro, les habitants ne sont pas de simples PNJ scriptés qui répètent les mêmes phrases en boucle. Non, non, non, chacun dispose d’un véritable modèle de langage qui lui permet de développer sa propre personnalité, de prendre tous types de décisions en autonomie. Mais également d’entretenir des conversations naturelles, de tisser des relations avec les autres habitants et bien sûr de se souvenir des interactions passées.
Sous ses airs de jeu vidéo minimaliste, AI Town cache surtout une architecture technique particulièrement soignée. En effet, Convex gère le backend, la base de données et la recherche vectorielle, Llama 3 ou d’autres modèles de langage animent les conversations, Docker assure l’isolation et le déploiement, React et TypeScript sont de la partie pour offrir une interface fluide et tout ce qui est Pixel Art est généré par IA.
L’ensemble du projet est surtout disponible en open source sur GitHub, ce qui vous permet de déployer votre propre ville virtuelle et même de la personnaliser selon vos envies.
Pour installer AI Town localement, suivez ces étapes :
Clonez le dépôt :
git clone https://github.com/a16z-infra/ai-town.git
cd ai-town
Puis installez les dépendances :
npm install
Configurez Ollama pour le modèle de langage :
ollama pull llama3
Puis lancez le backend Convex :
./convex-local-backend
Et enfin, démarrez l’application :
npm run dev
Une fois lancée, votre ville commencera alors immédiatement à prendre vie ! Les habitants se déplaceront, discuteront et développeront leurs relations de manière totalement autonome.
AI Town offre également de nombreuses possibilités de personnalisation. Vous n’aurez qu’à modifier le fichier characters.ts
pour :
- Créer de nouveaux personnages
- Définir leurs traits de personnalité
- Choisir leur apparence via des spritesheets
- Ajuster leur comportement
En utilisant l’éditeur de carte Tiled, vous pourrez aussi modifier tout ce qui est règles de déplacement, zones d’interaction, ambiance sonore, paramètres du modèle de langage, scénario, événements spéciaux et diverses règles sociales.
Au-delà de son aspect ludique, AI Town ouvre surtout des perspectives intéressantes pour tout ce qui est étude des dynamiques sociales mais également pouvoir tester différents modèles de langage dans un environnement contrôlé et mesurer leurs performances. Et les développeurs de jeux y trouveront également leur compte, puisque ça permet d’expérimenter avec des PNJ vraiment intelligents et autonomes, les mécaniques de jeu.
Un grand merci à Letsar pour avoir partagé ce super lien !!