Construire des agents autonomes avec Smolagents et Novita AI

Construire des agents autonomes avec Smolagents et Novita AI

Points clés

1. Agent IA :
Permet une prise de décision autonome au-delà des flux de travail rigides et prédéfinis.
Exploite le raisonnement itératif, l’exécution adaptative et l’apprentissage continu.

2. Smolagents :
Bibliothèque Python légère (~1 000 lignes), simplifiant la création d’agents IA.
Produit directement des extraits de code Python exploitables, exécutés en toute sécurité dans des environnements cloisonnés.
Prend en charge divers modèles, modalités (texte, images, audio, vidéo) et intégration d’outils externes.

3. Support de Novita AI :
Compatible avec Smolagents, prenant en charge des modèles puissants comme DeepSeek R1 Turbo avec des performances améliorées et un prix abordable.

L’intelligence artificielle est passée de la reconnaissance de motifs à la génération de contenu créatif. Le prochain bond significatif est l’émergence de l’IA agentique, des systèmes capables de prendre des décisions autonomes et d’agir pour résoudre des problèmes complexes en plusieurs étapes. Cet article explore le concept d’agent IA, détaille les spécificités des agents de code, décrit comment en construire un, compare les performances de différents modèles sous-jacents, et répond aux questions fréquentes sur cette technologie transformatrice.

Qu’est-ce qu’un agent IA ?

L’IA agentique répond aux défis posés par les tâches que les flux de travail rigides et traditionnels ont du mal à gérer efficacement. De nombreux scénarios réels impliquent des processus complexes et nuancés qui ne peuvent être entièrement capturés par des structures if-else statiques et prédéfinies. L’IA agentique introduit de la flexibilité et de l’adaptabilité dans les flux, permettant aux systèmes de déterminer et d’exécuter dynamiquement la séquence d’actions optimale en fonction des contextes évolutifs.

https://youtu.be/-pqzyvRp3Tc

Comment ça fonctionne ?

L’IA agentique fonctionne via une boucle itérative et dynamique de perception, raisonnement, action et apprentissage. Au cœur, les agents IA utilisent de grands modèles de langage (LLM) comme moteurs de raisonnement pour analyser les situations, planifier les réponses, coordonner des modèles spécialisés et exécuter des tâches. Le flux de travail comprend généralement les étapes suivantes :

  • Ingestion et perception des données : les agents collectent et traitent les données de multiples sources, acquérant une conscience contextuelle pour éclairer leurs décisions.
  • Raisonnement et planification : à l’aide des LLM, les agents interprètent les données, raisonnent sur les solutions possibles, génèrent des plans stratégiques et déterminent les actions nécessaires pour atteindre leurs objectifs.
  • Action et exécution : les agents s’intègrent à des outils externes et des fonctions prédéfinies, exécutant des tâches basées sur leurs sorties de raisonnement. Ils effectuent des actions de manière itérative, observent les résultats et s’ajustent jusqu’à obtenir le résultat souhaité.
  • Apprentissage continu : grâce à des boucles de rétroaction et des techniques comme la génération augmentée par récupération (RAG), les agents accèdent à des sources de données propriétaires, affinent leur compréhension et améliorent continuellement leurs performances, leur précision et leur pertinence.

En combinant ces capacités — prise de décision autonome, raisonnement itératif, intégration d’outils externes et amélioration continue — l’IA agentique fait le pont entre le raisonnement basé sur les LLM et l’exécution et l’adaptation dans le monde réel.

de Nvidia

Qu’est-ce que smolagents ?

Smolagents est une bibliothèque Python légère conçue pour simplifier la création d’agents IA puissants. Avec une approche minimaliste, sa logique principale tient dans environ 1 000 lignes de code, offrant des abstractions minimales et un plus grand contrôle direct pour les développeurs. Smolagents est positionné comme le successeur de transformers.agents, qui sera éventuellement abandonné. Vous pouvez en savoir plus sur github !

amolagents

Fonctionnalités clés et mécanisme clé

✨ Simplicité

  • Smolagents implémente une logique d’agent IA puissante en environ 1 000 lignes de code, en gardant les abstractions minimes pour une plus grande flexibilité des développeurs (voir agents.py).

