Suna AI : l'agent d'IA généraliste open source

Cet article présente Suna, son architecture, puis un tutoriel pour l'installer et l'exécuter localement.

Louis Dupont

Louis Dupont

5 June 2025

Suna AI : l'agent d'IA généraliste open source

Le domaine de l'intelligence artificielle évolue de plus en plus vers des agents capables de faire plus que simplement traiter l'information – ils peuvent agir. Suna AI émerge dans cet espace en tant qu'agent d'IA généraliste open-source convaincant, conçu pour fonctionner comme un compagnon numérique capable de comprendre les instructions en langage naturel et d'exécuter des tâches complexes et réelles directement en votre nom. Développé par Kortix AI et publié sous la licence permissive Apache 2.0, Suna se différencie en combinant une puissante suite d'outils avec une interface conversationnelle, dans le but de combler le fossé entre l'intention de l'utilisateur et l'action numérique tangible.

Contrairement aux outils d'IA spécialisés, la force de Suna réside dans sa polyvalence. Il est conçu pour orchestrer diverses capacités – de la navigation sur le web et la gestion de fichiers à l'exécution de code et à l'interaction avec les API – le tout piloté par vos invites conversationnelles. Cet article fournit un aperçu des principales capacités et de l'architecture de Suna, suivi d'un tutoriel détaillé, étape par étape, sur la façon de configurer et d'exécuter votre propre instance localement, vous permettant de tirer parti de ce puissant agent d'IA dans votre propre environnement.

💡
Vous voulez un excellent outil de test d'API qui génère une belle documentation d'API ?

Vous voulez une plateforme intégrée, tout-en-un, pour que votre équipe de développeurs travaille ensemble avec une productivité maximale ?

Apidog répond à toutes vos demandes et remplace Postman à un prix beaucoup plus abordable !
button

Qu'est-ce que Suna AI et comment fonctionne Suna AI ?

Pour comprendre ce que Suna peut faire, il est essentiel de saisir les outils qu'il utilise. Ces capacités lui permettent d'interagir avec le monde numérique comme un utilisateur humain, mais de manière automatisée et pilotée par l'IA.

  1. Automatisation du navigateur (via Playwright) : Suna peut lancer et contrôler une instance de navigateur web dans son environnement sécurisé. Cela signifie qu'il peut naviguer vers des URL spécifiques, se connecter à des sites web (si les informations d'identification sont fournies en toute sécurité), cliquer sur des boutons, remplir des formulaires, faire défiler des pages et, surtout, extraire des données directement du contenu des pages web. Cette capacité déverrouille la vaste quantité d'informations et de fonctionnalités disponibles sur le web pour l'automatisation.
  2. Gestion des fichiers : L'agent ne se limite pas aux données web. Il a la capacité d'interagir avec un système de fichiers dans son environnement sandboxé. Cela inclut la création de nouveaux fichiers (comme des rapports ou des exportations de données), la lecture de documents existants, la modification de leur contenu et l'organisation des fichiers en répertoires. Ceci est essentiel pour les tâches qui impliquent la génération de sorties ou le traitement de données locales.
  3. Exploration web et recherche améliorée : Au-delà de la navigation sur une seule page, Suna peut explorer systématiquement des sites web (en suivant les liens) pour collecter des informations complètes. Il peut également s'intégrer à des API de recherche dédiées (comme l'intégration Tavily facultative) pour effectuer une récupération d'informations plus sophistiquée et ciblée que l'utilisation standard des moteurs de recherche, ce qui permet des capacités de recherche plus approfondies.
  4. Exécution en ligne de commande : Dans son conteneur Docker sécurisé, Suna a la possibilité d'exécuter des commandes shell. Cette fonctionnalité puissante lui permet d'exécuter des scripts, d'utiliser d'autres utilitaires de ligne de commande, d'interagir avec les ressources système (dans les limites du conteneur) et potentiellement d'automatiser des tâches telles que les compilations ou les déploiements de logiciels si configuré de manière appropriée. La sécurité est primordiale ici, gérée par l'environnement isolé.
  5. Intégration d'API (via RapidAPI et appels directs) : Suna peut effectuer des appels vers des interfaces de programmation d'applications (API) externes. Cela lui permet de se connecter à un vaste écosystème de services tiers. La documentation met en évidence l'intégration RapidAPI facultative, permettant l'accès à divers fournisseurs de données (par exemple, pour les données LinkedIn, les informations financières, etc.), mais elle peut également être configurée pour interagir directement avec d'autres API RESTful, étendant considérablement son potentiel de collecte de données et de prise d'actions.
  6. Interprétation du code : Suna inclut la possibilité d'exécuter des extraits de code (principalement Python) dans son environnement sécurisé. Ce n'est pas seulement pour exécuter des scripts existants, mais cela permet à l'agent de générer et d'exécuter dynamiquement du code pour effectuer des calculs complexes, des analyses de données, un traitement logique personnalisé ou des transformations qui dépassent les capacités de ses autres outils.

