import{s as ge,f as Ae,o as He,n as Ze}from"../chunks/scheduler.889ebb13.js";import{S as Be,i as Se,g as i,s,r as U,A as Le,h as p,f as l,c as a,j as Ie,u as j,x as u,k as st,y as Pe,a as n,v as T,d,t as v,w as x,m as Ee,n as Ge}from"../chunks/index.ca18042b.js";import{T as ke}from"../chunks/Tip.b8116e3c.js";import{C as be}from"../chunks/CodeBlock.1db71023.js";import{H as Yt,E as Ne}from"../chunks/EditOnGithub.b0b59db6.js";function qe(it){let r,M,f="我们将介绍动作 (actions) 如何被表示（使用 JSON 或代码），停止和解析方法 (stop and parse approach) 的重要性，以及不同类型的智能体。";return{c(){r=Ee(`在本节中，我们将探讨 AI 智能体 (AI agent) 与其环境交互的具体步骤。
`),M=i("p"),M.textContent=f},l(o){r=Ge(o,`在本节中，我们将探讨 AI 智能体 (AI agent) 与其环境交互的具体步骤。
`),M=p(o,"P",{"data-svelte-h":!0}),u(M)!=="svelte-16cuvii"&&(M.textContent=f)},m(o,m){n(o,r,m),n(o,M,m)},p:Ze,d(o){o&&(l(r),l(M))}}}function Fe(it){let r,M,f,o,m,pt,C,ut,w,zt="动作是<strong>AI 智能体 (AI agent) 与其环境交互的具体步骤</strong>。",rt,c,Ot="无论是浏览网络获取信息还是控制物理设备，每个动作都是智能体执行的一个特定操作。",Mt,$,Kt="例如，一个协助客户服务的智能体可能会检索客户数据、提供支持文章或将问题转交给人工代表。",ot,J,mt,_,Dt="有多种类型的智能体采用不同的方式执行动作：",ft,I,te="<thead><tr><th>智能体类型</th> <th>描述</th></tr></thead> <tbody><tr><td>JSON 智能体 (JSON Agent)</td> <td>要执行的动作以 JSON 格式指定。</td></tr> <tr><td>代码智能体 (Code Agent)</td> <td>智能体编写代码块，由外部解释执行。</td></tr> <tr><td>函数调用智能体 (Function-calling Agent)</td> <td>这是 JSON 智能体的一个子类别，经过微调以为每个动作生成新消息。</td></tr></tbody>",Ct,b,ee="动作本身可以服务于多种目的：",yt,g,le="<thead><tr><th>动作类型</th> <th>描述</th></tr></thead> <tbody><tr><td>信息收集 (Information Gathering)</td> <td>执行网络搜索、查询数据库或检索文档。</td></tr> <tr><td>工具使用 (Tool Usage)</td> <td>进行 API 调用、运行计算和执行代码。</td></tr> <tr><td>环境交互 (Environment Interaction)</td> <td>操作数字界面或控制物理设备。</td></tr> <tr><td>通信 (Communication)</td> <td>通过聊天与用户互动或与其他智能体协作。</td></tr></tbody>",ht,A,ne="智能体的一个关键部分是<strong>在动作完成时能够停止生成新的标记 (tokens)</strong>，这对所有格式的智能体都适用：JSON、代码或函数调用。这可以防止意外输出并确保智能体的响应清晰准确。",Ut,H,se="大语言模型 (LLM) 只处理文本，并使用它来描述它想要采取的动作以及要提供给工具的参数。",jt,Z,Tt,B,ae="实现动作的一个关键方法是<strong>停止和解析方法</strong>。这种方法确保智能体的输出具有结构性和可预测性：",dt,S,ie="<li><strong>以结构化格式生成 (Generation in a Structured Format)</strong>：</li>",vt,L,pe="智能体以清晰、预定义的格式（JSON或代码）输出其预期动作。",xt,y,ue="<li><strong>停止进一步生成 (Halting Further Generation)</strong>：</li>",wt,P,re="一旦动作完成，<strong>智能体停止生成额外的标记</strong>。这可以防止额外或错误的输出。",ct,h,Me="<li><strong>解析输出 (Parsing the Output)</strong>：</li>",$t,E,oe="外部解析器读取格式化的动作，确定要调用哪个工具，并提取所需的参数。",Jt,G,me="例如，需要检查天气的智能体可能输出：",_t,k,It,N,fe="然后框架可以轻松解析要调用的函数名称和要应用的参数。",bt,q,Ce="这种清晰的、机器可读的格式最大限度地减少了错误，并使外部工具能够准确处理智能体的命令。",gt,F,ye=`注意：函数调用智能体的操作方式类似，通过构造每个动作，使指定的函数能够使用正确的参数被调用。
我们将在未来的单元中深入探讨这些类型的智能体。`,At,V,Ht,W,he=`另一种方法是使用<em>代码智能体</em>。
这个想法是：<strong>代码智能体不是输出简单的 JSON 对象</strong>，而是生成一个<strong>可执行的代码块——通常使用 Python 等高级语言</strong>。`,Zt,R,Ue,Bt,X,je="这种方法提供了几个优势：",St,Q,Te="<li><strong>表达能力 (Expressiveness)：</strong> 代码可以自然地表示复杂的逻辑，包括循环、条件和嵌套函数，提供比 JSON 更大的灵活性。</li> <li><strong>模块化和可重用性 (Modularity and Reusability)：</strong> 生成的代码可以包含在不同动作或任务中可重用的函数和模块。</li> <li><strong>增强的可调试性 (Enhanced Debuggability)：</strong> 使用明确定义的编程语法，代码错误通常更容易检测和纠正。</li> <li><strong>直接集成 (Direct Integration)：</strong> 代码智能体可以直接与外部库和 API 集成，实现更复杂的操作，如数据处理或实时决策。</li>",Lt,Y,de="例如，一个负责获取天气的代码智能体可能生成以下 Python 代码片段：",Pt,z,Et,O,ve="在这个例子中，代码智能体：",Gt,K,xe="<li><strong>通过API调用</strong>获取天气数据，</li> <li>处理响应，</li> <li>并使用print()函数输出最终答案。</li>",kt,D,we="这种方法<strong>也遵循停止和解析方法</strong>，通过明确划定代码块并表明执行完成的时间（在这里，通过打印 final_answer）。",Nt,qt,Ft,tt,ce="我们了解到动作通过执行清晰、结构化的任务（无论是通过 JSON、代码还是函数调用）来连接智能体的内部推理和其现实世界的交互。",Vt,et,$e="这种深思熟虑的执行确保每个动作都是精确的，并通过停止和解析方法准备好进行外部处理。在下一节中，我们将探索观察 (Observations)，看看智能体如何捕获和整合来自其环境的反馈。",Wt,lt,Je="在此之后，我们将<strong>最终准备好构建我们的第一个智能体！</strong>",Rt,nt,Xt,at,Qt;return m=new Yt({props:{title:"动作：使智能体能够与环境交互",local:"动作使智能体能够与环境交互",headingTag:"h1"}}),C=new ke({props:{$$slots:{default:[qe]},$$scope:{ctx:it}}}),J=new Yt({props:{title:"智能体动作的类型 (Types of Agent Actions)",local:"智能体动作的类型-types-of-agent-actions",headingTag:"h2"}}),Z=new Yt({props:{title:"停止和解析方法 (The Stop and Parse Approach)",local:"停止和解析方法-the-stop-and-parse-approach",headingTag:"h2"}}),k=new be({props:{code:"VGhvdWdodCUzQSUyMEklMjBuZWVkJTIwdG8lMjBjaGVjayUyMHRoZSUyMGN1cnJlbnQlMjB3ZWF0aGVyJTIwZm9yJTIwTmV3JTIwWW9yay4lMEFBY3Rpb24lMjAlM0ElMEElN0IlMEElMjAlMjAlMjJhY3Rpb24lMjIlM0ElMjAlMjJnZXRfd2VhdGhlciUyMiUyQyUwQSUyMCUyMCUyMmFjdGlvbl9pbnB1dCUyMiUzQSUyMCU3QiUyMmxvY2F0aW9uJTIyJTNBJTIwJTIyTmV3JTIwWW9yayUyMiU3RCUwQSU3RA==",highlighted:`Thought<span class="hljs-punctuation">:</span> I need to check the current weather for New York.
Action <span class="hljs-punctuation">:</span>
<span class="hljs-punctuation">{</span>
  <span class="hljs-attr">&quot;action&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-string">&quot;get_weather&quot;</span><span class="hljs-punctuation">,</span>
  <span class="hljs-attr">&quot;action_input&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-punctuation">{</span><span class="hljs-attr">&quot;location&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-string">&quot;New York&quot;</span><span class="hljs-punctuation">}</span>
<span class="hljs-punctuation">}</span>`,wrap:!1}}),V=new Yt({props:{title:"代码智能体 (Code Agents)",local:"代码智能体-code-agents",headingTag:"h2"}}),z=new be({props:{code:"JTIzJTIwQ29kZSUyMEFnZW50JTIwRXhhbXBsZSUzQSUyMFJldHJpZXZlJTIwV2VhdGhlciUyMEluZm9ybWF0aW9uJTBBZGVmJTIwZ2V0X3dlYXRoZXIoY2l0eSklM0ElMEElMjAlMjAlMjAlMjBpbXBvcnQlMjByZXF1ZXN0cyUwQSUyMCUyMCUyMCUyMGFwaV91cmwlMjAlM0QlMjBmJTIyaHR0cHMlM0ElMkYlMkZhcGkud2VhdGhlci5jb20lMkZ2MSUyRmxvY2F0aW9uJTJGJTdCY2l0eSU3RCUzRmFwaUtleSUzRFlPVVJfQVBJX0tFWSUyMiUwQSUyMCUyMCUyMCUyMHJlc3BvbnNlJTIwJTNEJTIwcmVxdWVzdHMuZ2V0KGFwaV91cmwpJTBBJTIwJTIwJTIwJTIwaWYlMjByZXNwb25zZS5zdGF0dXNfY29kZSUyMCUzRCUzRCUyMDIwMCUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRhdGElMjAlM0QlMjByZXNwb25zZS5qc29uKCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBkYXRhLmdldCglMjJ3ZWF0aGVyJTIyJTJDJTIwJTIyTm8lMjB3ZWF0aGVyJTIwaW5mb3JtYXRpb24lMjBhdmFpbGFibGUlMjIpJTBBJTIwJTIwJTIwJTIwZWxzZSUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCUyMkVycm9yJTNBJTIwVW5hYmxlJTIwdG8lMjBmZXRjaCUyMHdlYXRoZXIlMjBkYXRhLiUyMiUwQSUwQSUyMyUyMEV4ZWN1dGUlMjB0aGUlMjBmdW5jdGlvbiUyMGFuZCUyMHByZXBhcmUlMjB0aGUlMjBmaW5hbCUyMGFuc3dlciUwQXJlc3VsdCUyMCUzRCUyMGdldF93ZWF0aGVyKCUyMk5ldyUyMFlvcmslMjIpJTBBZmluYWxfYW5zd2VyJTIwJTNEJTIwZiUyMlRoZSUyMGN1cnJlbnQlMjB3ZWF0aGVyJTIwaW4lMjBOZXclMjBZb3JrJTIwaXMlM0ElMjAlN0JyZXN1bHQlN0QlMjIlMEFwcmludChmaW5hbF9hbnN3ZXIp",highlighted:`<span class="hljs-comment"># Code Agent Example: Retrieve Weather Information</span>
<span class="hljs-keyword">def</span> <span class="hljs-title function_">get_weather</span>(<span class="hljs-params">city</span>):
    <span class="hljs-keyword">import</span> requests
    api_url = <span class="hljs-string">f&quot;https://api.weather.com/v1/location/<span class="hljs-subst">{city}</span>?apiKey=YOUR_API_KEY&quot;</span>
    response = requests.get(api_url)
    <span class="hljs-keyword">if</span> response.status_code == <span class="hljs-number">200</span>:
        data = response.json()
        <span class="hljs-keyword">return</span> data.get(<span class="hljs-string">&quot;weather&quot;</span>, <span class="hljs-string">&quot;No weather information available&quot;</span>)
    <span class="hljs-keyword">else</span>:
        <span class="hljs-keyword">return</span> <span class="hljs-string">&quot;Error: Unable to fetch weather data.&quot;</span>

<span class="hljs-comment"># Execute the function and prepare the final answer</span>
result = get_weather(<span class="hljs-string">&quot;New York&quot;</span>)
final_answer = <span class="hljs-string">f&quot;The current weather in New York is: <span class="hljs-subst">{result}</span>&quot;</span>
<span class="hljs-built_in">print</span>(final_answer)`,wrap:!1}}),nt=new Ne({props:{source:"https://github.com/huggingface/agents-course/blob/main/units/zh-CN/unit1/actions.mdx"}}),{c(){r=i("meta"),M=s(),f=i("p"),o=s(),U(m.$$.fragment),pt=s(),U(C.$$.fragment),ut=s(),w=i("p"),w.innerHTML=zt,rt=s(),c=i("p"),c.textContent=Ot,Mt=s(),$=i("p"),$.textContent=Kt,ot=s(),U(J.$$.fragment),mt=s(),_=i("p"),_.textContent=Dt,ft=s(),I=i("table"),I.innerHTML=te,Ct=s(),b=i("p"),b.textContent=ee,yt=s(),g=i("table"),g.innerHTML=le,ht=s(),A=i("p"),A.innerHTML=ne,Ut=s(),H=i("p"),H.textContent=se,jt=s(),U(Z.$$.fragment),Tt=s(),B=i("p"),B.innerHTML=ae,dt=s(),S=i("ol"),S.innerHTML=ie,vt=s(),L=i("p"),L.textContent=pe,xt=s(),y=i("ol"),y.innerHTML=ue,wt=s(),P=i("p"),P.innerHTML=re,ct=s(),h=i("ol"),h.innerHTML=Me,$t=s(),E=i("p"),E.textContent=oe,Jt=s(),G=i("p"),G.textContent=me,_t=s(),U(k.$$.fragment),It=s(),N=i("p"),N.textContent=fe,bt=s(),q=i("p"),q.textContent=Ce,gt=s(),F=i("p"),F.textContent=ye,At=s(),U(V.$$.fragment),Ht=s(),W=i("p"),W.innerHTML=he,Zt=s(),R=i("img"),Bt=s(),X=i("p"),X.textContent=je,St=s(),Q=i("ul"),Q.innerHTML=Te,Lt=s(),Y=i("p"),Y.textContent=de,Pt=s(),U(z.$$.fragment),Et=s(),O=i("p"),O.textContent=ve,Gt=s(),K=i("ul"),K.innerHTML=xe,kt=s(),D=i("p"),D.innerHTML=we,Nt=s(),qt=i("hr"),Ft=s(),tt=i("p"),tt.textContent=ce,Vt=s(),et=i("p"),et.textContent=$e,Wt=s(),lt=i("p"),lt.innerHTML=Je,Rt=s(),U(nt.$$.fragment),Xt=s(),at=i("p"),this.h()},l(t){const e=Le("svelte-u9bgzb",document.head);r=p(e,"META",{name:!0,content:!0}),e.forEach(l),M=a(t),f=p(t,"P",{}),Ie(f).forEach(l),o=a(t),j(m.$$.fragment,t),pt=a(t),j(C.$$.fragment,t),ut=a(t),w=p(t,"P",{"data-svelte-h":!0}),u(w)!=="svelte-1oehl0b"&&(w.innerHTML=zt),rt=a(t),c=p(t,"P",{"data-svelte-h":!0}),u(c)!=="svelte-rr84pc"&&(c.textContent=Ot),Mt=a(t),$=p(t,"P",{"data-svelte-h":!0}),u($)!=="svelte-11t7hmz"&&($.textContent=Kt),ot=a(t),j(J.$$.fragment,t),mt=a(t),_=p(t,"P",{"data-svelte-h":!0}),u(_)!=="svelte-ds768v"&&(_.textContent=Dt),ft=a(t),I=p(t,"TABLE",{"data-svelte-h":!0}),u(I)!=="svelte-1mmjhb8"&&(I.innerHTML=te),Ct=a(t),b=p(t,"P",{"data-svelte-h":!0}),u(b)!=="svelte-1apkq8u"&&(b.textContent=ee),yt=a(t),g=p(t,"TABLE",{"data-svelte-h":!0}),u(g)!=="svelte-5xk6bp"&&(g.innerHTML=le),ht=a(t),A=p(t,"P",{"data-svelte-h":!0}),u(A)!=="svelte-nvl6b4"&&(A.innerHTML=ne),Ut=a(t),H=p(t,"P",{"data-svelte-h":!0}),u(H)!=="svelte-1r3a9ht"&&(H.textContent=se),jt=a(t),j(Z.$$.fragment,t),Tt=a(t),B=p(t,"P",{"data-svelte-h":!0}),u(B)!=="svelte-1czk6yh"&&(B.innerHTML=ae),dt=a(t),S=p(t,"OL",{"data-svelte-h":!0}),u(S)!=="svelte-1swx0r1"&&(S.innerHTML=ie),vt=a(t),L=p(t,"P",{"data-svelte-h":!0}),u(L)!=="svelte-5yuo8q"&&(L.textContent=pe),xt=a(t),y=p(t,"OL",{start:!0,"data-svelte-h":!0}),u(y)!=="svelte-7hhw08"&&(y.innerHTML=ue),wt=a(t),P=p(t,"P",{"data-svelte-h":!0}),u(P)!=="svelte-s8iucv"&&(P.innerHTML=re),ct=a(t),h=p(t,"OL",{start:!0,"data-svelte-h":!0}),u(h)!=="svelte-4g9ysl"&&(h.innerHTML=Me),$t=a(t),E=p(t,"P",{"data-svelte-h":!0}),u(E)!=="svelte-1hnrlul"&&(E.textContent=oe),Jt=a(t),G=p(t,"P",{"data-svelte-h":!0}),u(G)!=="svelte-f9j747"&&(G.textContent=me),_t=a(t),j(k.$$.fragment,t),It=a(t),N=p(t,"P",{"data-svelte-h":!0}),u(N)!=="svelte-lwcx4v"&&(N.textContent=fe),bt=a(t),q=p(t,"P",{"data-svelte-h":!0}),u(q)!=="svelte-1a21p42"&&(q.textContent=Ce),gt=a(t),F=p(t,"P",{"data-svelte-h":!0}),u(F)!=="svelte-1ad2rct"&&(F.textContent=ye),At=a(t),j(V.$$.fragment,t),Ht=a(t),W=p(t,"P",{"data-svelte-h":!0}),u(W)!=="svelte-emap4f"&&(W.innerHTML=he),Zt=a(t),R=p(t,"IMG",{src:!0,alt:!0}),Bt=a(t),X=p(t,"P",{"data-svelte-h":!0}),u(X)!=="svelte-1h49gxo"&&(X.textContent=je),St=a(t),Q=p(t,"UL",{"data-svelte-h":!0}),u(Q)!=="svelte-rukxw8"&&(Q.innerHTML=Te),Lt=a(t),Y=p(t,"P",{"data-svelte-h":!0}),u(Y)!=="svelte-p3vm8q"&&(Y.textContent=de),Pt=a(t),j(z.$$.fragment,t),Et=a(t),O=p(t,"P",{"data-svelte-h":!0}),u(O)!=="svelte-1v7t0xt"&&(O.textContent=ve),Gt=a(t),K=p(t,"UL",{"data-svelte-h":!0}),u(K)!=="svelte-1frjtfm"&&(K.innerHTML=xe),kt=a(t),D=p(t,"P",{"data-svelte-h":!0}),u(D)!=="svelte-7mgs6s"&&(D.innerHTML=we),Nt=a(t),qt=p(t,"HR",{}),Ft=a(t),tt=p(t,"P",{"data-svelte-h":!0}),u(tt)!=="svelte-dqdw0b"&&(tt.textContent=ce),Vt=a(t),et=p(t,"P",{"data-svelte-h":!0}),u(et)!=="svelte-1p9xxsx"&&(et.textContent=$e),Wt=a(t),lt=p(t,"P",{"data-svelte-h":!0}),u(lt)!=="svelte-4qv3mb"&&(lt.innerHTML=Je),Rt=a(t),j(nt.$$.fragment,t),Xt=a(t),at=p(t,"P",{}),Ie(at).forEach(l),this.h()},h(){st(r,"name","hf:doc:metadata"),st(r,"content",Ve),st(y,"start","2"),st(h,"start","3"),Ae(R.src,Ue="https://huggingface.co/datasets/agents-course/course-images/resolve/main/en/unit1/code-vs-json-actions.png")||st(R,"src",Ue),st(R,"alt","Code Agents")},m(t,e){Pe(document.head,r),n(t,M,e),n(t,f,e),n(t,o,e),T(m,t,e),n(t,pt,e),T(C,t,e),n(t,ut,e),n(t,w,e),n(t,rt,e),n(t,c,e),n(t,Mt,e),n(t,$,e),n(t,ot,e),T(J,t,e),n(t,mt,e),n(t,_,e),n(t,ft,e),n(t,I,e),n(t,Ct,e),n(t,b,e),n(t,yt,e),n(t,g,e),n(t,ht,e),n(t,A,e),n(t,Ut,e),n(t,H,e),n(t,jt,e),T(Z,t,e),n(t,Tt,e),n(t,B,e),n(t,dt,e),n(t,S,e),n(t,vt,e),n(t,L,e),n(t,xt,e),n(t,y,e),n(t,wt,e),n(t,P,e),n(t,ct,e),n(t,h,e),n(t,$t,e),n(t,E,e),n(t,Jt,e),n(t,G,e),n(t,_t,e),T(k,t,e),n(t,It,e),n(t,N,e),n(t,bt,e),n(t,q,e),n(t,gt,e),n(t,F,e),n(t,At,e),T(V,t,e),n(t,Ht,e),n(t,W,e),n(t,Zt,e),n(t,R,e),n(t,Bt,e),n(t,X,e),n(t,St,e),n(t,Q,e),n(t,Lt,e),n(t,Y,e),n(t,Pt,e),T(z,t,e),n(t,Et,e),n(t,O,e),n(t,Gt,e),n(t,K,e),n(t,kt,e),n(t,D,e),n(t,Nt,e),n(t,qt,e),n(t,Ft,e),n(t,tt,e),n(t,Vt,e),n(t,et,e),n(t,Wt,e),n(t,lt,e),n(t,Rt,e),T(nt,t,e),n(t,Xt,e),n(t,at,e),Qt=!0},p(t,[e]){const _e={};e&2&&(_e.$$scope={dirty:e,ctx:t}),C.$set(_e)},i(t){Qt||(d(m.$$.fragment,t),d(C.$$.fragment,t),d(J.$$.fragment,t),d(Z.$$.fragment,t),d(k.$$.fragment,t),d(V.$$.fragment,t),d(z.$$.fragment,t),d(nt.$$.fragment,t),Qt=!0)},o(t){v(m.$$.fragment,t),v(C.$$.fragment,t),v(J.$$.fragment,t),v(Z.$$.fragment,t),v(k.$$.fragment,t),v(V.$$.fragment,t),v(z.$$.fragment,t),v(nt.$$.fragment,t),Qt=!1},d(t){t&&(l(M),l(f),l(o),l(pt),l(ut),l(w),l(rt),l(c),l(Mt),l($),l(ot),l(mt),l(_),l(ft),l(I),l(Ct),l(b),l(yt),l(g),l(ht),l(A),l(Ut),l(H),l(jt),l(Tt),l(B),l(dt),l(S),l(vt),l(L),l(xt),l(y),l(wt),l(P),l(ct),l(h),l($t),l(E),l(Jt),l(G),l(_t),l(It),l(N),l(bt),l(q),l(gt),l(F),l(At),l(Ht),l(W),l(Zt),l(R),l(Bt),l(X),l(St),l(Q),l(Lt),l(Y),l(Pt),l(Et),l(O),l(Gt),l(K),l(kt),l(D),l(Nt),l(qt),l(Ft),l(tt),l(Vt),l(et),l(Wt),l(lt),l(Rt),l(Xt),l(at)),l(r),x(m,t),x(C,t),x(J,t),x(Z,t),x(k,t),x(V,t),x(z,t),x(nt,t)}}}const Ve='{"title":"动作：使智能体能够与环境交互","local":"动作使智能体能够与环境交互","sections":[{"title":"智能体动作的类型 (Types of Agent Actions)","local":"智能体动作的类型-types-of-agent-actions","sections":[],"depth":2},{"title":"停止和解析方法 (The Stop and Parse Approach)","local":"停止和解析方法-the-stop-and-parse-approach","sections":[],"depth":2},{"title":"代码智能体 (Code Agents)","local":"代码智能体-code-agents","sections":[],"depth":2}],"depth":1}';function We(it){return He(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class Oe extends Be{constructor(r){super(),Se(this,r,We,Fe,ge,{})}}export{Oe as component};