🧑‍💻 Support de première classe pour les agents de code

  • CodeAgent de Smolagents génère directement les actions de l’agent sous forme d’extraits de code Python plutôt que JSON ou texte, améliorant l’efficacité et les performances. Il exécute le code en toute sécurité dans des environnements cloisonnés (E2B, Docker) et maintient le support des agents traditionnels basés sur JSON/texte.

🤗 Intégrations Hub

  • Smolagents permet de partager et charger facilement des outils Python réutilisables via Hugging Face Hub, facilitant la collaboration et la réutilisation des outils.

🌐 Indépendant du modèle

  • Smolagents prend en charge pratiquement n’importe quel grand modèle de langage (LLM) — modèles locaux transformers ou ollama, modèles hébergés sur Hugging Face, et fournisseurs externes comme OpenAI ou Anthropic via LiteLLM.

👁️ Indépendant de la modalité

  • Les agents créés avec Smolagents peuvent traiter de manière transparente diverses modalités d’entrée, y compris le texte, les images, les vidéos et l’audio.

🛠️ Indépendant des outils

  • Smolagents intègre de manière flexible des outils de divers écosystèmes, comme LangChain, MCP d’Anthropic, ou les espaces Hugging Face Hub.

comment smolagents fonctionne

Comment construire un agent avec smolagents et l’API Novita AI ?

Novita AI est une plateforme cloud IA qui offre aux développeurs un moyen simple de déployer des modèles IA via notre API simple, tout en fournissant un cloud GPU fiable et abordable pour construire et passer à l’échelle.

Smolagents prend en charge divers grands modèles de langage (LLM), y compris Novita AI ! Nous allons maintenant utiliser DeepSeek R1 Turbo comme exemple pour montrer la puissance de Smolagents et de Novita AI !

Important : Novita AI lance une version Turbo avec un débit 3x et une réduction de 60 % limitée dans le temps !

novita ai no1

Essayez DeepSeek R1 Turbo maintenant !

Un exemple

Entrée :

import os
from smolagents import OpenAIServerModel, CodeAgent, DuckDuckGoSearchTool

model = OpenAIServerModel(
    model_id="deepseek/deepseek-r1-turbo",
    api_base="https://api.novita.ai/v3/openai",
    api_key="Votre clé API" # Remplacez par la clé API du serveur cible.
)

agent = CodeAgent(tools=[DuckDuckGoSearchTool()], model=model)

agent.run("Planifiez un week-end de Shanghai à Pékin, incluant les options de transport, l'itinéraire et une liste des indispensables")

Sortie :

transport = web_search(query="Shanghai to Beijing transportation weekend trip 2024")                                                                                                                                                                                                                                                           
  print("Options de transport :", transport)                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                 
  attractions = web_search(query="Beijing 2-day itinerary top attractions 2024")                                                                                                                                                                                                                                                                 
  print("Recommandations d'attractions :", attractions)                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                                                 
  details = web_search(query="Beijing travel must-haves 2024")                                                                                                                                                                                                                                                                                   
  print("Éléments essentiels et conseils :", details)                                                                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                                                                                                                 
  weekend_plan = {                                                                                                                                                                                                                                                                                                                               
      "Transport": {                                                                                                                                                                                                                                                                                                                        
          "Option recommandée" : "Train G12 vendredi soir (18h00-22h30) de Shanghai Hongqiao à Pékin Sud",                                                                                                                                                                                                                                
          "Alternative" : "Vol samedi matin (07h00-09h00 + temps de transit)"                                                                                                                                                                                                                                                                    
      },                                                                                                                                                                                                                                                                                                                                         
      "Itinéraire" : {                                                                                                                                                                                                                                                                                                                             
          "Jour 1 (samedi)" : [                                                                                                                                                                                                                                                                                                                  
              "08h30 - Place Tiananmen (entrée gratuite)",                                                                                                                                                                                                                                                                                           
              "10h00 - Cité interdite (billet réservé, visite de 3-4h)",                                                                                                                                                                                                                                                                              
              "14h00 - Temple du Ciel",                                                                                                                                                                                                                                                                                                        
              "Soir : Dîner au lac Houhai + exploration des hutongs"                                                                                                                                                                                                                                                                                
          ],                                                                                                                                                                                                                                                                                                                                     
          "Jour 2 (dimanche)" : [                                                                                                                                                                                                                                                                                                                    
              "07h00 - Départ pour la Grande Muraille de Mutianyu (réserver navette/taxi)",                                                                                                                                                                                                                                                                      
              "09h00-12h00 - Visite de la Grande Muraille (téléphérique recommandé)",                                                                                                                                                                                                                                                                          
              "14h00 - Palais d'Été",                                                                                                                                                                                                                                                                                                           
              "18h00 - Retour en ville, prendre le train G27 (19h00-23h18) retour à Shanghai"                                                                                                                                                                                                                                                            
          ]                                                                                                                                                                                                                                                                                                                                      
      },                                                                                                                                                                                                                                                                                                                                         
      "Indispensables" : [                                                                                                                                                                                                                                                                                                                            
          "Billet réservé pour la Cité interdite (¥60)",                                                                                                                                                                                                                                                                                              
          "Chaussures de marche confortables",                                                                                                                                                                                                                                                                                           
          "Vêtements en couches (vérifier la météo)",                                                                                                                                                                                                                                                                                           
          "WiFi portable / batterie externe",                                                                                                                                                                                                                                                                                                            
          "Solde WeChat Pay/Alipay",                                                                                                                                                                                                                                                                                                             
          "Pièce d'identité/passeport pour retrait du billet de train"                                                                                                                                                                                                                                                                                              
      ]                                                                                                                                                                                                                                                                                                                                          
  }                                                                                                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                                                                                                                 
  final_answer(weekend_plan)                                       