La véritable puissance de Suna réside dans la capacité de l'IA à sélectionner et à séquencer ces outils de manière appropriée en fonction de la demande de l'utilisateur. Une seule instruction peut déclencher un flux de travail impliquant la recherche sur le web, l'extraction de données, leur traitement avec du code interprété, la mise en forme du résultat dans un fichier et sa sauvegarde – le tout géré par l'agent.

L'architecture de Suna : les composants impliqués

Comprendre le processus de configuration nécessite une compréhension de base des principaux composants architecturaux de Suna :

  1. API backend (Python/FastAPI) : La logique de base réside ici. Il gère les demandes des utilisateurs, maintient l'état de la conversation, orchestre l'utilisation des outils de l'agent et gère la communication avec le modèle linguistique volumineux (LLM) choisi via LiteLLM (offrant une flexibilité avec des fournisseurs comme OpenAI et Anthropic).
  2. Frontend (Next.js/React) : Il s'agit de l'application web orientée utilisateur. Il fournit l'interface de chat pour interagir avec Suna, affiche les résultats et comprend des éléments de tableau de bord pour surveiller l'activité de l'agent.
  3. Environnement Docker de l'agent (via Daytona) : La sécurité et l'isolement sont essentiels. Chaque tâche de l'agent s'exécute dans un conteneur Docker dédié géré par Daytona. Ce bac à sable contient tous les outils nécessaires (navigateur, interpréteur de code, accès au système de fichiers) et empêche l'agent d'interférer avec le système hôte.
  4. Base de données Supabase (PostgreSQL) : Gère tous les besoins de persistance des données, y compris les comptes d'utilisateurs et l'authentification, l'historique des conversations, le stockage des fichiers générés par l'agent, le suivi de l'état de l'agent et potentiellement l'analyse.

Ces composants fonctionnent ensemble, communiquant via des API, pour offrir l'expérience Suna. La configuration auto-hébergée implique la configuration et l'exécution de ces parties interconnectées.

Comment configurer Suna AI

Exécuter Suna vous-même offre un contrôle et une confidentialité maximum. Les étapes suivantes vous guident tout au long du processus de configuration :

Phase 1 : Rassembler les prérequis

Avant d'installer Suna, vous avez besoin de plusieurs services et informations d'identification externes :

Projet Supabase :

Base de données Redis :

Compte Daytona et configuration de l'image :

Clé API LLM :

(Facultatif) Clé API Tavily : Pour de meilleurs résultats de recherche. Obtenez une clé auprès de Tavily AI.

(Facultatif) Clé RapidAPI : Si vous avez l'intention d'utiliser des intégrations pré-construites en ayant besoin (comme des extracteurs web spécifiques).

Phase 2 : Installation et configuration

Maintenant, configurez les composants de l'application Suna :

Clonez le référentiel :

git clone https://github.com/kortix-ai/suna.git
cd suna

Configurez le backend (.env) :

NEXT_PUBLIC_URL="http://localhost:3000" # Ou votre URL frontend si différente

# Supabase
SUPABASE_URL=YOUR_SUPABASE_URL
SUPABASE_ANON_KEY=YOUR_SUPABASE_ANON_KEY
SUPABASE_SERVICE_ROLE_KEY=YOUR_SUPABASE_SERVICE_ROLE_KEY

# Redis
REDIS_HOST=YOUR_REDIS_HOST
REDIS_PORT=YOUR_REDIS_PORT
REDIS_PASSWORD=YOUR_REDIS_PASSWORD # Laissez vide si aucun
REDIS_SSL=True # Ou False pour Redis local non-SSL

