import{s as xe,a as ke,n as _e,o as Ge}from"../chunks/scheduler.00b97157.js";import{S as Ve,i as Re,e as o,s,c as m,h as He,a as p,d as l,b as a,f as $e,g as c,j as r,k as ue,l as Ne,m as n,n as b,t as u,o as M,p as w}from"../chunks/index.a7c1a7a1.js";import{C as Fe,H as Ie,E as Ye}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.497ce585.js";import{C as Me}from"../chunks/CodeBlock.3168271d.js";import{D as Qe}from"../chunks/DocNotebookDropdown.ccd8e45d.js";function Se(we){let i,Y,N,Q,y,S,T,A,J,E,d,de='<p>यदि आप एजेंट्स बनाने में नए हैं, तो पहले <a href="../conceptual_guides/intro_agents">एजेंट्स का परिचय</a> और <a href="../guided_tour">smolagents की गाइडेड टूर</a> पढ़ना सुनिश्चित करें।</p>',X,f,L,g,ye="Agent runs को डीबग करना जटिल होता है।",P,h,Te='यह सत्यापित करना कठिन है कि एक रन ठीक से चला या नहीं, क्योंकि एजेंट वर्कफ़्लो <a href="../conceptual_guides/intro_agents">डिज़ाइन के अनुसार अप्रत्याशित</a> होते हैं (यदि वे प्रत्याशित होते, तो आप पुराने अच्छे कोड का ही उपयोग कर रहे होते)।',z,v,Je="और रन का निरीक्षण करना भी कठिन है: मल्टी-स्टेप एजेंट्स जल्दी ही कंसोल को लॉग से भर देते हैं, और अधिकांश त्रुटियां केवल “LLM dumb” प्रकार की त्रुटियां होती हैं, जिनसे LLM अगले चरण में बेहतर कोड या टूल कॉल लिखकर स्वयं को सुधार लेता है।",D,Z,fe="इसलिए बाद के निरीक्षण और मॉनिटरिंग के लिए प्रोडक्शन में agent runs को रिकॉर्ड करने के लिए इंस्ट्रुमेंटेशन का उपयोग करना आवश्यक है!",q,B,ge='हमने agent runs को इंस्ट्रुमेंट करने के लिए <a href="https://opentelemetry.io/" rel="nofollow">OpenTelemetry</a> मानक को अपनाया है।',K,U,he="इसका मतलब है कि आप बस कुछ इंस्ट्रुमेंटेशन कोड चला सकते हैं, फिर अपने एजेंट्स को सामान्य रूप से चला सकते हैं, और सब कुछ आपके प्लेटफॉर्म में लॉग हो जाता है।",O,W,ve=`यह इस प्रकार होता है:
पहले आवश्यक पैकेज इंस्टॉल करें। यहां हम <a href="https://github.com/Arize-ai/phoenix" rel="nofollow">Phoenix by Arize AI</a> इंस्टॉल करते हैं क्योंकि यह लॉग्स को एकत्र और निरीक्षण करने का एक अच्छा समाधान है, लेकिन इस संग्रह और निरीक्षण भाग के लिए आप अन्य OpenTelemetry-कम्पैटिबल प्लेटफॉर्म्स का उपयोग कर सकते हैं।`,ee,C,te,j,Ze="फिर कलेक्टर को बैकग्राउंड में चलाएं।",le,$,ne,I,Be="अंत में, अपने एजेंट्स को ट्रेस करने और ट्रेस को नीचे परिभाषित एंडपॉइंट पर Phoenix को भेजने के लिए <code>SmolagentsInstrumentor</code> को सेट करें।",se,x,ae,k,Ue="तब आप अपने एजेंट चला सकते हैं!",oe,_,pe,G,We="और फिर आप अपने रन का निरीक्षण करने के लिए <code>http://0.0.0.0:6006/projects/</code> पर जा सकते हैं!",re,H,Ce,ie,V,je="आप देख सकते हैं कि CodeAgent ने अपने मैनेज्ड ToolCallingAgent को (वैसे, मैनेज्ड एजेंट एक CodeAgent भी हो सकता था) U.S. 2024 ग्रोथ रेट के लिए वेब सर्च चलाने के लिए कॉल किया। फिर मैनेज्ड एजेंट ने अपनी रिपोर्ट लौटाई और मैनेजर एजेंट ने अर्थव्यवस्था के दोगुना होने का समय गणना करने के लिए उस पर कार्य किया! अच्छा है, है ना?",me,R,ce,F,be;return y=new Fe({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),T=new Ie({props:{title:"OpenTelemetry के साथ runs का निरीक्षण",local:"opentelemetry-क-सथ-runs-क-नरकषण",headingTag:"h1"}}),J=new Qe({props:{classNames:"absolute z-10 right-0 top-0",options:[{label:"Mixed",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/main/smolagents_doc/hi/inspect_runs.ipynb"},{label:"PyTorch",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/main/smolagents_doc/hi/pytorch/inspect_runs.ipynb"},{label:"TensorFlow",value:"https://colab.research.google.com/github/huggingface/notebooks/blob/main/smolagents_doc/hi/tensorflow/inspect_runs.ipynb"},{label:"Mixed",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/main/smolagents_doc/hi/inspect_runs.ipynb"},{label:"PyTorch",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/main/smolagents_doc/hi/pytorch/inspect_runs.ipynb"},{label:"TensorFlow",value:"https://studiolab.sagemaker.aws/import/github/huggingface/notebooks/blob/main/smolagents_doc/hi/tensorflow/inspect_runs.ipynb"}]}}),f=new Ie({props:{title:"Agents runs को लॉग क्यों करें?",local:"agents-runs-क-लग-कय-कर",headingTag:"h3"}}),C=new Me({props:{code:"cGlwJTIwaW5zdGFsbCUyMHNtb2xhZ2VudHMlMEFwaXAlMjBpbnN0YWxsJTIwYXJpemUtcGhvZW5peCUyMG9wZW50ZWxlbWV0cnktc2RrJTIwb3BlbnRlbGVtZXRyeS1leHBvcnRlci1vdGxwJTIwb3BlbmluZmVyZW5jZS1pbnN0cnVtZW50YXRpb24tc21vbGFnZW50cw==",highlighted:`pip install smolagents
pip install arize-phoenix opentelemetry-sdk opentelemetry-exporter-otlp openinference-instrumentation-smolagents`,wrap:!1}}),$=new Me({props:{code:"cHl0aG9uJTIwLW0lMjBwaG9lbml4LnNlcnZlci5tYWluJTIwc2VydmU=",highlighted:"python -m phoenix.server.main serve",wrap:!1}}),x=new Me({props:{code:"ZnJvbSUyMG9wZW50ZWxlbWV0cnklMjBpbXBvcnQlMjB0cmFjZSUwQWZyb20lMjBvcGVudGVsZW1ldHJ5LnNkay50cmFjZSUyMGltcG9ydCUyMFRyYWNlclByb3ZpZGVyJTBBZnJvbSUyMG9wZW50ZWxlbWV0cnkuc2RrLnRyYWNlLmV4cG9ydCUyMGltcG9ydCUyMEJhdGNoU3BhblByb2Nlc3NvciUwQSUwQWZyb20lMjBvcGVuaW5mZXJlbmNlLmluc3RydW1lbnRhdGlvbi5zbW9sYWdlbnRzJTIwaW1wb3J0JTIwU21vbGFnZW50c0luc3RydW1lbnRvciUwQWZyb20lMjBvcGVudGVsZW1ldHJ5LmV4cG9ydGVyLm90bHAucHJvdG8uaHR0cC50cmFjZV9leHBvcnRlciUyMGltcG9ydCUyME9UTFBTcGFuRXhwb3J0ZXIlMEFmcm9tJTIwb3BlbnRlbGVtZXRyeS5zZGsudHJhY2UuZXhwb3J0JTIwaW1wb3J0JTIwQ29uc29sZVNwYW5FeHBvcnRlciUyQyUyMFNpbXBsZVNwYW5Qcm9jZXNzb3IlMEElMEFlbmRwb2ludCUyMCUzRCUyMCUyMmh0dHAlM0ElMkYlMkYwLjAuMC4wJTNBNjAwNiUyRnYxJTJGdHJhY2VzJTIyJTBBdHJhY2VfcHJvdmlkZXIlMjAlM0QlMjBUcmFjZXJQcm92aWRlcigpJTBBdHJhY2VfcHJvdmlkZXIuYWRkX3NwYW5fcHJvY2Vzc29yKFNpbXBsZVNwYW5Qcm9jZXNzb3IoT1RMUFNwYW5FeHBvcnRlcihlbmRwb2ludCkpKSUwQSUwQVNtb2xhZ2VudHNJbnN0cnVtZW50b3IoKS5pbnN0cnVtZW50KHRyYWNlcl9wcm92aWRlciUzRHRyYWNlX3Byb3ZpZGVyKQ==",highlighted:`<span class="hljs-keyword">from</span> opentelemetry <span class="hljs-keyword">import</span> trace
<span class="hljs-keyword">from</span> opentelemetry.sdk.trace <span class="hljs-keyword">import</span> TracerProvider
<span class="hljs-keyword">from</span> opentelemetry.sdk.trace.export <span class="hljs-keyword">import</span> BatchSpanProcessor

