import{s as re,n as pe,o as de}from"../chunks/scheduler.37c15a92.js";import{S as ce,i as Me,g as i,s,r as j,A as fe,h as m,f as n,c as a,j as oe,u as J,x as u,k as ue,y as be,a as l,v as Z,d as x,t as H,w as I}from"../chunks/index.2bf4358c.js";import{C as K}from"../chunks/CodeBlock.4e987730.js";import{H as D}from"../chunks/Heading.8ada512a.js";import{E as ge}from"../chunks/getInferenceSnippets.54ddb825.js";function he(O){let o,_,L,C,r,Q,p,ee="<strong><em>LlamaHub</em> est un registre de centaines d’intégrations, d’<em>agents</em> et d’<em>outils</em> que vous pouvez utiliser dans LlamaIndex.</strong>",G,d,te='<img src="https://huggingface.co/datasets/agents-course/course-images/resolve/main/en/unit2/llama-index/llama-hub.png" alt="LlamaHub"/>',k,c,ne="Nous utiliserons diverses intégrations dans ce cours, alors examinons d’abord le <em>LlamaHub</em> et comment il peut nous aider.",X,M,le="Voyons comment trouver et installer les dépendances pour les <em>components</em> dont nous avons besoin.",B,f,V,b,se=`Les instructions d’installation de LlamaIndex sont disponibles comme un <strong>aperçu bien structuré sur <a href="https://llamahub.ai/" rel="nofollow"><em>LlamaHub</em></a></strong>.
Cela peut être un peu démoralisant au début, mais la plupart des <strong>commandes d’installation suivent généralement un format facile à retenir</strong> :`,S,g,E,h,ae='Essayons d’installer les dépendances pour un <em>component</em> <em>LLM</em> et <em>embedding</em> en utilisant l’<a href="https://llamahub.ai/l/llms/llama-index-llms-huggingface-api?from=llms" rel="nofollow">intégration de l’API d’inférence <em>Hugging Face</em></a>.',Y,y,P,v,A,w,ie=`Une fois installé, nous pouvons voir les motifs d’utilisation. Vous remarquerez que les chemins d’importation suivent la commande d’installation !
Ci-dessous, nous pouvons voir un exemple d’utilisation de <strong>l’API d’inférence Hugging Face pour un <em>component</em> LLM</strong>.`,R,U,F,$,me=`Parfait, nous savons maintenant comment trouver, installer et utiliser les intégrations pour les <em>components</em> dont nous avons besoin.
<strong>Approfondissons les <em>components</em></strong> et voyons comment nous pouvons les utiliser pour construire nos propres agents.`,N,T,z,W,q;return r=new D({props:{title:"Introduction au LlamaHub",local:"introduction-au-llamahub",headingTag:"h1"}}),f=new D({props:{title:"Installation",local:"installation",headingTag:"h2"}}),g=new K({props:{code:"cGlwJTIwaW5zdGFsbCUyMGxsYW1hLWluZGV4LSU3QmNvbXBvbmVudC10eXBlJTdELSU3QmZyYW1ld29yay1uYW1lJTdE",highlighted:"pip install llama-index-{component-type}-{framework-name}",wrap:!1}}),y=new K({props:{code:"cGlwJTIwaW5zdGFsbCUyMGxsYW1hLWluZGV4LWxsbXMtaHVnZ2luZ2ZhY2UtYXBpJTIwbGxhbWEtaW5kZXgtZW1iZWRkaW5ncy1odWdnaW5nZmFjZQ==",highlighted:"pip install llama-index-llms-huggingface-api llama-index-embeddings-huggingface",wrap:!1}}),v=new D({props:{title:"Utilisation",local:"utilisation",headingTag:"h2"}}),U=new K({props:{code:"ZnJvbSUyMGxsYW1hX2luZGV4LmxsbXMuaHVnZ2luZ2ZhY2VfYXBpJTIwaW1wb3J0JTIwSHVnZ2luZ0ZhY2VJbmZlcmVuY2VBUEklMEFpbXBvcnQlMjBvcyUwQWZyb20lMjBkb3RlbnYlMjBpbXBvcnQlMjBsb2FkX2RvdGVudiUwQSUwQSUyMyUyMENoYXJnZXIlMjBsZSUyMGZpY2hpZXIlMjAuZW52JTBBbG9hZF9kb3RlbnYoKSUwQSUwQSUyMyUyMFIlQzMlQTljdXAlQzMlQTlyZXIlMjBIRl9UT0tFTiUyMCVDMyVBMCUyMHBhcnRpciUyMGRlcyUyMHZhcmlhYmxlcyUyMGQnZW52aXJvbm5lbWVudCUwQWhmX3Rva2VuJTIwJTNEJTIwb3MuZ2V0ZW52KCUyMkhGX1RPS0VOJTIyKSUwQSUwQWxsbSUyMCUzRCUyMEh1Z2dpbmdGYWNlSW5mZXJlbmNlQVBJKCUwQSUyMCUyMCUyMCUyMG1vZGVsX25hbWUlM0QlMjJRd2VuJTJGUXdlbjIuNS1Db2Rlci0zMkItSW5zdHJ1Y3QlMjIlMkMlMEElMjAlMjAlMjAlMjB0ZW1wZXJhdHVyZSUzRDAuNyUyQyUwQSUyMCUyMCUyMCUyMG1heF90b2tlbnMlM0QxMDAlMkMlMEElMjAlMjAlMjAlMjB0b2tlbiUzRGhmX3Rva2VuJTJDJTBBKSUwQSUwQXJlc3BvbnNlJTIwJTNEJTIwbGxtLmNvbXBsZXRlKCUyMkhlbGxvJTJDJTIwaG93JTIwYXJlJTIweW91JTNGJTIyKSUwQXByaW50KHJlc3BvbnNlKSUwQSUyMyUyMEplJTIwc3VpcyUyMGJvbiUyQyUyMGNvbW1lbnQlMjBwdWlzLWplJTIwdm91cyUyMGFpZGVyJTIwYXVqb3VyZCdodWklMjAlM0Y=",highlighted:`<span class="hljs-keyword">from</span> llama_index.llms.huggingface_api <span class="hljs-keyword">import</span> HuggingFaceInferenceAPI
<span class="hljs-keyword">import</span> os
<span class="hljs-keyword">from</span> dotenv <span class="hljs-keyword">import</span> load_dotenv

<span class="hljs-comment"># Charger le fichier .env</span>
load_dotenv()

<span class="hljs-comment"># Récupérer HF_TOKEN à partir des variables d&#x27;environnement</span>
hf_token = os.getenv(<span class="hljs-string">&quot;HF_TOKEN&quot;</span>)

llm = HuggingFaceInferenceAPI(
    model_name=<span class="hljs-string">&quot;Qwen/Qwen2.5-Coder-32B-Instruct&quot;</span>,
    temperature=<span class="hljs-number">0.7</span>,
    max_tokens=<span class="hljs-number">100</span>,
    token=hf_token,
)

response = llm.complete(<span class="hljs-string">&quot;Hello, how are you?&quot;</span>)
<span class="hljs-built_in">print</span>(response)
<span class="hljs-comment"># Je suis bon, comment puis-je vous aider aujourd&#x27;hui ?</span>`,wrap:!1}}),T=new ge({props:{source:"https://github.com/huggingface/agents-course/blob/main/units/fr/unit2/llama-index/llama-hub.mdx"}}),{c(){o=i("meta"),_=s(),L=i("p"),C=s(),j(r.$$.fragment),Q=s(),p=i("p"),p.innerHTML=ee,G=s(),d=i("p"),d.innerHTML=te,k=s(),c=i("p"),c.innerHTML=ne,X=s(),M=i("p"),M.innerHTML=le,B=s(),j(f.$$.fragment),V=s(),b=i("p"),b.innerHTML=se,S=s(),j(g.$$.fragment),E=s(),h=i("p"),h.innerHTML=ae,Y=s(),j(y.$$.fragment),P=s(),j(v.$$.fragment),A=s(),w=i("p"),w.innerHTML=ie,R=s(),j(U.$$.fragment),F=s(),$=i("p"),$.innerHTML=me,N=s(),j(T.$$.fragment),z=s(),W=i("p"),this.h()},l(e){const t=fe("svelte-u9bgzb",document.head);o=m(t,"META",{name:!0,content:!0}),t.forEach(n),_=a(e),L=m(e,"P",{}),oe(L).forEach(n),C=a(e),J(r.$$.fragment,e),Q=a(e),p=m(e,"P",{"data-svelte-h":!0}),u(p)!=="svelte-84kv41"&&(p.innerHTML=ee),G=a(e),d=m(e,"P",{"data-svelte-h":!0}),u(d)!=="svelte-jjjeyj"&&(d.innerHTML=te),k=a(e),c=m(e,"P",{"data-svelte-h":!0}),u(c)!=="svelte-1xkimsb"&&(c.innerHTML=ne),X=a(e),M=m(e,"P",{"data-svelte-h":!0}),u(M)!=="svelte-1mjah1n"&&(M.innerHTML=le),B=a(e),J(f.$$.fragment,e),V=a(e),b=m(e,"P",{"data-svelte-h":!0}),u(b)!=="svelte-nlbgvw"&&(b.innerHTML=se),S=a(e),J(g.$$.fragment,e),E=a(e),h=m(e,"P",{"data-svelte-h":!0}),u(h)!=="svelte-w1vk9g"&&(h.innerHTML=ae),Y=a(e),J(y.$$.fragment,e),P=a(e),J(v.$$.fragment,e),A=a(e),w=m(e,"P",{"data-svelte-h":!0}),u(w)!=="svelte-f91j8u"&&(w.innerHTML=ie),R=a(e),J(U.$$.fragment,e),F=a(e),$=m(e,"P",{"data-svelte-h":!0}),u($)!=="svelte-u6ctr5"&&($.innerHTML=me),N=a(e),J(T.$$.fragment,e),z=a(e),W=m(e,"P",{}),oe(W).forEach(n),this.h()},h(){ue(o,"name","hf:doc:metadata"),ue(o,"content",ye)},m(e,t){be(document.head,o),l(e,_,t),l(e,L,t),l(e,C,t),Z(r,e,t),l(e,Q,t),l(e,p,t),l(e,G,t),l(e,d,t),l(e,k,t),l(e,c,t),l(e,X,t),l(e,M,t),l(e,B,t),Z(f,e,t),l(e,V,t),l(e,b,t),l(e,S,t),Z(g,e,t),l(e,E,t),l(e,h,t),l(e,Y,t),Z(y,e,t),l(e,P,t),Z(v,e,t),l(e,A,t),l(e,w,t),l(e,R,t),Z(U,e,t),l(e,F,t),l(e,$,t),l(e,N,t),Z(T,e,t),l(e,z,t),l(e,W,t),q=!0},p:pe,i(e){q||(x(r.$$.fragment,e),x(f.$$.fragment,e),x(g.$$.fragment,e),x(y.$$.fragment,e),x(v.$$.fragment,e),x(U.$$.fragment,e),x(T.$$.fragment,e),q=!0)},o(e){H(r.$$.fragment,e),H(f.$$.fragment,e),H(g.$$.fragment,e),H(y.$$.fragment,e),H(v.$$.fragment,e),H(U.$$.fragment,e),H(T.$$.fragment,e),q=!1},d(e){e&&(n(_),n(L),n(C),n(Q),n(p),n(G),n(d),n(k),n(c),n(X),n(M),n(B),n(V),n(b),n(S),n(E),n(h),n(Y),n(P),n(A),n(w),n(R),n(F),n($),n(N),n(z),n(W)),n(o),I(r,e),I(f,e),I(g,e),I(y,e),I(v,e),I(U,e),I(T,e)}}}const ye='{"title":"Introduction au LlamaHub","local":"introduction-au-llamahub","sections":[{"title":"Installation","local":"installation","sections":[],"depth":2},{"title":"Utilisation","local":"utilisation","sections":[],"depth":2}],"depth":1}';function ve(O){return de(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Je extends ce{constructor(o){super(),Me(this,o,ve,he,re,{})}}export{Je as component};
