





Deep Research build By Smolagents FREE
Powered By Smolagents
Código Ai Smolagents | FAST&FREE
Desarrollado por Together AI y LlamaCoder
smolagents and tools gallery
best smolagents in huggingface
¿Qué son los agentes?
Los agentes de IA son programas en los que las salidas LLM controlan el flujo de trabajo.
El cuadro ilustra cómo varía la agencia según los sistemas:
Agencia | Descripción | Cómo se llama | Patrón de ejemplo |
---|---|---|---|
☆☆☆ | El resultado del LLM no influye en el flujo del programa | Procesador simple | process_llm_output(llm_response) |
★☆☆ | La salida LLM determina el flujo de control básico | Router | if llm_decision(): ruta_a() else: ruta_b() |
★★☆ | La salida LLM determina la ejecución de la función | Llamada a la herramienta | run_function(llm_chosen_tool, llm_chosen_args) |
★★★ | La salida LLM controla la iteración y la continuación del programa | Agente de varios pasos | while llm_should_continue(): execute_next_step() |
★★★ | Un agentic workflow puede iniciar otro agentic workflow | Multiagente | if llm_trigger(): ejecutar_agente() |
Características de SmolAgents
🤗 Smolagents es un marco de trabajo minimalista para agentes de IA desarrollado por el equipo de Hugging Face, creado para permitir a los desarrolladores desplegar agentes robustos con sólo unas pocas líneas de código. smolagents, que apuesta por la sencillez y la eficiencia, permite a los grandes modelos lingüísticos (LLM) interactuar a la perfección con el mundo real.
✨ Simplicidad
Código base compacto: Con aproximadamente 1.000 líneas de código central en agentes.py
smolagents mantiene las abstracciones al mínimo para facilitar el desarrollo.
Fácil de usar
Los desarrolladores pueden definir rápidamente los agentes, suministrarles las herramientas necesarias y ejecutarlos de inmediato sin complicadas configuraciones.
Código Agentes
smolagents se centra en agentes de códigodonde los agentes escriben y ejecutan fragmentos de código Python para realizar acciones, en lugar de generar acciones como JSON o blobs de texto.
Alta eficacia
En comparación con los métodos estándar de llamada a herramientas, los agentes de código ofrecen una mayor eficiencia y precisión, reduciendo los pasos y las llamadas a LLM en aproximadamente 30%, y logrando un rendimiento superior en puntos de referencia complejos.
Ejecución segura
Para garantizar una ejecución segura del código, smolagents permite ejecutar código en entornos aislados como E2B, proporcionando un espacio de ejecución protegido y aislado.
Varios LLM
smolagents se integra sin esfuerzo con cualquier modelo lingüístico de gran tamaño, incluidos los modelos alojados en Hugging Face Hub a través de Transformers, así como los modelos de OpenAI, Anthropic y otros a través de la integración con LiteLLM.

SmolAgents :Integración con Hugging Face Hub
Compartir y cargar herramientas: La profunda integración con Hugging Face Hub permite a los desarrolladores compartir e importar herramientas fácilmente, fomentando la colaboración y el intercambio dentro de la comunidad.
Crecimiento del ecosistema: Aprovechando las capacidades del Hub, smolagents se amplía continuamente con más funcionalidades y herramientas, ofreciendo un potencial de desarrollo ilimitado.
Apoyo a los agentes de llamadas tradicionales
Variedad de opciones: Además de los agentes de código, smolagents también es compatible con los tradicionales agentes de llamada de herramientas, donde las acciones se escriben como JSON o bloques de texto, adecuados para escenarios y requisitos específicos.


Razones para optar por el Código smolAgents
Composibilidad superior: El código admite de forma natural el anidamiento y la reutilización de funciones, lo que permite expresar una lógica compleja.
Gestión eficaz de objetos: En comparación con JSON, el código simplifica la gestión y transferencia de objetos.
Máxima flexibilidad: El código puede representar cualquier operación que pueda realizar un ordenador, lo que proporciona una inmensa versatilidad.
Amplios datos de formación: Los LLM han recibido formación sobre grandes cantidades de código de alta calidad, lo que mejora su capacidad para generar y comprender código.
Ventajas de rendimiento de smolagents
En varias pruebas comparativas, los smolagent que utilizan modelos de código abierto han igualado el rendimiento de los agentes que utilizan modelos propietarios. Gracias a la eficacia de los agentes de código y a los continuos avances de los modelos de código abierto, los desarrolladores pueden crear potentes sistemas de agentes sin depender de servicios de código cerrado.