<span class="hljs-keyword">from</span> openinference.instrumentation.smolagents <span class="hljs-keyword">import</span> SmolagentsInstrumentor
<span class="hljs-keyword">from</span> opentelemetry.exporter.otlp.proto.http.trace_exporter <span class="hljs-keyword">import</span> OTLPSpanExporter
<span class="hljs-keyword">from</span> opentelemetry.sdk.trace.export <span class="hljs-keyword">import</span> ConsoleSpanExporter, SimpleSpanProcessor

endpoint = <span class="hljs-string">&quot;http://0.0.0.0:6006/v1/traces&quot;</span>
trace_provider = TracerProvider()
trace_provider.add_span_processor(SimpleSpanProcessor(OTLPSpanExporter(endpoint)))

SmolagentsInstrumentor().instrument(tracer_provider=trace_provider)`,wrap:!1}}),_=new Me({props:{code:"ZnJvbSUyMHNtb2xhZ2VudHMlMjBpbXBvcnQlMjAoJTBBJTIwJTIwJTIwJTIwQ29kZUFnZW50JTJDJTBBJTIwJTIwJTIwJTIwVG9vbENhbGxpbmdBZ2VudCUyQyUwQSUyMCUyMCUyMCUyMFdlYlNlYXJjaFRvb2wlMkMlMEElMjAlMjAlMjAlMjBWaXNpdFdlYnBhZ2VUb29sJTJDJTBBJTIwJTIwJTIwJTIwSW5mZXJlbmNlQ2xpZW50TW9kZWwlMkMlMEEpJTBBJTBBbW9kZWwlMjAlM0QlMjBJbmZlcmVuY2VDbGllbnRNb2RlbCgpJTBBJTBBbWFuYWdlZF9hZ2VudCUyMCUzRCUyMFRvb2xDYWxsaW5nQWdlbnQoJTBBJTIwJTIwJTIwJTIwdG9vbHMlM0QlNUJXZWJTZWFyY2hUb29sKCklMkMlMjBWaXNpdFdlYnBhZ2VUb29sKCklNUQlMkMlMEElMjAlMjAlMjAlMjBtb2RlbCUzRG1vZGVsJTJDJTBBJTIwJTIwJTIwJTIwbmFtZSUzRCUyMm1hbmFnZWRfYWdlbnQlMjIlMkMlMEElMjAlMjAlMjAlMjBkZXNjcmlwdGlvbiUzRCUyMlRoaXMlMjBpcyUyMGFuJTIwYWdlbnQlMjB0aGF0JTIwY2FuJTIwZG8lMjB3ZWIlMjBzZWFyY2guJTIyJTJDJTBBKSUwQSUwQW1hbmFnZXJfYWdlbnQlMjAlM0QlMjBDb2RlQWdlbnQoJTBBJTIwJTIwJTIwJTIwdG9vbHMlM0QlNUIlNUQlMkMlMEElMjAlMjAlMjAlMjBtb2RlbCUzRG1vZGVsJTJDJTBBJTIwJTIwJTIwJTIwbWFuYWdlZF9hZ2VudHMlM0QlNUJtYW5hZ2VkX2FnZW50JTVEJTJDJTBBKSUwQW1hbmFnZXJfYWdlbnQucnVuKCUwQSUyMCUyMCUyMCUyMCUyMklmJTIwdGhlJTIwVVMlMjBrZWVwcyUyMGl0cyUyMDIwMjQlMjBncm93dGglMjByYXRlJTJDJTIwaG93JTIwbWFueSUyMHllYXJzJTIwd2lsbCUyMGl0JTIwdGFrZSUyMGZvciUyMHRoZSUyMEdEUCUyMHRvJTIwZG91YmxlJTNGJTIyJTBBKQ==",highlighted:`<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> (
    CodeAgent,
    ToolCallingAgent,
    WebSearchTool,
    VisitWebpageTool,
    InferenceClientModel,
)

