import{s as ys,o as Js,n as $}from"../chunks/scheduler.37c15a92.js";import{S as Us,i as ds,g as h,s as J,r as d,A as ws,h as B,f as o,c as U,j as is,u as w,x as f,k as Nl,y as us,a as r,v as u,d as m,t as j,w as T,m as il,n as yl}from"../chunks/index.2bf4358c.js";import{T as ms}from"../chunks/Tip.363c041f.js";import{C as Z}from"../chunks/CodeBlock.4e987730.js";import{H as Q}from"../chunks/Heading.8ada512a.js";import{H as rl,a as W}from"../chunks/HfOption.02c8e375.js";import{E as js}from"../chunks/getInferenceSnippets.d4d07d1e.js";function Ts(b){let e,M,n="outils",i,p,t="récupérateur",s,l,c="tools.py",G,I,E="retriever.py",z;return{c(){e=il("Si vous n'avez pas encore implémenté les outils, retournez aux sections "),M=h("a"),M.textContent=n,i=il(" et "),p=h("a"),p.textContent=t,s=il(" pour les implémenter, et ajoutez-les aux fichiers "),l=h("code"),l.textContent=c,G=il(" et "),I=h("code"),I.textContent=E,z=il("."),this.h()},l(V){e=yl(V,"Si vous n'avez pas encore implémenté les outils, retournez aux sections "),M=B(V,"A",{href:!0,"data-svelte-h":!0}),f(M)!=="svelte-e6jkle"&&(M.textContent=n),i=yl(V," et "),p=B(V,"A",{href:!0,"data-svelte-h":!0}),f(p)!=="svelte-on9hnz"&&(p.textContent=t),s=yl(V," pour les implémenter, et ajoutez-les aux fichiers "),l=B(V,"CODE",{"data-svelte-h":!0}),f(l)!=="svelte-1re6lm8"&&(l.textContent=c),G=yl(V," et "),I=B(V,"CODE",{"data-svelte-h":!0}),f(I)!=="svelte-olq8cj"&&(I.textContent=E),z=yl(V,"."),this.h()},h(){Nl(M,"href","./tools"),Nl(p,"href","./invitees")},m(V,k){r(V,e,k),r(V,M,k),r(V,i,k),r(V,p,k),r(V,s,k),r(V,l,k),r(V,G,k),r(V,I,k),r(V,z,k)},p:$,d(V){V&&(o(e),o(M),o(i),o(p),o(s),o(l),o(G),o(I),o(z))}}}function bs(b){let e,M,n,i="Maintenant, combinons tous ces outils en un seul agent :",p,t,s;return e=new Z({props:{code:"JTIzJTIwSW1wb3J0ZXIlMjBsZXMlMjBiaWJsaW90aCVDMyVBOHF1ZXMlMjBuJUMzJUE5Y2Vzc2FpcmVzJTBBaW1wb3J0JTIwcmFuZG9tJTBBZnJvbSUyMHNtb2xhZ2VudHMlMjBpbXBvcnQlMjBDb2RlQWdlbnQlMkMlMjBJbmZlcmVuY2VDbGllbnRNb2RlbCUwQSUwQSUyMyUyMEltcG9ydGVyJTIwbm9zJTIwb3V0aWxzJTIwcGVyc29ubmFsaXMlQzMlQTlzJTIwZGUlMjBsZXVycyUyMG1vZHVsZXMlMEFmcm9tJTIwdG9vbHMlMjBpbXBvcnQlMjBEdWNrRHVja0dvU2VhcmNoVG9vbCUyQyUyMFdlYXRoZXJJbmZvVG9vbCUyQyUyMEh1YlN0YXRzVG9vbCUwQWZyb20lMjByZXRyaWV2ZXIlMjBpbXBvcnQlMjBsb2FkX2d1ZXN0X2RhdGFzZXQ=",highlighted:`<span class="hljs-comment"># Importer les bibliothèques nécessaires</span>
<span class="hljs-keyword">import</span> random
<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> CodeAgent, InferenceClientModel

<span class="hljs-comment"># Importer nos outils personnalisés de leurs modules</span>
<span class="hljs-keyword">from</span> tools <span class="hljs-keyword">import</span> DuckDuckGoSearchTool, WeatherInfoTool, HubStatsTool
<span class="hljs-keyword">from</span> retriever <span class="hljs-keyword">import</span> load_guest_dataset`,wrap:!1}}),t=new Z({props:{code:"JTIzJTIwSW5pdGlhbGlzZXIlMjBsZSUyMG1vZCVDMyVBOGxlJTIwSHVnZ2luZyUyMEZhY2UlMEFtb2RlbCUyMCUzRCUyMEluZmVyZW5jZUNsaWVudE1vZGVsKCklMEElMEElMjMlMjBJbml0aWFsaXNlciUyMGwnb3V0aWwlMjBkZSUyMHJlY2hlcmNoZSUyMHdlYiUwQXNlYXJjaF90b29sJTIwJTNEJTIwRHVja0R1Y2tHb1NlYXJjaFRvb2woKSUwQSUwQSUyMyUyMEluaXRpYWxpc2VyJTIwbCdvdXRpbCUyMG0lQzMlQTl0JUMzJUE5b3JvbG9naXF1ZSUwQXdlYXRoZXJfaW5mb190b29sJTIwJTNEJTIwV2VhdGhlckluZm9Ub29sKCklMEElMEElMjMlMjBJbml0aWFsaXNlciUyMGwnb3V0aWwlMjBkZSUyMHN0YXRpc3RpcXVlcyUyMEh1YiUwQWh1Yl9zdGF0c190b29sJTIwJTNEJTIwSHViU3RhdHNUb29sKCklMEElMEElMjMlMjBDaGFyZ2VyJTIwbGUlMjBqZXUlMjBkZSUyMGRvbm4lQzMlQTllcyUyMGRlcyUyMGludml0JUMzJUE5cyUyMGV0JTIwaW5pdGlhbGlzZXIlMjBsJ291dGlsJTIwZCdpbmZvcm1hdGlvbnMlMjBzdXIlMjBsZXMlMjBpbnZpdCVDMyVBOXMlMEFndWVzdF9pbmZvX3Rvb2wlMjAlM0QlMjBsb2FkX2d1ZXN0X2RhdGFzZXQoKSUwQSUwQSUyMyUyMENyJUMzJUE5ZXIlMjBBbGZyZWQlMjBhdmVjJTIwdG91cyUyMGxlcyUyMG91dGlscyUwQWFsZnJlZCUyMCUzRCUyMENvZGVBZ2VudCglMEElMjAlMjAlMjAlMjB0b29scyUzRCU1Qmd1ZXN0X2luZm9fdG9vbCUyQyUyMHdlYXRoZXJfaW5mb190b29sJTJDJTIwaHViX3N0YXRzX3Rvb2wlMkMlMjBzZWFyY2hfdG9vbCU1RCUyQyUyMCUwQSUyMCUyMCUyMCUyMG1vZGVsJTNEbW9kZWwlMkMlMEElMjAlMjAlMjAlMjBhZGRfYmFzZV90b29scyUzRFRydWUlMkMlMjAlMjAlMjMlMjBBam91dGVyJTIwdG91cyUyMGxlcyUyMG91dGlscyUyMGRlJTIwYmFzZSUyMHN1cHBsJUMzJUE5bWVudGFpcmVzJTBBJTIwJTIwJTIwJTIwcGxhbm5pbmdfaW50ZXJ2YWwlM0QzJTIwJTIwJTIwJTIzJTIwQWN0aXZlciUyMGxhJTIwcGxhbmlmaWNhdGlvbiUyMHRvdXRlcyUyMGxlcyUyMDMlMjAlQzMlQTl0YXBlcyUwQSk=",highlighted:`<span class="hljs-comment"># Initialiser le modèle Hugging Face</span>
model = InferenceClientModel()

<span class="hljs-comment"># Initialiser l&#x27;outil de recherche web</span>
search_tool = DuckDuckGoSearchTool()

<span class="hljs-comment"># Initialiser l&#x27;outil météorologique</span>
weather_info_tool = WeatherInfoTool()

<span class="hljs-comment"># Initialiser l&#x27;outil de statistiques Hub</span>
hub_stats_tool = HubStatsTool()

<span class="hljs-comment"># Charger le jeu de données des invités et initialiser l&#x27;outil d&#x27;informations sur les invités</span>
guest_info_tool = load_guest_dataset()

<span class="hljs-comment"># Créer Alfred avec tous les outils</span>
alfred = CodeAgent(
    tools=[guest_info_tool, weather_info_tool, hub_stats_tool, search_tool], 
    model=model,
    add_base_tools=<span class="hljs-literal">True</span>,  <span class="hljs-comment"># Ajouter tous les outils de base supplémentaires</span>
    planning_interval=<span class="hljs-number">3</span>   <span class="hljs-comment"># Activer la planification toutes les 3 étapes</span>
)`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-1cz76vd"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function hs(b){let e,M,n,i="Maintenant, combinons tous ces outils en un seul agent :",p,t,s;return e=new Z({props:{code:"JTIzJTIwSW1wb3J0ZXIlMjBsZXMlMjBiaWJsaW90aCVDMyVBOHF1ZXMlMjBuJUMzJUE5Y2Vzc2FpcmVzJTBBZnJvbSUyMGxsYW1hX2luZGV4LmNvcmUuYWdlbnQud29ya2Zsb3clMjBpbXBvcnQlMjBBZ2VudFdvcmtmbG93JTBBZnJvbSUyMGxsYW1hX2luZGV4LmxsbXMuaHVnZ2luZ2ZhY2VfYXBpJTIwaW1wb3J0JTIwSHVnZ2luZ0ZhY2VJbmZlcmVuY2VBUEklMEElMEFmcm9tJTIwdG9vbHMlMjBpbXBvcnQlMjBzZWFyY2hfdG9vbCUyQyUyMHdlYXRoZXJfaW5mb190b29sJTJDJTIwaHViX3N0YXRzX3Rvb2wlMEFmcm9tJTIwcmV0cmlldmVyJTIwaW1wb3J0JTIwZ3Vlc3RfaW5mb190b29s",highlighted:`<span class="hljs-comment"># Importer les bibliothèques nécessaires</span>
<span class="hljs-keyword">from</span> llama_index.core.agent.workflow <span class="hljs-keyword">import</span> AgentWorkflow
<span class="hljs-keyword">from</span> llama_index.llms.huggingface_api <span class="hljs-keyword">import</span> HuggingFaceInferenceAPI

<span class="hljs-keyword">from</span> tools <span class="hljs-keyword">import</span> search_tool, weather_info_tool, hub_stats_tool
<span class="hljs-keyword">from</span> retriever <span class="hljs-keyword">import</span> guest_info_tool`,wrap:!1}}),t=new Z({props:{code:"JTIzJTIwSW5pdGlhbGlzZXIlMjBsZSUyMG1vZCVDMyVBOGxlJTIwSHVnZ2luZyUyMEZhY2UlMEFsbG0lMjAlM0QlMjBIdWdnaW5nRmFjZUluZmVyZW5jZUFQSShtb2RlbF9uYW1lJTNEJTIyUXdlbiUyRlF3ZW4yLjUtQ29kZXItMzJCLUluc3RydWN0JTIyKSUwQSUwQSUyMyUyMENyJUMzJUE5ZXIlMjBBbGZyZWQlMjBhdmVjJTIwdG91cyUyMGxlcyUyMG91dGlscyUwQWFsZnJlZCUyMCUzRCUyMEFnZW50V29ya2Zsb3cuZnJvbV90b29sc19vcl9mdW5jdGlvbnMoJTBBJTIwJTIwJTIwJTIwJTVCZ3Vlc3RfaW5mb190b29sJTJDJTIwc2VhcmNoX3Rvb2wlMkMlMjB3ZWF0aGVyX2luZm9fdG9vbCUyQyUyMGh1Yl9zdGF0c190b29sJTVEJTJDJTBBJTIwJTIwJTIwJTIwbGxtJTNEbGxtJTJDJTBBKQ==",highlighted:`<span class="hljs-comment"># Initialiser le modèle Hugging Face</span>
llm = HuggingFaceInferenceAPI(model_name=<span class="hljs-string">&quot;Qwen/Qwen2.5-Coder-32B-Instruct&quot;</span>)

<span class="hljs-comment"># Créer Alfred avec tous les outils</span>
alfred = AgentWorkflow.from_tools_or_functions(
    [guest_info_tool, search_tool, weather_info_tool, hub_stats_tool],
    llm=llm,
)`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-1cz76vd"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function Bs(b){let e,M,n,i="Maintenant, combinons tous ces outils en un seul agent :",p,t,s;return e=new Z({props:{code:"ZnJvbSUyMHR5cGluZyUyMGltcG9ydCUyMFR5cGVkRGljdCUyQyUyMEFubm90YXRlZCUwQWZyb20lMjBsYW5nZ3JhcGguZ3JhcGgubWVzc2FnZSUyMGltcG9ydCUyMGFkZF9tZXNzYWdlcyUwQWZyb20lMjBsYW5nY2hhaW5fY29yZS5tZXNzYWdlcyUyMGltcG9ydCUyMEFueU1lc3NhZ2UlMkMlMjBIdW1hbk1lc3NhZ2UlMkMlMjBBSU1lc3NhZ2UlMEFmcm9tJTIwbGFuZ2dyYXBoLnByZWJ1aWx0JTIwaW1wb3J0JTIwVG9vbE5vZGUlMEFmcm9tJTIwbGFuZ2dyYXBoLmdyYXBoJTIwaW1wb3J0JTIwU1RBUlQlMkMlMjBTdGF0ZUdyYXBoJTBBZnJvbSUyMGxhbmdncmFwaC5wcmVidWlsdCUyMGltcG9ydCUyMHRvb2xzX2NvbmRpdGlvbiUwQWZyb20lMjBsYW5nY2hhaW5faHVnZ2luZ2ZhY2UlMjBpbXBvcnQlMjBIdWdnaW5nRmFjZUVuZHBvaW50JTJDJTIwQ2hhdEh1Z2dpbmdGYWNlJTBBJTBBZnJvbSUyMHRvb2xzJTIwaW1wb3J0JTIwRHVja0R1Y2tHb1NlYXJjaFJ1biUyQyUyMHdlYXRoZXJfaW5mb190b29sJTJDJTIwaHViX3N0YXRzX3Rvb2wlMEFmcm9tJTIwcmV0cmlldmVyJTIwaW1wb3J0JTIwZ3Vlc3RfaW5mb190b29s",highlighted:`<span class="hljs-keyword">from</span> typing <span class="hljs-keyword">import</span> TypedDict, Annotated
<span class="hljs-keyword">from</span> langgraph.graph.message <span class="hljs-keyword">import</span> add_messages
<span class="hljs-keyword">from</span> langchain_core.messages <span class="hljs-keyword">import</span> AnyMessage, HumanMessage, AIMessage
<span class="hljs-keyword">from</span> langgraph.prebuilt <span class="hljs-keyword">import</span> ToolNode
<span class="hljs-keyword">from</span> langgraph.graph <span class="hljs-keyword">import</span> START, StateGraph
<span class="hljs-keyword">from</span> langgraph.prebuilt <span class="hljs-keyword">import</span> tools_condition
<span class="hljs-keyword">from</span> langchain_huggingface <span class="hljs-keyword">import</span> HuggingFaceEndpoint, ChatHuggingFace

<span class="hljs-keyword">from</span> tools <span class="hljs-keyword">import</span> DuckDuckGoSearchRun, weather_info_tool, hub_stats_tool
<span class="hljs-keyword">from</span> retriever <span class="hljs-keyword">import</span> guest_info_tool`,wrap:!1}}),t=new Z({props:{code:"JTIzJTIwSW5pdGlhbGlzZXIlMjBsJ291dGlsJTIwZGUlMjByZWNoZXJjaGUlMjB3ZWIlMEFzZWFyY2hfdG9vbCUyMCUzRCUyMER1Y2tEdWNrR29TZWFyY2hSdW4oKSUwQSUwQSUyMyUyMEclQzMlQTluJUMzJUE5cmVyJTIwbCdpbnRlcmZhY2UlMjBkZSUyMGNoYXQlMkMlMjBpbmNsdWFudCUyMGxlcyUyMG91dGlscyUwQWxsbSUyMCUzRCUyMEh1Z2dpbmdGYWNlRW5kcG9pbnQoJTBBJTIwJTIwJTIwJTIwcmVwb19pZCUzRCUyMlF3ZW4lMkZRd2VuMi41LUNvZGVyLTMyQi1JbnN0cnVjdCUyMiUyQyUwQSUyMCUyMCUyMCUyMGh1Z2dpbmdmYWNlaHViX2FwaV90b2tlbiUzREhVR0dJTkdGQUNFSFVCX0FQSV9UT0tFTiUyQyUwQSklMEElMEFjaGF0JTIwJTNEJTIwQ2hhdEh1Z2dpbmdGYWNlKGxsbSUzRGxsbSUyQyUyMHZlcmJvc2UlM0RUcnVlKSUwQXRvb2xzJTIwJTNEJTIwJTVCZ3Vlc3RfaW5mb190b29sJTJDJTIwc2VhcmNoX3Rvb2wlMkMlMjB3ZWF0aGVyX2luZm9fdG9vbCUyQyUyMGh1Yl9zdGF0c190b29sJTVEJTBBY2hhdF93aXRoX3Rvb2xzJTIwJTNEJTIwY2hhdC5iaW5kX3Rvb2xzKHRvb2xzKSUwQSUwQSUyMyUyMEclQzMlQTluJUMzJUE5cmVyJTIwbCdBZ2VudFN0YXRlJTIwZXQlMjBsZSUyMGdyYXBoZSUyMGQnYWdlbnQlMEFjbGFzcyUyMEFnZW50U3RhdGUoVHlwZWREaWN0KSUzQSUwQSUyMCUyMCUyMCUyMG1lc3NhZ2VzJTNBJTIwQW5ub3RhdGVkJTVCbGlzdCU1QkFueU1lc3NhZ2UlNUQlMkMlMjBhZGRfbWVzc2FnZXMlNUQlMEElMEFkZWYlMjBhc3Npc3RhbnQoc3RhdGUlM0ElMjBBZ2VudFN0YXRlKSUzQSUwQSUyMCUyMCUyMCUyMHJldHVybiUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMm1lc3NhZ2VzJTIyJTNBJTIwJTVCY2hhdF93aXRoX3Rvb2xzLmludm9rZShzdGF0ZSU1QiUyMm1lc3NhZ2VzJTIyJTVEKSU1RCUyQyUwQSUyMCUyMCUyMCUyMCU3RCUwQSUwQSUyMyUyMyUyMExlJTIwZ3JhcGhlJTBBYnVpbGRlciUyMCUzRCUyMFN0YXRlR3JhcGgoQWdlbnRTdGF0ZSklMEElMEElMjMlMjBEJUMzJUE5ZmluaXIlMjBsZXMlMjBuJUM1JTkzdWRzJTIwJTNBJTIwaWxzJTIwZm9udCUyMGxlJTIwdHJhdmFpbCUwQWJ1aWxkZXIuYWRkX25vZGUoJTIyYXNzaXN0YW50JTIyJTJDJTIwYXNzaXN0YW50KSUwQWJ1aWxkZXIuYWRkX25vZGUoJTIydG9vbHMlMjIlMkMlMjBUb29sTm9kZSh0b29scykpJTBBJTBBJTIzJTIwRCVDMyVBOWZpbmlyJTIwbGVzJTIwYXIlQzMlQUF0ZXMlMjAlM0ElMjBlbGxlcyUyMGQlQzMlQTl0ZXJtaW5lbnQlMjBjb21tZW50JTIwbGUlMjBmbHV4JTIwZGUlMjBjb250ciVDMyVCNGxlJTIwc2UlMjBkJUMzJUE5cGxhY2UlMEFidWlsZGVyLmFkZF9lZGdlKFNUQVJUJTJDJTIwJTIyYXNzaXN0YW50JTIyKSUwQWJ1aWxkZXIuYWRkX2NvbmRpdGlvbmFsX2VkZ2VzKCUwQSUyMCUyMCUyMCUyMCUyMmFzc2lzdGFudCUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMyUyMFNpJTIwbGUlMjBkZXJuaWVyJTIwbWVzc2FnZSUyMG4lQzMlQTljZXNzaXRlJTIwdW4lMjBvdXRpbCUyQyUyMHJvdXRlciUyMHZlcnMlMjBsZXMlMjBvdXRpbHMlMEElMjAlMjAlMjAlMjAlMjMlMjBTaW5vbiUyQyUyMGZvdXJuaXIlMjB1bmUlMjByJUMzJUE5cG9uc2UlMjBkaXJlY3RlJTBBJTIwJTIwJTIwJTIwdG9vbHNfY29uZGl0aW9uJTJDJTBBKSUwQWJ1aWxkZXIuYWRkX2VkZ2UoJTIydG9vbHMlMjIlMkMlMjAlMjJhc3Npc3RhbnQlMjIpJTBBYWxmcmVkJTIwJTNEJTIwYnVpbGRlci5jb21waWxlKCk=",highlighted:`<span class="hljs-comment"># Initialiser l&#x27;outil de recherche web</span>
search_tool = DuckDuckGoSearchRun()

<span class="hljs-comment"># Générer l&#x27;interface de chat, incluant les outils</span>
llm = HuggingFaceEndpoint(
    repo_id=<span class="hljs-string">&quot;Qwen/Qwen2.5-Coder-32B-Instruct&quot;</span>,
    huggingfacehub_api_token=HUGGINGFACEHUB_API_TOKEN,
)

chat = ChatHuggingFace(llm=llm, verbose=<span class="hljs-literal">True</span>)
tools = [guest_info_tool, search_tool, weather_info_tool, hub_stats_tool]
chat_with_tools = chat.bind_tools(tools)

<span class="hljs-comment"># Générer l&#x27;AgentState et le graphe d&#x27;agent</span>
<span class="hljs-keyword">class</span> <span class="hljs-title class_">AgentState</span>(<span class="hljs-title class_ inherited__">TypedDict</span>):
    messages: Annotated[<span class="hljs-built_in">list</span>[AnyMessage], add_messages]

<span class="hljs-keyword">def</span> <span class="hljs-title function_">assistant</span>(<span class="hljs-params">state: AgentState</span>):
    <span class="hljs-keyword">return</span> {
        <span class="hljs-string">&quot;messages&quot;</span>: [chat_with_tools.invoke(state[<span class="hljs-string">&quot;messages&quot;</span>])],
    }

<span class="hljs-comment">## Le graphe</span>
builder = StateGraph(AgentState)

<span class="hljs-comment"># Définir les nœuds : ils font le travail</span>
builder.add_node(<span class="hljs-string">&quot;assistant&quot;</span>, assistant)
builder.add_node(<span class="hljs-string">&quot;tools&quot;</span>, ToolNode(tools))

<span class="hljs-comment"># Définir les arêtes : elles déterminent comment le flux de contrôle se déplace</span>
builder.add_edge(START, <span class="hljs-string">&quot;assistant&quot;</span>)
builder.add_conditional_edges(
    <span class="hljs-string">&quot;assistant&quot;</span>,
    <span class="hljs-comment"># Si le dernier message nécessite un outil, router vers les outils</span>
    <span class="hljs-comment"># Sinon, fournir une réponse directe</span>
    tools_condition,
)
builder.add_edge(<span class="hljs-string">&quot;tools&quot;</span>, <span class="hljs-string">&quot;assistant&quot;</span>)
alfred = builder.<span class="hljs-built_in">compile</span>()`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-1cz76vd"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function fs(b){let e,M,n,i,p,t;return e=new W({props:{id:"agents-frameworks",option:"smolagents",$$slots:{default:[bs]},$$scope:{ctx:b}}}),n=new W({props:{id:"agents-frameworks",option:"llama-index",$$slots:{default:[hs]},$$scope:{ctx:b}}}),p=new W({props:{id:"agents-frameworks",option:"langgraph",$$slots:{default:[Bs]},$$scope:{ctx:b}}}),{c(){d(e.$$.fragment),M=J(),d(n.$$.fragment),i=J(),d(p.$$.fragment)},l(s){w(e.$$.fragment,s),M=U(s),w(n.$$.fragment,s),i=U(s),w(p.$$.fragment,s)},m(s,l){u(e,s,l),r(s,M,l),u(n,s,l),r(s,i,l),u(p,s,l),t=!0},p(s,l){const c={};l&2&&(c.$$scope={dirty:l,ctx:s}),e.$set(c);const G={};l&2&&(G.$$scope={dirty:l,ctx:s}),n.$set(G);const I={};l&2&&(I.$$scope={dirty:l,ctx:s}),p.$set(I)},i(s){t||(m(e.$$.fragment,s),m(n.$$.fragment,s),m(p.$$.fragment,s),t=!0)},o(s){j(e.$$.fragment,s),j(n.$$.fragment,s),j(p.$$.fragment,s),t=!1},d(s){s&&(o(M),o(i)),T(e,s),T(n,s),T(p,s)}}}function Zs(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cXVlcnklMjAlM0QlMjAlMjJQYXJsZXotbW9pJTIwZGUlMjAnTGFkeSUyMEFkYSUyMExvdmVsYWNlJyUyMiUwQXJlc3BvbnNlJTIwJTNEJTIwYWxmcmVkLnJ1bihxdWVyeSklMEElMEFwcmludCglMjIlRjAlOUYlOEUlQTklMjBSJUMzJUE5cG9uc2UlMjBkJ0FsZnJlZCUyMCUzQSUyMiklMEFwcmludChyZXNwb25zZSk=",highlighted:`query = <span class="hljs-string">&quot;Parlez-moi de &#x27;Lady Ada Lovelace&#x27;&quot;</span>
response = alfred.run(query)

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFCYXMlQzMlQTklMjBzdXIlMjBsZXMlMjBpbmZvcm1hdGlvbnMlMjBxdWUlMjBqJ2FpJTIwciVDMyVBOWN1cCVDMyVBOXIlQzMlQTllcyUyQyUyMExhZHklMjBBZGElMjBMb3ZlbGFjZSUyMGVzdCUyMHVuZSUyMG1hdGglQzMlQTltYXRpY2llbm5lJTIwZXN0aW0lQzMlQTllJTIwZXQlMjBhbWllLiUyMEVsbGUlMjBlc3QlMjByZW5vbW0lQzMlQTllJTIwcG91ciUyMHNvbiUyMHRyYXZhaWwlMjBwaW9ubmllciUyMGVuJTIwbWF0aCVDMyVBOW1hdGlxdWVzJTIwZXQlMjBlbiUyMGluZm9ybWF0aXF1ZSUyQyUyMHNvdXZlbnQlMjBjJUMzJUE5bCVDMyVBOWJyJUMzJUE5ZSUyMGNvbW1lJTIwbGElMjBwcmVtaSVDMyVBOHJlJTIwcHJvZ3JhbW1ldXNlJTIwaW5mb3JtYXRpcXVlJTIwZW4lMjByYWlzb24lMjBkZSUyMHNvbiUyMHRyYXZhaWwlMjBzdXIlMjBsYSUyMG1hY2hpbmUlMjBhbmFseXRpcXVlJTIwZGUlMjBDaGFybGVzJTIwQmFiYmFnZS4lMjBTb24lMjBhZHJlc3NlJTIwZS1tYWlsJTIwZXN0JTIwYWRhLmxvdmVsYWNlJTQwZXhhbXBsZS5jb20u",highlighted:`🎩 Réponse <span class="hljs-keyword">d</span>&#x27;Alfred :
Basé sur les informations <span class="hljs-keyword">que</span> j&#x27;ai récupérées, Lady Ada Lovelace <span class="hljs-keyword">est</span> une mathématicienne estimé<span class="hljs-keyword">e</span> et amie. Elle <span class="hljs-keyword">est</span> renommé<span class="hljs-keyword">e</span> pour son travail pionnier <span class="hljs-keyword">en</span> mathématiques et <span class="hljs-keyword">en</span> informatique, souvent cé<span class="hljs-keyword">l</span>é<span class="hljs-keyword">br</span>é<span class="hljs-keyword">e</span> comme <span class="hljs-keyword">la</span> première programmeuse informatique <span class="hljs-keyword">en</span> raison <span class="hljs-keyword">de</span> son travail sur <span class="hljs-keyword">la</span> machine analytique <span class="hljs-keyword">de</span> Charles Babbage. Son adresse <span class="hljs-keyword">e</span>-mail <span class="hljs-keyword">est</span> ada.lovelace@example.com.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function Gs(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cXVlcnklMjAlM0QlMjAlMjJQYXJsZXotbW9pJTIwZGUlMjBMYWR5JTIwQWRhJTIwTG92ZWxhY2UuJTIwUXVlbCUyMGVzdCUyMHNvbiUyMGFycmklQzMlQThyZS1wbGFuJTIwJTNGJTIyJTBBcmVzcG9uc2UlMjAlM0QlMjBhd2FpdCUyMGFsZnJlZC5ydW4ocXVlcnkpJTBBJTBBcHJpbnQoJTIyJUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMjIpJTBBcHJpbnQocmVzcG9uc2UucmVzcG9uc2UuYmxvY2tzJTVCMCU1RC50ZXh0KQ==",highlighted:`query = <span class="hljs-string">&quot;Parlez-moi de Lady Ada Lovelace. Quel est son arrière-plan ?&quot;</span>
response = <span class="hljs-keyword">await</span> alfred.run(query)

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response.response.blocks[<span class="hljs-number">0</span>].text)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFMYWR5JTIwQWRhJTIwTG92ZWxhY2UlMjAlQzMlQTl0YWl0JTIwdW5lJTIwbWF0aCVDMyVBOW1hdGljaWVubmUlMjBldCUyMCVDMyVBOWNyaXZhaW5lJTIwYW5nbGFpc2UlMkMlMjBtaWV1eCUyMGNvbm51ZSUyMHBvdXIlMjBzb24lMjB0cmF2YWlsJTIwc3VyJTIwbGElMjBtYWNoaW5lJTIwYW5hbHl0aXF1ZSUyMGRlJTIwQ2hhcmxlcyUyMEJhYmJhZ2UuJTIwRWxsZSUyMGElMjAlQzMlQTl0JUMzJUE5JTIwbGElMjBwcmVtaSVDMyVBOHJlJTIwJUMzJUEwJTIwcmVjb25uYSVDMyVBRXRyZSUyMHF1ZSUyMGxhJTIwbWFjaGluZSUyMGF2YWl0JTIwZGVzJTIwYXBwbGljYXRpb25zJTIwYXUtZGVsJUMzJUEwJTIwZHUlMjBjYWxjdWwlMjBwdXIu",highlighted:`🎩 Réponse <span class="hljs-keyword">d</span>&#x27;Alfred :
Lady Ada Lovelace était une mathématicienne et écrivaine anglaise, mieux connue pour son travail sur <span class="hljs-keyword">la</span> machine analytique <span class="hljs-keyword">de</span> Charles Babbage. Elle a été <span class="hljs-keyword">la</span> première à reconnaître <span class="hljs-keyword">que</span> <span class="hljs-keyword">la</span> machine avait <span class="hljs-keyword">des</span> applications au-delà du calcul pur.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function Is(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cmVzcG9uc2UlMjAlM0QlMjBhbGZyZWQuaW52b2tlKCU3QiUyMm1lc3NhZ2VzJTIyJTNBJTIwJTIyUGFybGV6LW1vaSUyMGRlJTIwJ0xhZHklMjBBZGElMjBMb3ZlbGFjZSclMjIlN0QpJTBBJTBBcHJpbnQoJTIyJUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMjIpJTBBcHJpbnQocmVzcG9uc2UlNUInbWVzc2FnZXMnJTVEJTVCLTElNUQuY29udGVudCk=",highlighted:`response = alfred.invoke({<span class="hljs-string">&quot;messages&quot;</span>: <span class="hljs-string">&quot;Parlez-moi de &#x27;Lady Ada Lovelace&#x27;&quot;</span>})

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response[<span class="hljs-string">&#x27;messages&#x27;</span>][-<span class="hljs-number">1</span>].content)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFBZGElMjBMb3ZlbGFjZSUyQyUyMGF1c3NpJTIwY29ubnVlJTIwc291cyUyMGxlJTIwbm9tJTIwZCdBdWd1c3RhJTIwQWRhJTIwS2luZyUyQyUyMENvbXRlc3NlJTIwZGUlMjBMb3ZlbGFjZSUyQyUyMCVDMyVBOXRhaXQlMjB1bmUlMjBtYXRoJUMzJUE5bWF0aWNpZW5uZSUyMGV0JTIwJUMzJUE5Y3JpdmFpbmUlMjBhbmdsYWlzZS4lMjBOJUMzJUE5ZSUyMGxlJTIwMTAlMjBkJUMzJUE5Y2VtYnJlJTIwMTgxNSUyMGV0JTIwZCVDMyVBOWMlQzMlQTlkJUMzJUE5ZSUyMGxlJTIwMjclMjBub3ZlbWJyZSUyMDE4NTIlMkMlMjBlbGxlJTIwZXN0JTIwcmVub21tJUMzJUE5ZSUyMHBvdXIlMjBzb24lMjB0cmF2YWlsJTIwc3VyJTIwbGElMjBtYWNoaW5lJTIwYW5hbHl0aXF1ZSUyMGRlJTIwQ2hhcmxlcyUyMEJhYmJhZ2UlMkMlMjB1biUyMG9yZGluYXRldXIlMjBtJUMzJUE5Y2FuaXF1ZSUyMCVDMyVBMCUyMHVzYWdlJTIwZyVDMyVBOW4lQzMlQTlyYWwlMjBwcm9wb3MlQzMlQTkuJTIwQWRhJTIwTG92ZWxhY2UlMjBlc3QlMjBjJUMzJUE5bCVDMyVBOWJyJUMzJUE5ZSUyMGNvbW1lJTIwbCd1bmUlMjBkZXMlMjBwcmVtaSVDMyVBOHJlcyUyMHByb2dyYW1tZXVzZXMlMjBpbmZvcm1hdGlxdWVzJTIwcGFyY2UlMjBxdSdlbGxlJTIwYSUyMGNyJUMzJUE5JUMzJUE5JTIwdW4lMjBwcm9ncmFtbWUlMjBwb3VyJTIwbGElMjBtYWNoaW5lJTIwYW5hbHl0aXF1ZSUyMGVuJTIwMTg0My4lMjBFbGxlJTIwYSUyMHJlY29ubnUlMjBxdWUlMjBsYSUyMG1hY2hpbmUlMjBwb3VycmFpdCUyMCVDMyVBQXRyZSUyMHV0aWxpcyVDMyVBOWUlMjBwb3VyJTIwcGx1cyUyMHF1ZSUyMGRlJTIwc2ltcGxlcyUyMGNhbGN1bHMlMkMlMjBlbnZpc2FnZWFudCUyMHNvbiUyMHBvdGVudGllbCUyMGQndW5lJTIwbWFuaSVDMyVBOHJlJTIwcXVlJTIwcGV1JTIwZGUlMjBnZW5zJTIwZmFpc2FpZW50JTIwJUMzJUEwJTIwbCclQzMlQTlwb3F1ZS4lMjBTZXMlMjBjb250cmlidXRpb25zJTIwYXUlMjBkb21haW5lJTIwZGUlMjBsJ2luZm9ybWF0aXF1ZSUyMG9udCUyMHBvcyVDMyVBOSUyMGxlcyUyMGJhc2VzJTIwcG91ciUyMGxlcyUyMGQlQzMlQTl2ZWxvcHBlbWVudHMlMjBmdXR1cnMuJTIwVW5lJTIwam91cm4lQzMlQTllJTIwZW4lMjBvY3RvYnJlJTJDJTIwZCVDMyVBOXNpZ24lQzMlQTllJTIwY29tbWUlMjBsZSUyMGpvdXIlMjBkJ0FkYSUyMExvdmVsYWNlJTJDJTIwaG9ub3JlJTIwbGVzJTIwY29udHJpYnV0aW9ucyUyMGRlcyUyMGZlbW1lcyUyMCVDMyVBMCUyMGxhJTIwc2NpZW5jZSUyMGV0JTIwJUMzJUEwJTIwbGElMjB0ZWNobm9sb2dpZSUyQyUyMGluc3BpciVDMyVBOWUlMjBwYXIlMjBsZSUyMHRyYXZhaWwlMjBwaW9ubmllciUyMGRlJTIwTG92ZWxhY2Uu",highlighted:`🎩 Réponse <span class="hljs-keyword">d</span>&#x27;Alfred :
Ada Lovelace, aussi connue sous le nom <span class="hljs-keyword">d</span>&#x27;Augusta Ada King, Comtesse <span class="hljs-keyword">de</span> Lovelace, était une mathématicienne et écrivaine anglaise. <span class="hljs-keyword">N</span>é<span class="hljs-keyword">e</span> le 10 <span class="hljs-keyword">d</span>écembre 1815 et <span class="hljs-keyword">d</span>écé<span class="hljs-keyword">d</span>é<span class="hljs-keyword">e</span> le 27 novembre 1852, elle <span class="hljs-keyword">est</span> renommé<span class="hljs-keyword">e</span> pour son travail sur <span class="hljs-keyword">la</span> machine analytique <span class="hljs-keyword">de</span> Charles Babbage, un ordinateur <span class="hljs-keyword">m</span>écanique à usage <span class="hljs-keyword">g</span>é<span class="hljs-keyword">n</span>éral proposé. Ada Lovelace <span class="hljs-keyword">est</span> cé<span class="hljs-keyword">l</span>é<span class="hljs-keyword">br</span>é<span class="hljs-keyword">e</span> comme <span class="hljs-keyword">l</span>&#x27;une <span class="hljs-keyword">des</span> premières programmeuses informatiques parce <span class="hljs-keyword">qu</span>&#x27;elle a créé un programme pour <span class="hljs-keyword">la</span> machine analytique <span class="hljs-keyword">en</span> 1843. Elle a reconnu <span class="hljs-keyword">que</span> <span class="hljs-keyword">la</span> machine pourrait être utilisé<span class="hljs-keyword">e</span> pour plus <span class="hljs-keyword">que</span> <span class="hljs-keyword">de</span> simples calculs, envisageant son potentiel <span class="hljs-keyword">d</span>&#x27;une manière <span class="hljs-keyword">que</span> peu <span class="hljs-keyword">de</span> gens faisaient à <span class="hljs-keyword">l</span>&#x27;époque. Ses contributions au domaine <span class="hljs-keyword">de</span> <span class="hljs-keyword">l</span>&#x27;informatique ont posé les bases pour les <span class="hljs-keyword">d</span>éveloppements futurs. Une journé<span class="hljs-keyword">e</span> <span class="hljs-keyword">en</span> octobre, <span class="hljs-keyword">d</span>ésigné<span class="hljs-keyword">e</span> comme le jour <span class="hljs-keyword">d</span>&#x27;Ada Lovelace, honore les contributions <span class="hljs-keyword">des</span> femmes à <span class="hljs-keyword">la</span> science et à <span class="hljs-keyword">la</span> technologie, inspiré<span class="hljs-keyword">e</span> par le travail pionnier <span class="hljs-keyword">de</span> Lovelace.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function Vs(b){let e,M,n,i,p,t;return e=new W({props:{id:"agents-frameworks",option:"smolagents",$$slots:{default:[Zs]},$$scope:{ctx:b}}}),n=new W({props:{id:"agents-frameworks",option:"llama-index",$$slots:{default:[Gs]},$$scope:{ctx:b}}}),p=new W({props:{id:"agents-frameworks",option:"langgraph",$$slots:{default:[Is]},$$scope:{ctx:b}}}),{c(){d(e.$$.fragment),M=J(),d(n.$$.fragment),i=J(),d(p.$$.fragment)},l(s){w(e.$$.fragment,s),M=U(s),w(n.$$.fragment,s),i=U(s),w(p.$$.fragment,s)},m(s,l){u(e,s,l),r(s,M,l),u(n,s,l),r(s,i,l),u(p,s,l),t=!0},p(s,l){const c={};l&2&&(c.$$scope={dirty:l,ctx:s}),e.$set(c);const G={};l&2&&(G.$$scope={dirty:l,ctx:s}),n.$set(G);const I={};l&2&&(I.$$scope={dirty:l,ctx:s}),p.$set(I)},i(s){t||(m(e.$$.fragment,s),m(n.$$.fragment,s),m(p.$$.fragment,s),t=!0)},o(s){j(e.$$.fragment,s),j(n.$$.fragment,s),j(p.$$.fragment,s),t=!1},d(s){s&&(o(M),o(i)),T(e,s),T(n,s),T(p,s)}}}function $s(b){let e,M,n,i="Sortie attendue (variera en raison du caractère aléatoire) :",p,t,s;return e=new Z({props:{code:"cXVlcnklMjAlM0QlMjAlMjJRdWVsJTIwdGVtcHMlMjBmYWl0LWlsJTIwJUMzJUEwJTIwUGFyaXMlMjBjZSUyMHNvaXIlMjAlM0YlMjBTZXJhLXQtaWwlMjBhcHByb3ByaSVDMyVBOSUyMHBvdXIlMjBub3RyZSUyMHNwZWN0YWNsZSUyMGRlJTIwZmV1eCUyMGQnYXJ0aWZpY2UlMjAlM0YlMjIlMEFyZXNwb25zZSUyMCUzRCUyMGFsZnJlZC5ydW4ocXVlcnkpJTBBJTBBcHJpbnQoJTIyJUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMjIpJTBBcHJpbnQocmVzcG9uc2Up",highlighted:`query = <span class="hljs-string">&quot;Quel temps fait-il à Paris ce soir ? Sera-t-il approprié pour notre spectacle de feux d&#x27;artifice ?&quot;</span>
response = alfred.run(query)

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFKJ2FpJTIwdiVDMyVBOXJpZmklQzMlQTklMjBsYSUyMG0lQzMlQTl0JUMzJUE5byUyMCVDMyVBMCUyMFBhcmlzJTIwcG91ciUyMHZvdXMuJTIwQWN0dWVsbGVtZW50JTJDJTIwaWwlMjBmYWl0JTIwY2xhaXIlMjBhdmVjJTIwdW5lJTIwdGVtcCVDMyVBOXJhdHVyZSUyMGRlJTIwMjUlQzIlQjBDLiUyMENlcyUyMGNvbmRpdGlvbnMlMjBzb250JTIwcGFyZmFpdGVzJTIwcG91ciUyMGxlJTIwc3BlY3RhY2xlJTIwZGUlMjBmZXV4JTIwZCdhcnRpZmljZSUyMGNlJTIwc29pci4lMjBMZSUyMGNpZWwlMjBjbGFpciUyMG9mZnJpcmElMjB1bmUlMjBleGNlbGxlbnRlJTIwdmlzaWJpbGl0JUMzJUE5JTIwcG91ciUyMGxlJTIwc3BlY3RhY2xlJTIwc3BlY3RhY3VsYWlyZSUyQyUyMGV0JTIwbGElMjB0ZW1wJUMzJUE5cmF0dXJlJTIwY29uZm9ydGFibGUlMjBzJ2Fzc3VyZXJhJTIwcXVlJTIwbGVzJTIwaW52aXQlQzMlQTlzJTIwcGV1dmVudCUyMHByb2ZpdGVyJTIwZGUlMjBsJyVDMyVBOXYlQzMlQTluZW1lbnQlMjBlbiUyMHBsZWluJTIwYWlyJTIwc2FucyUyMGluY29uZm9ydC4=",highlighted:`🎩 Réponse <span class="hljs-keyword">d</span>&#x27;Alfred :
J&#x27;ai vérifié <span class="hljs-keyword">la</span> <span class="hljs-keyword">m</span>étéo à Paris pour vous. Actuellement, il fait clair avec une température <span class="hljs-keyword">de</span> 25°C. Ces conditions sont parfaites pour le spectacle <span class="hljs-keyword">de</span> feux <span class="hljs-keyword">d</span>&#x27;artifice ce soir. Le ciel clair offrira une excellente visibilité pour le spectacle spectaculaire, et <span class="hljs-keyword">la</span> température confortable s&#x27;assurera <span class="hljs-keyword">que</span> les invités peuvent profiter <span class="hljs-keyword">de</span> <span class="hljs-keyword">l</span>&#x27;événement <span class="hljs-keyword">en</span> plein air sans inconfort.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-5a12ea"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function Ws(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cXVlcnklMjAlM0QlMjAlMjJRdWVsJTIwdGVtcHMlMjBmYWl0LWlsJTIwJUMzJUEwJTIwUGFyaXMlMjBjZSUyMHNvaXIlMjAlM0YlMjBTZXJhLXQtaWwlMjBhcHByb3ByaSVDMyVBOSUyMHBvdXIlMjBub3RyZSUyMHNwZWN0YWNsZSUyMGRlJTIwZmV1eCUyMGQnYXJ0aWZpY2UlMjAlM0YlMjIlMEFyZXNwb25zZSUyMCUzRCUyMGF3YWl0JTIwYWxmcmVkLnJ1bihxdWVyeSklMEElMEFwcmludCglMjIlRjAlOUYlOEUlQTklMjBSJUMzJUE5cG9uc2UlMjBkJ0FsZnJlZCUyMCUzQSUyMiklMEFwcmludChyZXNwb25zZSk=",highlighted:`query = <span class="hljs-string">&quot;Quel temps fait-il à Paris ce soir ? Sera-t-il approprié pour notre spectacle de feux d&#x27;artifice ?&quot;</span>
response = <span class="hljs-keyword">await</span> alfred.run(query)

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFMYSUyMG0lQzMlQTl0JUMzJUE5byUyMCVDMyVBMCUyMFBhcmlzJTIwY2UlMjBzb2lyJTIwZXN0JTIwcGx1dmlldXNlJTIwYXZlYyUyMHVuZSUyMHRlbXAlQzMlQTlyYXR1cmUlMjBkZSUyMDE1JUMyJUIwQy4lMjAlQzMlODl0YW50JTIwZG9ubiVDMyVBOSUyMGxhJTIwcGx1aWUlMkMlMjBpbCUyMHNlJTIwcGV1dCUyMHF1ZSUyMGNlJTIwbmUlMjBzb2l0JTIwcGFzJTIwYXBwcm9wcmklQzMlQTklMjBwb3VyJTIwdW4lMjBzcGVjdGFjbGUlMjBkZSUyMGZldXglMjBkJ2FydGlmaWNlLg==",highlighted:`🎩 Réponse <span class="hljs-keyword">d</span>&#x27;Alfred :
<span class="hljs-keyword">La</span> <span class="hljs-keyword">m</span>étéo à Paris ce soir <span class="hljs-keyword">est</span> pluvieuse avec une température <span class="hljs-keyword">de</span> 15°C. Étant donné <span class="hljs-keyword">la</span> pluie, il <span class="hljs-keyword">se</span> peut <span class="hljs-keyword">que</span> ce ne soit pas approprié pour un spectacle <span class="hljs-keyword">de</span> feux <span class="hljs-keyword">d</span>&#x27;artifice.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function ks(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cmVzcG9uc2UlMjAlM0QlMjBhbGZyZWQuaW52b2tlKCU3QiUyMm1lc3NhZ2VzJTIyJTNBJTIwJTIyUXVlbCUyMHRlbXBzJTIwZmFpdC1pbCUyMCVDMyVBMCUyMFBhcmlzJTIwY2UlMjBzb2lyJTIwJTNGJTIwU2VyYS10LWlsJTIwYXBwcm9wcmklQzMlQTklMjBwb3VyJTIwbm90cmUlMjBzcGVjdGFjbGUlMjBkZSUyMGZldXglMjBkJ2FydGlmaWNlJTIwJTNGJTIyJTdEKSUwQSUwQXByaW50KCUyMiVGMCU5RiU4RSVBOSUyMFIlQzMlQTlwb25zZSUyMGQnQWxmcmVkJTIwJTNBJTIyKSUwQXByaW50KHJlc3BvbnNlJTVCJ21lc3NhZ2VzJyU1RCU1Qi0xJTVELmNvbnRlbnQp",highlighted:`response = alfred.invoke({<span class="hljs-string">&quot;messages&quot;</span>: <span class="hljs-string">&quot;Quel temps fait-il à Paris ce soir ? Sera-t-il approprié pour notre spectacle de feux d&#x27;artifice ?&quot;</span>})

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response[<span class="hljs-string">&#x27;messages&#x27;</span>][-<span class="hljs-number">1</span>].content)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFMYSUyMG0lQzMlQTl0JUMzJUE5byUyMCVDMyVBMCUyMFBhcmlzJTIwY2UlMjBzb2lyJTIwZXN0JTIwcGx1dmlldXNlJTIwYXZlYyUyMHVuZSUyMHRlbXAlQzMlQTlyYXR1cmUlMjBkZSUyMDE1JUMyJUIwQyUyQyUyMGNlJTIwcXVpJTIwcGV1dCUyMG5lJTIwcGFzJTIwJUMzJUFBdHJlJTIwYXBwcm9wcmklQzMlQTklMjBwb3VyJTIwdm90cmUlMjBzcGVjdGFjbGUlMjBkZSUyMGZldXglMjBkJ2FydGlmaWNlLg==",highlighted:`🎩 Réponse <span class="hljs-keyword">d</span>&#x27;Alfred :
<span class="hljs-keyword">La</span> <span class="hljs-keyword">m</span>étéo à Paris ce soir <span class="hljs-keyword">est</span> pluvieuse avec une température <span class="hljs-keyword">de</span> 15°C, ce <span class="hljs-keyword">qui</span> peut ne pas être approprié pour votre spectacle <span class="hljs-keyword">de</span> feux <span class="hljs-keyword">d</span>&#x27;artifice.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function zs(b){let e,M,n,i,p,t;return e=new W({props:{id:"agents-frameworks",option:"smolagents",$$slots:{default:[$s]},$$scope:{ctx:b}}}),n=new W({props:{id:"agents-frameworks",option:"llama-index",$$slots:{default:[Ws]},$$scope:{ctx:b}}}),p=new W({props:{id:"agents-frameworks",option:"langgraph",$$slots:{default:[ks]},$$scope:{ctx:b}}}),{c(){d(e.$$.fragment),M=J(),d(n.$$.fragment),i=J(),d(p.$$.fragment)},l(s){w(e.$$.fragment,s),M=U(s),w(n.$$.fragment,s),i=U(s),w(p.$$.fragment,s)},m(s,l){u(e,s,l),r(s,M,l),u(n,s,l),r(s,i,l),u(p,s,l),t=!0},p(s,l){const c={};l&2&&(c.$$scope={dirty:l,ctx:s}),e.$set(c);const G={};l&2&&(G.$$scope={dirty:l,ctx:s}),n.$set(G);const I={};l&2&&(I.$$scope={dirty:l,ctx:s}),p.$set(I)},i(s){t||(m(e.$$.fragment,s),m(n.$$.fragment,s),m(p.$$.fragment,s),t=!0)},o(s){j(e.$$.fragment,s),j(n.$$.fragment,s),j(p.$$.fragment,s),t=!1},d(s){s&&(o(M),o(i)),T(e,s),T(n,s),T(p,s)}}}function Qs(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cXVlcnklMjAlM0QlMjAlMjJVbiUyMGRlJTIwbm9zJTIwaW52aXQlQzMlQTlzJTIwdmllbnQlMjBkZSUyMFF3ZW4uJTIwUXVlJTIwcG91dmV6LXZvdXMlMjBtZSUyMGRpcmUlMjBzdXIlMjBsZXVyJTIwbW9kJUMzJUE4bGUlMjBsZSUyMHBsdXMlMjBwb3B1bGFpcmUlMjAlM0YlMjIlMEFyZXNwb25zZSUyMCUzRCUyMGFsZnJlZC5ydW4ocXVlcnkpJTBBJTBBcHJpbnQoJTIyJUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMjIpJTBBcHJpbnQocmVzcG9uc2Up",highlighted:`query = <span class="hljs-string">&quot;Un de nos invités vient de Qwen. Que pouvez-vous me dire sur leur modèle le plus populaire ?&quot;</span>
response = alfred.run(query)

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFMZSUyMG1vZCVDMyVBOGxlJTIwUXdlbiUyMGxlJTIwcGx1cyUyMHBvcHVsYWlyZSUyMGVzdCUyMFF3ZW4lMkZRd2VuMi41LVZMLTdCLUluc3RydWN0JTIwYXZlYyUyMDMlMkMzMTMlMkMzNDUlMjB0JUMzJUE5bCVDMyVBOWNoYXJnZW1lbnRzLg==",highlighted:`🎩 Réponse d<span class="hljs-symbol">&#x27;Alfred</span> :
<span class="hljs-type">Le</span> <span class="hljs-keyword">mod</span>èle Qwen le plus populaire est Qwen/Qwen2.<span class="hljs-number">5</span>-VL-<span class="hljs-number">7</span>B-Instruct avec <span class="hljs-number">3</span>,<span class="hljs-number">313</span>,<span class="hljs-number">345</span> téléchargements.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function Xs(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cXVlcnklMjAlM0QlMjAlMjJVbiUyMGRlJTIwbm9zJTIwaW52aXQlQzMlQTlzJTIwdmllbnQlMjBkZSUyMEdvb2dsZS4lMjBRdWUlMjBwb3V2ZXotdm91cyUyMG1lJTIwZGlyZSUyMHN1ciUyMGxldXIlMjBtb2QlQzMlQThsZSUyMGxlJTIwcGx1cyUyMHBvcHVsYWlyZSUyMCUzRiUyMiUwQXJlc3BvbnNlJTIwJTNEJTIwYXdhaXQlMjBhbGZyZWQucnVuKHF1ZXJ5KSUwQSUwQXByaW50KCUyMiVGMCU5RiU4RSVBOSUyMFIlQzMlQTlwb25zZSUyMGQnQWxmcmVkJTIwJTNBJTIyKSUwQXByaW50KHJlc3BvbnNlKQ==",highlighted:`query = <span class="hljs-string">&quot;Un de nos invités vient de Google. Que pouvez-vous me dire sur leur modèle le plus populaire ?&quot;</span>
response = <span class="hljs-keyword">await</span> alfred.run(query)

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFMZSUyMG1vZCVDMyVBOGxlJTIwbGUlMjBwbHVzJTIwcG9wdWxhaXJlJTIwcGFyJTIwR29vZ2xlJTIwc3VyJTIwbGUlMjBIdWdnaW5nJTIwRmFjZSUyMEh1YiUyMGVzdCUyMGdvb2dsZSUyRmVsZWN0cmEtYmFzZS1kaXNjcmltaW5hdG9yJTJDJTIwYXZlYyUyMDI4JTJDNTQ2JTJDNzUyJTIwdCVDMyVBOWwlQzMlQTljaGFyZ2VtZW50cy4=",highlighted:`🎩 Réponse d&#x27;Alfred :
<span class="hljs-keyword">Le</span> modè<span class="hljs-keyword">le</span> <span class="hljs-keyword">le</span> plus populaire par Google sur <span class="hljs-keyword">le</span> Hugging Face Hub est google/electra-base-discriminator, avec <span class="hljs-number">28</span>,<span class="hljs-number">546</span>,<span class="hljs-number">752</span> téléchargements.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function vs(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cmVzcG9uc2UlMjAlM0QlMjBhbGZyZWQuaW52b2tlKCU3QiUyMm1lc3NhZ2VzJTIyJTNBJTIwJTIyVW4lMjBkZSUyMG5vcyUyMGludml0JUMzJUE5cyUyMHZpZW50JTIwZGUlMjBRd2VuLiUyMFF1ZSUyMHBvdXZlei12b3VzJTIwbWUlMjBkaXJlJTIwc3VyJTIwbGV1ciUyMG1vZCVDMyVBOGxlJTIwbGUlMjBwbHVzJTIwcG9wdWxhaXJlJTIwJTNGJTIyJTdEKSUwQSUwQXByaW50KCUyMiVGMCU5RiU4RSVBOSUyMFIlQzMlQTlwb25zZSUyMGQnQWxmcmVkJTIwJTNBJTIyKSUwQXByaW50KHJlc3BvbnNlJTVCJ21lc3NhZ2VzJyU1RCU1Qi0xJTVELmNvbnRlbnQp",highlighted:`response = alfred.invoke({<span class="hljs-string">&quot;messages&quot;</span>: <span class="hljs-string">&quot;Un de nos invités vient de Qwen. Que pouvez-vous me dire sur leur modèle le plus populaire ?&quot;</span>})

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response[<span class="hljs-string">&#x27;messages&#x27;</span>][-<span class="hljs-number">1</span>].content)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFMZSUyMG1vZCVDMyVBOGxlJTIwbGUlMjBwbHVzJTIwdCVDMyVBOWwlQzMlQTljaGFyZyVDMyVBOSUyMHBhciUyMFF3ZW4lMjBlc3QlMjBRd2VuJTJGUXdlbjIuNS1WTC03Qi1JbnN0cnVjdCUyMGF2ZWMlMjAzJTJDMzEzJTJDMzQ1JTIwdCVDMyVBOWwlQzMlQTljaGFyZ2VtZW50cy4=",highlighted:`🎩 Réponse d<span class="hljs-symbol">&#x27;Alfred</span> :
<span class="hljs-type">Le</span> <span class="hljs-keyword">mod</span>èle le plus téléchargé par Qwen est Qwen/Qwen2.<span class="hljs-number">5</span>-VL-<span class="hljs-number">7</span>B-Instruct avec <span class="hljs-number">3</span>,<span class="hljs-number">313</span>,<span class="hljs-number">345</span> téléchargements.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function gs(b){let e,M,n,i,p,t;return e=new W({props:{id:"agents-frameworks",option:"smolagents",$$slots:{default:[Qs]},$$scope:{ctx:b}}}),n=new W({props:{id:"agents-frameworks",option:"llama-index",$$slots:{default:[Xs]},$$scope:{ctx:b}}}),p=new W({props:{id:"agents-frameworks",option:"langgraph",$$slots:{default:[vs]},$$scope:{ctx:b}}}),{c(){d(e.$$.fragment),M=J(),d(n.$$.fragment),i=J(),d(p.$$.fragment)},l(s){w(e.$$.fragment,s),M=U(s),w(n.$$.fragment,s),i=U(s),w(p.$$.fragment,s)},m(s,l){u(e,s,l),r(s,M,l),u(n,s,l),r(s,i,l),u(p,s,l),t=!0},p(s,l){const c={};l&2&&(c.$$scope={dirty:l,ctx:s}),e.$set(c);const G={};l&2&&(G.$$scope={dirty:l,ctx:s}),n.$set(G);const I={};l&2&&(I.$$scope={dirty:l,ctx:s}),p.$set(I)},i(s){t||(m(e.$$.fragment,s),m(n.$$.fragment,s),m(p.$$.fragment,s),t=!0)},o(s){j(e.$$.fragment,s),j(n.$$.fragment,s),j(p.$$.fragment,s),t=!1},d(s){s&&(o(M),o(i)),T(e,s),T(n,s),T(p,s)}}}function Cs(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cXVlcnklMjAlM0QlMjAlMjJKJ2FpJTIwYmVzb2luJTIwZGUlMjBwYXJsZXIlMjBhdmVjJTIwbGUlMjBEci4lMjBOaWtvbGElMjBUZXNsYSUyMGRlcyUyMGF2YW5jJUMzJUE5ZXMlMjByJUMzJUE5Y2VudGVzJTIwZW4lMjAlQzMlQTluZXJnaWUlMjBzYW5zJTIwZmlsLiUyMFBvdXZlei12b3VzJTIwbSdhaWRlciUyMCVDMyVBMCUyMHByJUMzJUE5cGFyZXIlMjBjZXR0ZSUyMGNvbnZlcnNhdGlvbiUyMCUzRiUyMiUwQXJlc3BvbnNlJTIwJTNEJTIwYWxmcmVkLnJ1bihxdWVyeSklMEElMEFwcmludCglMjIlRjAlOUYlOEUlQTklMjBSJUMzJUE5cG9uc2UlMjBkJ0FsZnJlZCUyMCUzQSUyMiklMEFwcmludChyZXNwb25zZSk=",highlighted:`query = <span class="hljs-string">&quot;J&#x27;ai besoin de parler avec le Dr. Nikola Tesla des avancées récentes en énergie sans fil. Pouvez-vous m&#x27;aider à préparer cette conversation ?&quot;</span>
response = alfred.run(query)

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFKJ2FpJTIwcmFzc2VtYmwlQzMlQTklMjBkZXMlMjBpbmZvcm1hdGlvbnMlMjBwb3VyJTIwdm91cyUyMGFpZGVyJTIwJUMzJUEwJTIwcHIlQzMlQTlwYXJlciUyMHZvdHJlJTIwY29udmVyc2F0aW9uJTIwYXZlYyUyMGxlJTIwRHIuJTIwTmlrb2xhJTIwVGVzbGEuJTBBJTBBSW5mb3JtYXRpb25zJTIwc3VyJTIwbCdpbnZpdCVDMyVBOSUyMCUzQSUwQU5vbSUyMCUzQSUyMERyLiUyME5pa29sYSUyMFRlc2xhJTBBUmVsYXRpb24lMjAlM0ElMjB2aWVpbCUyMGFtaSUyMGRlcyUyMGpvdXJzJTIwZCd1bml2ZXJzaXQlQzMlQTklMEFEZXNjcmlwdGlvbiUyMCUzQSUyMExlJTIwRHIuJTIwTmlrb2xhJTIwVGVzbGElMjBlc3QlMjB1biUyMHZpZWlsJTIwYW1pJTIwZGUlMjB2b3MlMjBqb3VycyUyMGQndW5pdmVyc2l0JUMzJUE5LiUyMElsJTIwdmllbnQlMjByJUMzJUE5Y2VtbWVudCUyMGRlJTIwYnJldmV0ZXIlMjB1biUyMG5vdXZlYXUlMjBzeXN0JUMzJUE4bWUlMjBkZSUyMHRyYW5zbWlzc2lvbiUyMGQnJUMzJUE5bmVyZ2llJTIwc2FucyUyMGZpbCUyMGV0JTIwc2VyYWl0JTIwcmF2aSUyMGQnZW4lMjBkaXNjdXRlciUyMGF2ZWMlMjB2b3VzLiUyME4nb3VibGlleiUyMHBhcyUyMHF1J2lsJTIwZXN0JTIwcGFzc2lvbm4lQzMlQTklMjBwYXIlMjBsZXMlMjBwaWdlb25zJTJDJTIwZG9uYyUyMGNlbGElMjBwb3VycmFpdCUyMGZhaXJlJTIwdW5lJTIwYm9ubmUlMjBjb252ZXJzYXRpb24uJTBBRS1tYWlsJTIwJTNBJTIwbmlrb2xhLnRlc2xhJTQwZ21haWwuY29tJTBBJTBBQXZhbmMlQzMlQTllcyUyMHIlQzMlQTljZW50ZXMlMjBlbiUyMCVDMyVBOW5lcmdpZSUyMHNhbnMlMjBmaWwlMjAlM0ElMEFCYXMlQzMlQTklMjBzdXIlMjBtYSUyMHJlY2hlcmNoZSUyMHdlYiUyQyUyMHZvaWNpJTIwcXVlbHF1ZXMlMjBkJUMzJUE5dmVsb3BwZW1lbnRzJTIwciVDMyVBOWNlbnRzJTIwZW4lMjB0cmFuc21pc3Npb24lMjBkJyVDMyVBOW5lcmdpZSUyMHNhbnMlMjBmaWwlMjAlM0ElMEExLiUyMExlcyUyMGNoZXJjaGV1cnMlMjBvbnQlMjBmYWl0JTIwZGVzJTIwcHJvZ3IlQzMlQThzJTIwZGFucyUyMGxhJTIwdHJhbnNtaXNzaW9uJTIwZCclQzMlQTluZXJnaWUlMjBzYW5zJTIwZmlsJTIwJUMzJUEwJTIwbG9uZ3VlJTIwcG9ydCVDMyVBOWUlMjB1dGlsaXNhbnQlMjBkZXMlMjBvbmRlcyUyMCVDMyVBOWxlY3Ryb21hZ24lQzMlQTl0aXF1ZXMlMjBmb2NhbGlzJUMzJUE5ZXMlMEEyLiUyMFBsdXNpZXVycyUyMGVudHJlcHJpc2VzJTIwZCVDMyVBOXZlbG9wcGVudCUyMGRlcyUyMHRlY2hub2xvZ2llcyUyMGRlJTIwY291cGxhZ2UlMjBpbmR1Y3RpZiUyMHIlQzMlQTlzb25uYW50JTIwcG91ciUyMGwnJUMzJUE5bGVjdHJvbmlxdWUlMjBncmFuZCUyMHB1YmxpYyUwQTMuJTIwSWwlMjB5JTIwYSUyMGRlJTIwbm91dmVsbGVzJTIwYXBwbGljYXRpb25zJTIwZGFucyUyMGxhJTIwcmVjaGFyZ2UlMjBkZSUyMHYlQzMlQTloaWN1bGVzJTIwJUMzJUE5bGVjdHJpcXVlcyUyMHNhbnMlMjBjb25uZXhpb25zJTIwcGh5c2lxdWVzJTBBJTBBQW1vcmNlcyUyMGRlJTIwY29udmVyc2F0aW9uJTIwJTNBJTBBMS4lMjAlMjJKJ2Fkb3JlcmFpcyUyMGVudGVuZHJlJTIwcGFybGVyJTIwZGUlMjB2b3RyZSUyMG5vdXZlYXUlMjBicmV2ZXQlMjBzdXIlMjBsYSUyMHRyYW5zbWlzc2lvbiUyMGQnJUMzJUE5bmVyZ2llJTIwc2FucyUyMGZpbC4lMjBDb21tZW50JTIwc2UlMjBjb21wYXJlLXQtaWwlMjAlQzMlQTAlMjB2b3MlMjBjb25jZXB0cyUyMG9yaWdpbmF1eCUyMGRlJTIwbm9zJTIwam91cnMlMjBkJ3VuaXZlcnNpdCVDMyVBOSUyMCUzRiUyMiUwQTIuJTIwJTIyQXZlei12b3VzJTIwdnUlMjBsZXMlMjBkJUMzJUE5dmVsb3BwZW1lbnRzJTIwciVDMyVBOWNlbnRzJTIwZW4lMjBjb3VwbGFnZSUyMGluZHVjdGlmJTIwciVDMyVBOXNvbm5hbnQlMjBwb3VyJTIwbCclQzMlQTlsZWN0cm9uaXF1ZSUyMGdyYW5kJTIwcHVibGljJTIwJTNGJTIwUXVlJTIwcGVuc2V6LXZvdXMlMjBkZSUyMGxldXIlMjBhcHByb2NoZSUyMCUzRiUyMiUwQTMuJTIwJTIyQ29tbWVudCUyMHZvbnQlMjB2b3MlMjBwaWdlb25zJTIwJTNGJTIwSmUlMjBtZSUyMHNvdXZpZW5zJTIwZGUlMjB2b3RyZSUyMGZhc2NpbmF0aW9uJTIwcG91ciUyMGV1eC4lMjIlMEElMEFDZWxhJTIwZGV2cmFpdCUyMHZvdXMlMjBkb25uZXIlMjBiZWF1Y291cCUyMCVDMyVBMCUyMGRpc2N1dGVyJTIwYXZlYyUyMGxlJTIwRHIuJTIwVGVzbGElMjB0b3V0JTIwZW4lMjBkJUMzJUE5bW9udHJhbnQlMjB2b3RyZSUyMGNvbm5haXNzYW5jZSUyMGRlJTIwc2VzJTIwaW50JUMzJUE5ciVDMyVBQXRzJTIwZXQlMjBkZXMlMjBkJUMzJUE5dmVsb3BwZW1lbnRzJTIwciVDMyVBOWNlbnRzJTIwZGFucyUyMHNvbiUyMGRvbWFpbmUu",highlighted:`🎩 Réponse <span class="hljs-keyword">d</span>&#x27;Alfred :
J&#x27;ai rassemblé <span class="hljs-keyword">des</span> informations pour vous aider à <span class="hljs-keyword">pr</span>éparer votre conversation avec le Dr. Nikola Tesla.

Informations sur <span class="hljs-keyword">l</span>&#x27;invité :
Nom : Dr. Nikola Tesla
Relation : vieil ami <span class="hljs-keyword">des</span> jours <span class="hljs-keyword">d</span>&#x27;université
Description : Le Dr. Nikola Tesla <span class="hljs-keyword">est</span> un vieil ami <span class="hljs-keyword">de</span> vos jours <span class="hljs-keyword">d</span>&#x27;université. Il vient récemment <span class="hljs-keyword">de</span> breveter un nouveau système <span class="hljs-keyword">de</span> transmission <span class="hljs-keyword">d</span>&#x27;énergie sans fil et serait ravi <span class="hljs-keyword">d</span>&#x27;<span class="hljs-keyword">en</span> discuter avec vous. <span class="hljs-keyword">N</span>&#x27;oubliez pas <span class="hljs-keyword">qu</span>&#x27;il <span class="hljs-keyword">est</span> passionné par les pigeons, donc cela pourrait faire une bonne conversation.
<span class="hljs-keyword">E</span>-mail : nikola.tesla@gmail.com

Avancées récentes <span class="hljs-keyword">en</span> énergie sans fil :
Basé sur <span class="hljs-keyword">ma</span> recherche web, voici quelques <span class="hljs-keyword">d</span>éveloppements récents <span class="hljs-keyword">en</span> transmission <span class="hljs-keyword">d</span>&#x27;énergie sans fil :
1. Les chercheurs ont fait <span class="hljs-keyword">des</span> <span class="hljs-keyword">progr</span>ès dans <span class="hljs-keyword">la</span> transmission <span class="hljs-keyword">d</span>&#x27;énergie sans fil à longue porté<span class="hljs-keyword">e</span> utilisant <span class="hljs-keyword">des</span> ondes électromagnétiques focalisées
2. Plusieurs entreprises <span class="hljs-keyword">d</span>éveloppent <span class="hljs-keyword">des</span> technologies <span class="hljs-keyword">de</span> couplage inductif résonnant pour <span class="hljs-keyword">l</span>&#x27;électronique grand public
3. Il y a <span class="hljs-keyword">de</span> nouvelles applications dans <span class="hljs-keyword">la</span> recharge <span class="hljs-keyword">de</span> véhicules électriques sans connexions physiques

Amorces <span class="hljs-keyword">de</span> conversation :
1. <span class="hljs-string">&quot;J&#x27;adorerais entendre parler de votre nouveau brevet sur la transmission d&#x27;énergie sans fil. Comment se compare-t-il à vos concepts originaux de nos jours d&#x27;université ?&quot;</span>
2. <span class="hljs-string">&quot;Avez-vous vu les développements récents en couplage inductif résonnant pour l&#x27;électronique grand public ? Que pensez-vous de leur approche ?&quot;</span>
3. <span class="hljs-string">&quot;Comment vont vos pigeons ? Je me souviens de votre fascination pour eux.&quot;</span>

Cela devrait vous donner beaucoup à discuter avec le Dr. Tesla tout <span class="hljs-keyword">en</span> <span class="hljs-keyword">d</span>émontrant votre connaissance <span class="hljs-keyword">de</span> ses intérêts et <span class="hljs-keyword">des</span> <span class="hljs-keyword">d</span>éveloppements récents dans son domaine.`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function xs(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cXVlcnklMjAlM0QlMjAlMjJKJ2FpJTIwYmVzb2luJTIwZGUlMjBwYXJsZXIlMjBhdmVjJTIwbGUlMjBEci4lMjBOaWtvbGElMjBUZXNsYSUyMGRlcyUyMGF2YW5jJUMzJUE5ZXMlMjByJUMzJUE5Y2VudGVzJTIwZW4lMjAlQzMlQTluZXJnaWUlMjBzYW5zJTIwZmlsLiUyMFBvdXZlei12b3VzJTIwbSdhaWRlciUyMCVDMyVBMCUyMHByJUMzJUE5cGFyZXIlMjBjZXR0ZSUyMGNvbnZlcnNhdGlvbiUyMCUzRiUyMiUwQXJlc3BvbnNlJTIwJTNEJTIwYXdhaXQlMjBhbGZyZWQucnVuKHF1ZXJ5KSUwQSUwQXByaW50KCUyMiVGMCU5RiU4RSVBOSUyMFIlQzMlQTlwb25zZSUyMGQnQWxmcmVkJTIwJTNBJTIyKSUwQXByaW50KHJlc3BvbnNlKQ==",highlighted:`query = <span class="hljs-string">&quot;J&#x27;ai besoin de parler avec le Dr. Nikola Tesla des avancées récentes en énergie sans fil. Pouvez-vous m&#x27;aider à préparer cette conversation ?&quot;</span>
response = <span class="hljs-keyword">await</span> alfred.run(query)

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response)`,wrap:!1}}),t=new Z({props:{code:"JUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMEFWb2ljaSUyMHF1ZWxxdWVzJTIwYXZhbmMlQzMlQTllcyUyMHIlQzMlQTljZW50ZXMlMjBlbiUyMCVDMyVBOW5lcmdpZSUyMHNhbnMlMjBmaWwlMjBxdWUlMjB2b3VzJTIwcG91cnJpZXolMjB0cm91dmVyJTIwdXRpbGVzJTIwcG91ciUyMHZvdHJlJTIwY29udmVyc2F0aW9uJTIwYXZlYyUyMGxlJTIwRHIuJTIwTmlrb2xhJTIwVGVzbGElMjAlM0ElMEElMEExLiUyMCoqQXZhbmMlQzMlQTllcyUyMGV0JTIwZCVDMyVBOWZpcyUyMGRhbnMlMjBsZSUyMHRyYW5zZmVydCUyMGQnJUMzJUE5bmVyZ2llJTIwc2FucyUyMGZpbCoqJTIwJTNBJTIwQ2V0JTIwYXJ0aWNsZSUyMGRpc2N1dGUlMjBkZSUyMGwnJUMzJUE5dm9sdXRpb24lMjBkdSUyMHRyYW5zZmVydCUyMGQnJUMzJUE5bmVyZ2llJTIwc2FucyUyMGZpbCUyMChXUFQpJTIwZGVzJTIwbSVDMyVBOXRob2RlcyUyMGZpbGFpcmVzJTIwY29udmVudGlvbm5lbGxlcyUyMGF1eCUyMGFwcGxpY2F0aW9ucyUyMG1vZGVybmVzJTJDJTIweSUyMGNvbXByaXMlMjBsZXMlMjBzdGF0aW9ucyUyMGQnJUMzJUE5bmVyZ2llJTIwc29sYWlyZSUyMHNwYXRpYWxlcy4lMjBJbCUyMHNvdWxpZ25lJTIwbCdhY2NlbnQlMjBpbml0aWFsJTIwc3VyJTIwbGElMjB0ZWNobm9sb2dpZSUyMGRlcyUyMG1pY3JvLW9uZGVzJTIwZXQlMjBsYSUyMGRlbWFuZGUlMjBhY3R1ZWxsZSUyMHBvdXIlMjBsZSUyMFdQVCUyMGVuJTIwcmFpc29uJTIwZGUlMjBsYSUyMG1vbnQlQzMlQTllJTIwZGVzJTIwYXBwYXJlaWxzJTIwJUMzJUE5bGVjdHJpcXVlcy4lMEElMEEyLiUyMCoqQXZhbmMlQzMlQTllcyUyMHIlQzMlQTljZW50ZXMlMjBkYW5zJTIwbGVzJTIwdGVjaG5vbG9naWVzJTIwZGUlMjB0cmFuc2ZlcnQlMjBkJyVDMyVBOW5lcmdpZSUyMHNhbnMlMjBmaWwlMjBwb3VyJTIwbCclQzMlQTlsZWN0cm9uaXF1ZSUyMGludGVyZmFjJUMzJUE5ZSUyMGF1JTIwY29ycHMqKiUyMCUzQSUyMENldCUyMGFydGljbGUlMjBleHBsb3JlJTIwbGUlMjB0cmFuc2ZlcnQlMjBkJyVDMyVBOW5lcmdpZSUyMHNhbnMlMjBmaWwlMjAoV0VUKSUyMGNvbW1lJTIwc29sdXRpb24lMjBwb3VyJTIwYWxpbWVudGVyJTIwbCclQzMlQTlsZWN0cm9uaXF1ZSUyMGludGVyZmFjJUMzJUE5ZSUyMGF1JTIwY29ycHMlMjBzYW5zJTIwYXZvaXIlMjBiZXNvaW4lMjBkZSUyMGJhdHRlcmllcyUyMG91JTIwZGUlMjBmaWxzJTIwZGUlMjBwbG9tYi4lMjBJbCUyMGRpc2N1dGUlMjBkZXMlMjBhdmFudGFnZXMlMjBldCUyMGRlcyUyMGFwcGxpY2F0aW9ucyUyMHBvdGVudGllbGxlcyUyMGR1JTIwV0VUJTIwZGFucyUyMGNlJTIwY29udGV4dGUuJTBBJTBBMy4lMjAqKlRyYW5zZmVydCUyMGQnJUMzJUE5bmVyZ2llJTIwc2FucyUyMGZpbCUyMGV0JTIwciVDMyVBOWNvbHRlJTIwZCclQzMlQTluZXJnaWUlMjAlM0ElMjBTdGF0dXQlMjBhY3R1ZWwlMjBldCUyMHRlbmRhbmNlcyUyMGZ1dHVyZXMqKiUyMCUzQSUyMENldCUyMGFydGljbGUlMjBmb3Vybml0JTIwdW4lMjBhcGVyJUMzJUE3dSUyMGRlcyUyMGF2YW5jJUMzJUE5ZXMlMjByJUMzJUE5Y2VudGVzJTIwZGFucyUyMGxlcyUyMG0lQzMlQTl0aG9kZXMlMjBkJ2FsaW1lbnRhdGlvbiUyMHNhbnMlMjBmaWwlMkMlMjB5JTIwY29tcHJpcyUyMGxhJTIwciVDMyVBOWNvbHRlJTIwZCclQzMlQTluZXJnaWUlMjBldCUyMGxlJTIwdHJhbnNmZXJ0JTIwZCclQzMlQTluZXJnaWUlMjBzYW5zJTIwZmlsLiUyMElsJTIwcHIlQzMlQTlzZW50ZSUyMHBsdXNpZXVycyUyMGFwcGxpY2F0aW9ucyUyMHByb21ldHRldXNlcyUyMGV0JTIwZGlzY3V0ZSUyMGRlcyUyMHRlbmRhbmNlcyUyMGZ1dHVyZXMlMjBkYW5zJTIwbGUlMjBkb21haW5lLiUwQSUwQTQuJTIwKipUcmFuc2ZlcnQlMjBkJyVDMyVBOW5lcmdpZSUyMHNhbnMlMjBmaWwlMjAlM0ElMjBBcHBsaWNhdGlvbnMlMkMlMjBkJUMzJUE5ZmlzJTJDJTIwYmFycmklQzMlQThyZXMlMkMlMjBldCUyMGxlcw==",highlighted:`🎩 Réponse <span class="hljs-keyword">d</span>&#x27;Alfred :
Voici quelques avancées récentes <span class="hljs-keyword">en</span> énergie sans fil <span class="hljs-keyword">que</span> vous pourriez trouver utiles pour votre conversation avec le Dr. Nikola Tesla :

1. **Avancées et <span class="hljs-keyword">d</span>éfis dans le transfert <span class="hljs-keyword">d</span>&#x27;énergie sans fil** : Cet article discute <span class="hljs-keyword">de</span> <span class="hljs-keyword">l</span>&#x27;évolution du transfert <span class="hljs-keyword">d</span>&#x27;énergie sans fil (WPT) <span class="hljs-keyword">des</span> <span class="hljs-keyword">m</span>éthodes filaires conventionnelles aux applications modernes, y compris les stations <span class="hljs-keyword">d</span>&#x27;énergie solaire spatiales. Il souligne <span class="hljs-keyword">l</span>&#x27;accent initial sur <span class="hljs-keyword">la</span> technologie <span class="hljs-keyword">des</span> micro-ondes et <span class="hljs-keyword">la</span> demande actuelle pour le WPT <span class="hljs-keyword">en</span> raison <span class="hljs-keyword">de</span> <span class="hljs-keyword">la</span> monté<span class="hljs-keyword">e</span> <span class="hljs-keyword">des</span> appareils électriques.

2. **Avancées récentes dans les technologies <span class="hljs-keyword">de</span> transfert <span class="hljs-keyword">d</span>&#x27;énergie sans fil pour <span class="hljs-keyword">l</span>&#x27;électronique interfacé<span class="hljs-keyword">e</span> au corps** : Cet article explore le transfert <span class="hljs-keyword">d</span>&#x27;énergie sans fil (WET) comme solution pour alimenter <span class="hljs-keyword">l</span>&#x27;électronique interfacé<span class="hljs-keyword">e</span> au corps sans avoir besoin <span class="hljs-keyword">de</span> batteries <span class="hljs-keyword">ou</span> <span class="hljs-keyword">de</span> fils <span class="hljs-keyword">de</span> plomb. Il discute <span class="hljs-keyword">des</span> avantages et <span class="hljs-keyword">des</span> applications potentielles du WET dans ce contexte.

3. **Transfert <span class="hljs-keyword">d</span>&#x27;énergie sans fil et récolte <span class="hljs-keyword">d</span>&#x27;énergie : Statut actuel et tendances futures** : Cet article fournit un aperç<span class="hljs-keyword">u</span> <span class="hljs-keyword">des</span> avancées récentes dans les <span class="hljs-keyword">m</span>éthodes <span class="hljs-keyword">d</span>&#x27;alimentation sans fil, y compris <span class="hljs-keyword">la</span> récolte <span class="hljs-keyword">d</span>&#x27;énergie et le transfert <span class="hljs-keyword">d</span>&#x27;énergie sans fil. Il <span class="hljs-keyword">pr</span>ésente plusieurs applications prometteuses et discute <span class="hljs-keyword">des</span> tendances futures dans le domaine.

4. **Transfert <span class="hljs-keyword">d</span>&#x27;énergie sans fil : Applications, <span class="hljs-keyword">d</span>éfis, barrières, et les`,wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function Ys(b){let e,M,n,i="Sortie attendue :",p,t,s;return e=new Z({props:{code:"cmVzcG9uc2UlMjAlM0QlMjBhbGZyZWQuaW52b2tlKCU3QiUyMm1lc3NhZ2VzJTIyJTNBJTIySidhaSUyMGJlc29pbiUyMGRlJTIwcGFybGVyJTIwYXZlYyUyMGxlJTIwJ0RyLiUyME5pa29sYSUyMFRlc2xhJyUyMGRlcyUyMGF2YW5jJUMzJUE5ZXMlMjByJUMzJUE5Y2VudGVzJTIwZW4lMjAlQzMlQTluZXJnaWUlMjBzYW5zJTIwZmlsLiUyMFBvdXZlei12b3VzJTIwbSdhaWRlciUyMCVDMyVBMCUyMHByJUMzJUE5cGFyZXIlMjBjZXR0ZSUyMGNvbnZlcnNhdGlvbiUyMCUzRiUyMiU3RCklMEElMEFwcmludCglMjIlRjAlOUYlOEUlQTklMjBSJUMzJUE5cG9uc2UlMjBkJ0FsZnJlZCUyMCUzQSUyMiklMEFwcmludChyZXNwb25zZSU1QidtZXNzYWdlcyclNUQlNUItMSU1RC5jb250ZW50KQ==",highlighted:`response = alfred.invoke({<span class="hljs-string">&quot;messages&quot;</span>:<span class="hljs-string">&quot;J&#x27;ai besoin de parler avec le &#x27;Dr. Nikola Tesla&#x27; des avancées récentes en énergie sans fil. Pouvez-vous m&#x27;aider à préparer cette conversation ?&quot;</span>})

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response[<span class="hljs-string">&#x27;messages&#x27;</span>][-<span class="hljs-number">1</span>].content)`,wrap:!1}}),t=new Z({props:{code:"QmFzJUMzJUE5JTIwc3VyJTIwbGVzJTIwaW5mb3JtYXRpb25zJTIwZm91cm5pZXMlMkMlMjB2b2ljaSUyMGxlcyUyMHBvaW50cyUyMGNsJUMzJUE5cyUyMHBvdXIlMjBwciVDMyVBOXBhcmVyJTIwbGElMjBjb252ZXJzYXRpb24lMjBhdmVjJTIwbGUlMjAnRHIuJTIwTmlrb2xhJTIwVGVzbGEnJTIwc3VyJTIwbGVzJTIwYXZhbmMlQzMlQTllcyUyMHIlQzMlQTljZW50ZXMlMjBlbiUyMCVDMyVBOW5lcmdpZSUyMHNhbnMlMjBmaWwlMjAlM0ElNUNuMS4lMjAqKlRyYW5zbWlzc2lvbiUyMGQnJUMzJUE5bmVyZ2llJTIwc2FucyUyMGZpbCUyMChXUFQpJTIwJTNBKiolMjBEaXNjdXRleiUyMGRlJTIwbGElMjBmYSVDMyVBN29uJTIwZG9udCUyMGxlJTIwV1BUJTIwciVDMyVBOXZvbHV0aW9ubmUlMjBsZSUyMHRyYW5zZmVydCUyMGQnJUMzJUE5bmVyZ2llJTIwZW4lMjAlQzMlQTlsaW1pbmFudCUyMGxlJTIwYmVzb2luJTIwZGUlMjBjb3Jkb25zJTIwZXQlMjBlbiUyMGV4cGxvaXRhbnQlMjBkZXMlMjBtJUMzJUE5Y2FuaXNtZXMlMjBjb21tZSUyMGxlJTIwY291cGxhZ2UlMjBpbmR1Y3RpZiUyMGV0JTIwciVDMyVBOXNvbm5hbnQuJTVDbjIuJTIwKipBdmFuYyVDMyVBOWVzJTIwZGFucyUyMGxhJTIwcmVjaGFyZ2UlMjBzYW5zJTIwZmlsJTIwJTNBKiolMjBNZXR0ZXolMjBlbiUyMCVDMyVBOXZpZGVuY2UlMjBsZXMlMjBhbSVDMyVBOWxpb3JhdGlvbnMlMjBlbiUyMGVmZmljYWNpdCVDMyVBOSUyQyUyMGxlcyUyMHZpdGVzc2VzJTIwZGUlMjByZWNoYXJnZSUyMHBsdXMlMjByYXBpZGVzJTJDJTIwZXQlMjBsYSUyMG1vbnQlQzMlQTllJTIwZGVzJTIwc29sdXRpb25zJTIwZGUlMjByZWNoYXJnZSUyMHNhbnMlMjBmaWwlMjBjZXJ0aWZpJUMzJUE5ZXMlMjBRaSUyRlFpMi4lNUNuMy4lMjAqKklubm92YXRpb25zJTIwNUctQWR2YW5jZWQlMjBldCUyMHByb3RvY29sZSUyMHNhbnMlMjBmaWwlMjBOZWFyTGluayUyMCUzQSoqJTIwTWVudGlvbm5lei1sZXMlMjBjb21tZSUyMGRlcyUyMGQlQzMlQTl2ZWxvcHBlbWVudHMlMjBxdWklMjBhbSVDMyVBOWxpb3JlbnQlMjBsYSUyMHZpdGVzc2UlMkMlMjBsYSUyMHMlQzMlQTljdXJpdCVDMyVBOSUyMGV0JTIwbCdlZmZpY2FjaXQlQzMlQTklMjBkYW5zJTIwbGVzJTIwciVDMyVBOXNlYXV4JTIwc2FucyUyMGZpbCUyQyUyMHF1aSUyMHBldXZlbnQlMjBzb3V0ZW5pciUyMGxlcyUyMHRlY2hub2xvZ2llcyUyMGQnJUMzJUE5bmVyZ2llJTIwc2FucyUyMGZpbCUyMGF2YW5jJUMzJUE5ZXMuJTVDbjQuJTIwKipJQSUyMGV0JTIwTUwlMjAlQzMlQTAlMjBsYSUyMHAlQzMlQTlyaXBoJUMzJUE5cmllJTIwJTNBKiolMjBQYXJsZXolMjBkZSUyMGxhJTIwZmElQzMlQTdvbiUyMGRvbnQlMjBsJ0lBJTIwZXQlMjBsJ2FwcHJlbnRpc3NhZ2UlMjBhdXRvbWF0aXF1ZSUyMHMnYXBwdWllcm9udCUyMHN1ciUyMGxlcyUyMHIlQzMlQTlzZWF1eCUyMHNhbnMlMjBmaWwlMjBwb3VyJTIwYXBwb3J0ZXIlMjBsJ2ludGVsbGlnZW5jZSUyMCVDMyVBMCUyMGxhJTIwcCVDMyVBOXJpcGglQzMlQTlyaWUlMkMlMjBhbSVDMyVBOWxpb3JhbnQlMjBsJ2F1dG9tYXRpc2F0aW9uJTIwZXQlMjBsJ2ludGVsbGlnZW5jZSUyMGRhbnMlMjBsZXMlMjBtYWlzb25zJTIwZXQlMjBiJUMzJUEydGltZW50cyUyMGludGVsbGlnZW50cy4lNUNuNS4lMjAqKk1hdHRlciUyQyUyMFRocmVhZCUyQyUyMGV0JTIwYXZhbmMlQzMlQTllcyUyMGRlJTIwcyVDMyVBOWN1cml0JUMzJUE5JTIwJTNBKiolMjBEaXNjdXRleiUyMGRlJTIwY2V1eC1jaSUyMGNvbW1lJTIwZGVzJTIwaW5ub3ZhdGlvbnMlMjBjbCVDMyVBOXMlMjBxdWklMjBwaWxvdGVudCUyMGxhJTIwY29ubmVjdGl2aXQlQzMlQTklMkMlMjBsJ2VmZmljYWNpdCVDMyVBOSUyMGV0JTIwbGElMjBzJUMzJUE5Y3VyaXQlQzMlQTklMjBkYW5zJTIwbGVzJTIwYXBwYXJlaWxzJTIwZXQlMjBzeXN0JUMzJUE4bWVzJTIwSW9ULiU1Q242LiUyMCoqUGVyYyVDMyVBOWVzJTIwZGFucyUyMGxhJTIwdGVjaG5vbG9naWUlMjBkZSUyMHJlY2hhcmdlJTIwc2FucyUyMGZpbCUyMCUzQSoqJTIwSW5jbHVleiUyMHRvdXRlJTIwcGVyYyVDMyVBOWUlMjByJUMzJUE5Y2VudGUlMjBvdSUyMCVDMyVBOXR1ZGVzJTJDJTIwY29tbWUlMjBjZWxsZSUyMGRlJTIwbCdVbml2ZXJzaXQlQzMlQTklMjBuYXRpb25hbGUlMjBkJ0luY2hlb24lMkMlMjBwb3VyJTIwanVzdGlmaWVyJTIwbGVzJTIwYXZhbmMlQzMlQTllcyUyMGRhbnMlMjBsYSUyMHJlY2hhcmdlJTIwc2FucyUyMGZpbC4=",highlighted:'Basé sur les informations fournies, voici les points <span class="hljs-keyword">cl</span>és pour <span class="hljs-keyword">pr</span>éparer <span class="hljs-keyword">la</span> conversation avec le &#x27;Dr. Nikola Tesla&#x27; sur les avancées récentes <span class="hljs-keyword">en</span> énergie sans fil :\\n1. **Transmission <span class="hljs-keyword">d</span>&#x27;énergie sans fil (WPT) :** Discutez <span class="hljs-keyword">de</span> <span class="hljs-keyword">la</span> faç<span class="hljs-keyword">on</span> dont le WPT révolutionne le transfert <span class="hljs-keyword">d</span>&#x27;énergie <span class="hljs-keyword">en</span> éliminant le besoin <span class="hljs-keyword">de</span> cordons et <span class="hljs-keyword">en</span> exploitant <span class="hljs-keyword">des</span> <span class="hljs-keyword">m</span>écanismes comme le couplage inductif et résonnant.\\n2. **Avancées dans <span class="hljs-keyword">la</span> recharge sans fil :** Mettez <span class="hljs-keyword">en</span> évidence les améliorations <span class="hljs-keyword">en</span> efficacité, les vitesses <span class="hljs-keyword">de</span> recharge plus rapides, et <span class="hljs-keyword">la</span> monté<span class="hljs-keyword">e</span> <span class="hljs-keyword">des</span> solutions <span class="hljs-keyword">de</span> recharge sans fil certifiées Qi/Qi2.\\n3. **Innovations 5G-Advanced et protocole sans fil NearLink :** Mentionnez-les comme <span class="hljs-keyword">des</span> <span class="hljs-keyword">d</span>éveloppements <span class="hljs-keyword">qui</span> améliorent <span class="hljs-keyword">la</span> vitesse, <span class="hljs-keyword">la</span> sécurité et <span class="hljs-keyword">l</span>&#x27;efficacité dans les réseaux sans fil, <span class="hljs-keyword">qui</span> peuvent soutenir les technologies <span class="hljs-keyword">d</span>&#x27;énergie sans fil avancées.\\n4. **IA et <span class="hljs-keyword">ML</span> à <span class="hljs-keyword">la</span> périphérie :** Parlez <span class="hljs-keyword">de</span> <span class="hljs-keyword">la</span> faç<span class="hljs-keyword">on</span> dont <span class="hljs-keyword">l</span>&#x27;IA et <span class="hljs-keyword">l</span>&#x27;apprentissage automatique s&#x27;appuieront sur les réseaux sans fil pour apporter <span class="hljs-keyword">l</span>&#x27;intelligence à <span class="hljs-keyword">la</span> périphérie, améliorant <span class="hljs-keyword">l</span>&#x27;automatisation et <span class="hljs-keyword">l</span>&#x27;intelligence dans les maisons et bâtiments intelligents.\\n5. **Matter, Thread, et avancées <span class="hljs-keyword">de</span> sécurité :** Discutez <span class="hljs-keyword">de</span> ceux-<span class="hljs-keyword">ci</span> comme <span class="hljs-keyword">des</span> innovations <span class="hljs-keyword">cl</span>és <span class="hljs-keyword">qui</span> pilotent <span class="hljs-keyword">la</span> connectivité, <span class="hljs-keyword">l</span>&#x27;efficacité et <span class="hljs-keyword">la</span> sécurité dans les appareils et systèmes IoT.\\n6. **Percées dans <span class="hljs-keyword">la</span> technologie <span class="hljs-keyword">de</span> recharge sans fil :** Incluez toute percé<span class="hljs-keyword">e</span> récente <span class="hljs-keyword">ou</span> études, comme celle <span class="hljs-keyword">de</span> <span class="hljs-keyword">l</span>&#x27;Université nationale <span class="hljs-keyword">d</span>&#x27;Incheon, pour justifier les avancées dans <span class="hljs-keyword">la</span> recharge sans fil.',wrap:!1}}),{c(){d(e.$$.fragment),M=J(),n=h("p"),n.textContent=i,p=J(),d(t.$$.fragment)},l(l){w(e.$$.fragment,l),M=U(l),n=B(l,"P",{"data-svelte-h":!0}),f(n)!=="svelte-cs180i"&&(n.textContent=i),p=U(l),w(t.$$.fragment,l)},m(l,c){u(e,l,c),r(l,M,c),r(l,n,c),r(l,p,c),u(t,l,c),s=!0},p:$,i(l){s||(m(e.$$.fragment,l),m(t.$$.fragment,l),s=!0)},o(l){j(e.$$.fragment,l),j(t.$$.fragment,l),s=!1},d(l){l&&(o(M),o(n),o(p)),T(e,l),T(t,l)}}}function Ss(b){let e,M,n,i,p,t;return e=new W({props:{id:"agents-frameworks",option:"smolagents",$$slots:{default:[Cs]},$$scope:{ctx:b}}}),n=new W({props:{id:"agents-frameworks",option:"llama-index",$$slots:{default:[xs]},$$scope:{ctx:b}}}),p=new W({props:{id:"agents-frameworks",option:"langgraph",$$slots:{default:[Ys]},$$scope:{ctx:b}}}),{c(){d(e.$$.fragment),M=J(),d(n.$$.fragment),i=J(),d(p.$$.fragment)},l(s){w(e.$$.fragment,s),M=U(s),w(n.$$.fragment,s),i=U(s),w(p.$$.fragment,s)},m(s,l){u(e,s,l),r(s,M,l),u(n,s,l),r(s,i,l),u(p,s,l),t=!0},p(s,l){const c={};l&2&&(c.$$scope={dirty:l,ctx:s}),e.$set(c);const G={};l&2&&(G.$$scope={dirty:l,ctx:s}),n.$set(G);const I={};l&2&&(I.$$scope={dirty:l,ctx:s}),p.$set(I)},i(s){t||(m(e.$$.fragment,s),m(n.$$.fragment,s),m(p.$$.fragment,s),t=!0)},o(s){j(e.$$.fragment,s),j(n.$$.fragment,s),j(p.$$.fragment,s),t=!1},d(s){s&&(o(M),o(i)),T(e,s),T(n,s),T(p,s)}}}function Es(b){let e,M;return e=new Z({props:{code:"JTIzJTIwQ3IlQzMlQTllciUyMEFsZnJlZCUyMGF2ZWMlMjBtJUMzJUE5bW9pcmUlMjBkZSUyMGNvbnZlcnNhdGlvbiUwQWFsZnJlZF93aXRoX21lbW9yeSUyMCUzRCUyMENvZGVBZ2VudCglMEElMjAlMjAlMjAlMjB0b29scyUzRCU1Qmd1ZXN0X2luZm9fdG9vbCUyQyUyMHdlYXRoZXJfaW5mb190b29sJTJDJTIwaHViX3N0YXRzX3Rvb2wlMkMlMjBzZWFyY2hfdG9vbCU1RCUyQyUyMCUwQSUyMCUyMCUyMCUyMG1vZGVsJTNEbW9kZWwlMkMlMEElMjAlMjAlMjAlMjBhZGRfYmFzZV90b29scyUzRFRydWUlMkMlMEElMjAlMjAlMjAlMjBwbGFubmluZ19pbnRlcnZhbCUzRDMlMEEpJTBBJTBBJTIzJTIwUHJlbWklQzMlQThyZSUyMGludGVyYWN0aW9uJTBBcmVzcG9uc2UxJTIwJTNEJTIwYWxmcmVkX3dpdGhfbWVtb3J5LnJ1biglMjJQYXJsZXotbW9pJTIwZGUlMjBMYWR5JTIwQWRhJTIwTG92ZWxhY2UuJTIyKSUwQXByaW50KCUyMiVGMCU5RiU4RSVBOSUyMFByZW1pJUMzJUE4cmUlMjByJUMzJUE5cG9uc2UlMjBkJ0FsZnJlZCUyMCUzQSUyMiklMEFwcmludChyZXNwb25zZTEpJTBBJTBBJTIzJTIwRGV1eGklQzMlQThtZSUyMGludGVyYWN0aW9uJTIwKGZhaXNhbnQlMjByJUMzJUE5ZiVDMyVBOXJlbmNlJTIwJUMzJUEwJTIwbGElMjBwcmVtaSVDMyVBOHJlKSUwQXJlc3BvbnNlMiUyMCUzRCUyMGFsZnJlZF93aXRoX21lbW9yeS5ydW4oJTIyU3VyJTIwcXVlbHMlMjBwcm9qZXRzJTIwdHJhdmFpbGxlLXQtZWxsZSUyMGFjdHVlbGxlbWVudCUyMCUzRiUyMiUyQyUyMHJlc2V0JTNERmFsc2UpJTBBcHJpbnQoJTIyJUYwJTlGJThFJUE5JTIwRGV1eGklQzMlQThtZSUyMHIlQzMlQTlwb25zZSUyMGQnQWxmcmVkJTIwJTNBJTIyKSUwQXByaW50KHJlc3BvbnNlMik=",highlighted:`<span class="hljs-comment"># Créer Alfred avec mémoire de conversation</span>
alfred_with_memory = CodeAgent(
    tools=[guest_info_tool, weather_info_tool, hub_stats_tool, search_tool], 
    model=model,
    add_base_tools=<span class="hljs-literal">True</span>,
    planning_interval=<span class="hljs-number">3</span>
)

<span class="hljs-comment"># Première interaction</span>
response1 = alfred_with_memory.run(<span class="hljs-string">&quot;Parlez-moi de Lady Ada Lovelace.&quot;</span>)
<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Première réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response1)

<span class="hljs-comment"># Deuxième interaction (faisant référence à la première)</span>
response2 = alfred_with_memory.run(<span class="hljs-string">&quot;Sur quels projets travaille-t-elle actuellement ?&quot;</span>, reset=<span class="hljs-literal">False</span>)
<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Deuxième réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response2)`,wrap:!1}}),{c(){d(e.$$.fragment)},l(n){w(e.$$.fragment,n)},m(n,i){u(e,n,i),M=!0},p:$,i(n){M||(m(e.$$.fragment,n),M=!0)},o(n){j(e.$$.fragment,n),M=!1},d(n){T(e,n)}}}function Rs(b){let e,M;return e=new Z({props:{code:"ZnJvbSUyMGxsYW1hX2luZGV4LmNvcmUud29ya2Zsb3clMjBpbXBvcnQlMjBDb250ZXh0JTBBJTBBYWxmcmVkJTIwJTNEJTIwQWdlbnRXb3JrZmxvdy5mcm9tX3Rvb2xzX29yX2Z1bmN0aW9ucyglMEElMjAlMjAlMjAlMjAlNUJndWVzdF9pbmZvX3Rvb2wlMkMlMjBzZWFyY2hfdG9vbCUyQyUyMHdlYXRoZXJfaW5mb190b29sJTJDJTIwaHViX3N0YXRzX3Rvb2wlNUQlMkMlMEElMjAlMjAlMjAlMjBsbG0lM0RsbG0lMEEpJTBBJTBBJTIzJTIwTSVDMyVBOW1vcmlzZXIlMjBsJyVDMyVBOXRhdCUwQWN0eCUyMCUzRCUyMENvbnRleHQoYWxmcmVkKSUwQSUwQSUyMyUyMFByZW1pJUMzJUE4cmUlMjBpbnRlcmFjdGlvbiUwQXJlc3BvbnNlMSUyMCUzRCUyMGF3YWl0JTIwYWxmcmVkLnJ1biglMjJQYXJsZXotbW9pJTIwZGUlMjBMYWR5JTIwQWRhJTIwTG92ZWxhY2UuJTIyJTJDJTIwY3R4JTNEY3R4KSUwQXByaW50KCUyMiVGMCU5RiU4RSVBOSUyMFByZW1pJUMzJUE4cmUlMjByJUMzJUE5cG9uc2UlMjBkJ0FsZnJlZCUyMCUzQSUyMiklMEFwcmludChyZXNwb25zZTEpJTBBJTBBJTIzJTIwRGV1eGklQzMlQThtZSUyMGludGVyYWN0aW9uJTIwKGZhaXNhbnQlMjByJUMzJUE5ZiVDMyVBOXJlbmNlJTIwJUMzJUEwJTIwbGElMjBwcmVtaSVDMyVBOHJlKSUwQXJlc3BvbnNlMiUyMCUzRCUyMGF3YWl0JTIwYWxmcmVkLnJ1biglMjJTdXIlMjBxdWVscyUyMHByb2pldHMlMjB0cmF2YWlsbGUtdC1lbGxlJTIwYWN0dWVsbGVtZW50JTIwJTNGJTIyJTJDJTIwY3R4JTNEY3R4KSUwQXByaW50KCUyMiVGMCU5RiU4RSVBOSUyMERldXhpJUMzJUE4bWUlMjByJUMzJUE5cG9uc2UlMjBkJ0FsZnJlZCUyMCUzQSUyMiklMEFwcmludChyZXNwb25zZTIp",highlighted:`<span class="hljs-keyword">from</span> llama_index.core.workflow <span class="hljs-keyword">import</span> Context

alfred = AgentWorkflow.from_tools_or_functions(
    [guest_info_tool, search_tool, weather_info_tool, hub_stats_tool],
    llm=llm
)

<span class="hljs-comment"># Mémoriser l&#x27;état</span>
ctx = Context(alfred)

<span class="hljs-comment"># Première interaction</span>
response1 = <span class="hljs-keyword">await</span> alfred.run(<span class="hljs-string">&quot;Parlez-moi de Lady Ada Lovelace.&quot;</span>, ctx=ctx)
<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Première réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response1)

<span class="hljs-comment"># Deuxième interaction (faisant référence à la première)</span>
response2 = <span class="hljs-keyword">await</span> alfred.run(<span class="hljs-string">&quot;Sur quels projets travaille-t-elle actuellement ?&quot;</span>, ctx=ctx)
<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Deuxième réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response2)`,wrap:!1}}),{c(){d(e.$$.fragment)},l(n){w(e.$$.fragment,n)},m(n,i){u(e,n,i),M=!0},p:$,i(n){M||(m(e.$$.fragment,n),M=!0)},o(n){j(e.$$.fragment,n),M=!1},d(n){T(e,n)}}}function Ns(b){let e,M;return e=new Z({props:{code:"JTIzJTIwUHJlbWklQzMlQThyZSUyMGludGVyYWN0aW9uJTBBcmVzcG9uc2UlMjAlM0QlMjBhbGZyZWQuaW52b2tlKCU3QiUyMm1lc3NhZ2VzJTIyJTNBJTIwJTVCSHVtYW5NZXNzYWdlKGNvbnRlbnQlM0QlMjJQYXJsZXotbW9pJTIwZGUlMjAnTGFkeSUyMEFkYSUyMExvdmVsYWNlJy4lMjBRdWVsJTIwZXN0JTIwc29uJTIwYXJyaSVDMyVBOHJlLXBsYW4lMjBldCUyMGNvbW1lbnQlMjBlc3QtZWxsZSUyMGxpJUMzJUE5ZSUyMCVDMyVBMCUyMG1vaSUyMCUzRiUyMiklNUQlN0QpJTBBJTBBJTBBcHJpbnQoJTIyJUYwJTlGJThFJUE5JTIwUiVDMyVBOXBvbnNlJTIwZCdBbGZyZWQlMjAlM0ElMjIpJTBBcHJpbnQocmVzcG9uc2UlNUInbWVzc2FnZXMnJTVEJTVCLTElNUQuY29udGVudCklMEFwcmludCgpJTBBJTBBJTIzJTIwRGV1eGklQzMlQThtZSUyMGludGVyYWN0aW9uJTIwKGZhaXNhbnQlMjByJUMzJUE5ZiVDMyVBOXJlbmNlJTIwJUMzJUEwJTIwbGElMjBwcmVtaSVDMyVBOHJlKSUwQXJlc3BvbnNlJTIwJTNEJTIwYWxmcmVkLmludm9rZSglN0IlMjJtZXNzYWdlcyUyMiUzQSUyMHJlc3BvbnNlJTVCJTIybWVzc2FnZXMlMjIlNUQlMjAlMkIlMjAlNUJIdW1hbk1lc3NhZ2UoY29udGVudCUzRCUyMlN1ciUyMHF1ZWxzJTIwcHJvamV0cyUyMHRyYXZhaWxsZS10LWVsbGUlMjBhY3R1ZWxsZW1lbnQlMjAlM0YlMjIpJTVEJTdEKSUwQSUwQXByaW50KCUyMiVGMCU5RiU4RSVBOSUyMFIlQzMlQTlwb25zZSUyMGQnQWxmcmVkJTIwJTNBJTIyKSUwQXByaW50KHJlc3BvbnNlJTVCJ21lc3NhZ2VzJyU1RCU1Qi0xJTVELmNvbnRlbnQp",highlighted:`<span class="hljs-comment"># Première interaction</span>
response = alfred.invoke({<span class="hljs-string">&quot;messages&quot;</span>: [HumanMessage(content=<span class="hljs-string">&quot;Parlez-moi de &#x27;Lady Ada Lovelace&#x27;. Quel est son arrière-plan et comment est-elle liée à moi ?&quot;</span>)]})


<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response[<span class="hljs-string">&#x27;messages&#x27;</span>][-<span class="hljs-number">1</span>].content)
<span class="hljs-built_in">print</span>()

<span class="hljs-comment"># Deuxième interaction (faisant référence à la première)</span>
response = alfred.invoke({<span class="hljs-string">&quot;messages&quot;</span>: response[<span class="hljs-string">&quot;messages&quot;</span>] + [HumanMessage(content=<span class="hljs-string">&quot;Sur quels projets travaille-t-elle actuellement ?&quot;</span>)]})

<span class="hljs-built_in">print</span>(<span class="hljs-string">&quot;🎩 Réponse d&#x27;Alfred :&quot;</span>)
<span class="hljs-built_in">print</span>(response[<span class="hljs-string">&#x27;messages&#x27;</span>][-<span class="hljs-number">1</span>].content)`,wrap:!1}}),{c(){d(e.$$.fragment)},l(n){w(e.$$.fragment,n)},m(n,i){u(e,n,i),M=!0},p:$,i(n){M||(m(e.$$.fragment,n),M=!0)},o(n){j(e.$$.fragment,n),M=!1},d(n){T(e,n)}}}function Fs(b){let e,M,n,i,p,t;return e=new W({props:{id:"agents-frameworks",option:"smolagents",$$slots:{default:[Es]},$$scope:{ctx:b}}}),n=new W({props:{id:"agents-frameworks",option:"llama-index",$$slots:{default:[Rs]},$$scope:{ctx:b}}}),p=new W({props:{id:"agents-frameworks",option:"langgraph",$$slots:{default:[Ns]},$$scope:{ctx:b}}}),{c(){d(e.$$.fragment),M=J(),d(n.$$.fragment),i=J(),d(p.$$.fragment)},l(s){w(e.$$.fragment,s),M=U(s),w(n.$$.fragment,s),i=U(s),w(p.$$.fragment,s)},m(s,l){u(e,s,l),r(s,M,l),u(n,s,l),r(s,i,l),u(p,s,l),t=!0},p(s,l){const c={};l&2&&(c.$$scope={dirty:l,ctx:s}),e.$set(c);const G={};l&2&&(G.$$scope={dirty:l,ctx:s}),n.$set(G);const I={};l&2&&(I.$$scope={dirty:l,ctx:s}),p.$set(I)},i(s){t||(m(e.$$.fragment,s),m(n.$$.fragment,s),m(p.$$.fragment,s),t=!0)},o(s){j(e.$$.fragment,s),j(n.$$.fragment,s),j(p.$$.fragment,s),t=!1},d(s){s&&(o(M),o(i)),T(e,s),T(n,s),T(p,s)}}}function Hs(b){let e,M,n,i,p,t,s,l="Maintenant que nous avons construit tous les composants nécessaires pour Alfred, il est temps de tout rassembler en un agent complet qui peut aider à organiser notre gala extravagant.",c,G,I="Dans cette section, nous allons combiner les outils de récupération d’informations sur les invités, de recherche web, d’informations météorologiques et de statistiques <em>Hub</em> en un seul agent puissant.",E,z,V,k,Fl="Au lieu de réimplémenter tous les outils que nous avons créés dans les sections précédentes, nous les importerons à partir de leurs modules respectifs que nous avons sauvegardés dans les fichiers <code>tools.py</code> et <code>retriever.py</code>.",Jl,X,Ul,R,Hl="Importons les bibliothèques nécessaires et les outils des sections précédentes :",dl,v,wl,N,_l="Votre agent est maintenant prêt à être utilisé !",ul,F,ml,H,Al="Maintenant qu’Alfred est entièrement équipé de tous les outils nécessaires, voyons comment il peut aider avec diverses tâches pendant le gala.",jl,_,Tl,A,ql="Voyons comment Alfred peut nous aider avec nos informations sur les invités.",bl,g,hl,q,Bl,D,Dl="Voyons comment Alfred peut nous aider avec la météo.",fl,C,Zl,O,Gl,L,Ol="Voyons comment Alfred peut nous aider à impressionner les chercheurs en IA.",Il,x,Vl,K,$l,P,Ll="Voyons comment Alfred peut nous aider à préparer une conversation avec le Dr. Nikola Tesla.",Wl,Y,kl,ll,zl,sl,Kl="Pour rendre Alfred encore plus utile pendant le gala, nous pouvons activer la mémoire de conversation pour qu’il se souvienne des interactions précédentes :",Ql,S,Xl,el,Pl="Remarquez qu’aucune de ces trois approches d’agent ne couple directement la mémoire avec l’agent. Y a-t-il une raison spécifique pour ce choix de conception 🧐 ?",vl,nl,ls='<li>smolagents : La mémoire n’est pas préservée entre différentes exécutions, vous devez explicitement le déclarer en utilisant <code>reset=False</code>.</li> <li>LlamaIndex : Nécessite d’ajouter explicitement un objet de contexte pour la gestion de la mémoire au sein d’une exécution.</li> <li>LangGraph : Offre des options pour récupérer les messages précédents ou utiliser un composant <a href="https://langchain-ai.github.io/langgraph/tutorials/introduction/#part-3-adding-memory-to-the-chatbot" rel="nofollow">MemorySaver</a> dédié.</li>',gl,al,Cl,tl,ss="Félicitations ! Vous avez réussi à construire Alfred, un agent sophistiqué équipé de plusieurs outils pour aider à organiser le gala le plus extravagant du siècle. Alfred peut maintenant :",xl,pl,es="<li>Récupérer des informations détaillées sur les invités</li> <li>Vérifier les conditions météorologiques pour planifier les activités en plein air</li> <li>Fournir des insights sur les constructeurs d’IA influents et leurs modèles</li> <li>Rechercher sur le web les dernières informations</li> <li>Maintenir le contexte de conversation avec la mémoire</li>",Yl,Ml,ns="Avec ces capacités, Alfred est prêt à s’assurer que votre gala soit un succès retentissant, impressionnant les invités avec une attention personnalisée et des informations à jour.",Sl,ol,El,cl,Rl;return p=new Q({props:{title:"Création de votre agent de gala",local:"création-de-votre-agent-de-gala",headingTag:"h1"}}),z=new Q({props:{title:"Assemblage d’Alfred : L’agent complet",local:"assemblage-dalfred--lagent-complet",headingTag:"h2"}}),X=new ms({props:{$$slots:{default:[Ts]},$$scope:{ctx:b}}}),v=new rl({props:{id:"agents-frameworks",options:["smolagents","llama-index","langgraph"],$$slots:{default:[fs]},$$scope:{ctx:b}}}),F=new Q({props:{title:"Utilisation d’Alfred : Exemples de bout en bout",local:"utilisation-dalfred--exemples-de-bout-en-bout",headingTag:"h2"}}),_=new Q({props:{title:"Exemple 1 : Trouver des informations sur les invités",local:"exemple-1--trouver-des-informations-sur-les-invités",headingTag:"h3"}}),g=new rl({props:{id:"agents-frameworks",options:["smolagents","llama-index","langgraph"],$$slots:{default:[Vs]},$$scope:{ctx:b}}}),q=new Q({props:{title:"Exemple 2 : Vérifier la météo pour les feux d’artifice",local:"exemple-2--vérifier-la-météo-pour-les-feux-dartifice",headingTag:"h3"}}),C=new rl({props:{id:"agents-frameworks",options:["smolagents","llama-index","langgraph"],$$slots:{default:[zs]},$$scope:{ctx:b}}}),O=new Q({props:{title:"Exemple 3 : Impressionner les chercheurs en IA",local:"exemple-3--impressionner-les-chercheurs-en-ia",headingTag:"h3"}}),x=new rl({props:{id:"agents-frameworks",options:["smolagents","llama-index","langgraph"],$$slots:{default:[gs]},$$scope:{ctx:b}}}),K=new Q({props:{title:"Exemple 4 : Combiner plusieurs outils",local:"exemple-4--combiner-plusieurs-outils",headingTag:"h3"}}),Y=new rl({props:{id:"agents-frameworks",options:["smolagents","llama-index","langgraph"],$$slots:{default:[Ss]},$$scope:{ctx:b}}}),ll=new Q({props:{title:"Fonctionnalités avancées : Mémoire de conversation",local:"fonctionnalités-avancées--mémoire-de-conversation",headingTag:"h2"}}),S=new rl({props:{id:"agents-frameworks",options:["smolagents","llama-index","langgraph"],$$slots:{default:[Fs]},$$scope:{ctx:b}}}),al=new Q({props:{title:"Conclusion",local:"conclusion",headingTag:"h2"}}),ol=new js({props:{source:"https://github.com/huggingface/agents-course/blob/main/units/fr/unit3/agentic-rag/agent.mdx"}}),{c(){e=h("meta"),M=J(),n=h("p"),i=J(),d(p.$$.fragment),t=J(),s=h("p"),s.textContent=l,c=J(),G=h("p"),G.innerHTML=I,E=J(),d(z.$$.fragment),V=J(),k=h("p"),k.innerHTML=Fl,Jl=J(),d(X.$$.fragment),Ul=J(),R=h("p"),R.textContent=Hl,dl=J(),d(v.$$.fragment),wl=J(),N=h("p"),N.textContent=_l,ul=J(),d(F.$$.fragment),ml=J(),H=h("p"),H.textContent=Al,jl=J(),d(_.$$.fragment),Tl=J(),A=h("p"),A.textContent=ql,bl=J(),d(g.$$.fragment),hl=J(),d(q.$$.fragment),Bl=J(),D=h("p"),D.textContent=Dl,fl=J(),d(C.$$.fragment),Zl=J(),d(O.$$.fragment),Gl=J(),L=h("p"),L.textContent=Ol,Il=J(),d(x.$$.fragment),Vl=J(),d(K.$$.fragment),$l=J(),P=h("p"),P.textContent=Ll,Wl=J(),d(Y.$$.fragment),kl=J(),d(ll.$$.fragment),zl=J(),sl=h("p"),sl.textContent=Kl,Ql=J(),d(S.$$.fragment),Xl=J(),el=h("p"),el.textContent=Pl,vl=J(),nl=h("ul"),nl.innerHTML=ls,gl=J(),d(al.$$.fragment),Cl=J(),tl=h("p"),tl.textContent=ss,xl=J(),pl=h("ol"),pl.innerHTML=es,Yl=J(),Ml=h("p"),Ml.textContent=ns,Sl=J(),d(ol.$$.fragment),El=J(),cl=h("p"),this.h()},l(a){const y=ws("svelte-u9bgzb",document.head);e=B(y,"META",{name:!0,content:!0}),y.forEach(o),M=U(a),n=B(a,"P",{}),is(n).forEach(o),i=U(a),w(p.$$.fragment,a),t=U(a),s=B(a,"P",{"data-svelte-h":!0}),f(s)!=="svelte-itvb8"&&(s.textContent=l),c=U(a),G=B(a,"P",{"data-svelte-h":!0}),f(G)!=="svelte-zlga43"&&(G.innerHTML=I),E=U(a),w(z.$$.fragment,a),V=U(a),k=B(a,"P",{"data-svelte-h":!0}),f(k)!=="svelte-2onp7t"&&(k.innerHTML=Fl),Jl=U(a),w(X.$$.fragment,a),Ul=U(a),R=B(a,"P",{"data-svelte-h":!0}),f(R)!=="svelte-dj3ez4"&&(R.textContent=Hl),dl=U(a),w(v.$$.fragment,a),wl=U(a),N=B(a,"P",{"data-svelte-h":!0}),f(N)!=="svelte-a68ksv"&&(N.textContent=_l),ul=U(a),w(F.$$.fragment,a),ml=U(a),H=B(a,"P",{"data-svelte-h":!0}),f(H)!=="svelte-1bnf2yp"&&(H.textContent=Al),jl=U(a),w(_.$$.fragment,a),Tl=U(a),A=B(a,"P",{"data-svelte-h":!0}),f(A)!=="svelte-c6azff"&&(A.textContent=ql),bl=U(a),w(g.$$.fragment,a),hl=U(a),w(q.$$.fragment,a),Bl=U(a),D=B(a,"P",{"data-svelte-h":!0}),f(D)!=="svelte-1pbmn7h"&&(D.textContent=Dl),fl=U(a),w(C.$$.fragment,a),Zl=U(a),w(O.$$.fragment,a),Gl=U(a),L=B(a,"P",{"data-svelte-h":!0}),f(L)!=="svelte-1btu474"&&(L.textContent=Ol),Il=U(a),w(x.$$.fragment,a),Vl=U(a),w(K.$$.fragment,a),$l=U(a),P=B(a,"P",{"data-svelte-h":!0}),f(P)!=="svelte-1wwfvwu"&&(P.textContent=Ll),Wl=U(a),w(Y.$$.fragment,a),kl=U(a),w(ll.$$.fragment,a),zl=U(a),sl=B(a,"P",{"data-svelte-h":!0}),f(sl)!=="svelte-16uni9s"&&(sl.textContent=Kl),Ql=U(a),w(S.$$.fragment,a),Xl=U(a),el=B(a,"P",{"data-svelte-h":!0}),f(el)!=="svelte-1ewcco9"&&(el.textContent=Pl),vl=U(a),nl=B(a,"UL",{"data-svelte-h":!0}),f(nl)!=="svelte-b7nb"&&(nl.innerHTML=ls),gl=U(a),w(al.$$.fragment,a),Cl=U(a),tl=B(a,"P",{"data-svelte-h":!0}),f(tl)!=="svelte-b7c1ky"&&(tl.textContent=ss),xl=U(a),pl=B(a,"OL",{"data-svelte-h":!0}),f(pl)!=="svelte-bkwzgq"&&(pl.innerHTML=es),Yl=U(a),Ml=B(a,"P",{"data-svelte-h":!0}),f(Ml)!=="svelte-9c2qz0"&&(Ml.textContent=ns),Sl=U(a),w(ol.$$.fragment,a),El=U(a),cl=B(a,"P",{}),is(cl).forEach(o),this.h()},h(){Nl(e,"name","hf:doc:metadata"),Nl(e,"content",_s)},m(a,y){us(document.head,e),r(a,M,y),r(a,n,y),r(a,i,y),u(p,a,y),r(a,t,y),r(a,s,y),r(a,c,y),r(a,G,y),r(a,E,y),u(z,a,y),r(a,V,y),r(a,k,y),r(a,Jl,y),u(X,a,y),r(a,Ul,y),r(a,R,y),r(a,dl,y),u(v,a,y),r(a,wl,y),r(a,N,y),r(a,ul,y),u(F,a,y),r(a,ml,y),r(a,H,y),r(a,jl,y),u(_,a,y),r(a,Tl,y),r(a,A,y),r(a,bl,y),u(g,a,y),r(a,hl,y),u(q,a,y),r(a,Bl,y),r(a,D,y),r(a,fl,y),u(C,a,y),r(a,Zl,y),u(O,a,y),r(a,Gl,y),r(a,L,y),r(a,Il,y),u(x,a,y),r(a,Vl,y),u(K,a,y),r(a,$l,y),r(a,P,y),r(a,Wl,y),u(Y,a,y),r(a,kl,y),u(ll,a,y),r(a,zl,y),r(a,sl,y),r(a,Ql,y),u(S,a,y),r(a,Xl,y),r(a,el,y),r(a,vl,y),r(a,nl,y),r(a,gl,y),u(al,a,y),r(a,Cl,y),r(a,tl,y),r(a,xl,y),r(a,pl,y),r(a,Yl,y),r(a,Ml,y),r(a,Sl,y),u(ol,a,y),r(a,El,y),r(a,cl,y),Rl=!0},p(a,[y]){const as={};y&2&&(as.$$scope={dirty:y,ctx:a}),X.$set(as);const ts={};y&2&&(ts.$$scope={dirty:y,ctx:a}),v.$set(ts);const ps={};y&2&&(ps.$$scope={dirty:y,ctx:a}),g.$set(ps);const Ms={};y&2&&(Ms.$$scope={dirty:y,ctx:a}),C.$set(Ms);const os={};y&2&&(os.$$scope={dirty:y,ctx:a}),x.$set(os);const rs={};y&2&&(rs.$$scope={dirty:y,ctx:a}),Y.$set(rs);const cs={};y&2&&(cs.$$scope={dirty:y,ctx:a}),S.$set(cs)},i(a){Rl||(m(p.$$.fragment,a),m(z.$$.fragment,a),m(X.$$.fragment,a),m(v.$$.fragment,a),m(F.$$.fragment,a),m(_.$$.fragment,a),m(g.$$.fragment,a),m(q.$$.fragment,a),m(C.$$.fragment,a),m(O.$$.fragment,a),m(x.$$.fragment,a),m(K.$$.fragment,a),m(Y.$$.fragment,a),m(ll.$$.fragment,a),m(S.$$.fragment,a),m(al.$$.fragment,a),m(ol.$$.fragment,a),Rl=!0)},o(a){j(p.$$.fragment,a),j(z.$$.fragment,a),j(X.$$.fragment,a),j(v.$$.fragment,a),j(F.$$.fragment,a),j(_.$$.fragment,a),j(g.$$.fragment,a),j(q.$$.fragment,a),j(C.$$.fragment,a),j(O.$$.fragment,a),j(x.$$.fragment,a),j(K.$$.fragment,a),j(Y.$$.fragment,a),j(ll.$$.fragment,a),j(S.$$.fragment,a),j(al.$$.fragment,a),j(ol.$$.fragment,a),Rl=!1},d(a){a&&(o(M),o(n),o(i),o(t),o(s),o(c),o(G),o(E),o(V),o(k),o(Jl),o(Ul),o(R),o(dl),o(wl),o(N),o(ul),o(ml),o(H),o(jl),o(Tl),o(A),o(bl),o(hl),o(Bl),o(D),o(fl),o(Zl),o(Gl),o(L),o(Il),o(Vl),o($l),o(P),o(Wl),o(kl),o(zl),o(sl),o(Ql),o(Xl),o(el),o(vl),o(nl),o(gl),o(Cl),o(tl),o(xl),o(pl),o(Yl),o(Ml),o(Sl),o(El),o(cl)),o(e),T(p,a),T(z,a),T(X,a),T(v,a),T(F,a),T(_,a),T(g,a),T(q,a),T(C,a),T(O,a),T(x,a),T(K,a),T(Y,a),T(ll,a),T(S,a),T(al,a),T(ol,a)}}}const _s='{"title":"Création de votre agent de gala","local":"création-de-votre-agent-de-gala","sections":[{"title":"Assemblage d’Alfred : L’agent complet","local":"assemblage-dalfred--lagent-complet","sections":[],"depth":2},{"title":"Utilisation d’Alfred : Exemples de bout en bout","local":"utilisation-dalfred--exemples-de-bout-en-bout","sections":[{"title":"Exemple 1 : Trouver des informations sur les invités","local":"exemple-1--trouver-des-informations-sur-les-invités","sections":[],"depth":3},{"title":"Exemple 2 : Vérifier la météo pour les feux d’artifice","local":"exemple-2--vérifier-la-météo-pour-les-feux-dartifice","sections":[],"depth":3},{"title":"Exemple 3 : Impressionner les chercheurs en IA","local":"exemple-3--impressionner-les-chercheurs-en-ia","sections":[],"depth":3},{"title":"Exemple 4 : Combiner plusieurs outils","local":"exemple-4--combiner-plusieurs-outils","sections":[],"depth":3}],"depth":2},{"title":"Fonctionnalités avancées : Mémoire de conversation","local":"fonctionnalités-avancées--mémoire-de-conversation","sections":[],"depth":2},{"title":"Conclusion","local":"conclusion","sections":[],"depth":2}],"depth":1}';function As(b){return Js(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class se extends Us{constructor(e){super(),ds(this,e,As,Hs,ys,{})}}export{se as component};