Réponse finale

Réponse finale : {'Transport': {'Option recommandée' : 'Train G12 vendredi soir (18h00-22h30) de Shanghai Hongqiao à Pékin Sud', 'Alternative' : 'Vol samedi matin (07h00-09h00 + temps de transit)'}, 'Itinéraire' : {'Jour 1 (samedi)': ['08h30 - Place Tiananmen (entrée gratuite)', '10h00 - Cité interdite (billet réservé, visite de 3-4h)', '14h00 - Temple du Ciel', 'Soir : Dîner au lac Houhai + exploration des hutongs'], 'Jour 2 (dimanche)': ['07h00 - Départ pour la Grande Muraille de Mutianyu (réserver navette/taxi)', '09h00-12h00 - Visite de la Grande Muraille (téléphérique recommandé)', '14h00 - Palais d'Été', '18h00 - Retour en ville, prendre le train G27 (19h00-23h18) retour à Shanghai']},         
'Indispensables' : ['Billet réservé pour la Cité interdite (¥60)', 'Chaussures de marche confortables', 'Vêtements en couches (vérifier la météo)', 'WiFi portable / batterie externe', 'Solde WeChat Pay/Alipay', 'Pièce d'identité/passeport pour retrait du billet de train']}

Comparaison des performances des modèles dans smolagents

classement des LLM smolagents

Vous pouvez voir plus de détails sur Hugging Face

L’IA agentique représente une avancée majeure dans l’intelligence artificielle, permettant une résolution de problèmes et une exécution de tâches autonomes. La bibliothèque Smolagents fournit un cadre léger mais puissant spécialement conçu pour construire des agents intelligents, en mettant l’accent sur des actions directes basées sur le code et une compatibilité avec une grande variété de grands modèles de langage (LLM). Alors que les modèles open source continuent de s’améliorer rapidement, Smolagents offre aux développeurs une boîte à outils accessible et polyvalente pour explorer et implémenter le potentiel passionnant de l’IA agentique dans divers domaines.

Questions fréquentes

Quelle est la principale différence entre l’IA agentique et l’IA générative ?

L’IA générative se concentre sur la création de nouveau contenu comme du texte et des images, tandis que l’IA agentique se concentre sur la prise de décisions et l’exécution de tâches autonomes pour atteindre des objectifs.

L’exécution de code dans smolagents est-elle sécurisée ?

Smolagents offre des options pour une exécution sécurisée du code, notamment un environnement cloisonné utilisant E2B ou Docker, ce qui élimine les risques pour votre système local.

Où puis-je trouver plus d’informations sur smolagents ?

Vous trouverez la documentation complète, des tutoriels et des exemples sur le dépôt GitHub de smolagents et l’espace Hugging Face dédié à la bibliothèque.

Novita AI est la plateforme cloud tout-en-un qui propulse vos ambitions IA. API intégrées, serverless, instance GPU — les outils rentables dont vous avez besoin. Éliminez l’infrastructure, commencez gratuitement et concrétisez votre vision IA.

Lecture recommandée