Buckets:
| import{s as it,n as ot,o as rt}from"../chunks/scheduler.505acc25.js";import{S as mt,i as gt,e as i,s as a,c as m,h as ct,a as o,d as n,b as l,f as lt,j as r,g,k as je,l as dt,m as s,n as c,t as d,o as u,p}from"../chunks/index.fbb49fb4.js";import{C as ut}from"../chunks/CopyLLMTxtMenu.80337afb.js";import{H as h}from"../chunks/Heading.511e0027.js";import{E as pt}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.9cd71169.js";function ft(Ie){let f,Y,W,Z,$,Ee='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/smolagents/license_to_call.png" alt="smolagents banner"/>',ee,L,te,M,ne,x,Oe='En este módulo, exploraremos los pros y contras de usar <a href="https://huggingface.co/docs/smolagents/en/index" rel="nofollow">smolagents</a>, ayudándote a tomar una decisión informada sobre si es el framework adecuado para tus necesidades.',se,C,ae,T,ze="<code>smolagents</code> es un framework simple pero potente para construir agentes de IA. Proporciona a los LLMs la <em>capacidad de acción</em> para interactuar con el mundo real, como buscar o generar imágenes.",le,_,Ue="Como aprendimos en la unidad 1, los agentes de IA son programas que utilizan LLMs para generar <strong>‘pensamientos’</strong> basados en <strong>‘observaciones’</strong> para realizar <strong>‘acciones’</strong>. Exploremos cómo se implementa esto en smolagents.",ie,w,oe,H,Ne="<li><strong>Simplicidad:</strong> Mínima complejidad de código y abstracciones, para hacer que el framework sea fácil de entender, adoptar y extender</li> <li><strong>Soporte flexible para LLM:</strong> Funciona con cualquier LLM a través de la integración con herramientas de Hugging Face y APIs externas</li> <li><strong>Enfoque centrado en el código:</strong> Soporte de primera clase para Agentes de Código que escriben sus acciones directamente en código, eliminando la necesidad de análisis y simplificando la llamada a herramientas</li> <li><strong>Integración con HF Hub:</strong> Integración perfecta con Hugging Face Hub, permitiendo el uso de Espacios Gradio como herramientas</li>",re,b,me,A,Je="Con estas ventajas en mente, ¿cuándo deberíamos usar smolagents en lugar de otros frameworks?",ge,P,Fe="smolagents es ideal cuando:",ce,q,Qe="<li>Necesitas una <strong>solución ligera y mínima.</strong></li> <li>Quieres <strong>experimentar rápidamente</strong> sin configuraciones complejas.</li> <li>La <strong>lógica de tu aplicación es sencilla.</strong></li>",de,y,ue,S,Re="A diferencia de otros frameworks donde los agentes escriben acciones en JSON, <code>smolagents</code> <strong>se centra en llamadas a herramientas en código</strong>, simplificando el proceso de ejecución. Esto se debe a que no hay necesidad de analizar el JSON para construir código que llame a las herramientas: la salida puede ejecutarse directamente.",pe,k,Be="El siguiente diagrama ilustra esta diferencia:",fe,j,Ge='<img src="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/transformers/code_vs_json_actions.png" alt="Acciones de Código vs. JSON"/>',ve,I,Ve='Para revisar la diferencia entre Acciones de Código vs Acciones JSON, puedes volver a visitar <a href="https://huggingface.co/learn/agents-course/unit1/actions#actions-enabling-the-agent-to-engage-with-its-environment" rel="nofollow">la Sección de Acciones en la Unidad 1</a>.',he,E,$e,O,Ke="Los agentes en <code>smolagents</code> operan como <strong>agentes de múltiples pasos</strong>.",Le,z,De='Cada <a href="https://huggingface.co/docs/smolagents/main/en/reference/agents#smolagents.MultiStepAgent" rel="nofollow"><code>MultiStepAgent</code></a> realiza:',Me,U,We="<li>Un pensamiento</li> <li>Una llamada a herramienta y ejecución</li>",xe,N,Xe='Además de usar <strong><a href="https://huggingface.co/docs/smolagents/main/en/reference/agents#smolagents.CodeAgent" rel="nofollow">CodeAgent</a></strong> como el tipo principal de agente, smolagents también soporta <strong><a href="https://huggingface.co/docs/smolagents/main/en/reference/agents#smolagents.ToolCallingAgent" rel="nofollow">ToolCallingAgent</a></strong>, que escribe llamadas a herramientas en JSON.',Ce,J,Ye="Exploraremos cada tipo de agente con más detalle en las siguientes secciones.",Te,v,Ze="<p>En smolagents, las herramientas se definen usando el decorador <code>@tool</code> que envuelve una función de Python o la clase <code>Tool</code>.</p>",_e,F,we,Q,et='<code>smolagents</code> soporta una integración flexible de LLM, permitiéndote usar cualquier modelo invocable que cumpla con <a href="https://huggingface.co/docs/smolagents/main/en/reference/models" rel="nofollow">ciertos criterios</a>. El framework proporciona varias clases predefinidas para simplificar las conexiones de modelos:',He,R,tt='<li><strong><a href="https://huggingface.co/docs/smolagents/main/en/reference/models#smolagents.TransformersModel" rel="nofollow">TransformersModel</a>:</strong> Implementa un pipeline local de <code>transformers</code> para una integración perfecta.</li> <li><strong><a href="https://huggingface.co/docs/smolagents/main/en/reference/models#smolagents.InferenceClientModel" rel="nofollow">InferenceClientModel</a>:</strong> Soporta llamadas de <a href="https://huggingface.co/docs/huggingface_hub/main/en/guides/inference" rel="nofollow">inferencia sin servidor</a> a través de la <a href="https://huggingface.co/docs/api-inference/index" rel="nofollow">infraestructura de Hugging Face</a>, o a través de un número creciente de <a href="https://huggingface.co/docs/huggingface_hub/main/en/guides/inference#supported-providers-and-tasks" rel="nofollow">proveedores de inferencia de terceros</a>.</li> <li><strong><a href="https://huggingface.co/docs/smolagents/main/en/reference/models#smolagents.LiteLLMModel" rel="nofollow">LiteLLMModel</a>:</strong> Aprovecha <a href="https://www.litellm.ai/" rel="nofollow">LiteLLM</a> para interacciones ligeras con modelos.</li> <li><strong><a href="https://huggingface.co/docs/smolagents/main/en/reference/models#smolagents.OpenAIServerModel" rel="nofollow">OpenAIServerModel</a>:</strong> Se conecta a cualquier servicio que ofrezca una interfaz de API de OpenAI.</li> <li><strong><a href="https://huggingface.co/docs/smolagents/main/en/reference/models#smolagents.AzureOpenAIServerModel" rel="nofollow">AzureOpenAIServerModel</a>:</strong> Soporta la integración con cualquier despliegue de Azure OpenAI.</li>',be,B,nt="Esta flexibilidad asegura que los desarrolladores puedan elegir el modelo y servicio más adecuados para sus casos de uso específicos, y permite una fácil experimentación.",Ae,G,st="Ahora que hemos entendido por qué y cuándo usar smolagents, ¡profundicemos en esta poderosa biblioteca!",Pe,V,qe,K,at='<li><a href="https://huggingface.co/blog/smolagents" rel="nofollow">Blog de smolagents</a> - Introducción a smolagents e interacciones de código</li>',ye,D,Se,X,ke;return L=new ut({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),M=new h({props:{title:"¿Por qué usar smolagents?",local:"por-qué-usar-smolagents",headingTag:"h1"}}),C=new h({props:{title:"¿Qué es smolagents ?",local:"qué-es-smolagents-",headingTag:"h2"}}),w=new h({props:{title:"Ventajas clave de smolagents",local:"ventajas-clave-de-smolagents",headingTag:"h3"}}),b=new h({props:{title:"¿Cuándo usar smolagents?",local:"cuándo-usar-smolagents",headingTag:"h3"}}),y=new h({props:{title:"Acciones de Código vs. JSON",local:"acciones-de-código-vs-json",headingTag:"h3"}}),E=new h({props:{title:"Tipos de Agentes en smolagents",local:"tipos-de-agentes-en-smolagents",headingTag:"h3"}}),F=new h({props:{title:"Integración de Modelos en smolagents",local:"integración-de-modelos-en-smolagents",headingTag:"h3"}}),V=new h({props:{title:"Recursos",local:"recursos",headingTag:"h2"}}),D=new pt({props:{source:"https://github.com/huggingface/agents-course/blob/main/units/es/unit2/smolagents/why_use_smolagents.mdx"}}),{c(){f=i("meta"),Y=a(),W=i("p"),Z=a(),$=i("p"),$.innerHTML=Ee,ee=a(),m(L.$$.fragment),te=a(),m(M.$$.fragment),ne=a(),x=i("p"),x.innerHTML=Oe,se=a(),m(C.$$.fragment),ae=a(),T=i("p"),T.innerHTML=ze,le=a(),_=i("p"),_.innerHTML=Ue,ie=a(),m(w.$$.fragment),oe=a(),H=i("ul"),H.innerHTML=Ne,re=a(),m(b.$$.fragment),me=a(),A=i("p"),A.textContent=Je,ge=a(),P=i("p"),P.textContent=Fe,ce=a(),q=i("ul"),q.innerHTML=Qe,de=a(),m(y.$$.fragment),ue=a(),S=i("p"),S.innerHTML=Re,pe=a(),k=i("p"),k.textContent=Be,fe=a(),j=i("p"),j.innerHTML=Ge,ve=a(),I=i("p"),I.innerHTML=Ve,he=a(),m(E.$$.fragment),$e=a(),O=i("p"),O.innerHTML=Ke,Le=a(),z=i("p"),z.innerHTML=De,Me=a(),U=i("ul"),U.innerHTML=We,xe=a(),N=i("p"),N.innerHTML=Xe,Ce=a(),J=i("p"),J.textContent=Ye,Te=a(),v=i("blockquote"),v.innerHTML=Ze,_e=a(),m(F.$$.fragment),we=a(),Q=i("p"),Q.innerHTML=et,He=a(),R=i("ul"),R.innerHTML=tt,be=a(),B=i("p"),B.textContent=nt,Ae=a(),G=i("p"),G.textContent=st,Pe=a(),m(V.$$.fragment),qe=a(),K=i("ul"),K.innerHTML=at,ye=a(),m(D.$$.fragment),Se=a(),X=i("p"),this.h()},l(e){const t=ct("svelte-u9bgzb",document.head);f=o(t,"META",{name:!0,content:!0}),t.forEach(n),Y=l(e),W=o(e,"P",{}),lt(W).forEach(n),Z=l(e),$=o(e,"P",{"data-svelte-h":!0}),r($)!=="svelte-y6hm8g"&&($.innerHTML=Ee),ee=l(e),g(L.$$.fragment,e),te=l(e),g(M.$$.fragment,e),ne=l(e),x=o(e,"P",{"data-svelte-h":!0}),r(x)!=="svelte-3uarn3"&&(x.innerHTML=Oe),se=l(e),g(C.$$.fragment,e),ae=l(e),T=o(e,"P",{"data-svelte-h":!0}),r(T)!=="svelte-1rjewm"&&(T.innerHTML=ze),le=l(e),_=o(e,"P",{"data-svelte-h":!0}),r(_)!=="svelte-1aaunmq"&&(_.innerHTML=Ue),ie=l(e),g(w.$$.fragment,e),oe=l(e),H=o(e,"UL",{"data-svelte-h":!0}),r(H)!=="svelte-18xze6k"&&(H.innerHTML=Ne),re=l(e),g(b.$$.fragment,e),me=l(e),A=o(e,"P",{"data-svelte-h":!0}),r(A)!=="svelte-ecp1mi"&&(A.textContent=Je),ge=l(e),P=o(e,"P",{"data-svelte-h":!0}),r(P)!=="svelte-1apk3ia"&&(P.textContent=Fe),ce=l(e),q=o(e,"UL",{"data-svelte-h":!0}),r(q)!=="svelte-1pcvouq"&&(q.innerHTML=Qe),de=l(e),g(y.$$.fragment,e),ue=l(e),S=o(e,"P",{"data-svelte-h":!0}),r(S)!=="svelte-f8stg"&&(S.innerHTML=Re),pe=l(e),k=o(e,"P",{"data-svelte-h":!0}),r(k)!=="svelte-17441wp"&&(k.textContent=Be),fe=l(e),j=o(e,"P",{"data-svelte-h":!0}),r(j)!=="svelte-1px2h6"&&(j.innerHTML=Ge),ve=l(e),I=o(e,"P",{"data-svelte-h":!0}),r(I)!=="svelte-10d2vdr"&&(I.innerHTML=Ve),he=l(e),g(E.$$.fragment,e),$e=l(e),O=o(e,"P",{"data-svelte-h":!0}),r(O)!=="svelte-b4urkk"&&(O.innerHTML=Ke),Le=l(e),z=o(e,"P",{"data-svelte-h":!0}),r(z)!=="svelte-1hxkygz"&&(z.innerHTML=De),Me=l(e),U=o(e,"UL",{"data-svelte-h":!0}),r(U)!=="svelte-smpfh"&&(U.innerHTML=We),xe=l(e),N=o(e,"P",{"data-svelte-h":!0}),r(N)!=="svelte-1ckfasi"&&(N.innerHTML=Xe),Ce=l(e),J=o(e,"P",{"data-svelte-h":!0}),r(J)!=="svelte-13ganwu"&&(J.textContent=Ye),Te=l(e),v=o(e,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),r(v)!=="svelte-1s80ikt"&&(v.innerHTML=Ze),_e=l(e),g(F.$$.fragment,e),we=l(e),Q=o(e,"P",{"data-svelte-h":!0}),r(Q)!=="svelte-1mftj8j"&&(Q.innerHTML=et),He=l(e),R=o(e,"UL",{"data-svelte-h":!0}),r(R)!=="svelte-1skse8f"&&(R.innerHTML=tt),be=l(e),B=o(e,"P",{"data-svelte-h":!0}),r(B)!=="svelte-ooynaq"&&(B.textContent=nt),Ae=l(e),G=o(e,"P",{"data-svelte-h":!0}),r(G)!=="svelte-5ks8j4"&&(G.textContent=st),Pe=l(e),g(V.$$.fragment,e),qe=l(e),K=o(e,"UL",{"data-svelte-h":!0}),r(K)!=="svelte-17hi0ko"&&(K.innerHTML=at),ye=l(e),g(D.$$.fragment,e),Se=l(e),X=o(e,"P",{}),lt(X).forEach(n),this.h()},h(){je(f,"name","hf:doc:metadata"),je(f,"content",vt),je(v,"class","tip")},m(e,t){dt(document.head,f),s(e,Y,t),s(e,W,t),s(e,Z,t),s(e,$,t),s(e,ee,t),c(L,e,t),s(e,te,t),c(M,e,t),s(e,ne,t),s(e,x,t),s(e,se,t),c(C,e,t),s(e,ae,t),s(e,T,t),s(e,le,t),s(e,_,t),s(e,ie,t),c(w,e,t),s(e,oe,t),s(e,H,t),s(e,re,t),c(b,e,t),s(e,me,t),s(e,A,t),s(e,ge,t),s(e,P,t),s(e,ce,t),s(e,q,t),s(e,de,t),c(y,e,t),s(e,ue,t),s(e,S,t),s(e,pe,t),s(e,k,t),s(e,fe,t),s(e,j,t),s(e,ve,t),s(e,I,t),s(e,he,t),c(E,e,t),s(e,$e,t),s(e,O,t),s(e,Le,t),s(e,z,t),s(e,Me,t),s(e,U,t),s(e,xe,t),s(e,N,t),s(e,Ce,t),s(e,J,t),s(e,Te,t),s(e,v,t),s(e,_e,t),c(F,e,t),s(e,we,t),s(e,Q,t),s(e,He,t),s(e,R,t),s(e,be,t),s(e,B,t),s(e,Ae,t),s(e,G,t),s(e,Pe,t),c(V,e,t),s(e,qe,t),s(e,K,t),s(e,ye,t),c(D,e,t),s(e,Se,t),s(e,X,t),ke=!0},p:ot,i(e){ke||(d(L.$$.fragment,e),d(M.$$.fragment,e),d(C.$$.fragment,e),d(w.$$.fragment,e),d(b.$$.fragment,e),d(y.$$.fragment,e),d(E.$$.fragment,e),d(F.$$.fragment,e),d(V.$$.fragment,e),d(D.$$.fragment,e),ke=!0)},o(e){u(L.$$.fragment,e),u(M.$$.fragment,e),u(C.$$.fragment,e),u(w.$$.fragment,e),u(b.$$.fragment,e),u(y.$$.fragment,e),u(E.$$.fragment,e),u(F.$$.fragment,e),u(V.$$.fragment,e),u(D.$$.fragment,e),ke=!1},d(e){e&&(n(Y),n(W),n(Z),n($),n(ee),n(te),n(ne),n(x),n(se),n(ae),n(T),n(le),n(_),n(ie),n(oe),n(H),n(re),n(me),n(A),n(ge),n(P),n(ce),n(q),n(de),n(ue),n(S),n(pe),n(k),n(fe),n(j),n(ve),n(I),n(he),n($e),n(O),n(Le),n(z),n(Me),n(U),n(xe),n(N),n(Ce),n(J),n(Te),n(v),n(_e),n(we),n(Q),n(He),n(R),n(be),n(B),n(Ae),n(G),n(Pe),n(qe),n(K),n(ye),n(Se),n(X)),n(f),p(L,e),p(M,e),p(C,e),p(w,e),p(b,e),p(y,e),p(E,e),p(F,e),p(V,e),p(D,e)}}}const vt='{"title":"¿Por qué usar smolagents?","local":"por-qué-usar-smolagents","sections":[{"title":"¿Qué es smolagents ?","local":"qué-es-smolagents-","sections":[{"title":"Ventajas clave de smolagents","local":"ventajas-clave-de-smolagents","sections":[],"depth":3},{"title":"¿Cuándo usar smolagents?","local":"cuándo-usar-smolagents","sections":[],"depth":3},{"title":"Acciones de Código vs. JSON","local":"acciones-de-código-vs-json","sections":[],"depth":3},{"title":"Tipos de Agentes en smolagents","local":"tipos-de-agentes-en-smolagents","sections":[],"depth":3},{"title":"Integración de Modelos en smolagents","local":"integración-de-modelos-en-smolagents","sections":[],"depth":3}],"depth":2},{"title":"Recursos","local":"recursos","sections":[],"depth":2}],"depth":1}';function ht(Ie){return rt(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Tt extends mt{constructor(f){super(),gt(this,f,ht,ft,it,{})}}export{Tt as component}; | |
Xet Storage Details
- Size:
- 14 kB
- Xet hash:
- e98b67547e86967c29c37e9db9719e411fd13e019944a786850d3d3a5435bb5d
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.