SmolAgents

SmolAgents

Hugging Face · Programmation

SmolAgents est un framework d'agents IA open source de Hugging Face : une bibliothèque d'agents en Python où les agents agissent en écrivant du code et s'exécutent en sandbox.

Aperçu de l'interface de SmolAgents

À propos de SmolAgents

What Is SmolAgents

SmolAgents est une bibliothèque Python pour créer des agents IA, et elle vient de Hugging Face. L'équipe garde la logique centrale sous la barre des 1 000 lignes, si bien que vous lisez ce que fait le code au lieu d'apprendre un enchevêtrement d'abstractions. Le projet est open source et s'installe gratuitement avec une seule commande pip.

L'idée de départ est simple : un agent doit agir en écrivant du code, pas en remplissant une liste JSON d'appels d'outils. Son CodeAgent écrit un court extrait de Python à chaque étape et l'exécute, et selon Hugging Face cela réduit les étapes et les appels au modèle nécessaires à une tâche. Un second type, ToolCallingAgent, conserve l'appel classique au format JSON si vous le préférez.

Exécuter du code généré par un modèle comporte un risque, donc SmolAgents vous pousse vers un vrai isolement. Il prend en charge des sandboxes cloud gérés comme E2B, Blaxel et Modal, ainsi que Docker auto-hébergé. L'exécuteur Python local ne pose que des restrictions légères, et la documentation prévient sans détour qu'il ne constitue pas une barrière de sécurité. Notez autre chose : c'est un outil pour développeurs. Il n'existe aucune application à boutons, mieux vaut donc être à l'aise avec Python pour que ça vaille le coup.

Getting Started

  1. Installez le paquet avec pip install "smolagents[toolkit]" pour récupérer un ensemble d'outils par défaut.
  2. Choisissez un modèle : un modèle local avec transformers ou Ollama, un fournisseur du Hub Hugging Face, ou n'importe lequel accessible via les intégrations LiteLLM et les serveurs compatibles OpenAI.
  3. Créez un CodeAgent, passez-lui vos outils et votre modèle, puis appelez agent.run avec une tâche en langage naturel.
  4. Exécutez l'agent dans un sandbox comme E2B ou Docker avant de le laisser toucher à quoi que ce soit d'important.
  5. Partagez l'agent terminé sur le Hub avec push_to_hub pour que d'autres puissent le charger et le réutiliser.

Informations sur le produit

Aperçu des tarifs, des plateformes compatibles et des performances de SmolAgents.

Offre gratuiteOui
Offres payantesN/A (free and open source)
PlateformePython library, CLI, Windows, macOS, Linux
DéveloppeurHugging Face
CatégorieProgrammation
Date de lancementDec 2024
Dernière mise à jourMay 2026
Visites du site10.4K
Classement mondial du site2.3M
Disponibilité de l’APIOui

Idéal pour

Les utilisateurs, tâches et cas d'usage où cet outil convient le mieux.

Utilisateurs

  • Développeurs Python
  • Ingénieurs IA sur modèles locaux
  • Chercheurs et étudiants

Tâches

  • Automatiser une recherche en plusieurs étapes
  • Créer des agents qui naviguent sur le web
  • Brancher des outils que vous avez déjà

Cas d'usage

  • Prototyper une idée d'agent vite
  • Garder un travail sensible en sandbox
  • Partager un agent réutilisable avec l'équipe

Fonctionnalités clés

Des agents de code qui écrivent des actions en Python

SmolAgents articule son agent par défaut autour du code. Au lieu de produire un bloc JSON avec des noms d'outils, le modèle écrit un court extrait de Python à chaque étape et le framework l'exécute. Hugging Face indique que ce style consomme environ 30 % d'étapes en moins sur certains benchmarks et marque mieux sur les plus difficiles, et le même agent peut enchaîner plusieurs recherches ou calculs en une seule action.

Exécution du code en sandbox

Comme l'agent exécute du code qu'il génère, SmolAgents prend en charge une exécution isolée via des sandboxes gérés comme E2B, Blaxel et Modal, ou un conteneur Docker auto-hébergé. Le code arbitraire n'atteint donc pas votre machine hôte. L'exécuteur Python local ajoute quelques limites, mais la documentation avertit qu'il n'est pas une barrière de sécurité, le sandbox reste donc la voie prévue.

Configuration indépendante du modèle

La bibliothèque ne vous verrouille pas chez un fournisseur. Elle fournit des classes de modèle pour le Inference Client de Hugging Face, LiteLLM, les serveurs compatibles OpenAI comme Together AI et OpenRouter, les modèles locaux transformers, Azure et Amazon Bedrock. Changer de moteur se fait en une ligne, ce qui compte quand vous comparez les coûts ou passez d'un modèle hébergé à un modèle local.

Souplesse des outils et des modalités

Vous chargez des outils depuis un serveur MCP, vous adaptez des outils LangChain, ou vous emballez même un Space Hugging Face comme outil. Les agents acceptent aussi plus que du texte : le même framework gère les entrées vision, vidéo et audio, donc un agent qui navigue ou lit des images s'intègre sans bibliothèque séparée.

Partage et réutilisation sur le Hub

Agents et outils montent et descendent du Hub Hugging Face. Un agent terminé devient un dépôt Space que vous appelez depuis n'importe où, ce qui transforme des scripts personnels en briques partagées. L'intégration au Hub, c'est ce qui rend la réutilisation concrète au sein d'une équipe ou d'une communauté.

CLI et support multi-agents

Deux commandes, smolagent et webagent, lancent des agents directement depuis le terminal, avec un mode interactif qui parcourt le type d'agent, les outils et la configuration du modèle. Par-dessus, SmolAgents gère des hiérarchies multi-agents où un agent en pilote un autre, ce qui permet de monter un gestionnaire qui délègue à un agent de recherche ou de code.

Avantages et inconvénients

Avantages

  • Le cœur fait environ 1 000 lignes, donc la boucle de l'agent reste lisible et facile à modifier.
  • Les agents de code réduisent les étapes et les appels au modèle face au tool calling en JSON, ce qui baisse le coût sur les tâches longues.
  • Il fonctionne avec presque n'importe quel modèle, d'une instance Ollama locale à OpenAI, Anthropic et Bedrock.
  • La prise en charge des sandboxes avec E2B, Blaxel, Modal et Docker offre un isolement réel pour le code généré.
  • L'intégration au Hub permet de publier et réutiliser agents et outils au lieu de les refaire.

Inconvénients

  • C'est une bibliothèque pour développeurs, pas une application, donc qui ne connaît pas Python ne peut pas l'utiliser directement.
  • L'exécuteur local intégré n'est pas un sandbox de sécurité, et lancer du code non fiable sans E2B ni Docker est un vrai risque.
  • La couche d'abstraction très fine vous laisse une partie du câblage, contrairement à des frameworks plus lourds et mieux fournis.
  • Configurer un sandbox distant ou un modèle local ajoute des réglages avant que le premier agent tourne.

Questions fréquentes

SmolAgents est une bibliothèque Python pour créer des agents IA qui accomplissent des tâches en écrivant et exécutant du code. Les développeurs s'en servent pour automatiser des travaux en plusieurs étapes comme la recherche, la navigation web et les appels d'outils, et pour tester des conceptions d'agents sans framework lourd.