model = InferenceClientModel()

managed_agent = ToolCallingAgent(
    tools=[WebSearchTool(), VisitWebpageTool()],
    model=model,
    name=<span class="hljs-string">&quot;managed_agent&quot;</span>,
    description=<span class="hljs-string">&quot;This is an agent that can do web search.&quot;</span>,
)

manager_agent = CodeAgent(
    tools=[],
    model=model,
    managed_agents=[managed_agent],
)
manager_agent.run(
    <span class="hljs-string">&quot;If the US keeps its 2024 growth rate, how many years will it take for the GDP to double?&quot;</span>
)`,wrap:!1}}),R=new Ye({props:{source:"https://github.com/huggingface/smolagents/blob/main/docs/source/hi/tutorials/inspect_runs.md"}}),{c(){i=o("meta"),Y=s(),N=o("p"),Q=s(),m(y.$$.fragment),S=s(),m(T.$$.fragment),A=s(),m(J.$$.fragment),E=s(),d=o("blockquote"),d.innerHTML=de,X=s(),m(f.$$.fragment),L=s(),g=o("p"),g.textContent=ye,P=s(),h=o("p"),h.innerHTML=Te,z=s(),v=o("p"),v.textContent=Je,D=s(),Z=o("p"),Z.textContent=fe,q=s(),B=o("p"),B.innerHTML=ge,K=s(),U=o("p"),U.textContent=he,O=s(),W=o("p"),W.innerHTML=ve,ee=s(),m(C.$$.fragment),te=s(),j=o("p"),j.textContent=Ze,le=s(),m($.$$.fragment),ne=s(),I=o("p"),I.innerHTML=Be,se=s(),m(x.$$.fragment),ae=s(),k=o("p"),k.textContent=Ue,oe=s(),m(_.$$.fragment),pe=s(),G=o("p"),G.innerHTML=We,re=s(),H=o("img"),ie=s(),V=o("p"),V.textContent=je,me=s(),m(R.$$.fragment),ce=s(),F=o("p"),this.h()},l(e){const t=He("svelte-u9bgzb",document.head);i=p(t,"META",{name:!0,content:!0}),t.forEach(l),Y=a(e),N=p(e,"P",{}),$e(N).forEach(l),Q=a(e),c(y.$$.fragment,e),S=a(e),c(T.$$.fragment,e),A=a(e),c(J.$$.fragment,e),E=a(e),d=p(e,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),r(d)!=="svelte-1qkef8g"&&(d.innerHTML=de),X=a(e),c(f.$$.fragment,e),L=a(e),g=p(e,"P",{"data-svelte-h":!0}),r(g)!=="svelte-yklnhp"&&(g.textContent=ye),P=a(e),h=p(e,"P",{"data-svelte-h":!0}),r(h)!=="svelte-r40yww"&&(h.innerHTML=Te),z=a(e),v=p(e,"P",{"data-svelte-h":!0}),r(v)!=="svelte-rrmn8p"&&(v.textContent=Je),D=a(e),Z=p(e,"P",{"data-svelte-h":!0}),r(Z)!=="svelte-klsjx1"&&(Z.textContent=fe),q=a(e),B=p(e,"P",{"data-svelte-h":!0}),r(B)!=="svelte-1saqip9"&&(B.innerHTML=ge),K=a(e),U=p(e,"P",{"data-svelte-h":!0}),r(U)!=="svelte-13bubdf"&&(U.textContent=he),O=a(e),W=p(e,"P",{"data-svelte-h":!0}),r(W)!=="svelte-16snps6"&&(W.innerHTML=ve),ee=a(e),c(C.$$.fragment,e),te=a(e),j=p(e,"P",{"data-svelte-h":!0}),r(j)!=="svelte-nzie0a"&&(j.textContent=Ze),le=a(e),c($.$$.fragment,e),ne=a(e),I=p(e,"P",{"data-svelte-h":!0}),r(I)!=="svelte-16jhf14"&&(I.innerHTML=Be),se=a(e),c(x.$$.fragment,e),ae=a(e),k=p(e,"P",{"data-svelte-h":!0}),r(k)!=="svelte-1vys0cb"&&(k.textContent=Ue),oe=a(e),c(_.$$.fragment,e),pe=a(e),G=p(e,"P",{"data-svelte-h":!0}),r(G)!=="svelte-367zaj"&&(G.innerHTML=We),re=a(e),H=p(e,"IMG",{src:!0}),ie=a(e),V=p(e,"P",{"data-svelte-h":!0}),r(V)!=="svelte-1x0krsx"&&(V.textContent=je),me=a(e),c(R.$$.fragment,e),ce=a(e),F=p(e,"P",{}),$e(F).forEach(l),this.h()},h(){ue(i,"name","hf:doc:metadata"),ue(i,"content",Ae),ue(d,"class","tip"),ke(H.src,Ce="https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/smolagents/inspect_run_phoenix.png")||ue(H,"src",Ce)},m(e,t){Ne(document.head,i),n(e,Y,t),n(e,N,t),n(e,Q,t),b(y,e,t),n(e,S,t),b(T,e,t),n(e,A,t),b(J,e,t),n(e,E,t),n(e,d,t),n(e,X,t),b(f,e,t),n(e,L,t),n(e,g,t),n(e,P,t),n(e,h,t),n(e,z,t),n(e,v,t),n(e,D,t),n(e,Z,t),n(e,q,t),n(e,B,t),n(e,K,t),n(e,U,t),n(e,O,t),n(e,W,t),n(e,ee,t),b(C,e,t),n(e,te,t),n(e,j,t),n(e,le,t),b($,e,t),n(e,ne,t),n(e,I,t),n(e,se,t),b(x,e,t),n(e,ae,t),n(e,k,t),n(e,oe,t),b(_,e,t),n(e,pe,t),n(e,G,t),n(e,re,t),n(e,H,t),n(e,ie,t),n(e,V,t),n(e,me,t),b(R,e,t),n(e,ce,t),n(e,F,t),be=!0},p:_e,i(e){be||(u(y.$$.fragment,e),u(T.$$.fragment,e),u(J.$$.fragment,e),u(f.$$.fragment,e),u(C.$$.fragment,e),u($.$$.fragment,e),u(x.$$.fragment,e),u(_.$$.fragment,e),u(R.$$.fragment,e),be=!0)},o(e){M(y.$$.fragment,e),M(T.$$.fragment,e),M(J.$$.fragment,e),M(f.$$.fragment,e),M(C.$$.fragment,e),M($.$$.fragment,e),M(x.$$.fragment,e),M(_.$$.fragment,e),M(R.$$.fragment,e),be=!1},d(e){e&&(l(Y),l(N),l(Q),l(S),l(A),l(E),l(d),l(X),l(L),l(g),l(P),l(h),l(z),l(v),l(D),l(Z),l(q),l(B),l(K),l(U),l(O),l(W),l(ee),l(te),l(j),l(le),l(ne),l(I),l(se),l(ae),l(k),l(oe),l(pe),l(G),l(re),l(H),l(ie),l(V),l(me),l(ce),l(F)),l(i),w(y,e),w(T,e),w(J,e),w(f,e),w(C,e),w($,e),w(x,e),w(_,e),w(R,e)}}}const Ae='{"title":"OpenTelemetry के साथ runs का निरीक्षण","local":"opentelemetry-क-सथ-runs-क-नरकषण","sections":[{"title":"Agents runs को लॉग क्यों करें?","local":"agents-runs-क-लग-कय-कर","sections":[],"depth":3}],"depth":1}';function Ee(we){return Ge(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class qe extends Ve{constructor(i){super(),Re(this,i,Ee,Se,xe,{})}}export{qe as component};