# Daytona
DAYTONA_API_KEY=YOUR_DAYTONA_API_KEY
DAYTONA_SERVER_URL="https://app.daytona.io/api"
DAYTONA_TARGET="us" # Ou votre région

# --- Configuration LLM (REMPLISSEZ UN SEUL ENSEMBLE) ---
# Exemple Anthropic :
ANTHROPIC_API_KEY=YOUR_ANTHROPIC_API_KEY
MODEL_TO_USE="anthropic/claude-3-5-sonnet-latest" # Ou autre modèle Claude
OPENAI_API_KEY=
# Exemple OpenAI :
# ANTHROPIC_API_KEY=
# OPENAI_API_KEY=YOUR_OPENAI_API_KEY
# MODEL_TO_USE="gpt-4o" # Ou autre modèle OpenAI
# -----------------------------------------

# Facultatif
TAVILY_API_KEY=YOUR_TAVILY_API_KEY # Facultatif
RAPID_API_KEY=YOUR_RAPID_API_KEY # Facultatif

Configurez le schéma de la base de données Supabase :

Configurez le frontend (.env.local) :

NEXT_PUBLIC_SUPABASE_URL=YOUR_SUPABASE_URL # Identique à backend .env
NEXT_PUBLIC_SUPABASE_ANON_KEY=YOUR_SUPABASE_ANON_KEY # Identique à backend .env
NEXT_PUBLIC_BACKEND_URL="http://localhost:8000/api" # Emplacement backend par défaut
NEXT_PUBLIC_URL="http://localhost:3000" # Emplacement frontend par défaut

Installez les dépendances :

# Dans le répertoire frontend
npm install
# Dans le répertoire backend (utilisez un environnement virtuel !)
# python -m venv venv
# source venv/bin/activate  OU .\venv\Scripts\activate (Windows)
pip install -r requirements.txt

Phase 3 : Exécution de Suna

Démarrer le service backend :

Démarrer le service frontend :

Accédez à votre instance Suna :

Conclusion

Suna AI représente une étape pratique vers des agents d'IA autonomes capables d'exécuter des tâches dans le domaine numérique. Sa nature open-source, combinée à une boîte à outils puissante et à une architecture modulaire, en fait une option attrayante pour les développeurs et les utilisateurs à la recherche d'un assistant d'IA personnalisable et auto-hébergeable. En suivant le processus de configuration détaillé décrit ci-dessus, vous pouvez déployer votre propre instance de Suna, vous accordant une interface conversationnelle pour automatiser la navigation, la manipulation de fichiers, la collecte de données, l'exécution de code, et plus encore, le tout dans un environnement que vous contrôlez. Bien que sa configuration nécessite une attention particulière à ses multiples composants, le résultat est un agent d'IA polyvalent prêt à agir en votre nom.

💡
Vous voulez un excellent outil de test d'API qui génère une belle documentation d'API ?

Vous voulez une plateforme intégrée, tout-en-un, pour que votre équipe de développeurs travaille ensemble avec une productivité maximale ?

Apidog répond à toutes vos demandes et remplace Postman à un prix beaucoup plus abordable !
button

Explore more

Fathom-R1-14B : Modèle de raisonnement IA avancé d'Inde

Fathom-R1-14B : Modèle de raisonnement IA avancé d'Inde

L'IA en expansion rapide. Fathom-R1-14B (14,8 milliards de paramètres) excelle en raisonnement mathématique et général, conçu par Fractal AI Research.

5 June 2025

Mistral Code : L'assistant de codage le plus personnalisable basé sur l'IA pour les entreprises

Mistral Code : L'assistant de codage le plus personnalisable basé sur l'IA pour les entreprises

Découvrez Mistral Code, l'IA d'aide au code la plus personnalisable pour les entreprises.

5 June 2025

Comment Claude Code transforme le codage de l'IA en 2025

Comment Claude Code transforme le codage de l'IA en 2025

Découvrez Claude Code en 2025 : codage IA révolutionné. Fonctionnalités, démo, et pourquoi il gagne du terrain après Windsurf d'Anthropic. Indispensable !

5 June 2025

Pratiquez le Design-first d'API dans Apidog

Découvrez une manière plus simple de créer et utiliser des API