Ejemplo de aplicación de SmolAgents
En Smolagents, los agentes se encapsulan en clases que les permiten realizar tareas específicas. Por ejemplo, un agente ManagedAgent
se pueden crear para gestionar varias tareas utilizando diferentes tipos de agentes. A continuación se muestra un ejemplo simplificado de cómo se pueden implementar dos agentes: uno para la búsqueda web y otro para la generación de imágenes. A continuación se explica cómo crear una herramienta personalizada que obtenga los tiempos de viaje de Google Maps y cómo utilizarla en un agente planificador de viajes:
from typing import Optional
from smolagents import CodeAgent, HfApiModel, tool
@tool
def get_travel_duration(start_location: str, destination_location: str, transportation_mode: Optional[str] = None) -> str:
"""Gets the travel time between two places.
Args:
start_location: the place from which you start your ride
destination_location: the place of arrival
transportation_mode: The transportation mode, in 'driving', 'walking', 'bicycling', or 'transit'. Defaults to 'driving'.
"""
import os # All imports are placed within the function, to allow for sharing to Hub.
import googlemaps
from datetime import datetime
gmaps = googlemaps.Client(os.getenv("GMAPS_API_KEY"))
if transportation_mode is None:
transportation_mode = "driving"
try:
directions_result = gmaps.directions(
start_location,
destination_location,
mode=transportation_mode,
departure_time=datetime(2025, 6, 6, 11, 0), # At 11, date far in the future
)
if len(directions_result) == 0:
return "No way found between these places with the required transportation mode."
return directions_result[0]["legs"][0]["duration"]["text"]
except Exception as e:
print(e)
return e
agent = CodeAgent(tools=[get_travel_duration], model=HfApiModel(), additional_authorized_imports=["datetime"])
agent.run("Can you give me a nice one-day trip around Paris with a few locations and the times? Could be in the city or outside, but should fit in one day. I'm travelling only with a rented bicycle.")
Tras unos cuantos pasos de recopilación de tiempos de viaje y ejecución de cálculos, el agente devuelve esta propuesta final:Itinerario de un día en bicicleta por París:
1. Salida de la Torre Eiffel a las 9:00 h.
2. Visita a la Torre Eiffel hasta las 10:30.
3. Viaje a la catedral de Notre-Dame a las 10:46.
4. Visita a la Catedral de Notre-Dame hasta las 12:16 PM.
5. Viaje a Montmartre a las 12:41 PM.
6. Visita a Montmartre hasta las 14:11.
7. Viaje al Jardín de Luxemburgo a las 14:33.
8. Visita al Jardín de Luxemburgo hasta las 16:03.
9. Viaje al Museo del Louvre a las 16:12.
10. Visita al Museo del Louvre hasta las 17:42.
11. Pausa para comer hasta las 18:12.
12. Hora prevista de finalización: 18:12.
Después de crear una herramienta, compartirla con Hub es tan sencillo como:
get_travel_duration.push_to_hub("{su_nombre_de_usuario}/get-travel-duration-tool")
Recursos de SmolAgents
¿Qué dice la gente de SmolAgents en X.com?
La nueva biblioteca smolagents lanzada hoy por @huggingface parece realmente impresionante.
- Ben Klieger (@benklieger) 31 de diciembre de 2024
Combinando simplicidad (¡el archivo principal es de solo ~1000 líneas!) y funcionalidad opinada por benchmarking (apoyando el enfoque code-first frente a la llamada directa a funciones) 🔥
Un hilo tutorial (🧵) pic.twitter.com/sKuakggpcM
He pasado el fin de semana aprendiendo sobre flujos de trabajo agénticos y jugando con la biblioteca smolagents publicada por @huggingface. Con esto, construí un Agente Asistente de Viajes bastante guay (lo llamo Tracy).
- Arnav Jaitly (@arnitly) 6 de enero de 2025
Utilizo CodeLlama-34b-Instruct-hf para mis agentes LLM en el backend para... pic.twitter.com/e7GHA7rVlk
DE ACUERDO, @huggingface Yo diría que lo consiguió con los smolagent y su definición de agente.
- Gerred (@devgerred) 31 de diciembre de 2024
Tal vez los clientes sólo tengan que ser una parte negociadora y nosotros tengamos que seguir invirtiendo en los propios LLM. Me encanta la claridad inmediata de esto. pic.twitter.com/sD6qMqpzgs
smolagents ya está disponible en ai-gradio
- AK (@_akhaliq) 31 de diciembre de 2024
pip install ai-gradio[smolagents]==0.2.1
entonces simplemente haga
importar gradio como gr
importar ai_gradio
gr.load( name='smolagents:meta-llama/Llama-3.1-8B-Instruct',
src=ai_gradio.registry).launch() pic.twitter.com/r7vfhrW36l
Hugging Face ha presentado Smolagents, una biblioteca diseñada para construir sistemas agénticos utilizando grandes modelos lingüísticos (LLM).
- Mazhar Choudhry (@mazrnow) 5 de enero de 2025
A diferencia de los sistemas tradicionales basados en LLM...
Ver más https://t.co/EBEWPBEwAj pic.twitter.com/h2xswDLAxg
smolagents - ¡construye tus propios agentes como Devin en 3 líneas de código con búsqueda! 🔥 pic.twitter.com/PPyhbFWN5w
- Vaibhav (VB) Srivastav (@reach_vb) 29 de diciembre de 2024
Agente 元年来势汹汹啊!一周猛涨 3.9K Star? ⚡️ @huggingface 正式发布并开源 smolagents!🔥
- Tom Huang (@tuturetom) 8 de enero de 2025
3 行代码启动一个 Agente 完成复杂工作,支持 40+ LLM,支持无缝连接 Huggingface hub 下载一些自定义模型
不仅是一个 Agente 框架,还是一个将 HF 所有有价值的大小模型作为工具融入 Agente 的伟大尝试 pic.twitter.com/wJZ9ZL8nRT