Buckets:
| import{s as st,a as lt,o as it}from"../chunks/scheduler.cc52f4b9.js";import{S as at,i as ot,e as a,s,c as f,h as gt,a as o,d as l,b as i,f as nt,g as p,j as g,k as Y,l as mt,m as n,n as $,t as r,o as u,p as c,q as ft,r as pt}from"../chunks/index.1e918bfb.js";import{T as $t}from"../chunks/Tip.d0a39104.js";import{C as rt}from"../chunks/CopyLLMTxtMenu.9b4c75d3.js";import{H as d,E as ut}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.41e1e259.js";function ct(ee){let m;return{c(){m=ft("이 단원에서는 `smolagents` 라이브러리로 AI 에이전트를 만드는 법을 배웁니다. 여러분의 에이전트는 데이터 검색, 코드 실행, 웹페이지 상호작용이 가능하며, 여러 에이전트를 조합해 더 강력한 시스템도 만들 수 있습니다.")},l(v){m=pt(v,"이 단원에서는 `smolagents` 라이브러리로 AI 에이전트를 만드는 법을 배웁니다. 여러분의 에이전트는 데이터 검색, 코드 실행, 웹페이지 상호작용이 가능하며, 여러 에이전트를 조합해 더 강력한 시스템도 만들 수 있습니다.")},m(v,T){n(v,m,T)},d(v){v&&l(m)}}}function dt(ee){let m,v,T,te,_,le,x,ne,C,Ee,se,L,Ie='이 모듈에 오신 것을 환영합니다! 여기서는 <a href="https://github.com/huggingface/smolagents" rel="nofollow"><code>smolagents</code></a> 라이브러리를 활용해 <strong>효과적인 에이전트 만드는 법</strong>을 배웁니다. <code>smolagents</code>는 강력한 AI 에이전트를 손쉽게 만들 수 있도록 도와주는 경량 프레임워크입니다.',ie,M,Ve='<code>smolagents</code>는 Hugging Face에서 제공하는 라이브러리입니다. <a href="https://github.com/huggingface/smolagents" rel="nofollow"><code>저장소</code></a>에 <strong>별(star)</strong>을 눌러 응원해 주세요!',ae,w,ke,oe,H,ge,A,ze="이 모듈에서는 <code>smolagents</code>를 활용해 지능형 에이전트를 만드는 데 필요한 핵심 개념과 실전 전략을 폭넓게 다룹니다.",me,P,Oe="수많은 오픈소스 프레임워크가 존재하는 만큼, <code>smolagents</code>의 구성 요소와 장단점을 이해하고, 언제 다른 솔루션이 더 적합할지 판단하는 것이 중요합니다.",fe,b,Ue="이 단원에서는 소프트웨어 개발에 특화된 코드 에이전트, 모듈형 워크플로우를 위한 툴 호출 에이전트, 정보를 검색·종합하는 리트리벌 에이전트 등 주요 에이전트 유형을 살펴봅니다.",pe,y,Be="또한 여러 에이전트를 조합하는 방법, 비전 기능 및 웹 브라우징 통합 등 동적이고 상황 인식이 가능한 애플리케이션을 만드는 방법도 다룹니다.",$e,G,Fe="이번 단원에서는 1단원에서 만난 에이전트 Alfred가 다시 등장합니다. 이번에는 <code>smolagents</code> 프레임워크를 활용해 다양한 작업을 해결합니다. Alfred는 Wayne 저택에서 파티를 준비하며 여러 과제를 해결해야 합니다. Alfred의 여정을 따라가며 <code>smolagents</code>의 핵심 개념을 함께 익혀봅시다!",re,h,ue,q,Je='<img src="https://huggingface.co/datasets/agents-course/course-images/resolve/main/en/unit1/this-is-alfred.jpg" alt="Alfred the agent"/>',ce,S,de,R,Ne="이 단원에서 다루는 내용은 다음과 같습니다:",ve,j,he,E,We="<code>smolagents</code>는 다양한 오픈소스 에이전트 프레임워크 중 하나입니다. 대안으로는 <code>LlamaIndex</code>, <code>LangGraph</code> 등이 있으며, 이 과정의 다른 모듈에서 다룹니다. <code>smolagents</code>는 특정 상황에 적합한 여러 주요 기능을 제공하지만, 프레임워크 선택 시 항상 다양한 옵션을 고려해야 합니다. 이 장에서는 <code>smolagents</code>의 장단점을 살펴보고, 프로젝트 요구에 따라 현명하게 선택할 수 있도록 도와줍니다.",Te,I,_e,V,De="<code>CodeAgents</code>는 <code>smolagents</code>의 기본 에이전트 유형입니다. 이들은 JSON이나 텍스트 대신 파이썬 코드를 생성해 작업을 수행합니다. 이 장에서는 CodeAgent의 목적, 동작 방식, 실전 예시를 통해 그 기능을 살펴봅니다.",xe,k,Ce,z,Ke="<code>ToolCallingAgents</code>는 <code>smolagents</code>가 지원하는 두 번째 에이전트 유형입니다. CodeAgent가 파이썬 코드를 생성하는 것과 달리, 이 에이전트는 시스템이 파싱·해석해야 하는 JSON/텍스트 블롭을 생성합니다. 이 장에서는 ToolCallingAgent의 동작 방식, CodeAgent와의 차이점, 사용 예시를 다룹니다.",Le,O,Me,U,Qe="1단원에서 살펴본 것처럼, 도구는 LLM이 에이전트 시스템 내에서 사용할 수 있는 함수로, 에이전트 행동의 핵심 빌딩 블록입니다. 이 장에서는 도구 생성법, 구조, <code>Tool</code> 클래스와 <code>@tool</code> 데코레이터를 활용한 다양한 구현 방법을 다룹니다. 기본 도구 상자, 커뮤니티에 도구 공유, 커뮤니티 도구 불러오기 등도 배웁니다.",we,B,He,F,Xe="리트리벌 에이전트는 모델이 지식 베이스에 접근할 수 있게 하여, 다양한 소스에서 정보를 검색·종합·추출할 수 있게 합니다. 이들은 벡터 스토어를 활용해 효율적으로 정보를 찾고, <strong>RAG(Retrieval-Augmented Generation)</strong> 패턴을 구현합니다. 웹 검색과 맞춤형 지식 베이스 통합, 대화 맥락 유지 등 다양한 전략을 다룹니다.",Ae,J,Pe,N,Ye="여러 에이전트를 효과적으로 조율하는 것은 강력한 멀티 에이전트 시스템 구축의 핵심입니다. 웹 검색 에이전트와 코드 실행 에이전트 등 다양한 능력을 가진 에이전트를 조합해 더 정교한 솔루션을 만들 수 있습니다. 이 장에서는 멀티 에이전트 시스템의 설계, 구현, 관리 방법을 다룹니다.",be,W,ye,D,Ze="비전 에이전트는 <strong>비전-언어 모델(VLM)</strong>을 통합해 시각 정보를 처리·해석할 수 있습니다. 이 장에서는 VLM 기반 에이전트 설계·통합법, 이미지 기반 추론, 시각 데이터 분석, 멀티모달 상호작용 등을 다룹니다. 또한 비전 에이전트를 활용해 웹을 탐색하고 정보를 추출하는 브라우저 에이전트도 만들어봅니다.",Ge,K,qe,Q,et='<li><a href="https://huggingface.co/docs/smolagents" rel="nofollow">smolagents 공식 문서</a></li> <li><a href="https://www.anthropic.com/research/building-effective-agents" rel="nofollow">효과적인 에이전트 만들기</a> - 에이전트 아키텍처 연구 논문</li> <li><a href="https://huggingface.co/docs/smolagents/tutorials/building_good_agents" rel="nofollow">에이전트 가이드라인</a> - 신뢰성 높은 에이전트 구축을 위한 베스트 프랙티스</li> <li><a href="https://langchain-ai.github.io/langgraph/" rel="nofollow">LangGraph Agents</a> - 다양한 에이전트 구현 예시</li> <li><a href="https://platform.openai.com/docs/guides/function-calling" rel="nofollow">Function Calling Guide</a> - LLM의 함수 호출 이해하기</li> <li><a href="https://www.pinecone.io/learn/retrieval-augmented-generation/" rel="nofollow">RAG 베스트 프랙티스</a> - 효과적인 RAG 구현 가이드</li>',Se,X,Re,Z,je;return _=new rt({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),x=new d({props:{title:"smolagents 소개",local:"smolagents-소개",headingTag:"h1"}}),H=new d({props:{title:"모듈 개요",local:"모듈-개요",headingTag:"h2"}}),h=new $t({props:{$$slots:{default:[ct]},$$scope:{ctx:ee}}}),S=new d({props:{title:"목차",local:"목차",headingTag:"h2"}}),j=new d({props:{title:"1️⃣ 왜 smolagents를 사용할까",local:"1-왜-smolagents를-사용할까",headingTag:"h3"}}),I=new d({props:{title:"2️⃣ CodeAgents",local:"2-codeagents",headingTag:"h3"}}),k=new d({props:{title:"3️⃣ ToolCallingAgents",local:"3-toolcallingagents",headingTag:"h3"}}),O=new d({props:{title:"4️⃣ 도구(Tools)",local:"4-도구tools",headingTag:"h3"}}),B=new d({props:{title:"5️⃣ 리트리벌 에이전트(Retrieval Agents)",local:"5-리트리벌-에이전트retrieval-agents",headingTag:"h3"}}),J=new d({props:{title:"6️⃣ 멀티 에이전트 시스템(Multi-Agent Systems)",local:"6-멀티-에이전트-시스템multi-agent-systems",headingTag:"h3"}}),W=new d({props:{title:"7️⃣ 비전 및 브라우저 에이전트(Vision and Browser agents)",local:"7-비전-및-브라우저-에이전트vision-and-browser-agents",headingTag:"h3"}}),K=new d({props:{title:"참고 자료",local:"참고-자료",headingTag:"h2"}}),X=new ut({props:{source:"https://github.com/huggingface/agents-course/blob/main/units/ko/unit2/smolagents/introduction.mdx"}}),{c(){m=a("meta"),v=s(),T=a("p"),te=s(),f(_.$$.fragment),le=s(),f(x.$$.fragment),ne=s(),C=a("img"),se=s(),L=a("p"),L.innerHTML=Ie,ie=s(),M=a("p"),M.innerHTML=Ve,ae=s(),w=a("img"),oe=s(),f(H.$$.fragment),ge=s(),A=a("p"),A.innerHTML=ze,me=s(),P=a("p"),P.innerHTML=Oe,fe=s(),b=a("p"),b.textContent=Ue,pe=s(),y=a("p"),y.textContent=Be,$e=s(),G=a("p"),G.innerHTML=Fe,re=s(),f(h.$$.fragment),ue=s(),q=a("p"),q.innerHTML=Je,ce=s(),f(S.$$.fragment),de=s(),R=a("p"),R.textContent=Ne,ve=s(),f(j.$$.fragment),he=s(),E=a("p"),E.innerHTML=We,Te=s(),f(I.$$.fragment),_e=s(),V=a("p"),V.innerHTML=De,xe=s(),f(k.$$.fragment),Ce=s(),z=a("p"),z.innerHTML=Ke,Le=s(),f(O.$$.fragment),Me=s(),U=a("p"),U.innerHTML=Qe,we=s(),f(B.$$.fragment),He=s(),F=a("p"),F.innerHTML=Xe,Ae=s(),f(J.$$.fragment),Pe=s(),N=a("p"),N.textContent=Ye,be=s(),f(W.$$.fragment),ye=s(),D=a("p"),D.innerHTML=Ze,Ge=s(),f(K.$$.fragment),qe=s(),Q=a("ul"),Q.innerHTML=et,Se=s(),f(X.$$.fragment),Re=s(),Z=a("p"),this.h()},l(e){const t=gt("svelte-u9bgzb",document.head);m=o(t,"META",{name:!0,content:!0}),t.forEach(l),v=i(e),T=o(e,"P",{}),nt(T).forEach(l),te=i(e),p(_.$$.fragment,e),le=i(e),p(x.$$.fragment,e),ne=i(e),C=o(e,"IMG",{src:!0,alt:!0}),se=i(e),L=o(e,"P",{"data-svelte-h":!0}),g(L)!=="svelte-jh2pbp"&&(L.innerHTML=Ie),ie=i(e),M=o(e,"P",{"data-svelte-h":!0}),g(M)!=="svelte-1agoqg9"&&(M.innerHTML=Ve),ae=i(e),w=o(e,"IMG",{src:!0,alt:!0}),oe=i(e),p(H.$$.fragment,e),ge=i(e),A=o(e,"P",{"data-svelte-h":!0}),g(A)!=="svelte-1grsqh4"&&(A.innerHTML=ze),me=i(e),P=o(e,"P",{"data-svelte-h":!0}),g(P)!=="svelte-184xg8n"&&(P.innerHTML=Oe),fe=i(e),b=o(e,"P",{"data-svelte-h":!0}),g(b)!=="svelte-6qc8cs"&&(b.textContent=Ue),pe=i(e),y=o(e,"P",{"data-svelte-h":!0}),g(y)!=="svelte-eu1wov"&&(y.textContent=Be),$e=i(e),G=o(e,"P",{"data-svelte-h":!0}),g(G)!=="svelte-i26408"&&(G.innerHTML=Fe),re=i(e),p(h.$$.fragment,e),ue=i(e),q=o(e,"P",{"data-svelte-h":!0}),g(q)!=="svelte-13ihsp8"&&(q.innerHTML=Je),ce=i(e),p(S.$$.fragment,e),de=i(e),R=o(e,"P",{"data-svelte-h":!0}),g(R)!=="svelte-ycyqtn"&&(R.textContent=Ne),ve=i(e),p(j.$$.fragment,e),he=i(e),E=o(e,"P",{"data-svelte-h":!0}),g(E)!=="svelte-us9kq"&&(E.innerHTML=We),Te=i(e),p(I.$$.fragment,e),_e=i(e),V=o(e,"P",{"data-svelte-h":!0}),g(V)!=="svelte-4rg057"&&(V.innerHTML=De),xe=i(e),p(k.$$.fragment,e),Ce=i(e),z=o(e,"P",{"data-svelte-h":!0}),g(z)!=="svelte-1qi99jf"&&(z.innerHTML=Ke),Le=i(e),p(O.$$.fragment,e),Me=i(e),U=o(e,"P",{"data-svelte-h":!0}),g(U)!=="svelte-h0h79v"&&(U.innerHTML=Qe),we=i(e),p(B.$$.fragment,e),He=i(e),F=o(e,"P",{"data-svelte-h":!0}),g(F)!=="svelte-ev5zus"&&(F.innerHTML=Xe),Ae=i(e),p(J.$$.fragment,e),Pe=i(e),N=o(e,"P",{"data-svelte-h":!0}),g(N)!=="svelte-1pogs2j"&&(N.textContent=Ye),be=i(e),p(W.$$.fragment,e),ye=i(e),D=o(e,"P",{"data-svelte-h":!0}),g(D)!=="svelte-177p64p"&&(D.innerHTML=Ze),Ge=i(e),p(K.$$.fragment,e),qe=i(e),Q=o(e,"UL",{"data-svelte-h":!0}),g(Q)!=="svelte-1tx2l9f"&&(Q.innerHTML=et),Se=i(e),p(X.$$.fragment,e),Re=i(e),Z=o(e,"P",{}),nt(Z).forEach(l),this.h()},h(){Y(m,"name","hf:doc:metadata"),Y(m,"content",vt),lt(C.src,Ee="https://huggingface.co/datasets/agents-course/course-images/resolve/main/en/unit2/smolagents/thumbnail.jpg")||Y(C,"src",Ee),Y(C,"alt","Unit 2.1 Thumbnail"),lt(w.src,ke="https://huggingface.co/datasets/agents-course/course-images/resolve/main/en/unit2/smolagents/star_smolagents.gif")||Y(w,"src",ke),Y(w,"alt","staring smolagents")},m(e,t){mt(document.head,m),n(e,v,t),n(e,T,t),n(e,te,t),$(_,e,t),n(e,le,t),$(x,e,t),n(e,ne,t),n(e,C,t),n(e,se,t),n(e,L,t),n(e,ie,t),n(e,M,t),n(e,ae,t),n(e,w,t),n(e,oe,t),$(H,e,t),n(e,ge,t),n(e,A,t),n(e,me,t),n(e,P,t),n(e,fe,t),n(e,b,t),n(e,pe,t),n(e,y,t),n(e,$e,t),n(e,G,t),n(e,re,t),$(h,e,t),n(e,ue,t),n(e,q,t),n(e,ce,t),$(S,e,t),n(e,de,t),n(e,R,t),n(e,ve,t),$(j,e,t),n(e,he,t),n(e,E,t),n(e,Te,t),$(I,e,t),n(e,_e,t),n(e,V,t),n(e,xe,t),$(k,e,t),n(e,Ce,t),n(e,z,t),n(e,Le,t),$(O,e,t),n(e,Me,t),n(e,U,t),n(e,we,t),$(B,e,t),n(e,He,t),n(e,F,t),n(e,Ae,t),$(J,e,t),n(e,Pe,t),n(e,N,t),n(e,be,t),$(W,e,t),n(e,ye,t),n(e,D,t),n(e,Ge,t),$(K,e,t),n(e,qe,t),n(e,Q,t),n(e,Se,t),$(X,e,t),n(e,Re,t),n(e,Z,t),je=!0},p(e,[t]){const tt={};t&2&&(tt.$$scope={dirty:t,ctx:e}),h.$set(tt)},i(e){je||(r(_.$$.fragment,e),r(x.$$.fragment,e),r(H.$$.fragment,e),r(h.$$.fragment,e),r(S.$$.fragment,e),r(j.$$.fragment,e),r(I.$$.fragment,e),r(k.$$.fragment,e),r(O.$$.fragment,e),r(B.$$.fragment,e),r(J.$$.fragment,e),r(W.$$.fragment,e),r(K.$$.fragment,e),r(X.$$.fragment,e),je=!0)},o(e){u(_.$$.fragment,e),u(x.$$.fragment,e),u(H.$$.fragment,e),u(h.$$.fragment,e),u(S.$$.fragment,e),u(j.$$.fragment,e),u(I.$$.fragment,e),u(k.$$.fragment,e),u(O.$$.fragment,e),u(B.$$.fragment,e),u(J.$$.fragment,e),u(W.$$.fragment,e),u(K.$$.fragment,e),u(X.$$.fragment,e),je=!1},d(e){e&&(l(v),l(T),l(te),l(le),l(ne),l(C),l(se),l(L),l(ie),l(M),l(ae),l(w),l(oe),l(ge),l(A),l(me),l(P),l(fe),l(b),l(pe),l(y),l($e),l(G),l(re),l(ue),l(q),l(ce),l(de),l(R),l(ve),l(he),l(E),l(Te),l(_e),l(V),l(xe),l(Ce),l(z),l(Le),l(Me),l(U),l(we),l(He),l(F),l(Ae),l(Pe),l(N),l(be),l(ye),l(D),l(Ge),l(qe),l(Q),l(Se),l(Re),l(Z)),l(m),c(_,e),c(x,e),c(H,e),c(h,e),c(S,e),c(j,e),c(I,e),c(k,e),c(O,e),c(B,e),c(J,e),c(W,e),c(K,e),c(X,e)}}}const vt='{"title":"smolagents 소개","local":"smolagents-소개","sections":[{"title":"모듈 개요","local":"모듈-개요","sections":[],"depth":2},{"title":"목차","local":"목차","sections":[{"title":"1️⃣ 왜 smolagents를 사용할까","local":"1-왜-smolagents를-사용할까","sections":[],"depth":3},{"title":"2️⃣ CodeAgents","local":"2-codeagents","sections":[],"depth":3},{"title":"3️⃣ ToolCallingAgents","local":"3-toolcallingagents","sections":[],"depth":3},{"title":"4️⃣ 도구(Tools)","local":"4-도구tools","sections":[],"depth":3},{"title":"5️⃣ 리트리벌 에이전트(Retrieval Agents)","local":"5-리트리벌-에이전트retrieval-agents","sections":[],"depth":3},{"title":"6️⃣ 멀티 에이전트 시스템(Multi-Agent Systems)","local":"6-멀티-에이전트-시스템multi-agent-systems","sections":[],"depth":3},{"title":"7️⃣ 비전 및 브라우저 에이전트(Vision and Browser agents)","local":"7-비전-및-브라우저-에이전트vision-and-browser-agents","sections":[],"depth":3}],"depth":2},{"title":"참고 자료","local":"참고-자료","sections":[],"depth":2}],"depth":1}';function ht(ee){return it(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Mt extends at{constructor(m){super(),ot(this,m,ht,dt,st,{})}}export{Mt as component}; | |
Xet Storage Details
- Size:
- 15.3 kB
- Xet hash:
- b607dbb21b3bab99d2d2d42e6cd7894bbb7dee6ebda07615226671d2708f8694
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.