import{s as Lo,o as qo,n as R}from"../chunks/scheduler.f9cad8c1.js";import{S as Bo,i as Wo,e as i,s as o,c as g,h as Zo,a as m,d as s,b as a,f as k,g as M,j as p,k as C,l as c,m as l,n as u,t as h,o as y,p as f}from"../chunks/index.6e06ef99.js";import{T as Ro,D as A,E as G}from"../chunks/ExampleCodeBlock.484d42f2.js";import{C as So,H as Q,E as zo}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.c4302a62.js";import{C as j}from"../chunks/CodeBlock.72594161.js";function Fo(I){let r,w="Smolagents는 언제든지 변경될 수 있는 실험적인 API입니다. API 또는 기반 모델이 바뀌면 에이전트가 반환하는 결과도 달라질 수 있습니다.";return{c(){r=i("p"),r.textContent=w},l(U){r=m(U,"P",{"data-svelte-h":!0}),p(r)!=="svelte-j2bqch"&&(r.textContent=w)},m(U,d){l(U,r,d)},p:R,d(U){U&&s(r)}}}function Xo(I){let r,w="Example:",U,d,T;return d=new j({props:{code:"Y2xhc3MlMjBDdXN0b21Nb2RlbChNb2RlbCklM0ElMEElMjAlMjAlMjAlMjBkZWYlMjBnZW5lcmF0ZShzZWxmJTJDJTIwbWVzc2FnZXMlMkMlMjAqKmt3YXJncyklM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjMlMjBJbXBsZW1lbnRhdGlvbiUyMHNwZWNpZmljJTIwdG8lMjB5b3VyJTIwbW9kZWwlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBwYXNz",highlighted:`<span class="hljs-keyword">class</span> <span class="hljs-title class_">CustomModel</span>(<span class="hljs-title class_ inherited__">Model</span>):
    <span class="hljs-keyword">def</span> <span class="hljs-title function_">generate</span>(<span class="hljs-params">self, messages, **kwargs</span>):
        <span class="hljs-comment"># Implementation specific to your model</span>
        <span class="hljs-keyword">pass</span>`,wrap:!1}}),{c(){r=i("p"),r.textContent=w,U=o(),g(d.$$.fragment)},l(n){r=m(n,"P",{"data-svelte-h":!0}),p(r)!=="svelte-11lpom8"&&(r.textContent=w),U=a(n),M(d.$$.fragment,n)},m(n,J){l(n,r,J),l(n,U,J),u(d,n,J),T=!0},p:R,i(n){T||(h(d.$$.fragment,n),T=!0)},o(n){y(d.$$.fragment,n),T=!1},d(n){n&&(s(r),s(U)),f(d,n)}}}function Go(I){let r,w="Example:",U,d,T;return d=new j({props:{code:"ZW5naW5lJTIwJTNEJTIwVHJhbnNmb3JtZXJzTW9kZWwoJTBBJTIwJTIwJTIwJTIwbW9kZWxfaWQlM0QlMjJRd2VuJTJGUXdlbjMtTmV4dC04MEItQTNCLVRoaW5raW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwZGV2aWNlJTNEJTIyY3VkYSUyMiUyQyUwQSUyMCUyMCUyMCUyMG1heF9uZXdfdG9rZW5zJTNENTAwMCUyQyUwQSklMEFtZXNzYWdlcyUyMCUzRCUyMCU1QiU3QiUyMnJvbGUlMjIlM0ElMjAlMjJ1c2VyJTIyJTJDJTIwJTIyY29udGVudCUyMiUzQSUyMCUyMkV4cGxhaW4lMjBxdWFudHVtJTIwbWVjaGFuaWNzJTIwaW4lMjBzaW1wbGUlMjB0ZXJtcy4lMjIlN0QlNUQlMEFyZXNwb25zZSUyMCUzRCUyMGVuZ2luZShtZXNzYWdlcyUyQyUyMHN0b3Bfc2VxdWVuY2VzJTNEJTVCJTIyRU5EJTIyJTVEKSUwQXByaW50KHJlc3BvbnNlKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>engine = TransformersModel(
<span class="hljs-meta">... </span>    model_id=<span class="hljs-string">&quot;Qwen/Qwen3-Next-80B-A3B-Thinking&quot;</span>,
<span class="hljs-meta">... </span>    device=<span class="hljs-string">&quot;cuda&quot;</span>,
<span class="hljs-meta">... </span>    max_new_tokens=<span class="hljs-number">5000</span>,
<span class="hljs-meta">... </span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>messages = [{<span class="hljs-string">&quot;role&quot;</span>: <span class="hljs-string">&quot;user&quot;</span>, <span class="hljs-string">&quot;content&quot;</span>: <span class="hljs-string">&quot;Explain quantum mechanics in simple terms.&quot;</span>}]
<span class="hljs-meta">&gt;&gt;&gt; </span>response = engine(messages, stop_sequences=[<span class="hljs-string">&quot;END&quot;</span>])
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-built_in">print</span>(response)
<span class="hljs-string">&quot;Quantum mechanics is the branch of physics that studies...&quot;</span>`,wrap:!1}}),{c(){r=i("p"),r.textContent=w,U=o(),g(d.$$.fragment)},l(n){r=m(n,"P",{"data-svelte-h":!0}),p(r)!=="svelte-11lpom8"&&(r.textContent=w),U=a(n),M(d.$$.fragment,n)},m(n,J){l(n,r,J),l(n,U,J),u(d,n,J),T=!0},p:R,i(n){T||(h(d.$$.fragment,n),T=!0)},o(n){y(d.$$.fragment,n),T=!1},d(n){n&&(s(r),s(U)),f(d,n)}}}function Ho(I){let r,w="Example:",U,d,T;return d=new j({props:{code:"ZW5naW5lJTIwJTNEJTIwSW5mZXJlbmNlQ2xpZW50TW9kZWwoJTBBJTIwJTIwJTIwJTIwbW9kZWxfaWQlM0QlMjJRd2VuJTJGUXdlbjMtTmV4dC04MEItQTNCLVRoaW5raW5nJTIyJTJDJTBBJTIwJTIwJTIwJTIwcHJvdmlkZXIlM0QlMjJoeXBlcmJvbGljJTIyJTJDJTBBJTIwJTIwJTIwJTIwdG9rZW4lM0QlMjJ5b3VyX2hmX3Rva2VuX2hlcmUlMjIlMkMlMEElMjAlMjAlMjAlMjBtYXhfdG9rZW5zJTNENTAwMCUyQyUwQSklMEFtZXNzYWdlcyUyMCUzRCUyMCU1QiU3QiUyMnJvbGUlMjIlM0ElMjAlMjJ1c2VyJTIyJTJDJTIwJTIyY29udGVudCUyMiUzQSUyMCUyMkV4cGxhaW4lMjBxdWFudHVtJTIwbWVjaGFuaWNzJTIwaW4lMjBzaW1wbGUlMjB0ZXJtcy4lMjIlN0QlNUQlMEFyZXNwb25zZSUyMCUzRCUyMGVuZ2luZShtZXNzYWdlcyUyQyUyMHN0b3Bfc2VxdWVuY2VzJTNEJTVCJTIyRU5EJTIyJTVEKSUwQXByaW50KHJlc3BvbnNlKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>engine = InferenceClientModel(
<span class="hljs-meta">... </span>    model_id=<span class="hljs-string">&quot;Qwen/Qwen3-Next-80B-A3B-Thinking&quot;</span>,
<span class="hljs-meta">... </span>    provider=<span class="hljs-string">&quot;hyperbolic&quot;</span>,
<span class="hljs-meta">... </span>    token=<span class="hljs-string">&quot;your_hf_token_here&quot;</span>,
<span class="hljs-meta">... </span>    max_tokens=<span class="hljs-number">5000</span>,
<span class="hljs-meta">... </span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>messages = [{<span class="hljs-string">&quot;role&quot;</span>: <span class="hljs-string">&quot;user&quot;</span>, <span class="hljs-string">&quot;content&quot;</span>: <span class="hljs-string">&quot;Explain quantum mechanics in simple terms.&quot;</span>}]
<span class="hljs-meta">&gt;&gt;&gt; </span>response = engine(messages, stop_sequences=[<span class="hljs-string">&quot;END&quot;</span>])
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-built_in">print</span>(response)
<span class="hljs-string">&quot;Quantum mechanics is the branch of physics that studies...&quot;</span>`,wrap:!1}}),{c(){r=i("p"),r.textContent=w,U=o(),g(d.$$.fragment)},l(n){r=m(n,"P",{"data-svelte-h":!0}),p(r)!=="svelte-11lpom8"&&(r.textContent=w),U=a(n),M(d.$$.fragment,n)},m(n,J){l(n,r,J),l(n,U,J),u(d,n,J),T=!0},p:R,i(n){T||(h(d.$$.fragment,n),T=!0)},o(n){y(d.$$.fragment,n),T=!1},d(n){n&&(s(r),s(U)),f(d,n)}}}function Po(I){let r,w="Example:",U,d,T;return d=new j({props:{code:"aW1wb3J0JTIwb3MlMEFmcm9tJTIwc21vbGFnZW50cyUyMGltcG9ydCUyMENvZGVBZ2VudCUyQyUyMFdlYlNlYXJjaFRvb2wlMkMlMjBMaXRlTExNUm91dGVyTW9kZWwlMEFvcy5lbnZpcm9uJTVCJTIyT1BFTkFJX0FQSV9LRVklMjIlNUQlMjAlM0QlMjAlMjIlMjIlMEFvcy5lbnZpcm9uJTVCJTIyQVdTX0FDQ0VTU19LRVlfSUQlMjIlNUQlMjAlM0QlMjAlMjIlMjIlMEFvcy5lbnZpcm9uJTVCJTIyQVdTX1NFQ1JFVF9BQ0NFU1NfS0VZJTIyJTVEJTIwJTNEJTIwJTIyJTIyJTBBb3MuZW52aXJvbiU1QiUyMkFXU19SRUdJT04lMjIlNUQlMjAlM0QlMjAlMjIlMjIlMEFsbG1fbG9hZGJhbGFuY2VyX21vZGVsX2xpc3QlMjAlM0QlMjAlNUIlMEElMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJtb2RlbF9uYW1lJTIyJTNBJTIwJTIybW9kZWwtZ3JvdXAtMSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmxpdGVsbG1fcGFyYW1zJTIyJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybW9kZWwlMjIlM0ElMjAlMjJncHQtNG8tbWluaSUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmFwaV9rZXklMjIlM0ElMjBvcy5nZXRlbnYoJTIyT1BFTkFJX0FQSV9LRVklMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTIwJTIwJTIwJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybW9kZWxfbmFtZSUyMiUzQSUyMCUyMm1vZGVsLWdyb3VwLTElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJsaXRlbGxtX3BhcmFtcyUyMiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMm1vZGVsJTIyJTNBJTIwJTIyYmVkcm9jayUyRmFudGhyb3BpYy5jbGF1ZGUtMy1zb25uZXQtMjAyNDAyMjktdjElM0EwJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyYXdzX2FjY2Vzc19rZXlfaWQlMjIlM0ElMjBvcy5nZXRlbnYoJTIyQVdTX0FDQ0VTU19LRVlfSUQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyYXdzX3NlY3JldF9hY2Nlc3Nfa2V5JTIyJTNBJTIwb3MuZ2V0ZW52KCUyMkFXU19TRUNSRVRfQUNDRVNTX0tFWSUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJhd3NfcmVnaW9uX25hbWUlMjIlM0ElMjBvcy5nZXRlbnYoJTIyQVdTX1JFR0lPTiUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlN0QlMkMlMEElNUQlMEFtb2RlbCUyMCUzRCUyMExpdGVMTE1Sb3V0ZXJNb2RlbCglMEElMjAlMjAlMjBtb2RlbF9pZCUzRCUyMm1vZGVsLWdyb3VwLTElMjIlMkMlMEElMjAlMjAlMjBtb2RlbF9saXN0JTNEbGxtX2xvYWRiYWxhbmNlcl9tb2RlbF9saXN0JTJDJTBBJTIwJTIwJTIwY2xpZW50X2t3YXJncyUzRCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMnJvdXRpbmdfc3RyYXRlZ3klMjIlM0ElMjJzaW1wbGUtc2h1ZmZsZSUyMiUwQSUyMCUyMCUyMCU3RCUwQSklMEFhZ2VudCUyMCUzRCUyMENvZGVBZ2VudCh0b29scyUzRCU1QldlYlNlYXJjaFRvb2woKSU1RCUyQyUyMG1vZGVsJTNEbW9kZWwpJTBBYWdlbnQucnVuKCUyMkhvdyUyMG1hbnklMjBzZWNvbmRzJTIwd291bGQlMjBpdCUyMHRha2UlMjBmb3IlMjBhJTIwbGVvcGFyZCUyMGF0JTIwZnVsbCUyMHNwZWVkJTIwdG8lMjBydW4lMjB0aHJvdWdoJTIwUG9udCUyMGRlcyUyMEFydHMlM0YlMjIp",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">import</span> os
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> CodeAgent, WebSearchTool, LiteLLMRouterModel
<span class="hljs-meta">&gt;&gt;&gt; </span>os.environ[<span class="hljs-string">&quot;OPENAI_API_KEY&quot;</span>] = <span class="hljs-string">&quot;&quot;</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>os.environ[<span class="hljs-string">&quot;AWS_ACCESS_KEY_ID&quot;</span>] = <span class="hljs-string">&quot;&quot;</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>os.environ[<span class="hljs-string">&quot;AWS_SECRET_ACCESS_KEY&quot;</span>] = <span class="hljs-string">&quot;&quot;</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>os.environ[<span class="hljs-string">&quot;AWS_REGION&quot;</span>] = <span class="hljs-string">&quot;&quot;</span>
<span class="hljs-meta">&gt;&gt;&gt; </span>llm_loadbalancer_model_list = [
<span class="hljs-meta">... </span>    {
<span class="hljs-meta">... </span>        <span class="hljs-string">&quot;model_name&quot;</span>: <span class="hljs-string">&quot;model-group-1&quot;</span>,
<span class="hljs-meta">... </span>        <span class="hljs-string">&quot;litellm_params&quot;</span>: {
<span class="hljs-meta">... </span>            <span class="hljs-string">&quot;model&quot;</span>: <span class="hljs-string">&quot;gpt-4o-mini&quot;</span>,
<span class="hljs-meta">... </span>            <span class="hljs-string">&quot;api_key&quot;</span>: os.getenv(<span class="hljs-string">&quot;OPENAI_API_KEY&quot;</span>),
<span class="hljs-meta">... </span>        },
<span class="hljs-meta">... </span>    },
<span class="hljs-meta">... </span>    {
<span class="hljs-meta">... </span>        <span class="hljs-string">&quot;model_name&quot;</span>: <span class="hljs-string">&quot;model-group-1&quot;</span>,
<span class="hljs-meta">... </span>        <span class="hljs-string">&quot;litellm_params&quot;</span>: {
<span class="hljs-meta">... </span>            <span class="hljs-string">&quot;model&quot;</span>: <span class="hljs-string">&quot;bedrock/anthropic.claude-3-sonnet-20240229-v1:0&quot;</span>,
<span class="hljs-meta">... </span>            <span class="hljs-string">&quot;aws_access_key_id&quot;</span>: os.getenv(<span class="hljs-string">&quot;AWS_ACCESS_KEY_ID&quot;</span>),
<span class="hljs-meta">... </span>            <span class="hljs-string">&quot;aws_secret_access_key&quot;</span>: os.getenv(<span class="hljs-string">&quot;AWS_SECRET_ACCESS_KEY&quot;</span>),
<span class="hljs-meta">... </span>            <span class="hljs-string">&quot;aws_region_name&quot;</span>: os.getenv(<span class="hljs-string">&quot;AWS_REGION&quot;</span>),
<span class="hljs-meta">... </span>        },
<span class="hljs-meta">... </span>    },
<span class="hljs-meta">&gt;&gt;&gt; </span>]
<span class="hljs-meta">&gt;&gt;&gt; </span>model = LiteLLMRouterModel(
<span class="hljs-meta">... </span>   model_id=<span class="hljs-string">&quot;model-group-1&quot;</span>,
<span class="hljs-meta">... </span>   model_list=llm_loadbalancer_model_list,
<span class="hljs-meta">... </span>   client_kwargs={
<span class="hljs-meta">... </span>       <span class="hljs-string">&quot;routing_strategy&quot;</span>:<span class="hljs-string">&quot;simple-shuffle&quot;</span>
<span class="hljs-meta">... </span>   }
<span class="hljs-meta">&gt;&gt;&gt; </span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>agent = CodeAgent(tools=[WebSearchTool()], model=model)
<span class="hljs-meta">&gt;&gt;&gt; </span>agent.run(<span class="hljs-string">&quot;How many seconds would it take for a leopard at full speed to run through Pont des Arts?&quot;</span>)`,wrap:!1}}),{c(){r=i("p"),r.textContent=w,U=o(),g(d.$$.fragment)},l(n){r=m(n,"P",{"data-svelte-h":!0}),p(r)!=="svelte-11lpom8"&&(r.textContent=w),U=a(n),M(d.$$.fragment,n)},m(n,J){l(n,r,J),l(n,U,J),u(d,n,J),T=!0},p:R,i(n){T||(h(d.$$.fragment,n),T=!0)},o(n){y(d.$$.fragment,n),T=!1},d(n){n&&(s(r),s(U)),f(d,n)}}}function Do(I){let r,w="Creating a model instance with default settings:",U,d,T;return d=new j({props:{code:"YmVkcm9ja19tb2RlbCUyMCUzRCUyMEFtYXpvbkJlZHJvY2tNb2RlbCglMEElMjAlMjAlMjAlMjBtb2RlbF9pZCUzRCd1cy5hbWF6b24ubm92YS1wcm8tdjElM0EwJyUwQSk=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>bedrock_model = AmazonBedrockModel(
<span class="hljs-meta">... </span>    model_id=<span class="hljs-string">&#x27;us.amazon.nova-pro-v1:0&#x27;</span>
<span class="hljs-meta">... </span>)`,wrap:!1}}),{c(){r=i("p"),r.textContent=w,U=o(),g(d.$$.fragment)},l(n){r=m(n,"P",{"data-svelte-h":!0}),p(r)!=="svelte-1368o2k"&&(r.textContent=w),U=a(n),M(d.$$.fragment,n)},m(n,J){l(n,r,J),l(n,U,J),u(d,n,J),T=!0},p:R,i(n){T||(h(d.$$.fragment,n),T=!0)},o(n){y(d.$$.fragment,n),T=!1},d(n){n&&(s(r),s(U)),f(d,n)}}}function Yo(I){let r,w="Creating a model instance with a custom boto3 client:",U,d,T;return d=new j({props:{code:"aW1wb3J0JTIwYm90bzMlMEFjbGllbnQlMjAlM0QlMjBib3RvMy5jbGllbnQoJ2JlZHJvY2stcnVudGltZSclMkMlMjByZWdpb25fbmFtZSUzRCd1cy13ZXN0LTInKSUwQWJlZHJvY2tfbW9kZWwlMjAlM0QlMjBBbWF6b25CZWRyb2NrTW9kZWwoJTBBJTIwJTIwJTIwJTIwbW9kZWxfaWQlM0QndXMuYW1hem9uLm5vdmEtcHJvLXYxJTNBMCclMkMlMEElMjAlMjAlMjAlMjBjbGllbnQlM0RjbGllbnQlMEEp",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">import</span> boto3
<span class="hljs-meta">&gt;&gt;&gt; </span>client = boto3.client(<span class="hljs-string">&#x27;bedrock-runtime&#x27;</span>, region_name=<span class="hljs-string">&#x27;us-west-2&#x27;</span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>bedrock_model = AmazonBedrockModel(
<span class="hljs-meta">... </span>    model_id=<span class="hljs-string">&#x27;us.amazon.nova-pro-v1:0&#x27;</span>,
<span class="hljs-meta">... </span>    client=client
<span class="hljs-meta">... </span>)`,wrap:!1}}),{c(){r=i("p"),r.textContent=w,U=o(),g(d.$$.fragment)},l(n){r=m(n,"P",{"data-svelte-h":!0}),p(r)!=="svelte-11isg5i"&&(r.textContent=w),U=a(n),M(d.$$.fragment,n)},m(n,J){l(n,r,J),l(n,U,J),u(d,n,J),T=!0},p:R,i(n){T||(h(d.$$.fragment,n),T=!0)},o(n){y(d.$$.fragment,n),T=!1},d(n){n&&(s(r),s(U)),f(d,n)}}}function Oo(I){let r,w="Creating a model instance with client_kwargs for internal client creation:",U,d,T;return d=new j({props:{code:"YmVkcm9ja19tb2RlbCUyMCUzRCUyMEFtYXpvbkJlZHJvY2tNb2RlbCglMEElMjAlMjAlMjAlMjBtb2RlbF9pZCUzRCd1cy5hbWF6b24ubm92YS1wcm8tdjElM0EwJyUyQyUwQSUyMCUyMCUyMCUyMGNsaWVudF9rd2FyZ3MlM0QlN0IncmVnaW9uX25hbWUnJTNBJTIwJ3VzLXdlc3QtMiclMkMlMjAnZW5kcG9pbnRfdXJsJyUzQSUyMCdodHRwcyUzQSUyRiUyRmN1c3RvbS1lbmRwb2ludC5jb20nJTdEJTBBKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>bedrock_model = AmazonBedrockModel(
<span class="hljs-meta">... </span>    model_id=<span class="hljs-string">&#x27;us.amazon.nova-pro-v1:0&#x27;</span>,
<span class="hljs-meta">... </span>    client_kwargs={<span class="hljs-string">&#x27;region_name&#x27;</span>: <span class="hljs-string">&#x27;us-west-2&#x27;</span>, <span class="hljs-string">&#x27;endpoint_url&#x27;</span>: <span class="hljs-string">&#x27;https://custom-endpoint.com&#x27;</span>}
<span class="hljs-meta">... </span>)`,wrap:!1}}),{c(){r=i("p"),r.textContent=w,U=o(),g(d.$$.fragment)},l(n){r=m(n,"P",{"data-svelte-h":!0}),p(r)!=="svelte-1s85quz"&&(r.textContent=w),U=a(n),M(d.$$.fragment,n)},m(n,J){l(n,r,J),l(n,U,J),u(d,n,J),T=!0},p:R,i(n){T||(h(d.$$.fragment,n),T=!0)},o(n){y(d.$$.fragment,n),T=!1},d(n){n&&(s(r),s(U)),f(d,n)}}}function Ko(I){let r,w="Creating a model instance with inference and guardrail configurations:",U,d,T;return d=new j({props:{code:"YWRkaXRpb25hbF9hcGlfY29uZmlnJTIwJTNEJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIyaW5mZXJlbmNlQ29uZmlnJTIyJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybWF4VG9rZW5zJTIyJTNBJTIwMzAwMCUwQSUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMmd1YXJkcmFpbENvbmZpZyUyMiUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmd1YXJkcmFpbElkZW50aWZpZXIlMjIlM0ElMjAlMjJpZGVudGlmeTElMjIlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJndWFyZHJhaWxWZXJzaW9uJTIyJTNBJTIwJ3YxJyUwQSUyMCUyMCUyMCUyMCU3RCUyQyUwQSU3RCUwQWJlZHJvY2tfbW9kZWwlMjAlM0QlMjBBbWF6b25CZWRyb2NrTW9kZWwoJTBBJTIwJTIwJTIwJTIwbW9kZWxfaWQlM0QnYW50aHJvcGljLmNsYXVkZS0zLWhhaWt1LTIwMjQwMzA3LXYxJTNBMCclMkMlMEElMjAlMjAlMjAlMjAqKmFkZGl0aW9uYWxfYXBpX2NvbmZpZyUwQSk=",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>additional_api_config = {
<span class="hljs-meta">... </span>    <span class="hljs-string">&quot;inferenceConfig&quot;</span>: {
<span class="hljs-meta">... </span>        <span class="hljs-string">&quot;maxTokens&quot;</span>: <span class="hljs-number">3000</span>
<span class="hljs-meta">... </span>    },
<span class="hljs-meta">... </span>    <span class="hljs-string">&quot;guardrailConfig&quot;</span>: {
<span class="hljs-meta">... </span>        <span class="hljs-string">&quot;guardrailIdentifier&quot;</span>: <span class="hljs-string">&quot;identify1&quot;</span>,
<span class="hljs-meta">... </span>        <span class="hljs-string">&quot;guardrailVersion&quot;</span>: <span class="hljs-string">&#x27;v1&#x27;</span>
<span class="hljs-meta">... </span>    },
<span class="hljs-meta">... </span>}
<span class="hljs-meta">&gt;&gt;&gt; </span>bedrock_model = AmazonBedrockModel(
<span class="hljs-meta">... </span>    model_id=<span class="hljs-string">&#x27;anthropic.claude-3-haiku-20240307-v1:0&#x27;</span>,
<span class="hljs-meta">... </span>    **additional_api_config
<span class="hljs-meta">... </span>)`,wrap:!1}}),{c(){r=i("p"),r.textContent=w,U=o(),g(d.$$.fragment)},l(n){r=m(n,"P",{"data-svelte-h":!0}),p(r)!=="svelte-4kd7m4"&&(r.textContent=w),U=a(n),M(d.$$.fragment,n)},m(n,J){l(n,r,J),l(n,U,J),u(d,n,J),T=!0},p:R,i(n){T||(h(d.$$.fragment,n),T=!0)},o(n){y(d.$$.fragment,n),T=!1},d(n){n&&(s(r),s(U)),f(d,n)}}}function ea(I){let r,w="Example:",U,d,T;return d=new j({props:{code:"ZW5naW5lJTIwJTNEJTIwTUxYTW9kZWwoJTBBJTIwJTIwJTIwJTIwbW9kZWxfaWQlM0QlMjJtbHgtY29tbXVuaXR5JTJGUXdlbjIuNS1Db2Rlci0zMkItSW5zdHJ1Y3QtNGJpdCUyMiUyQyUwQSUyMCUyMCUyMCUyMG1heF90b2tlbnMlM0QxMDAwMCUyQyUwQSklMEFtZXNzYWdlcyUyMCUzRCUyMCU1QiUwQSUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMnJvbGUlMjIlM0ElMjAlMjJ1c2VyJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIyY29udGVudCUyMiUzQSUyMCUyMkV4cGxhaW4lMjBxdWFudHVtJTIwbWVjaGFuaWNzJTIwaW4lMjBzaW1wbGUlMjB0ZXJtcy4lMjIlMEElMjAlMjAlMjAlMjAlN0QlMEElNUQlMEFyZXNwb25zZSUyMCUzRCUyMGVuZ2luZShtZXNzYWdlcyUyQyUyMHN0b3Bfc2VxdWVuY2VzJTNEJTVCJTIyRU5EJTIyJTVEKSUwQXByaW50KHJlc3BvbnNlKQ==",highlighted:`<span class="hljs-meta">&gt;&gt;&gt; </span>engine = MLXModel(
<span class="hljs-meta">... </span>    model_id=<span class="hljs-string">&quot;mlx-community/Qwen2.5-Coder-32B-Instruct-4bit&quot;</span>,
<span class="hljs-meta">... </span>    max_tokens=<span class="hljs-number">10000</span>,
<span class="hljs-meta">... </span>)
<span class="hljs-meta">&gt;&gt;&gt; </span>messages = [
<span class="hljs-meta">... </span>    {
<span class="hljs-meta">... </span>        <span class="hljs-string">&quot;role&quot;</span>: <span class="hljs-string">&quot;user&quot;</span>,
<span class="hljs-meta">... </span>        <span class="hljs-string">&quot;content&quot;</span>: <span class="hljs-string">&quot;Explain quantum mechanics in simple terms.&quot;</span>
<span class="hljs-meta">... </span>    }
<span class="hljs-meta">... </span>]
<span class="hljs-meta">&gt;&gt;&gt; </span>response = engine(messages, stop_sequences=[<span class="hljs-string">&quot;END&quot;</span>])
<span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-built_in">print</span>(response)
<span class="hljs-string">&quot;Quantum mechanics is the branch of physics that studies...&quot;</span>`,wrap:!1}}),{c(){r=i("p"),r.textContent=w,U=o(),g(d.$$.fragment)},l(n){r=m(n,"P",{"data-svelte-h":!0}),p(r)!=="svelte-11lpom8"&&(r.textContent=w),U=a(n),M(d.$$.fragment,n)},m(n,J){l(n,r,J),l(n,U,J),u(d,n,J),T=!0},p:R,i(n){T||(h(d.$$.fragment,n),T=!0)},o(n){y(d.$$.fragment,n),T=!1},d(n){n&&(s(r),s(U)),f(d,n)}}}function ta(I){let r,w,U,d,T,n,J,hs,H,ys,ue,xl='에이전트와 도구에 대한 자세한 내용은 꼭 <a href="../index">소개 가이드</a>를 읽어보시기 바랍니다. 이 페이지는 기반 클래스에 대한 API 문서를 포함하고 있습니다.',fs,he,Us,ye,Al=`smolagents의 모든 모델 클래스는 추가 키워드 인수(<code>temperature</code>, <code>max_tokens</code>, <code>top_p</code> 등)를 인스턴스화 시점에 바로 전달할 수 있습니다.
이 파라미터들은 기반 모델의 생성 호출에 자동으로 전달되어, 창의성, 응답 길이, 샘플링 전략과 같은 모델의 동작을 설정할 수 있습니다.`,Ts,fe,Js,Ue,Nl="<code>Model</code> 클래스는 모든 모델 구현의 기반이 되는 클래스이며, 사용자 정의 모델이 에이전트와 함께 작동하기 위해 구현해야 하는 핵심 인터페이스를 제공합니다.",ws,$,Te,qn,Wt,Vl="Base class for all language model implementations.",Bn,Zt,Ql=`This abstract class defines the core interface that all model implementations must follow
to work with agents. It provides common functionality for message handling, tool integration,
and model configuration while allowing subclasses to implement their specific generation logic.`,Wn,Rt,El=`Note:
This is an abstract base class. Subclasses must implement the <code>generate()</code> method
to provide actual model inference capabilities.`,Zn,P,Rn,D,Je,Sn,St,Ll="Process the input messages and return the model’s response.",zn,Y,we,Fn,zt,ql="Sometimes APIs do not return the tool call as a specific object, so we need to parse it.",Xn,O,be,Gn,Ft,Bl="Converts the model into a JSON-compatible dictionary.",bs,Ce,Cs,je,Wl="<code>ApiModel</code> 클래스는 모든 API 기반 모델 구현의 토대가 되며, 외부 API 상호 작용, 속도 제한, 클라이언트 관리 등 모델이 상속하는 공통 기능을 제공합니다.",js,E,_e,Hn,Xt,Zl="Base class for API-based language models.",Pn,Gt,Rl=`This class serves as a foundation for implementing models that interact with
external APIs. It handles the common functionality for managing model IDs,
custom role mappings, and API client connections.`,Dn,K,Ie,Yn,Ht,Sl="Create the API client for the specific service.",_s,$e,Is,ve,zl="편의를 위해, 초기화 시 주어진 model_id에 대한 로컬 <code>transformers</code> 파이프라인을 구축하여 위 사항들을 구현하는 <code>TransformersModel</code>을 추가했습니다.",$s,ke,vs,xe,ks,Ae,Fl="기반 모델에서 지원하는 모든 키워드 인수(<code>temperature</code>, <code>max_new_tokens</code>, <code>top_p</code> 등)를 인스턴스화 시점에 직접 전달할 수 있습니다. 이들은 모델 생성 호출로 전달됩니다:",xs,Ne,As,ee,Xl="<p>사용자의 컴퓨터에 <code>transformers</code>와 <code>torch</code>가 설치되어 있어야 합니다. 설치되지 않은 경우 <code>pip install &#39;smolagents[transformers]&#39;</code>를 실행하십시오.</p>",Ns,N,Ve,On,Pt,Gl="A class that uses Hugging Face’s Transformers library for language model interaction.",Kn,Dt,Hl="This model allows you to load and use Hugging Face’s models locally using the Transformers library. It supports features like stop sequences and grammar customization.",el,Qe,Pl="<p>You must have <code>transformers</code> and <code>torch</code> installed on your machine. Please run <code>pip install &#39;smolagents[transformers]&#39;</code> if it’s not the case.</p>",tl,te,Vs,Ee,Qs,Le,Dl='<code>InferenceClientModel</code>은 LLM 실행을 위해 huggingface_hub의 <a href="https://huggingface.co/docs/huggingface_hub/main/en/guides/inference" rel="nofollow">InferenceClient</a>를 래핑합니다. 이는 Hub에서 사용할 수 있는 모든 <a href="https://huggingface.co/docs/inference-providers/index" rel="nofollow">Inference Providers</a>를 지원합니다. Cerebras, Cohere, Fal, Fireworks, HF-Inference, Hyperbolic, Nebius, Novita, Replicate, SambaNova, Together 등이 있습니다.',Es,qe,Yl="또한 <code>requests_per_minute</code> 인수를 사용하여 분당 요청 수로 속도 제한을 설정할 수 있습니다:",Ls,Be,qs,We,Bs,Ze,Ol="기반 모델에서 지원하는 모든 키워드 인수(<code>temperature</code>, <code>max_tokens</code>, <code>top_p</code> 등)를 인스턴스화 시점에 직접 전달할 수 있습니다. 이들은 모델 생성 호출로 전달됩니다:",Ws,Re,Zs,x,Se,sl,Yt,Kl="A class to interact with Hugging Face’s Inference Providers for language model interaction.",nl,Ot,eo="This model allows you to communicate with Hugging Face’s models using Inference Providers. It can be used in both serverless mode, with a dedicated endpoint, or even with a local URL, supporting features like stop sequences and grammar customization.",ll,Kt,to="Providers include Cerebras, Cohere, Fal, Fireworks, HF-Inference, Hyperbolic, Nebius, Novita, Replicate, SambaNova, Together, and more.",ol,se,al,ne,ze,rl,es,so="Create the Hugging Face client.",Rs,Fe,Ss,Xe,no=`<code>LiteLLMModel</code>은 <a href="https://www.litellm.ai/" rel="nofollow">LiteLLM</a>을 활용하여 다양한 제공업체의 100개 이상의 LLM을 지원합니다.
모델 초기화 시 키워드 인수를 전달하면, 이후 모델을 사용할 때마다 해당 설정이 적용됩니다. 예를 들어 아래에서는 <code>temperature</code>를 전달합니다. 또한 <code>requests_per_minute</code> 인수를 통해 분당 요청 수를 제한할 수도 있습니다.`,zs,Ge,Fs,W,He,il,ts,lo='Model to use <a href="https://docs.litellm.ai/docs/#litellm-python-sdk" rel="nofollow">LiteLLM Python SDK</a> to access hundreds of LLMs.',ml,le,Pe,cl,ss,oo="Create the LiteLLM client.",Xs,De,Gs,Ye,ao='<code>LiteLLMRouterModel</code>은 <a href="https://docs.litellm.ai/docs/routing" rel="nofollow">LiteLLM Router</a>를 감싼 래퍼로, 다양한 고급 라우팅 전략을 지원합니다. 예를 들어, 여러 배포 환경 간 로드 밸런싱, 큐 기반의 중요 요청 우선 처리, 쿨다운, 폴백, 지수적 백오프 재시도 같은 기본 신뢰성 조치 구현 기능을 제공합니다.',Hs,Oe,Ps,L,Ke,dl,ns,ro='Router‑based client for interacting with the <a href="https://docs.litellm.ai/docs/routing" rel="nofollow">LiteLLM Python SDK Router</a>.',pl,ls,io=`This class provides a high-level interface for distributing requests among multiple language models using
the LiteLLM SDK’s routing capabilities. It is responsible for initializing and configuring the router client,
applying custom role conversions, and managing message formatting to ensure seamless integration with various LLMs.`,gl,oe,Ds,et,Ys,tt,mo="이 클래스를 사용하면 OpenAIServer와 호환되는 모든 모델을 호출할 수 있습니다. 설정 방법은 다음과 같습니다 (<code>api_base</code> url을 다른 서버를 가리키도록 사용자 정의할 수 있습니다):",Os,st,Ks,nt,co="기반 모델에서 지원하는 모든 키워드 인수(<code>temperature</code>, <code>max_tokens</code>, <code>top_p</code> 등)를 인스턴스화 시점에 직접 전달할 수 있습니다. 이들은 모델 생성 호출로 전달됩니다:",en,lt,tn,S,ot,Ml,os,po="This model connects to an OpenAI-compatible API server.",sn,at,nn,rt,go="<code>AzureOpenAIModel</code>을 사용하면 모든 Azure OpenAI 배포에 연결할 수 있습니다.",ln,it,Mo="아래에서 설정 예시를 확인할 수 있습니다. <code>azure_endpoint</code>, <code>api_key</code>, <code>api_version</code> 인수는 환경 변수(<code>AZURE_OPENAI_ENDPOINT</code>, <code>AZURE_OPENAI_API_KEY</code>, <code>OPENAI_API_VERSION</code>)를 설정해 두면 생략할 수 있습니다.",on,mt,uo='<code>OPENAI_API_VERSION</code>에 <code>AZURE_</code> 접두사가 포함되지 않는다는 점을 주의하시기 바랍니다. 이는 기반이 되는 <a href="https://github.com/openai/openai-python" rel="nofollow">openai</a> 패키지의 설계 방식 때문입니다.',an,ct,rn,z,dt,ul,as,ho="This model connects to an Azure OpenAI deployment.",mn,pt,cn,gt,yo="<code>AmazonBedrockModel</code>은 Amazon Bedrock에 연결하고, 사용할 수 있는 모든 모델에서 에이전트를 실행할 수 있도록 지원합니다.",dn,Mt,fo="아래는 설정 예시입니다. 이 클래스는 사용자 정의를 위한 추가 옵션도 제공합니다.",pn,ut,gn,b,ht,hl,rs,Uo="A model class for interacting with Amazon Bedrock Server models through the Bedrock API.",yl,is,To=`This class provides an interface to interact with various Bedrock language models,
allowing for customized model inference, guardrail configuration, message handling,
and other parameters allowed by boto3 API.`,fl,ms,Jo="Authentication:",Ul,cs,wo="Amazon Bedrock supports multiple authentication methods:",Tl,ds,bo=`<li>Default AWS credentials:
Use the default AWS credential chain (e.g., IAM roles, IAM users).</li> <li>API Key Authentication (requires <code>boto3 &gt;= 1.39.0</code>):
Set the API key using the <code>AWS_BEARER_TOKEN_BEDROCK</code> environment variable.</li>`,Jl,yt,Co=`<p>API key support requires <code>boto3 &gt;= 1.39.0</code>.
For users not relying on API key authentication, the minimum supported version is <code>boto3 &gt;= 1.36.18</code>.</p>`,wl,ps,jo="Examples:",bl,ae,Cl,re,jl,ie,_l,me,Mn,ft,un,Ut,hn,Tt,yn,ce,_o="<p>사용자의 컴퓨터에 <code>mlx-lm</code>이 설치되어 있어야 합니다. 설치되지 않은 경우 <code>pip install &#39;smolagents[mlx-lm]&#39;</code>를 실행해 설치합니다.</p>",fn,q,Jt,Il,gs,Io="A class to interact with models loaded using MLX on Apple silicon.",$l,wt,$o="<p>You must have <code>mlx-lm</code> installed on your machine. Please run <code>pip install &#39;smolagents[mlx-lm]&#39;</code> if it’s not the case.</p>",vl,de,Un,bt,Tn,Ct,vo='빠른 LLM 추론 및 서빙을 위해 <a href="https://docs.vllm.ai/" rel="nofollow">vLLM</a>을 사용하는 모델입니다.',Jn,jt,wn,pe,ko="<p>사용자의 컴퓨터에 <code>vllm</code>이 설치되어 있어야 합니다. 설치되지 않은 경우 <code>pip install &#39;smolagents[vllm]&#39;</code>를 실행하세요.</p>",bn,F,_t,kl,Ms,xo='Model to use <a href="https://docs.vllm.ai/" rel="nofollow">vLLM</a> for fast LLM inference and serving.',Cn,It,jn,$t,Ao="자유롭게 자신만의 모델을 만들어 에이전트를 구동하는 데 사용할 수 있습니다.",_n,vt,No=`기본 <code>Model</code> 클래스를 상속받아 에이전트를 위한 모델을 만들 수 있습니다.
주요 기준은 <code>generate</code> 메소드를 오버라이드하는 것이며, 다음 두 가지 기준을 따릅니다:`,In,kt,Vo='<li>입력으로 전달되는 <code>messages</code>는 <a href="./chat_templating">메시지 형식</a>(<code>List[Dict[str, str]]</code>)을 따라야 하며 <code>.content</code> 속성을 가진 객체를 반환합니다.</li> <li><code>stop_sequences</code> 인수로 전달된 시퀀스에서 출력을 중단합니다.</li>',$n,xt,Qo=`LLM을 정의하기 위해, 기본 <code>Model</code> 클래스를 상속하는 <code>CustomModel</code> 클래스를 만들 수 있습니다.
이 클래스는 <a href="./chat_templating">메시지</a> 리스트를 받아 텍스트를 포함하는 <code>.content</code> 속성을 가진 객체를 반환하는 <code>generate</code> 메소드를 가져야 합니다. <code>generate</code> 메소드는 또한 생성을 중단할 시점을 나타내는 <code>stop_sequences</code> 인수를 받아들여야 합니다.`,vn,At,kn,Nt,Eo='또한, <code>generate</code> 메소드는 <code>grammar</code> 인수를 받아 <a href="https://huggingface.co/docs/text-generation-inference/conceptual/guidance" rel="nofollow">제약된 생성</a>을 허용하여 올바른 형식의 에이전트 출력을 강제할 수 있습니다.',xn,Vt,An,us,Nn;return T=new So({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),J=new Q({props:{title:"모델",local:"models",headingTag:"h1"}}),H=new Ro({props:{warning:!0,$$slots:{default:[Fo]},$$scope:{ctx:I}}}),he=new Q({props:{title:"모델",local:"models",headingTag:"h2"}}),fe=new Q({props:{title:"기본 모델",local:"smolagents.Model ][ smolagents.Model",headingTag:"h3"}}),Te=new A({props:{name:"class smolagents.Model",anchor:"smolagents.Model",parameters:[{name:"flatten_messages_as_text",val:": bool = False"},{name:"tool_name_key",val:": str = 'name'"},{name:"tool_arguments_key",val:": str = 'arguments'"},{name:"model_id",val:": str | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.Model.flatten_messages_as_text",description:`<strong>flatten_messages_as_text</strong> (<code>bool</code>, default <code>False</code>) &#x2014;
Whether to flatten complex message content into plain text format.`,name:"flatten_messages_as_text"},{anchor:"smolagents.Model.tool_name_key",description:`<strong>tool_name_key</strong> (<code>str</code>, default <code>&quot;name&quot;</code>) &#x2014;
The key used to extract tool names from model responses.`,name:"tool_name_key"},{anchor:"smolagents.Model.tool_arguments_key",description:`<strong>tool_arguments_key</strong> (<code>str</code>, default <code>&quot;arguments&quot;</code>) &#x2014;
The key used to extract tool arguments from model responses.`,name:"tool_arguments_key"},{anchor:"smolagents.Model.model_id",description:`<strong>model_id</strong> (<code>str</code>, <em>optional</em>) &#x2014;
Identifier for the specific model being used.`,name:"model_id"},{anchor:"smolagents.Model.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying model completion call.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L393"}}),P=new G({props:{anchor:"smolagents.Model.example",$$slots:{default:[Xo]},$$scope:{ctx:I}}}),Je=new A({props:{name:"generate",anchor:"smolagents.Model.generate",parameters:[{name:"messages",val:": list"},{name:"stop_sequences",val:": list[str] | None = None"},{name:"response_format",val:": dict[str, str] | None = None"},{name:"tools_to_call_from",val:": list[smolagents.tools.Tool] | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.Model.generate.messages",description:`<strong>messages</strong> (<code>list[dict[str, str | list[dict]]] | list[ChatMessage]</code>) &#x2014;
A list of message dictionaries to be processed. Each dictionary should have the structure <code>{&quot;role&quot;: &quot;user/system&quot;, &quot;content&quot;: &quot;message content&quot;}</code>.`,name:"messages"},{anchor:"smolagents.Model.generate.stop_sequences",description:`<strong>stop_sequences</strong> (<code>List[str]</code>, <em>optional</em>) &#x2014;
A list of strings that will stop the generation if encountered in the model&#x2019;s output.`,name:"stop_sequences"},{anchor:"smolagents.Model.generate.response_format",description:`<strong>response_format</strong> (<code>dict[str, str]</code>, <em>optional</em>) &#x2014;
The response format to use in the model&#x2019;s response.`,name:"response_format"},{anchor:"smolagents.Model.generate.tools_to_call_from",description:`<strong>tools_to_call_from</strong> (<code>List[Tool]</code>, <em>optional</em>) &#x2014;
A list of tools that the model can use to generate responses.`,name:"tools_to_call_from"},{anchor:"smolagents.Model.generate.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to be passed to the underlying model.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L494",returnDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<p>A chat message object containing the model’s response.</p>
`,returnType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>ChatMessage</code></p>
`}}),we=new A({props:{name:"parse_tool_calls",anchor:"smolagents.Model.parse_tool_calls",parameters:[{name:"message",val:": ChatMessage"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L524"}}),be=new A({props:{name:"to_dict",anchor:"smolagents.Model.to_dict",parameters:[],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L537"}}),Ce=new Q({props:{title:"API 모델",local:"smolagents.ApiModel ][ smolagents.ApiModel",headingTag:"h3"}}),_e=new A({props:{name:"class smolagents.ApiModel",anchor:"smolagents.ApiModel",parameters:[{name:"model_id",val:": str"},{name:"custom_role_conversions",val:": dict[str, str] | None = None"},{name:"client",val:": typing.Optional[typing.Any] = None"},{name:"requests_per_minute",val:": float | None = None"},{name:"retry",val:": bool = True"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.ApiModel.model_id",description:`<strong>model_id</strong> (<code>str</code>) &#x2014;
The identifier for the model to be used with the API.`,name:"model_id"},{anchor:"smolagents.ApiModel.custom_role_conversions",description:`<strong>custom_role_conversions</strong> (<code>dict[str, str</code>], <strong>optional</strong>) &#x2014;
Mapping to convert  between internal role names and API-specific role names. Defaults to None.`,name:"custom_role_conversions"},{anchor:"smolagents.ApiModel.client",description:`<strong>client</strong> (<code>Any</code>, <strong>optional</strong>) &#x2014;
Pre-configured API client instance. If not provided, a default client will be created. Defaults to None.`,name:"client"},{anchor:"smolagents.ApiModel.requests_per_minute",description:`<strong>requests_per_minute</strong> (<code>float</code>, <strong>optional</strong>) &#x2014;
Rate limit in requests per minute.`,name:"requests_per_minute"},{anchor:"smolagents.ApiModel.retry",description:`<strong>retry</strong> (<code>bool</code>, <strong>optional</strong>) &#x2014;
Wether to retry on rate limit errors, up to RETRY_MAX_ATTEMPTS times. Defaults to True.`,name:"retry"},{anchor:"smolagents.ApiModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying model completion call.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1066"}}),Ie=new A({props:{name:"create_client",anchor:"smolagents.ApiModel.create_client",parameters:[],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1111"}}),$e=new Q({props:{title:"TransformersModel",local:"smolagents.TransformersModel ][ smolagents.TransformersModel",headingTag:"h3"}}),ke=new j({props:{code:"ZnJvbSUyMHNtb2xhZ2VudHMlMjBpbXBvcnQlMjBUcmFuc2Zvcm1lcnNNb2RlbCUwQSUwQW1vZGVsJTIwJTNEJTIwVHJhbnNmb3JtZXJzTW9kZWwobW9kZWxfaWQlM0QlMjJIdWdnaW5nRmFjZVRCJTJGU21vbExNMi0zNjBNLUluc3RydWN0JTIyKSUwQSUwQXByaW50KG1vZGVsKCU1QiU3QiUyMnJvbGUlMjIlM0ElMjAlMjJ1c2VyJTIyJTJDJTIwJTIyY29udGVudCUyMiUzQSUyMCU1QiU3QiUyMnR5cGUlMjIlM0ElMjAlMjJ0ZXh0JTIyJTJDJTIwJTIydGV4dCUyMiUzQSUyMCUyMiVFQyVBMiU4QiVFQyU5NSU4NCElMjIlN0QlNUQlN0QlNUQlMkMlMjBzdG9wX3NlcXVlbmNlcyUzRCU1QiUyMiVFQyU5RCVCNCUyMiU1RCkp",highlighted:`<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> TransformersModel

model = TransformersModel(model_id=<span class="hljs-string">&quot;HuggingFaceTB/SmolLM2-360M-Instruct&quot;</span>)

<span class="hljs-built_in">print</span>(model([{<span class="hljs-string">&quot;role&quot;</span>: <span class="hljs-string">&quot;user&quot;</span>, <span class="hljs-string">&quot;content&quot;</span>: [{<span class="hljs-string">&quot;type&quot;</span>: <span class="hljs-string">&quot;text&quot;</span>, <span class="hljs-string">&quot;text&quot;</span>: <span class="hljs-string">&quot;좋아!&quot;</span>}]}], stop_sequences=[<span class="hljs-string">&quot;이&quot;</span>]))`,wrap:!1}}),xe=new j({props:{code:"JUVDJUEyJThCJUVDJTk1JTg0ISUyMCVFQyU5NSU4NCVFQiU5RSU5OCVFQyU5OSU4MCUyMCVFQSVCMCU5OQ==",highlighted:"&gt;&gt;&gt; 좋아! 아래와 같",wrap:!1}}),Ne=new j({props:{code:"bW9kZWwlMjAlM0QlMjBUcmFuc2Zvcm1lcnNNb2RlbCglMEElMjAlMjAlMjAlMjBtb2RlbF9pZCUzRCUyMkh1Z2dpbmdGYWNlVEIlMkZTbW9sTE0yLTM2ME0tSW5zdHJ1Y3QlMjIlMkMlMEElMjAlMjAlMjAlMjB0ZW1wZXJhdHVyZSUzRDAuNyUyQyUwQSUyMCUyMCUyMCUyMG1heF9uZXdfdG9rZW5zJTNEMTAwMCUwQSk=",highlighted:`model = TransformersModel(
    model_id=<span class="hljs-string">&quot;HuggingFaceTB/SmolLM2-360M-Instruct&quot;</span>,
    temperature=<span class="hljs-number">0.7</span>,
    max_new_tokens=<span class="hljs-number">1000</span>
)`,wrap:!1}}),Ve=new A({props:{name:"class smolagents.TransformersModel",anchor:"smolagents.TransformersModel",parameters:[{name:"model_id",val:": str | None = None"},{name:"device_map",val:": str | None = None"},{name:"torch_dtype",val:": str | None = None"},{name:"trust_remote_code",val:": bool = False"},{name:"model_kwargs",val:": dict[str, typing.Any] | None = None"},{name:"max_new_tokens",val:": int = 4096"},{name:"max_tokens",val:": int | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.TransformersModel.model_id",description:`<strong>model_id</strong> (<code>str</code>) &#x2014;
The Hugging Face model ID to be used for inference. This can be a path or model identifier from the Hugging Face model hub.
For example, <code>&quot;Qwen/Qwen3-Next-80B-A3B-Thinking&quot;</code>.`,name:"model_id"},{anchor:"smolagents.TransformersModel.device_map",description:`<strong>device_map</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The device_map to initialize your model with.`,name:"device_map"},{anchor:"smolagents.TransformersModel.torch_dtype",description:`<strong>torch_dtype</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The torch_dtype to initialize your model with.`,name:"torch_dtype"},{anchor:"smolagents.TransformersModel.trust_remote_code",description:`<strong>trust_remote_code</strong> (bool, default <code>False</code>) &#x2014;
Some models on the Hub require running remote code: for this model, you would have to set this flag to True.`,name:"trust_remote_code"},{anchor:"smolagents.TransformersModel.model_kwargs",description:`<strong>model_kwargs</strong> (<code>dict[str, Any]</code>, <em>optional</em>) &#x2014;
Additional keyword arguments to pass to <code>AutoModel.from_pretrained</code> (like revision, model_args, config, etc.).`,name:"model_kwargs"},{anchor:"smolagents.TransformersModel.max_new_tokens",description:`<strong>max_new_tokens</strong> (<code>int</code>, default <code>4096</code>) &#x2014;
Maximum number of new tokens to generate, ignoring the number of tokens in the prompt.`,name:"max_new_tokens"},{anchor:"smolagents.TransformersModel.max_tokens",description:`<strong>max_tokens</strong> (<code>int</code>, <em>optional</em>) &#x2014;
Alias for <code>max_new_tokens</code>. If provided, this value takes precedence.`,name:"max_tokens"},{anchor:"smolagents.TransformersModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying Transformers model generate call, such as <code>device</code>.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L793",raiseDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<ul>
<li><code>ValueError</code> —
If the model name is not provided.</li>
</ul>
`,raiseType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>ValueError</code></p>
`}}),te=new G({props:{anchor:"smolagents.TransformersModel.example",$$slots:{default:[Go]},$$scope:{ctx:I}}}),Ee=new Q({props:{title:"InferenceClientModel",local:"smolagents.InferenceClientModel ][ smolagents.InferenceClientModel",headingTag:"h3"}}),Be=new j({props:{code:"ZnJvbSUyMHNtb2xhZ2VudHMlMjBpbXBvcnQlMjBJbmZlcmVuY2VDbGllbnRNb2RlbCUwQSUwQW1lc3NhZ2VzJTIwJTNEJTIwJTVCJTBBJTIwJTIwJTdCJTIycm9sZSUyMiUzQSUyMCUyMnVzZXIlMjIlMkMlMjAlMjJjb250ZW50JTIyJTNBJTIwJTVCJTdCJTIydHlwZSUyMiUzQSUyMCUyMnRleHQlMjIlMkMlMjAlMjJ0ZXh0JTIyJTNBJTIwJTIyJUVDJTk1JTg4JUVCJTg1JTk1JUVEJTk1JTk4JUVDJTg0JUI4JUVDJTlBJTk0JTJDJTIwJUVDJTlFJTk4JTIwJUVDJUE3JTgwJUVCJTgyJUI0JUVBJUIzJUEwJTIwJUVBJUIzJTg0JUVDJThCJUEwJUVBJUIwJTgwJUVDJTlBJTk0JTNGJTIyJTdEJTVEJTdEJTBBJTVEJTBBJTBBbW9kZWwlMjAlM0QlMjBJbmZlcmVuY2VDbGllbnRNb2RlbChwcm92aWRlciUzRCUyMm5vdml0YSUyMiUyQyUyMHJlcXVlc3RzX3Blcl9taW51dGUlM0Q2MCklMEFwcmludChtb2RlbChtZXNzYWdlcykp",highlighted:`<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> InferenceClientModel

messages = [
  {<span class="hljs-string">&quot;role&quot;</span>: <span class="hljs-string">&quot;user&quot;</span>, <span class="hljs-string">&quot;content&quot;</span>: [{<span class="hljs-string">&quot;type&quot;</span>: <span class="hljs-string">&quot;text&quot;</span>, <span class="hljs-string">&quot;text&quot;</span>: <span class="hljs-string">&quot;안녕하세요, 잘 지내고 계신가요?&quot;</span>}]}
]

model = InferenceClientModel(provider=<span class="hljs-string">&quot;novita&quot;</span>, requests_per_minute=<span class="hljs-number">60</span>)
<span class="hljs-built_in">print</span>(model(messages))`,wrap:!1}}),We=new j({props:{code:"JUVDJTk1JTg4JUVCJTg1JTk1JUVEJTk1JTk4JUVDJTg0JUI4JUVDJTlBJTk0LiUyMCVFQiU4RCU5NSVFQiVCNiU4NCVFQyU5NyU5MCUyMCVFQyU5RSU5OCUyMCVFQyVBNyU4MCVFQiU4MiVCNCVFQSVCMyVBMCUyMCVFQyU5RSU4OCVFQyU4QSVCNSVFQiU4QiU4OCVFQiU4QiVBNC4=",highlighted:"&gt;&gt;&gt; 안녕하세요. 덕분에 잘 지내고 있습니다.",wrap:!1}}),Re=new j({props:{code:"bW9kZWwlMjAlM0QlMjBJbmZlcmVuY2VDbGllbnRNb2RlbCglMEElMjAlMjAlMjAlMjBwcm92aWRlciUzRCUyMm5vdml0YSUyMiUyQyUwQSUyMCUyMCUyMCUyMHJlcXVlc3RzX3Blcl9taW51dGUlM0Q2MCUyQyUwQSUyMCUyMCUyMCUyMHRlbXBlcmF0dXJlJTNEMC44JTJDJTBBJTIwJTIwJTIwJTIwbWF4X3Rva2VucyUzRDUwMCUwQSk=",highlighted:`model = InferenceClientModel(
    provider=<span class="hljs-string">&quot;novita&quot;</span>,
    requests_per_minute=<span class="hljs-number">60</span>,
    temperature=<span class="hljs-number">0.8</span>,
    max_tokens=<span class="hljs-number">500</span>
)`,wrap:!1}}),Se=new A({props:{name:"class smolagents.InferenceClientModel",anchor:"smolagents.InferenceClientModel",parameters:[{name:"model_id",val:": str = 'Qwen/Qwen3-Next-80B-A3B-Thinking'"},{name:"provider",val:": str | None = None"},{name:"token",val:": str | None = None"},{name:"timeout",val:": int = 120"},{name:"client_kwargs",val:": dict[str, typing.Any] | None = None"},{name:"custom_role_conversions",val:": dict[str, str] | None = None"},{name:"api_key",val:": str | None = None"},{name:"bill_to",val:": str | None = None"},{name:"base_url",val:": str | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.InferenceClientModel.model_id",description:`<strong>model_id</strong> (<code>str</code>, <em>optional</em>, default <code>&quot;Qwen/Qwen3-Next-80B-A3B-Thinking&quot;</code>) &#x2014;
The Hugging Face model ID to be used for inference.
This can be a model identifier from the Hugging Face model hub or a URL to a deployed Inference Endpoint.
Currently, it defaults to <code>&quot;Qwen/Qwen3-Next-80B-A3B-Thinking&quot;</code>, but this may change in the future.`,name:"model_id"},{anchor:"smolagents.InferenceClientModel.provider",description:`<strong>provider</strong> (<code>str</code>, <em>optional</em>) &#x2014;
Name of the provider to use for inference. A list of supported providers can be found in the <a href="https://huggingface.co/docs/inference-providers/index#partners" rel="nofollow">Inference Providers documentation</a>.
Defaults to &#x201C;auto&#x201D; i.e. the first of the providers available for the model, sorted by the user&#x2019;s order <a href="https://hf.co/settings/inference-providers" rel="nofollow">here</a>.
If <code>base_url</code> is passed, then <code>provider</code> is not used.`,name:"provider"},{anchor:"smolagents.InferenceClientModel.token",description:`<strong>token</strong> (<code>str</code>, <em>optional</em>) &#x2014;
Token used by the Hugging Face API for authentication. This token need to be authorized &#x2018;Make calls to the serverless Inference Providers&#x2019;.
If the model is gated (like Llama-3 models), the token also needs &#x2018;Read access to contents of all public gated repos you can access&#x2019;.
If not provided, the class will try to use environment variable &#x2018;HF_TOKEN&#x2019;, else use the token stored in the Hugging Face CLI configuration.`,name:"token"},{anchor:"smolagents.InferenceClientModel.timeout",description:`<strong>timeout</strong> (<code>int</code>, <em>optional</em>, defaults to 120) &#x2014;
Timeout for the API request, in seconds.`,name:"timeout"},{anchor:"smolagents.InferenceClientModel.client_kwargs",description:`<strong>client_kwargs</strong> (<code>dict[str, Any]</code>, <em>optional</em>) &#x2014;
Additional keyword arguments to pass to the Hugging Face InferenceClient.`,name:"client_kwargs"},{anchor:"smolagents.InferenceClientModel.custom_role_conversions",description:`<strong>custom_role_conversions</strong> (<code>dict[str, str]</code>, <em>optional</em>) &#x2014;
Custom role conversion mapping to convert message roles in others.
Useful for specific models that do not support specific message roles like &#x201C;system&#x201D;.`,name:"custom_role_conversions"},{anchor:"smolagents.InferenceClientModel.api_key",description:`<strong>api_key</strong> (<code>str</code>, <em>optional</em>) &#x2014;
Token to use for authentication. This is a duplicated argument from <code>token</code> to make <a href="/docs/smolagents/main/ko/reference/models#smolagents.InferenceClientModel">InferenceClientModel</a>
follow the same pattern as <code>openai.OpenAI</code> client. Cannot be used if <code>token</code> is set. Defaults to None.`,name:"api_key"},{anchor:"smolagents.InferenceClientModel.bill_to",description:`<strong>bill_to</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The billing account to use for the requests. By default the requests are billed on the user&#x2019;s account. Requests can only be billed to
an organization the user is a member of, and which has subscribed to Enterprise Hub.`,name:"bill_to"},{anchor:"smolagents.InferenceClientModel.base_url",description:`<strong>base_url</strong> (<code>str</code>, <code>optional</code>) &#x2014;
Base URL to run inference. This is a duplicated argument from <code>model</code> to make <a href="/docs/smolagents/main/ko/reference/models#smolagents.InferenceClientModel">InferenceClientModel</a>
follow the same pattern as <code>openai.OpenAI</code> client. Cannot be used if <code>model</code> is set. Defaults to None.`,name:"base_url"},{anchor:"smolagents.InferenceClientModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying Hugging Face InferenceClient completion call.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1382",raiseDescription:`<script context="module">export const metadata = 'undefined';<\/script>


<ul>
<li><code>ValueError</code> —
If the model name is not provided.</li>
</ul>
`,raiseType:`<script context="module">export const metadata = 'undefined';<\/script>


<p><code>ValueError</code></p>
`}}),se=new G({props:{anchor:"smolagents.InferenceClientModel.example",$$slots:{default:[Ho]},$$scope:{ctx:I}}}),ze=new A({props:{name:"create_client",anchor:"smolagents.InferenceClientModel.create_client",parameters:[],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1473"}}),Fe=new Q({props:{title:"LiteLLMModel",local:"smolagents.LiteLLMModel ][ smolagents.LiteLLMModel",headingTag:"h3"}}),Ge=new j({props:{code:"ZnJvbSUyMHNtb2xhZ2VudHMlMjBpbXBvcnQlMjBMaXRlTExNTW9kZWwlMEElMEFtZXNzYWdlcyUyMCUzRCUyMCU1QiUwQSUyMCUyMCU3QiUyMnJvbGUlMjIlM0ElMjAlMjJ1c2VyJTIyJTJDJTIwJTIyY29udGVudCUyMiUzQSUyMCU1QiU3QiUyMnR5cGUlMjIlM0ElMjAlMjJ0ZXh0JTIyJTJDJTIwJTIydGV4dCUyMiUzQSUyMCUyMiVFQyU5NSU4OCVFQiU4NSU5NSVFRCU5NSU5OCVFQyU4NCVCOCVFQyU5QSU5NCUyQyUyMCVFQyU5RSU5OCUyMCVFQyVBNyU4MCVFQiU4MiVCNCVFQSVCMyVBMCUyMCVFQSVCMyU4NCVFQyU4QiVBMCVFQSVCMCU4MCVFQyU5QSU5NCUzRiUyMiU3RCU1RCU3RCUwQSU1RCUwQSUwQW1vZGVsJTIwJTNEJTIwTGl0ZUxMTU1vZGVsKG1vZGVsX2lkJTNEJTIyYW50aHJvcGljJTJGY2xhdWRlLTMtNS1zb25uZXQtbGF0ZXN0JTIyJTJDJTIwdGVtcGVyYXR1cmUlM0QwLjIlMkMlMjBtYXhfdG9rZW5zJTNEMTAlMkMlMjByZXF1ZXN0c19wZXJfbWludXRlJTNENjApJTBBcHJpbnQobW9kZWwobWVzc2FnZXMpKQ==",highlighted:`<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> LiteLLMModel

messages = [
  {<span class="hljs-string">&quot;role&quot;</span>: <span class="hljs-string">&quot;user&quot;</span>, <span class="hljs-string">&quot;content&quot;</span>: [{<span class="hljs-string">&quot;type&quot;</span>: <span class="hljs-string">&quot;text&quot;</span>, <span class="hljs-string">&quot;text&quot;</span>: <span class="hljs-string">&quot;안녕하세요, 잘 지내고 계신가요?&quot;</span>}]}
]

model = LiteLLMModel(model_id=<span class="hljs-string">&quot;anthropic/claude-3-5-sonnet-latest&quot;</span>, temperature=<span class="hljs-number">0.2</span>, max_tokens=<span class="hljs-number">10</span>, requests_per_minute=<span class="hljs-number">60</span>)
<span class="hljs-built_in">print</span>(model(messages))`,wrap:!1}}),He=new A({props:{name:"class smolagents.LiteLLMModel",anchor:"smolagents.LiteLLMModel",parameters:[{name:"model_id",val:": str | None = None"},{name:"api_base",val:": str | None = None"},{name:"api_key",val:": str | None = None"},{name:"custom_role_conversions",val:": dict[str, str] | None = None"},{name:"flatten_messages_as_text",val:": bool | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.LiteLLMModel.model_id",description:`<strong>model_id</strong> (<code>str</code>) &#x2014;
The model identifier to use on the server (e.g. &#x201C;gpt-3.5-turbo&#x201D;).`,name:"model_id"},{anchor:"smolagents.LiteLLMModel.api_base",description:`<strong>api_base</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The base URL of the provider API to call the model.`,name:"api_base"},{anchor:"smolagents.LiteLLMModel.api_key",description:`<strong>api_key</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The API key to use for authentication.`,name:"api_key"},{anchor:"smolagents.LiteLLMModel.custom_role_conversions",description:`<strong>custom_role_conversions</strong> (<code>dict[str, str]</code>, <em>optional</em>) &#x2014;
Custom role conversion mapping to convert message roles in others.
Useful for specific models that do not support specific message roles like &#x201C;system&#x201D;.`,name:"custom_role_conversions"},{anchor:"smolagents.LiteLLMModel.flatten_messages_as_text",description:`<strong>flatten_messages_as_text</strong> (<code>bool</code>, <em>optional</em>) &#x2014; Whether to flatten messages as text.
Defaults to <code>True</code> for models that start with &#x201C;ollama&#x201D;, &#x201C;groq&#x201D;, &#x201C;cerebras&#x201D;.`,name:"flatten_messages_as_text"},{anchor:"smolagents.LiteLLMModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying LiteLLM completion call.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1131"}}),Pe=new A({props:{name:"create_client",anchor:"smolagents.LiteLLMModel.create_client",parameters:[],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1181"}}),De=new Q({props:{title:"LiteLLMRouterModel",local:"smolagents.LiteLLMRouterModel ][ smolagents.LiteLLMRouterModel",headingTag:"h3"}}),Oe=new j({props:{code:"ZnJvbSUyMHNtb2xhZ2VudHMlMjBpbXBvcnQlMjBMaXRlTExNUm91dGVyTW9kZWwlMEElMEFtZXNzYWdlcyUyMCUzRCUyMCU1QiUwQSUyMCUyMCU3QiUyMnJvbGUlMjIlM0ElMjAlMjJ1c2VyJTIyJTJDJTIwJTIyY29udGVudCUyMiUzQSUyMCU1QiU3QiUyMnR5cGUlMjIlM0ElMjAlMjJ0ZXh0JTIyJTJDJTIwJTIydGV4dCUyMiUzQSUyMCUyMiVFQyU5NSU4OCVFQiU4NSU5NSVFRCU5NSU5OCVFQyU4NCVCOCVFQyU5QSU5NCUyQyUyMCVFQyU5RSU5OCUyMCVFQyVBNyU4MCVFQiU4MiVCNCVFQSVCMyVBMCUyMCVFQSVCMyU4NCVFQyU4QiVBMCVFQSVCMCU4MCVFQyU5QSU5NCUzRiUyMiU3RCU1RCU3RCUwQSU1RCUwQSUwQW1vZGVsJTIwJTNEJTIwTGl0ZUxMTVJvdXRlck1vZGVsKCUwQSUyMCUyMCUyMCUyMG1vZGVsX2lkJTNEJTIybGxhbWEtMy4zLTcwYiUyMiUyQyUwQSUyMCUyMCUyMCUyMG1vZGVsX2xpc3QlM0QlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjJtb2RlbF9uYW1lJTIyJTNBJTIwJTIybGxhbWEtMy4zLTcwYiUyMiUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMmxpdGVsbG1fcGFyYW1zJTIyJTNBJTIwJTdCJTIybW9kZWwlMjIlM0ElMjAlMjJncm9xJTJGbGxhbWEtMy4zLTcwYiUyMiUyQyUyMCUyMmFwaV9rZXklMjIlM0ElMjBvcy5nZXRlbnYoJTIyR1JPUV9BUElfS0VZJTIyKSU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMm1vZGVsX25hbWUlMjIlM0ElMjAlMjJsbGFtYS0zLjMtNzBiJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIybGl0ZWxsbV9wYXJhbXMlMjIlM0ElMjAlN0IlMjJtb2RlbCUyMiUzQSUyMCUyMmNlcmVicmFzJTJGbGxhbWEtMy4zLTcwYiUyMiUyQyUyMCUyMmFwaV9rZXklMjIlM0ElMjBvcy5nZXRlbnYoJTIyQ0VSRUJSQVNfQVBJX0tFWSUyMiklN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlNUQlMkMlMEElMjAlMjAlMjAlMjBjbGllbnRfa3dhcmdzJTNEJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIycm91dGluZ19zdHJhdGVneSUyMiUzQSUyMCUyMnNpbXBsZS1zaHVmZmxlJTIyJTJDJTBBJTIwJTIwJTIwJTIwJTdEJTJDJTBBKSUwQXByaW50KG1vZGVsKG1lc3NhZ2VzKSk=",highlighted:`<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> LiteLLMRouterModel

messages = [
  {<span class="hljs-string">&quot;role&quot;</span>: <span class="hljs-string">&quot;user&quot;</span>, <span class="hljs-string">&quot;content&quot;</span>: [{<span class="hljs-string">&quot;type&quot;</span>: <span class="hljs-string">&quot;text&quot;</span>, <span class="hljs-string">&quot;text&quot;</span>: <span class="hljs-string">&quot;안녕하세요, 잘 지내고 계신가요?&quot;</span>}]}
]

model = LiteLLMRouterModel(
    model_id=<span class="hljs-string">&quot;llama-3.3-70b&quot;</span>,
    model_list=[
        {
            <span class="hljs-string">&quot;model_name&quot;</span>: <span class="hljs-string">&quot;llama-3.3-70b&quot;</span>,
            <span class="hljs-string">&quot;litellm_params&quot;</span>: {<span class="hljs-string">&quot;model&quot;</span>: <span class="hljs-string">&quot;groq/llama-3.3-70b&quot;</span>, <span class="hljs-string">&quot;api_key&quot;</span>: os.getenv(<span class="hljs-string">&quot;GROQ_API_KEY&quot;</span>)},
        },
        {
            <span class="hljs-string">&quot;model_name&quot;</span>: <span class="hljs-string">&quot;llama-3.3-70b&quot;</span>,
            <span class="hljs-string">&quot;litellm_params&quot;</span>: {<span class="hljs-string">&quot;model&quot;</span>: <span class="hljs-string">&quot;cerebras/llama-3.3-70b&quot;</span>, <span class="hljs-string">&quot;api_key&quot;</span>: os.getenv(<span class="hljs-string">&quot;CEREBRAS_API_KEY&quot;</span>)},
        },
    ],
    client_kwargs={
        <span class="hljs-string">&quot;routing_strategy&quot;</span>: <span class="hljs-string">&quot;simple-shuffle&quot;</span>,
    },
)
<span class="hljs-built_in">print</span>(model(messages))`,wrap:!1}}),Ke=new A({props:{name:"class smolagents.LiteLLMRouterModel",anchor:"smolagents.LiteLLMRouterModel",parameters:[{name:"model_id",val:": str"},{name:"model_list",val:": list"},{name:"client_kwargs",val:": dict[str, typing.Any] | None = None"},{name:"custom_role_conversions",val:": dict[str, str] | None = None"},{name:"flatten_messages_as_text",val:": bool | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.LiteLLMRouterModel.model_id",description:`<strong>model_id</strong> (<code>str</code>) &#x2014;
Identifier for the model group to use from the model list (e.g., &#x201C;model-group-1&#x201D;).`,name:"model_id"},{anchor:"smolagents.LiteLLMRouterModel.model_list",description:`<strong>model_list</strong> (<code>list[dict[str, Any]]</code>) &#x2014;
Model configurations to be used for routing.
Each configuration should include the model group name and any necessary parameters.
For more details, refer to the <a href="https://docs.litellm.ai/docs/routing#quick-start" rel="nofollow">LiteLLM Routing</a> documentation.`,name:"model_list"},{anchor:"smolagents.LiteLLMRouterModel.client_kwargs",description:`<strong>client_kwargs</strong> (<code>dict[str, Any]</code>, <em>optional</em>) &#x2014;
Additional configuration parameters for the Router client. For more details, see the
<a href="https://docs.litellm.ai/docs/routing" rel="nofollow">LiteLLM Routing Configurations</a>.`,name:"client_kwargs"},{anchor:"smolagents.LiteLLMRouterModel.custom_role_conversions",description:`<strong>custom_role_conversions</strong> (<code>dict[str, str]</code>, <em>optional</em>) &#x2014;
Custom role conversion mapping to convert message roles in others.
Useful for specific models that do not support specific message roles like &#x201C;system&#x201D;.`,name:"custom_role_conversions"},{anchor:"smolagents.LiteLLMRouterModel.flatten_messages_as_text",description:`<strong>flatten_messages_as_text</strong> (<code>bool</code>, <em>optional</em>) &#x2014; Whether to flatten messages as text.
Defaults to <code>True</code> for models that start with &#x201C;ollama&#x201D;, &#x201C;groq&#x201D;, &#x201C;cerebras&#x201D;.`,name:"flatten_messages_as_text"},{anchor:"smolagents.LiteLLMRouterModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying LiteLLM Router completion call.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1289"}}),oe=new G({props:{anchor:"smolagents.LiteLLMRouterModel.example",$$slots:{default:[Po]},$$scope:{ctx:I}}}),et=new Q({props:{title:"OpenAIModel",local:"smolagents.OpenAIModel ][ smolagents.OpenAIModel",headingTag:"h3"}}),st=new j({props:{code:"aW1wb3J0JTIwb3MlMEFmcm9tJTIwc21vbGFnZW50cyUyMGltcG9ydCUyME9wZW5BSU1vZGVsJTBBJTBBbW9kZWwlMjAlM0QlMjBPcGVuQUlNb2RlbCglMEElMjAlMjAlMjAlMjBtb2RlbF9pZCUzRCUyMmdwdC00byUyMiUyQyUwQSUyMCUyMCUyMCUyMGFwaV9iYXNlJTNEJTIyaHR0cHMlM0ElMkYlMkZhcGkub3BlbmFpLmNvbSUyRnYxJTIyJTJDJTBBJTIwJTIwJTIwJTIwYXBpX2tleSUzRG9zLmVudmlyb24lNUIlMjJPUEVOQUlfQVBJX0tFWSUyMiU1RCUyQyUwQSk=",highlighted:`<span class="hljs-keyword">import</span> os
<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> OpenAIModel

model = OpenAIModel(
    model_id=<span class="hljs-string">&quot;gpt-4o&quot;</span>,
    api_base=<span class="hljs-string">&quot;https://api.openai.com/v1&quot;</span>,
    api_key=os.environ[<span class="hljs-string">&quot;OPENAI_API_KEY&quot;</span>],
)`,wrap:!1}}),lt=new j({props:{code:"bW9kZWwlMjAlM0QlMjBPcGVuQUlNb2RlbCglMEElMjAlMjAlMjAlMjBtb2RlbF9pZCUzRCUyMmdwdC00byUyMiUyQyUwQSUyMCUyMCUyMCUyMGFwaV9iYXNlJTNEJTIyaHR0cHMlM0ElMkYlMkZhcGkub3BlbmFpLmNvbSUyRnYxJTIyJTJDJTBBJTIwJTIwJTIwJTIwYXBpX2tleSUzRG9zLmVudmlyb24lNUIlMjJPUEVOQUlfQVBJX0tFWSUyMiU1RCUyQyUwQSUyMCUyMCUyMCUyMHRlbXBlcmF0dXJlJTNEMC43JTJDJTBBJTIwJTIwJTIwJTIwbWF4X3Rva2VucyUzRDEwMDAlMkMlMEElMjAlMjAlMjAlMjB0b3BfcCUzRDAuOSUyQyUwQSk=",highlighted:`model = OpenAIModel(
    model_id=<span class="hljs-string">&quot;gpt-4o&quot;</span>,
    api_base=<span class="hljs-string">&quot;https://api.openai.com/v1&quot;</span>,
    api_key=os.environ[<span class="hljs-string">&quot;OPENAI_API_KEY&quot;</span>],
    temperature=<span class="hljs-number">0.7</span>,
    max_tokens=<span class="hljs-number">1000</span>,
    top_p=<span class="hljs-number">0.9</span>,
)`,wrap:!1}}),ot=new A({props:{name:"class smolagents.OpenAIModel",anchor:"smolagents.OpenAIModel",parameters:[{name:"model_id",val:": str"},{name:"api_base",val:": str | None = None"},{name:"api_key",val:": str | None = None"},{name:"organization",val:": str | None = None"},{name:"project",val:": str | None = None"},{name:"client_kwargs",val:": dict[str, typing.Any] | None = None"},{name:"custom_role_conversions",val:": dict[str, str] | None = None"},{name:"flatten_messages_as_text",val:": bool = False"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.OpenAIModel.model_id",description:`<strong>model_id</strong> (<code>str</code>) &#x2014;
The model identifier to use on the server (e.g. &#x201C;gpt-5&#x201D;).`,name:"model_id"},{anchor:"smolagents.OpenAIModel.api_base",description:`<strong>api_base</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The base URL of the OpenAI-compatible API server.`,name:"api_base"},{anchor:"smolagents.OpenAIModel.api_key",description:`<strong>api_key</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The API key to use for authentication.`,name:"api_key"},{anchor:"smolagents.OpenAIModel.organization",description:`<strong>organization</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The organization to use for the API request.`,name:"organization"},{anchor:"smolagents.OpenAIModel.project",description:`<strong>project</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The project to use for the API request.`,name:"project"},{anchor:"smolagents.OpenAIModel.client_kwargs",description:`<strong>client_kwargs</strong> (<code>dict[str, Any]</code>, <em>optional</em>) &#x2014;
Additional keyword arguments to pass to the OpenAI client (like organization, project, max_retries etc.).`,name:"client_kwargs"},{anchor:"smolagents.OpenAIModel.custom_role_conversions",description:`<strong>custom_role_conversions</strong> (<code>dict[str, str]</code>, <em>optional</em>) &#x2014;
Custom role conversion mapping to convert message roles in others.
Useful for specific models that do not support specific message roles like &#x201C;system&#x201D;.`,name:"custom_role_conversions"},{anchor:"smolagents.OpenAIModel.flatten_messages_as_text",description:`<strong>flatten_messages_as_text</strong> (<code>bool</code>, default <code>False</code>) &#x2014;
Whether to flatten messages as text.`,name:"flatten_messages_as_text"},{anchor:"smolagents.OpenAIModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying OpenAI API completion call, for instance <code>temperature</code>.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1572"}}),at=new Q({props:{title:"AzureOpenAIModel",local:"smolagents.AzureOpenAIModel ][ smolagents.AzureOpenAIModel",headingTag:"h3"}}),ct=new j({props:{code:"aW1wb3J0JTIwb3MlMEElMEFmcm9tJTIwc21vbGFnZW50cyUyMGltcG9ydCUyMEF6dXJlT3BlbkFJTW9kZWwlMEElMEFtb2RlbCUyMCUzRCUyMEF6dXJlT3BlbkFJTW9kZWwoJTBBJTIwJTIwJTIwJTIwbW9kZWxfaWQlMjAlM0QlMjBvcy5lbnZpcm9uLmdldCglMjJBWlVSRV9PUEVOQUlfTU9ERUwlMjIpJTJDJTBBJTIwJTIwJTIwJTIwYXp1cmVfZW5kcG9pbnQlM0Rvcy5lbnZpcm9uLmdldCglMjJBWlVSRV9PUEVOQUlfRU5EUE9JTlQlMjIpJTJDJTBBJTIwJTIwJTIwJTIwYXBpX2tleSUzRG9zLmVudmlyb24uZ2V0KCUyMkFaVVJFX09QRU5BSV9BUElfS0VZJTIyKSUyQyUwQSUyMCUyMCUyMCUyMGFwaV92ZXJzaW9uJTNEb3MuZW52aXJvbi5nZXQoJTIyT1BFTkFJX0FQSV9WRVJTSU9OJTIyKSUyMCUyMCUyMCUyMCUwQSk=",highlighted:`<span class="hljs-keyword">import</span> os

<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> AzureOpenAIModel

model = AzureOpenAIModel(
    model_id = os.environ.get(<span class="hljs-string">&quot;AZURE_OPENAI_MODEL&quot;</span>),
    azure_endpoint=os.environ.get(<span class="hljs-string">&quot;AZURE_OPENAI_ENDPOINT&quot;</span>),
    api_key=os.environ.get(<span class="hljs-string">&quot;AZURE_OPENAI_API_KEY&quot;</span>),
    api_version=os.environ.get(<span class="hljs-string">&quot;OPENAI_API_VERSION&quot;</span>)    
)`,wrap:!1}}),dt=new A({props:{name:"class smolagents.AzureOpenAIModel",anchor:"smolagents.AzureOpenAIModel",parameters:[{name:"model_id",val:": str"},{name:"azure_endpoint",val:": str | None = None"},{name:"api_key",val:": str | None = None"},{name:"api_version",val:": str | None = None"},{name:"client_kwargs",val:": dict[str, typing.Any] | None = None"},{name:"custom_role_conversions",val:": dict[str, str] | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.AzureOpenAIModel.model_id",description:`<strong>model_id</strong> (<code>str</code>) &#x2014;
The model deployment name to use when connecting (e.g. &#x201C;gpt-4o-mini&#x201D;).`,name:"model_id"},{anchor:"smolagents.AzureOpenAIModel.azure_endpoint",description:`<strong>azure_endpoint</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The Azure endpoint, including the resource, e.g. <code>https://example-resource.azure.openai.com/</code>. If not provided, it will be inferred from the <code>AZURE_OPENAI_ENDPOINT</code> environment variable.`,name:"azure_endpoint"},{anchor:"smolagents.AzureOpenAIModel.api_key",description:`<strong>api_key</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The API key to use for authentication. If not provided, it will be inferred from the <code>AZURE_OPENAI_API_KEY</code> environment variable.`,name:"api_key"},{anchor:"smolagents.AzureOpenAIModel.api_version",description:`<strong>api_version</strong> (<code>str</code>, <em>optional</em>) &#x2014;
The API version to use. If not provided, it will be inferred from the <code>OPENAI_API_VERSION</code> environment variable.`,name:"api_version"},{anchor:"smolagents.AzureOpenAIModel.client_kwargs",description:`<strong>client_kwargs</strong> (<code>dict[str, Any]</code>, <em>optional</em>) &#x2014;
Additional keyword arguments to pass to the AzureOpenAI client (like organization, project, max_retries etc.).`,name:"client_kwargs"},{anchor:"smolagents.AzureOpenAIModel.custom_role_conversions",description:`<strong>custom_role_conversions</strong> (<code>dict[str, str]</code>, <em>optional</em>) &#x2014;
Custom role conversion mapping to convert message roles in others.
Useful for specific models that do not support specific message roles like &#x201C;system&#x201D;.`,name:"custom_role_conversions"},{anchor:"smolagents.AzureOpenAIModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying Azure OpenAI API completion call.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1725"}}),pt=new Q({props:{title:"AmazonBedrockModel",local:"smolagents.AmazonBedrockModel ][ smolagents.AmazonBedrockModel",headingTag:"h3"}}),ut=new j({props:{code:"aW1wb3J0JTIwb3MlMEElMEFmcm9tJTIwc21vbGFnZW50cyUyMGltcG9ydCUyMEFtYXpvbkJlZHJvY2tNb2RlbCUwQSUwQW1vZGVsJTIwJTNEJTIwQW1hem9uQmVkcm9ja01vZGVsKCUwQSUyMCUyMCUyMCUyMG1vZGVsX2lkJTIwJTNEJTIwb3MuZW52aXJvbi5nZXQoJTIyQU1BWk9OX0JFRFJPQ0tfTU9ERUxfSUQlMjIpJTJDJTBBKQ==",highlighted:`<span class="hljs-keyword">import</span> os

<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> AmazonBedrockModel

model = AmazonBedrockModel(
    model_id = os.environ.get(<span class="hljs-string">&quot;AMAZON_BEDROCK_MODEL_ID&quot;</span>),
)`,wrap:!1}}),ht=new A({props:{name:"class smolagents.AmazonBedrockModel",anchor:"smolagents.AmazonBedrockModel",parameters:[{name:"model_id",val:": str"},{name:"client",val:" = None"},{name:"client_kwargs",val:": dict[str, typing.Any] | None = None"},{name:"custom_role_conversions",val:": dict[str, str] | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.AmazonBedrockModel.model_id",description:`<strong>model_id</strong> (<code>str</code>) &#x2014;
The model identifier to use on Bedrock (e.g. &#x201C;us.amazon.nova-pro-v1:0&#x201D;).`,name:"model_id"},{anchor:"smolagents.AmazonBedrockModel.client",description:`<strong>client</strong> (<code>boto3.client</code>, <em>optional</em>) &#x2014;
A custom boto3 client for AWS interactions. If not provided, a default client will be created.`,name:"client"},{anchor:"smolagents.AmazonBedrockModel.client_kwargs",description:`<strong>client_kwargs</strong> (dict[str, Any], <em>optional</em>) &#x2014;
Keyword arguments used to configure the boto3 client if it needs to be created internally.
Examples include <code>region_name</code>, <code>config</code>, or <code>endpoint_url</code>.`,name:"client_kwargs"},{anchor:"smolagents.AmazonBedrockModel.custom_role_conversions",description:`<strong>custom_role_conversions</strong> (<code>dict[str, str]</code>, <em>optional</em>) &#x2014;
Custom role conversion mapping to convert message roles in others.
Useful for specific models that do not support specific message roles like &#x201C;system&#x201D;.
Defaults to converting all roles to &#x201C;user&#x201D; role to enable using all the Bedrock models.`,name:"custom_role_conversions"},{anchor:"smolagents.AmazonBedrockModel.flatten_messages_as_text",description:`<strong>flatten_messages_as_text</strong> (<code>bool</code>, default <code>False</code>) &#x2014;
Whether to flatten messages as text.`,name:"flatten_messages_as_text"},{anchor:"smolagents.AmazonBedrockModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying Amazon Bedrock model converse call.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L1785"}}),ae=new G({props:{anchor:"smolagents.AmazonBedrockModel.example",$$slots:{default:[Do]},$$scope:{ctx:I}}}),re=new G({props:{anchor:"smolagents.AmazonBedrockModel.example-2",$$slots:{default:[Yo]},$$scope:{ctx:I}}}),ie=new G({props:{anchor:"smolagents.AmazonBedrockModel.example-3",$$slots:{default:[Oo]},$$scope:{ctx:I}}}),me=new G({props:{anchor:"smolagents.AmazonBedrockModel.example-4",$$slots:{default:[Ko]},$$scope:{ctx:I}}}),ft=new Q({props:{title:"MLXModel",local:"smolagents.MLXModel ][ smolagents.MLXModel",headingTag:"h3"}}),Ut=new j({props:{code:"ZnJvbSUyMHNtb2xhZ2VudHMlMjBpbXBvcnQlMjBNTFhNb2RlbCUwQSUwQW1vZGVsJTIwJTNEJTIwTUxYTW9kZWwobW9kZWxfaWQlM0QlMjJIdWdnaW5nRmFjZVRCJTJGU21vbExNLTEzNU0tSW5zdHJ1Y3QlMjIpJTBBJTBBcHJpbnQobW9kZWwoJTVCJTdCJTIycm9sZSUyMiUzQSUyMCUyMnVzZXIlMjIlMkMlMjAlMjJjb250ZW50JTIyJTNBJTIwJTIyJUVDJUEyJThCJUVDJTk1JTg0ISUyMiU3RCU1RCUyQyUyMHN0b3Bfc2VxdWVuY2VzJTNEJTVCJTIyJUVDJTlEJUI0JTIyJTVEKSk=",highlighted:`<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> MLXModel

model = MLXModel(model_id=<span class="hljs-string">&quot;HuggingFaceTB/SmolLM-135M-Instruct&quot;</span>)

<span class="hljs-built_in">print</span>(model([{<span class="hljs-string">&quot;role&quot;</span>: <span class="hljs-string">&quot;user&quot;</span>, <span class="hljs-string">&quot;content&quot;</span>: <span class="hljs-string">&quot;좋아!&quot;</span>}], stop_sequences=[<span class="hljs-string">&quot;이&quot;</span>]))`,wrap:!1}}),Tt=new j({props:{code:"JUVDJUEyJThCJUVDJTk1JTg0ISUyMCVFQyU5NSU4NCVFQiU5RSU5OCVFQyU5OSU4MCUyMCVFQSVCMCU5OQ==",highlighted:"&gt;&gt;&gt; 좋아! 아래와 같",wrap:!1}}),Jt=new A({props:{name:"class smolagents.MLXModel",anchor:"smolagents.MLXModel",parameters:[{name:"model_id",val:": str"},{name:"trust_remote_code",val:": bool = False"},{name:"load_kwargs",val:": dict[str, typing.Any] | None = None"},{name:"apply_chat_template_kwargs",val:": dict[str, typing.Any] | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.MLXModel.model_id",description:`<strong>model_id</strong> (str) &#x2014;
The Hugging Face model ID to be used for inference. This can be a path or model identifier from the Hugging Face model hub.`,name:"model_id"},{anchor:"smolagents.MLXModel.tool_name_key",description:`<strong>tool_name_key</strong> (str) &#x2014;
The key, which can usually be found in the model&#x2019;s chat template, for retrieving a tool name.`,name:"tool_name_key"},{anchor:"smolagents.MLXModel.tool_arguments_key",description:`<strong>tool_arguments_key</strong> (str) &#x2014;
The key, which can usually be found in the model&#x2019;s chat template, for retrieving tool arguments.`,name:"tool_arguments_key"},{anchor:"smolagents.MLXModel.trust_remote_code",description:`<strong>trust_remote_code</strong> (bool, default <code>False</code>) &#x2014;
Some models on the Hub require running remote code: for this model, you would have to set this flag to True.`,name:"trust_remote_code"},{anchor:"smolagents.MLXModel.load_kwargs",description:`<strong>load_kwargs</strong> (dict[str, Any], <em>optional</em>) &#x2014;
Additional keyword arguments to pass to the <code>mlx.lm.load</code> method when loading the model and tokenizer.`,name:"load_kwargs"},{anchor:"smolagents.MLXModel.apply_chat_template_kwargs",description:`<strong>apply_chat_template_kwargs</strong> (dict, <em>optional</em>) &#x2014;
Additional keyword arguments to pass to the <code>apply_chat_template</code> method of the tokenizer.`,name:"apply_chat_template_kwargs"},{anchor:"smolagents.MLXModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying MLX model stream_generate call, for instance <code>max_tokens</code>.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L684"}}),de=new G({props:{anchor:"smolagents.MLXModel.example",$$slots:{default:[ea]},$$scope:{ctx:I}}}),bt=new Q({props:{title:"VLLMModel",local:"smolagents.VLLMModel ][ smolagents.VLLMModel",headingTag:"h3"}}),jt=new j({props:{code:"ZnJvbSUyMHNtb2xhZ2VudHMlMjBpbXBvcnQlMjBWTExNTW9kZWwlMEElMEFtb2RlbCUyMCUzRCUyMFZMTE1Nb2RlbChtb2RlbF9pZCUzRCUyMkh1Z2dpbmdGYWNlVEIlMkZTbW9sTE0yLTM2ME0tSW5zdHJ1Y3QlMjIpJTBBJTBBcHJpbnQobW9kZWwoJTVCJTdCJTIycm9sZSUyMiUzQSUyMCUyMnVzZXIlMjIlMkMlMjAlMjJjb250ZW50JTIyJTNBJTIwJTIyJUVDJUEyJThCJUVDJTk1JTg0ISUyMiU3RCU1RCUyQyUyMHN0b3Bfc2VxdWVuY2VzJTNEJTVCJTIyJUVDJTlEJUI0JTIyJTVEKSk=",highlighted:`<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> VLLMModel

model = VLLMModel(model_id=<span class="hljs-string">&quot;HuggingFaceTB/SmolLM2-360M-Instruct&quot;</span>)

<span class="hljs-built_in">print</span>(model([{<span class="hljs-string">&quot;role&quot;</span>: <span class="hljs-string">&quot;user&quot;</span>, <span class="hljs-string">&quot;content&quot;</span>: <span class="hljs-string">&quot;좋아!&quot;</span>}], stop_sequences=[<span class="hljs-string">&quot;이&quot;</span>]))`,wrap:!1}}),_t=new A({props:{name:"class smolagents.VLLMModel",anchor:"smolagents.VLLMModel",parameters:[{name:"model_id",val:""},{name:"model_kwargs",val:": dict[str, typing.Any] | None = None"},{name:"**kwargs",val:""}],parametersDescription:[{anchor:"smolagents.VLLMModel.model_id",description:`<strong>model_id</strong> (<code>str</code>) &#x2014;
The Hugging Face model ID to be used for inference.
This can be a path or model identifier from the Hugging Face model hub.`,name:"model_id"},{anchor:"smolagents.VLLMModel.model_kwargs",description:`<strong>model_kwargs</strong> (<code>dict[str, Any]</code>, <em>optional</em>) &#x2014;
Additional keyword arguments to forward to the vLLM LLM instantiation, such as <code>revision</code>, <code>max_model_len</code>, etc.`,name:"model_kwargs"},{anchor:"smolagents.VLLMModel.*kwargs",description:`*<strong>*kwargs</strong> &#x2014;
Additional keyword arguments to forward to the underlying vLLM model generate call.`,name:"*kwargs"}],source:"https://github.com/huggingface/smolagents/blob/main/src/smolagents/models.py#L574"}}),It=new Q({props:{title:"사용자 정의 모델",local:"custom-model",headingTag:"h3"}}),At=new j({props:{code:"ZnJvbSUyMGh1Z2dpbmdmYWNlX2h1YiUyMGltcG9ydCUyMGxvZ2luJTJDJTIwSW5mZXJlbmNlQ2xpZW50JTBBJTBBZnJvbSUyMHNtb2xhZ2VudHMlMjBpbXBvcnQlMjBNb2RlbCUwQSUwQWxvZ2luKCUyMiUzQ1lPVVJfSFVHR0lOR0ZBQ0VIVUJfQVBJX1RPS0VOJTNFJTIyKSUwQSUwQW1vZGVsX2lkJTIwJTNEJTIwJTIybWV0YS1sbGFtYSUyRkxsYW1hLTMuMy03MEItSW5zdHJ1Y3QlMjIlMEElMEFjbGllbnQlMjAlM0QlMjBJbmZlcmVuY2VDbGllbnQobW9kZWwlM0Rtb2RlbF9pZCklMEElMEFjbGFzcyUyMEN1c3RvbU1vZGVsKE1vZGVsKSUzQSUwQSUyMCUyMCUyMCUyMGRlZiUyMGdlbmVyYXRlKG1lc3NhZ2VzJTJDJTIwc3RvcF9zZXF1ZW5jZXMlM0QlNUIlMjJUYXNrJTIyJTVEKSUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJlc3BvbnNlJTIwJTNEJTIwY2xpZW50LmNoYXRfY29tcGxldGlvbihtZXNzYWdlcyUyQyUyMHN0b3AlM0RzdG9wX3NlcXVlbmNlcyUyQyUyMG1heF90b2tlbnMlM0QxMDI0KSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGFuc3dlciUyMCUzRCUyMHJlc3BvbnNlLmNob2ljZXMlNUIwJTVELm1lc3NhZ2UlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjBhbnN3ZXIlMEElMEFjdXN0b21fbW9kZWwlMjAlM0QlMjBDdXN0b21Nb2RlbCgp",highlighted:`<span class="hljs-keyword">from</span> huggingface_hub <span class="hljs-keyword">import</span> login, InferenceClient

<span class="hljs-keyword">from</span> smolagents <span class="hljs-keyword">import</span> Model

login(<span class="hljs-string">&quot;&lt;YOUR_HUGGINGFACEHUB_API_TOKEN&gt;&quot;</span>)

model_id = <span class="hljs-string">&quot;meta-llama/Llama-3.3-70B-Instruct&quot;</span>

client = InferenceClient(model=model_id)

<span class="hljs-keyword">class</span> <span class="hljs-title class_">CustomModel</span>(<span class="hljs-title class_ inherited__">Model</span>):
    <span class="hljs-keyword">def</span> <span class="hljs-title function_">generate</span>(<span class="hljs-params">messages, stop_sequences=[<span class="hljs-string">&quot;Task&quot;</span>]</span>):
        response = client.chat_completion(messages, stop=stop_sequences, max_tokens=<span class="hljs-number">1024</span>)
        answer = response.choices[<span class="hljs-number">0</span>].message
        <span class="hljs-keyword">return</span> answer

custom_model = CustomModel()`,wrap:!1}}),Vt=new zo({props:{source:"https://github.com/huggingface/smolagents/blob/main/docs/source/ko/reference/models.md"}}),{c(){r=i("meta"),w=o(),U=i("p"),d=o(),g(T.$$.fragment),n=o(),g(J.$$.fragment),hs=o(),g(H.$$.fragment),ys=o(),ue=i("p"),ue.innerHTML=xl,fs=o(),g(he.$$.fragment),Us=o(),ye=i("p"),ye.innerHTML=Al,Ts=o(),g(fe.$$.fragment),Js=o(),Ue=i("p"),Ue.innerHTML=Nl,ws=o(),$=i("div"),g(Te.$$.fragment),qn=o(),Wt=i("p"),Wt.textContent=Vl,Bn=o(),Zt=i("p"),Zt.textContent=Ql,Wn=o(),Rt=i("p"),Rt.innerHTML=El,Zn=o(),g(P.$$.fragment),Rn=o(),D=i("div"),g(Je.$$.fragment),Sn=o(),St=i("p"),St.textContent=Ll,zn=o(),Y=i("div"),g(we.$$.fragment),Fn=o(),zt=i("p"),zt.textContent=ql,Xn=o(),O=i("div"),g(be.$$.fragment),Gn=o(),Ft=i("p"),Ft.textContent=Bl,bs=o(),g(Ce.$$.fragment),Cs=o(),je=i("p"),je.innerHTML=Wl,js=o(),E=i("div"),g(_e.$$.fragment),Hn=o(),Xt=i("p"),Xt.textContent=Zl,Pn=o(),Gt=i("p"),Gt.textContent=Rl,Dn=o(),K=i("div"),g(Ie.$$.fragment),Yn=o(),Ht=i("p"),Ht.textContent=Sl,_s=o(),g($e.$$.fragment),Is=o(),ve=i("p"),ve.innerHTML=zl,$s=o(),g(ke.$$.fragment),vs=o(),g(xe.$$.fragment),ks=o(),Ae=i("p"),Ae.innerHTML=Fl,xs=o(),g(Ne.$$.fragment),As=o(),ee=i("blockquote"),ee.innerHTML=Xl,Ns=o(),N=i("div"),g(Ve.$$.fragment),On=o(),Pt=i("p"),Pt.textContent=Gl,Kn=o(),Dt=i("p"),Dt.textContent=Hl,el=o(),Qe=i("blockquote"),Qe.innerHTML=Pl,tl=o(),g(te.$$.fragment),Vs=o(),g(Ee.$$.fragment),Qs=o(),Le=i("p"),Le.innerHTML=Dl,Es=o(),qe=i("p"),qe.innerHTML=Yl,Ls=o(),g(Be.$$.fragment),qs=o(),g(We.$$.fragment),Bs=o(),Ze=i("p"),Ze.innerHTML=Ol,Ws=o(),g(Re.$$.fragment),Zs=o(),x=i("div"),g(Se.$$.fragment),sl=o(),Yt=i("p"),Yt.textContent=Kl,nl=o(),Ot=i("p"),Ot.textContent=eo,ll=o(),Kt=i("p"),Kt.textContent=to,ol=o(),g(se.$$.fragment),al=o(),ne=i("div"),g(ze.$$.fragment),rl=o(),es=i("p"),es.textContent=so,Rs=o(),g(Fe.$$.fragment),Ss=o(),Xe=i("p"),Xe.innerHTML=no,zs=o(),g(Ge.$$.fragment),Fs=o(),W=i("div"),g(He.$$.fragment),il=o(),ts=i("p"),ts.innerHTML=lo,ml=o(),le=i("div"),g(Pe.$$.fragment),cl=o(),ss=i("p"),ss.textContent=oo,Xs=o(),g(De.$$.fragment),Gs=o(),Ye=i("p"),Ye.innerHTML=ao,Hs=o(),g(Oe.$$.fragment),Ps=o(),L=i("div"),g(Ke.$$.fragment),dl=o(),ns=i("p"),ns.innerHTML=ro,pl=o(),ls=i("p"),ls.textContent=io,gl=o(),g(oe.$$.fragment),Ds=o(),g(et.$$.fragment),Ys=o(),tt=i("p"),tt.innerHTML=mo,Os=o(),g(st.$$.fragment),Ks=o(),nt=i("p"),nt.innerHTML=co,en=o(),g(lt.$$.fragment),tn=o(),S=i("div"),g(ot.$$.fragment),Ml=o(),os=i("p"),os.textContent=po,sn=o(),g(at.$$.fragment),nn=o(),rt=i("p"),rt.innerHTML=go,ln=o(),it=i("p"),it.innerHTML=Mo,on=o(),mt=i("p"),mt.innerHTML=uo,an=o(),g(ct.$$.fragment),rn=o(),z=i("div"),g(dt.$$.fragment),ul=o(),as=i("p"),as.textContent=ho,mn=o(),g(pt.$$.fragment),cn=o(),gt=i("p"),gt.innerHTML=yo,dn=o(),Mt=i("p"),Mt.textContent=fo,pn=o(),g(ut.$$.fragment),gn=o(),b=i("div"),g(ht.$$.fragment),hl=o(),rs=i("p"),rs.textContent=Uo,yl=o(),is=i("p"),is.textContent=To,fl=o(),ms=i("p"),ms.textContent=Jo,Ul=o(),cs=i("p"),cs.textContent=wo,Tl=o(),ds=i("ul"),ds.innerHTML=bo,Jl=o(),yt=i("blockquote"),yt.innerHTML=Co,wl=o(),ps=i("p"),ps.textContent=jo,bl=o(),g(ae.$$.fragment),Cl=o(),g(re.$$.fragment),jl=o(),g(ie.$$.fragment),_l=o(),g(me.$$.fragment),Mn=o(),g(ft.$$.fragment),un=o(),g(Ut.$$.fragment),hn=o(),g(Tt.$$.fragment),yn=o(),ce=i("blockquote"),ce.innerHTML=_o,fn=o(),q=i("div"),g(Jt.$$.fragment),Il=o(),gs=i("p"),gs.textContent=Io,$l=o(),wt=i("blockquote"),wt.innerHTML=$o,vl=o(),g(de.$$.fragment),Un=o(),g(bt.$$.fragment),Tn=o(),Ct=i("p"),Ct.innerHTML=vo,Jn=o(),g(jt.$$.fragment),wn=o(),pe=i("blockquote"),pe.innerHTML=ko,bn=o(),F=i("div"),g(_t.$$.fragment),kl=o(),Ms=i("p"),Ms.innerHTML=xo,Cn=o(),g(It.$$.fragment),jn=o(),$t=i("p"),$t.textContent=Ao,_n=o(),vt=i("p"),vt.innerHTML=No,In=o(),kt=i("ol"),kt.innerHTML=Vo,$n=o(),xt=i("p"),xt.innerHTML=Qo,vn=o(),g(At.$$.fragment),kn=o(),Nt=i("p"),Nt.innerHTML=Eo,xn=o(),g(Vt.$$.fragment),An=o(),us=i("p"),this.h()},l(e){const t=Zo("svelte-u9bgzb",document.head);r=m(t,"META",{name:!0,content:!0}),t.forEach(s),w=a(e),U=m(e,"P",{}),k(U).forEach(s),d=a(e),M(T.$$.fragment,e),n=a(e),M(J.$$.fragment,e),hs=a(e),M(H.$$.fragment,e),ys=a(e),ue=m(e,"P",{"data-svelte-h":!0}),p(ue)!=="svelte-o4d8md"&&(ue.innerHTML=xl),fs=a(e),M(he.$$.fragment,e),Us=a(e),ye=m(e,"P",{"data-svelte-h":!0}),p(ye)!=="svelte-rink98"&&(ye.innerHTML=Al),Ts=a(e),M(fe.$$.fragment,e),Js=a(e),Ue=m(e,"P",{"data-svelte-h":!0}),p(Ue)!=="svelte-1slacaf"&&(Ue.innerHTML=Nl),ws=a(e),$=m(e,"DIV",{class:!0});var v=k($);M(Te.$$.fragment,v),qn=a(v),Wt=m(v,"P",{"data-svelte-h":!0}),p(Wt)!=="svelte-akdo2d"&&(Wt.textContent=Vl),Bn=a(v),Zt=m(v,"P",{"data-svelte-h":!0}),p(Zt)!=="svelte-fzlv7p"&&(Zt.textContent=Ql),Wn=a(v),Rt=m(v,"P",{"data-svelte-h":!0}),p(Rt)!=="svelte-1nh53b7"&&(Rt.innerHTML=El),Zn=a(v),M(P.$$.fragment,v),Rn=a(v),D=m(v,"DIV",{class:!0});var Qt=k(D);M(Je.$$.fragment,Qt),Sn=a(Qt),St=m(Qt,"P",{"data-svelte-h":!0}),p(St)!=="svelte-w01v3a"&&(St.textContent=Ll),Qt.forEach(s),zn=a(v),Y=m(v,"DIV",{class:!0});var Et=k(Y);M(we.$$.fragment,Et),Fn=a(Et),zt=m(Et,"P",{"data-svelte-h":!0}),p(zt)!=="svelte-xj9yar"&&(zt.textContent=ql),Et.forEach(s),Xn=a(v),O=m(v,"DIV",{class:!0});var Lt=k(O);M(be.$$.fragment,Lt),Gn=a(Lt),Ft=m(Lt,"P",{"data-svelte-h":!0}),p(Ft)!=="svelte-138117q"&&(Ft.textContent=Bl),Lt.forEach(s),v.forEach(s),bs=a(e),M(Ce.$$.fragment,e),Cs=a(e),je=m(e,"P",{"data-svelte-h":!0}),p(je)!=="svelte-1ofkfm8"&&(je.innerHTML=Wl),js=a(e),E=m(e,"DIV",{class:!0});var Z=k(E);M(_e.$$.fragment,Z),Hn=a(Z),Xt=m(Z,"P",{"data-svelte-h":!0}),p(Xt)!=="svelte-mqlsp2"&&(Xt.textContent=Zl),Pn=a(Z),Gt=m(Z,"P",{"data-svelte-h":!0}),p(Gt)!=="svelte-1pa0fc1"&&(Gt.textContent=Rl),Dn=a(Z),K=m(Z,"DIV",{class:!0});var qt=k(K);M(Ie.$$.fragment,qt),Yn=a(qt),Ht=m(qt,"P",{"data-svelte-h":!0}),p(Ht)!=="svelte-8ki1kt"&&(Ht.textContent=Sl),qt.forEach(s),Z.forEach(s),_s=a(e),M($e.$$.fragment,e),Is=a(e),ve=m(e,"P",{"data-svelte-h":!0}),p(ve)!=="svelte-1ax235t"&&(ve.innerHTML=zl),$s=a(e),M(ke.$$.fragment,e),vs=a(e),M(xe.$$.fragment,e),ks=a(e),Ae=m(e,"P",{"data-svelte-h":!0}),p(Ae)!=="svelte-d4w2tp"&&(Ae.innerHTML=Fl),xs=a(e),M(Ne.$$.fragment,e),As=a(e),ee=m(e,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),p(ee)!=="svelte-1o1634q"&&(ee.innerHTML=Xl),Ns=a(e),N=m(e,"DIV",{class:!0});var B=k(N);M(Ve.$$.fragment,B),On=a(B),Pt=m(B,"P",{"data-svelte-h":!0}),p(Pt)!=="svelte-1ex1ahr"&&(Pt.textContent=Gl),Kn=a(B),Dt=m(B,"P",{"data-svelte-h":!0}),p(Dt)!=="svelte-1140acn"&&(Dt.textContent=Hl),el=a(B),Qe=m(B,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),p(Qe)!=="svelte-103z9yw"&&(Qe.innerHTML=Pl),tl=a(B),M(te.$$.fragment,B),B.forEach(s),Vs=a(e),M(Ee.$$.fragment,e),Qs=a(e),Le=m(e,"P",{"data-svelte-h":!0}),p(Le)!=="svelte-1wq774g"&&(Le.innerHTML=Dl),Es=a(e),qe=m(e,"P",{"data-svelte-h":!0}),p(qe)!=="svelte-u8u7dc"&&(qe.innerHTML=Yl),Ls=a(e),M(Be.$$.fragment,e),qs=a(e),M(We.$$.fragment,e),Bs=a(e),Ze=m(e,"P",{"data-svelte-h":!0}),p(Ze)!=="svelte-72pyay"&&(Ze.innerHTML=Ol),Ws=a(e),M(Re.$$.fragment,e),Zs=a(e),x=m(e,"DIV",{class:!0});var V=k(x);M(Se.$$.fragment,V),sl=a(V),Yt=m(V,"P",{"data-svelte-h":!0}),p(Yt)!=="svelte-axkcn3"&&(Yt.textContent=Kl),nl=a(V),Ot=m(V,"P",{"data-svelte-h":!0}),p(Ot)!=="svelte-bducrc"&&(Ot.textContent=eo),ll=a(V),Kt=m(V,"P",{"data-svelte-h":!0}),p(Kt)!=="svelte-12eu297"&&(Kt.textContent=to),ol=a(V),M(se.$$.fragment,V),al=a(V),ne=m(V,"DIV",{class:!0});var Bt=k(ne);M(ze.$$.fragment,Bt),rl=a(Bt),es=m(Bt,"P",{"data-svelte-h":!0}),p(es)!=="svelte-ym2f5u"&&(es.textContent=so),Bt.forEach(s),V.forEach(s),Rs=a(e),M(Fe.$$.fragment,e),Ss=a(e),Xe=m(e,"P",{"data-svelte-h":!0}),p(Xe)!=="svelte-tl7djf"&&(Xe.innerHTML=no),zs=a(e),M(Ge.$$.fragment,e),Fs=a(e),W=m(e,"DIV",{class:!0});var X=k(W);M(He.$$.fragment,X),il=a(X),ts=m(X,"P",{"data-svelte-h":!0}),p(ts)!=="svelte-5g97zk"&&(ts.innerHTML=lo),ml=a(X),le=m(X,"DIV",{class:!0});var Vn=k(le);M(Pe.$$.fragment,Vn),cl=a(Vn),ss=m(Vn,"P",{"data-svelte-h":!0}),p(ss)!=="svelte-12r14rd"&&(ss.textContent=oo),Vn.forEach(s),X.forEach(s),Xs=a(e),M(De.$$.fragment,e),Gs=a(e),Ye=m(e,"P",{"data-svelte-h":!0}),p(Ye)!=="svelte-4gxmy4"&&(Ye.innerHTML=ao),Hs=a(e),M(Oe.$$.fragment,e),Ps=a(e),L=m(e,"DIV",{class:!0});var ge=k(L);M(Ke.$$.fragment,ge),dl=a(ge),ns=m(ge,"P",{"data-svelte-h":!0}),p(ns)!=="svelte-2o2pf3"&&(ns.innerHTML=ro),pl=a(ge),ls=m(ge,"P",{"data-svelte-h":!0}),p(ls)!=="svelte-1cq7nyu"&&(ls.textContent=io),gl=a(ge),M(oe.$$.fragment,ge),ge.forEach(s),Ds=a(e),M(et.$$.fragment,e),Ys=a(e),tt=m(e,"P",{"data-svelte-h":!0}),p(tt)!=="svelte-ohay9x"&&(tt.innerHTML=mo),Os=a(e),M(st.$$.fragment,e),Ks=a(e),nt=m(e,"P",{"data-svelte-h":!0}),p(nt)!=="svelte-72pyay"&&(nt.innerHTML=co),en=a(e),M(lt.$$.fragment,e),tn=a(e),S=m(e,"DIV",{class:!0});var Qn=k(S);M(ot.$$.fragment,Qn),Ml=a(Qn),os=m(Qn,"P",{"data-svelte-h":!0}),p(os)!=="svelte-1bc1pfc"&&(os.textContent=po),Qn.forEach(s),sn=a(e),M(at.$$.fragment,e),nn=a(e),rt=m(e,"P",{"data-svelte-h":!0}),p(rt)!=="svelte-1ow9lk4"&&(rt.innerHTML=go),ln=a(e),it=m(e,"P",{"data-svelte-h":!0}),p(it)!=="svelte-1rjppf0"&&(it.innerHTML=Mo),on=a(e),mt=m(e,"P",{"data-svelte-h":!0}),p(mt)!=="svelte-oy5vhi"&&(mt.innerHTML=uo),an=a(e),M(ct.$$.fragment,e),rn=a(e),z=m(e,"DIV",{class:!0});var En=k(z);M(dt.$$.fragment,En),ul=a(En),as=m(En,"P",{"data-svelte-h":!0}),p(as)!=="svelte-1fspdqk"&&(as.textContent=ho),En.forEach(s),mn=a(e),M(pt.$$.fragment,e),cn=a(e),gt=m(e,"P",{"data-svelte-h":!0}),p(gt)!=="svelte-1662xei"&&(gt.innerHTML=yo),dn=a(e),Mt=m(e,"P",{"data-svelte-h":!0}),p(Mt)!=="svelte-13loddx"&&(Mt.textContent=fo),pn=a(e),M(ut.$$.fragment,e),gn=a(e),b=m(e,"DIV",{class:!0});var _=k(b);M(ht.$$.fragment,_),hl=a(_),rs=m(_,"P",{"data-svelte-h":!0}),p(rs)!=="svelte-nngfd4"&&(rs.textContent=Uo),yl=a(_),is=m(_,"P",{"data-svelte-h":!0}),p(is)!=="svelte-1milklp"&&(is.textContent=To),fl=a(_),ms=m(_,"P",{"data-svelte-h":!0}),p(ms)!=="svelte-xgynbu"&&(ms.textContent=Jo),Ul=a(_),cs=m(_,"P",{"data-svelte-h":!0}),p(cs)!=="svelte-r4fpk6"&&(cs.textContent=wo),Tl=a(_),ds=m(_,"UL",{"data-svelte-h":!0}),p(ds)!=="svelte-bxyop7"&&(ds.innerHTML=bo),Jl=a(_),yt=m(_,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),p(yt)!=="svelte-ens2rm"&&(yt.innerHTML=Co),wl=a(_),ps=m(_,"P",{"data-svelte-h":!0}),p(ps)!=="svelte-kvfsh7"&&(ps.textContent=jo),bl=a(_),M(ae.$$.fragment,_),Cl=a(_),M(re.$$.fragment,_),jl=a(_),M(ie.$$.fragment,_),_l=a(_),M(me.$$.fragment,_),_.forEach(s),Mn=a(e),M(ft.$$.fragment,e),un=a(e),M(Ut.$$.fragment,e),hn=a(e),M(Tt.$$.fragment,e),yn=a(e),ce=m(e,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),p(ce)!=="svelte-1u9y8r7"&&(ce.innerHTML=_o),fn=a(e),q=m(e,"DIV",{class:!0});var Me=k(q);M(Jt.$$.fragment,Me),Il=a(Me),gs=m(Me,"P",{"data-svelte-h":!0}),p(gs)!=="svelte-t9ku5w"&&(gs.textContent=Io),$l=a(Me),wt=m(Me,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),p(wt)!=="svelte-covr82"&&(wt.innerHTML=$o),vl=a(Me),M(de.$$.fragment,Me),Me.forEach(s),Un=a(e),M(bt.$$.fragment,e),Tn=a(e),Ct=m(e,"P",{"data-svelte-h":!0}),p(Ct)!=="svelte-ubzk7d"&&(Ct.innerHTML=vo),Jn=a(e),M(jt.$$.fragment,e),wn=a(e),pe=m(e,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),p(pe)!=="svelte-1mwqlk8"&&(pe.innerHTML=ko),bn=a(e),F=m(e,"DIV",{class:!0});var Ln=k(F);M(_t.$$.fragment,Ln),kl=a(Ln),Ms=m(Ln,"P",{"data-svelte-h":!0}),p(Ms)!=="svelte-1vi10v1"&&(Ms.innerHTML=xo),Ln.forEach(s),Cn=a(e),M(It.$$.fragment,e),jn=a(e),$t=m(e,"P",{"data-svelte-h":!0}),p($t)!=="svelte-b9vf10"&&($t.textContent=Ao),_n=a(e),vt=m(e,"P",{"data-svelte-h":!0}),p(vt)!=="svelte-f8yigs"&&(vt.innerHTML=No),In=a(e),kt=m(e,"OL",{"data-svelte-h":!0}),p(kt)!=="svelte-1h9abb6"&&(kt.innerHTML=Vo),$n=a(e),xt=m(e,"P",{"data-svelte-h":!0}),p(xt)!=="svelte-cbi8op"&&(xt.innerHTML=Qo),vn=a(e),M(At.$$.fragment,e),kn=a(e),Nt=m(e,"P",{"data-svelte-h":!0}),p(Nt)!=="svelte-1r9rmzl"&&(Nt.innerHTML=Eo),xn=a(e),M(Vt.$$.fragment,e),An=a(e),us=m(e,"P",{}),k(us).forEach(s),this.h()},h(){C(r,"name","hf:doc:metadata"),C(r,"content",sa),C(D,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(Y,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(O,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C($,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(K,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(E,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ee,"class","tip"),C(Qe,"class","tip"),C(N,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ne,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(x,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(le,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(W,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(L,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(S,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(z,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(yt,"class","tip"),C(b,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(ce,"class","tip"),C(wt,"class","tip"),C(q,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8"),C(pe,"class","tip"),C(F,"class","docstring border-l-2 border-t-2 pl-4 pt-3.5 border-gray-100 rounded-tl-xl mb-6 mt-8")},m(e,t){c(document.head,r),l(e,w,t),l(e,U,t),l(e,d,t),u(T,e,t),l(e,n,t),u(J,e,t),l(e,hs,t),u(H,e,t),l(e,ys,t),l(e,ue,t),l(e,fs,t),u(he,e,t),l(e,Us,t),l(e,ye,t),l(e,Ts,t),u(fe,e,t),l(e,Js,t),l(e,Ue,t),l(e,ws,t),l(e,$,t),u(Te,$,null),c($,qn),c($,Wt),c($,Bn),c($,Zt),c($,Wn),c($,Rt),c($,Zn),u(P,$,null),c($,Rn),c($,D),u(Je,D,null),c(D,Sn),c(D,St),c($,zn),c($,Y),u(we,Y,null),c(Y,Fn),c(Y,zt),c($,Xn),c($,O),u(be,O,null),c(O,Gn),c(O,Ft),l(e,bs,t),u(Ce,e,t),l(e,Cs,t),l(e,je,t),l(e,js,t),l(e,E,t),u(_e,E,null),c(E,Hn),c(E,Xt),c(E,Pn),c(E,Gt),c(E,Dn),c(E,K),u(Ie,K,null),c(K,Yn),c(K,Ht),l(e,_s,t),u($e,e,t),l(e,Is,t),l(e,ve,t),l(e,$s,t),u(ke,e,t),l(e,vs,t),u(xe,e,t),l(e,ks,t),l(e,Ae,t),l(e,xs,t),u(Ne,e,t),l(e,As,t),l(e,ee,t),l(e,Ns,t),l(e,N,t),u(Ve,N,null),c(N,On),c(N,Pt),c(N,Kn),c(N,Dt),c(N,el),c(N,Qe),c(N,tl),u(te,N,null),l(e,Vs,t),u(Ee,e,t),l(e,Qs,t),l(e,Le,t),l(e,Es,t),l(e,qe,t),l(e,Ls,t),u(Be,e,t),l(e,qs,t),u(We,e,t),l(e,Bs,t),l(e,Ze,t),l(e,Ws,t),u(Re,e,t),l(e,Zs,t),l(e,x,t),u(Se,x,null),c(x,sl),c(x,Yt),c(x,nl),c(x,Ot),c(x,ll),c(x,Kt),c(x,ol),u(se,x,null),c(x,al),c(x,ne),u(ze,ne,null),c(ne,rl),c(ne,es),l(e,Rs,t),u(Fe,e,t),l(e,Ss,t),l(e,Xe,t),l(e,zs,t),u(Ge,e,t),l(e,Fs,t),l(e,W,t),u(He,W,null),c(W,il),c(W,ts),c(W,ml),c(W,le),u(Pe,le,null),c(le,cl),c(le,ss),l(e,Xs,t),u(De,e,t),l(e,Gs,t),l(e,Ye,t),l(e,Hs,t),u(Oe,e,t),l(e,Ps,t),l(e,L,t),u(Ke,L,null),c(L,dl),c(L,ns),c(L,pl),c(L,ls),c(L,gl),u(oe,L,null),l(e,Ds,t),u(et,e,t),l(e,Ys,t),l(e,tt,t),l(e,Os,t),u(st,e,t),l(e,Ks,t),l(e,nt,t),l(e,en,t),u(lt,e,t),l(e,tn,t),l(e,S,t),u(ot,S,null),c(S,Ml),c(S,os),l(e,sn,t),u(at,e,t),l(e,nn,t),l(e,rt,t),l(e,ln,t),l(e,it,t),l(e,on,t),l(e,mt,t),l(e,an,t),u(ct,e,t),l(e,rn,t),l(e,z,t),u(dt,z,null),c(z,ul),c(z,as),l(e,mn,t),u(pt,e,t),l(e,cn,t),l(e,gt,t),l(e,dn,t),l(e,Mt,t),l(e,pn,t),u(ut,e,t),l(e,gn,t),l(e,b,t),u(ht,b,null),c(b,hl),c(b,rs),c(b,yl),c(b,is),c(b,fl),c(b,ms),c(b,Ul),c(b,cs),c(b,Tl),c(b,ds),c(b,Jl),c(b,yt),c(b,wl),c(b,ps),c(b,bl),u(ae,b,null),c(b,Cl),u(re,b,null),c(b,jl),u(ie,b,null),c(b,_l),u(me,b,null),l(e,Mn,t),u(ft,e,t),l(e,un,t),u(Ut,e,t),l(e,hn,t),u(Tt,e,t),l(e,yn,t),l(e,ce,t),l(e,fn,t),l(e,q,t),u(Jt,q,null),c(q,Il),c(q,gs),c(q,$l),c(q,wt),c(q,vl),u(de,q,null),l(e,Un,t),u(bt,e,t),l(e,Tn,t),l(e,Ct,t),l(e,Jn,t),u(jt,e,t),l(e,wn,t),l(e,pe,t),l(e,bn,t),l(e,F,t),u(_t,F,null),c(F,kl),c(F,Ms),l(e,Cn,t),u(It,e,t),l(e,jn,t),l(e,$t,t),l(e,_n,t),l(e,vt,t),l(e,In,t),l(e,kt,t),l(e,$n,t),l(e,xt,t),l(e,vn,t),u(At,e,t),l(e,kn,t),l(e,Nt,t),l(e,xn,t),u(Vt,e,t),l(e,An,t),l(e,us,t),Nn=!0},p(e,[t]){const v={};t&2&&(v.$$scope={dirty:t,ctx:e}),H.$set(v);const Qt={};t&2&&(Qt.$$scope={dirty:t,ctx:e}),P.$set(Qt);const Et={};t&2&&(Et.$$scope={dirty:t,ctx:e}),te.$set(Et);const Lt={};t&2&&(Lt.$$scope={dirty:t,ctx:e}),se.$set(Lt);const Z={};t&2&&(Z.$$scope={dirty:t,ctx:e}),oe.$set(Z);const qt={};t&2&&(qt.$$scope={dirty:t,ctx:e}),ae.$set(qt);const B={};t&2&&(B.$$scope={dirty:t,ctx:e}),re.$set(B);const V={};t&2&&(V.$$scope={dirty:t,ctx:e}),ie.$set(V);const Bt={};t&2&&(Bt.$$scope={dirty:t,ctx:e}),me.$set(Bt);const X={};t&2&&(X.$$scope={dirty:t,ctx:e}),de.$set(X)},i(e){Nn||(h(T.$$.fragment,e),h(J.$$.fragment,e),h(H.$$.fragment,e),h(he.$$.fragment,e),h(fe.$$.fragment,e),h(Te.$$.fragment,e),h(P.$$.fragment,e),h(Je.$$.fragment,e),h(we.$$.fragment,e),h(be.$$.fragment,e),h(Ce.$$.fragment,e),h(_e.$$.fragment,e),h(Ie.$$.fragment,e),h($e.$$.fragment,e),h(ke.$$.fragment,e),h(xe.$$.fragment,e),h(Ne.$$.fragment,e),h(Ve.$$.fragment,e),h(te.$$.fragment,e),h(Ee.$$.fragment,e),h(Be.$$.fragment,e),h(We.$$.fragment,e),h(Re.$$.fragment,e),h(Se.$$.fragment,e),h(se.$$.fragment,e),h(ze.$$.fragment,e),h(Fe.$$.fragment,e),h(Ge.$$.fragment,e),h(He.$$.fragment,e),h(Pe.$$.fragment,e),h(De.$$.fragment,e),h(Oe.$$.fragment,e),h(Ke.$$.fragment,e),h(oe.$$.fragment,e),h(et.$$.fragment,e),h(st.$$.fragment,e),h(lt.$$.fragment,e),h(ot.$$.fragment,e),h(at.$$.fragment,e),h(ct.$$.fragment,e),h(dt.$$.fragment,e),h(pt.$$.fragment,e),h(ut.$$.fragment,e),h(ht.$$.fragment,e),h(ae.$$.fragment,e),h(re.$$.fragment,e),h(ie.$$.fragment,e),h(me.$$.fragment,e),h(ft.$$.fragment,e),h(Ut.$$.fragment,e),h(Tt.$$.fragment,e),h(Jt.$$.fragment,e),h(de.$$.fragment,e),h(bt.$$.fragment,e),h(jt.$$.fragment,e),h(_t.$$.fragment,e),h(It.$$.fragment,e),h(At.$$.fragment,e),h(Vt.$$.fragment,e),Nn=!0)},o(e){y(T.$$.fragment,e),y(J.$$.fragment,e),y(H.$$.fragment,e),y(he.$$.fragment,e),y(fe.$$.fragment,e),y(Te.$$.fragment,e),y(P.$$.fragment,e),y(Je.$$.fragment,e),y(we.$$.fragment,e),y(be.$$.fragment,e),y(Ce.$$.fragment,e),y(_e.$$.fragment,e),y(Ie.$$.fragment,e),y($e.$$.fragment,e),y(ke.$$.fragment,e),y(xe.$$.fragment,e),y(Ne.$$.fragment,e),y(Ve.$$.fragment,e),y(te.$$.fragment,e),y(Ee.$$.fragment,e),y(Be.$$.fragment,e),y(We.$$.fragment,e),y(Re.$$.fragment,e),y(Se.$$.fragment,e),y(se.$$.fragment,e),y(ze.$$.fragment,e),y(Fe.$$.fragment,e),y(Ge.$$.fragment,e),y(He.$$.fragment,e),y(Pe.$$.fragment,e),y(De.$$.fragment,e),y(Oe.$$.fragment,e),y(Ke.$$.fragment,e),y(oe.$$.fragment,e),y(et.$$.fragment,e),y(st.$$.fragment,e),y(lt.$$.fragment,e),y(ot.$$.fragment,e),y(at.$$.fragment,e),y(ct.$$.fragment,e),y(dt.$$.fragment,e),y(pt.$$.fragment,e),y(ut.$$.fragment,e),y(ht.$$.fragment,e),y(ae.$$.fragment,e),y(re.$$.fragment,e),y(ie.$$.fragment,e),y(me.$$.fragment,e),y(ft.$$.fragment,e),y(Ut.$$.fragment,e),y(Tt.$$.fragment,e),y(Jt.$$.fragment,e),y(de.$$.fragment,e),y(bt.$$.fragment,e),y(jt.$$.fragment,e),y(_t.$$.fragment,e),y(It.$$.fragment,e),y(At.$$.fragment,e),y(Vt.$$.fragment,e),Nn=!1},d(e){e&&(s(w),s(U),s(d),s(n),s(hs),s(ys),s(ue),s(fs),s(Us),s(ye),s(Ts),s(Js),s(Ue),s(ws),s($),s(bs),s(Cs),s(je),s(js),s(E),s(_s),s(Is),s(ve),s($s),s(vs),s(ks),s(Ae),s(xs),s(As),s(ee),s(Ns),s(N),s(Vs),s(Qs),s(Le),s(Es),s(qe),s(Ls),s(qs),s(Bs),s(Ze),s(Ws),s(Zs),s(x),s(Rs),s(Ss),s(Xe),s(zs),s(Fs),s(W),s(Xs),s(Gs),s(Ye),s(Hs),s(Ps),s(L),s(Ds),s(Ys),s(tt),s(Os),s(Ks),s(nt),s(en),s(tn),s(S),s(sn),s(nn),s(rt),s(ln),s(it),s(on),s(mt),s(an),s(rn),s(z),s(mn),s(cn),s(gt),s(dn),s(Mt),s(pn),s(gn),s(b),s(Mn),s(un),s(hn),s(yn),s(ce),s(fn),s(q),s(Un),s(Tn),s(Ct),s(Jn),s(wn),s(pe),s(bn),s(F),s(Cn),s(jn),s($t),s(_n),s(vt),s(In),s(kt),s($n),s(xt),s(vn),s(kn),s(Nt),s(xn),s(An),s(us)),s(r),f(T,e),f(J,e),f(H,e),f(he,e),f(fe,e),f(Te),f(P),f(Je),f(we),f(be),f(Ce,e),f(_e),f(Ie),f($e,e),f(ke,e),f(xe,e),f(Ne,e),f(Ve),f(te),f(Ee,e),f(Be,e),f(We,e),f(Re,e),f(Se),f(se),f(ze),f(Fe,e),f(Ge,e),f(He),f(Pe),f(De,e),f(Oe,e),f(Ke),f(oe),f(et,e),f(st,e),f(lt,e),f(ot),f(at,e),f(ct,e),f(dt),f(pt,e),f(ut,e),f(ht),f(ae),f(re),f(ie),f(me),f(ft,e),f(Ut,e),f(Tt,e),f(Jt),f(de),f(bt,e),f(jt,e),f(_t),f(It,e),f(At,e),f(Vt,e)}}}const sa='{"title":"모델","local":"models","sections":[{"title":"모델","local":"models","sections":[{"title":"기본 모델","local":"smolagents.Model ][ smolagents.Model","sections":[],"depth":3},{"title":"API 모델","local":"smolagents.ApiModel ][ smolagents.ApiModel","sections":[],"depth":3},{"title":"TransformersModel","local":"smolagents.TransformersModel ][ smolagents.TransformersModel","sections":[],"depth":3},{"title":"InferenceClientModel","local":"smolagents.InferenceClientModel ][ smolagents.InferenceClientModel","sections":[],"depth":3},{"title":"LiteLLMModel","local":"smolagents.LiteLLMModel ][ smolagents.LiteLLMModel","sections":[],"depth":3},{"title":"LiteLLMRouterModel","local":"smolagents.LiteLLMRouterModel ][ smolagents.LiteLLMRouterModel","sections":[],"depth":3},{"title":"OpenAIModel","local":"smolagents.OpenAIModel ][ smolagents.OpenAIModel","sections":[],"depth":3},{"title":"AzureOpenAIModel","local":"smolagents.AzureOpenAIModel ][ smolagents.AzureOpenAIModel","sections":[],"depth":3},{"title":"AmazonBedrockModel","local":"smolagents.AmazonBedrockModel ][ smolagents.AmazonBedrockModel","sections":[],"depth":3},{"title":"MLXModel","local":"smolagents.MLXModel ][ smolagents.MLXModel","sections":[],"depth":3},{"title":"VLLMModel","local":"smolagents.VLLMModel ][ smolagents.VLLMModel","sections":[],"depth":3},{"title":"사용자 정의 모델","local":"custom-model","sections":[],"depth":3}],"depth":2}],"depth":1}';function na(I){return qo(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class ma extends Bo{constructor(r){super(),Wo(this,r,na,ta,Lo,{})}}export{ma as component};
