Buckets:
| <meta charset="utf-8" /><meta name="hf:doc:metadata" content="{"title":"Export a model to ExecuTorch with optimum.exporters.executorch","local":"export-a-model-to-executorch-with-optimumexportersexecutorch","sections":[{"title":"Why ExecuTorch?","local":"why-executorch","sections":[],"depth":2},{"title":"Summary","local":"summary","sections":[],"depth":2},{"title":"Exporting a model to ExecuTorch using the CLI","local":"exporting-a-model-to-executorch-using-the-cli","sections":[],"depth":2}],"depth":1}"> | |
| <link href="/docs/optimum.executorch/pr_76/en/_app/immutable/assets/0.e3b0c442.css" rel="modulepreload"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/entry/start.10ba4758.js"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/chunks/scheduler.b108d059.js"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/chunks/singletons.bcde3ddc.js"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/chunks/paths.735fe247.js"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/entry/app.be1636a4.js"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/chunks/index.008de539.js"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/nodes/0.d648d14c.js"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/nodes/3.39bb7df4.js"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/chunks/CodeBlock.7b00c886.js"> | |
| <link rel="modulepreload" href="/docs/optimum.executorch/pr_76/en/_app/immutable/chunks/getInferenceSnippets.aa560e94.js"><!-- HEAD_svelte-u9bgzb_START --><meta name="hf:doc:metadata" content="{"title":"Export a model to ExecuTorch with optimum.exporters.executorch","local":"export-a-model-to-executorch-with-optimumexportersexecutorch","sections":[{"title":"Why ExecuTorch?","local":"why-executorch","sections":[],"depth":2},{"title":"Summary","local":"summary","sections":[],"depth":2},{"title":"Exporting a model to ExecuTorch using the CLI","local":"exporting-a-model-to-executorch-using-the-cli","sections":[],"depth":2}],"depth":1}"><!-- HEAD_svelte-u9bgzb_END --> <p></p> <h1 class="relative group"><a id="export-a-model-to-executorch-with-optimumexportersexecutorch" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#export-a-model-to-executorch-with-optimumexportersexecutorch"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Export a model to ExecuTorch with optimum.exporters.executorch</span></h1> <p data-svelte-h="svelte-1fbk8i5">If you need to deploy 🤗 Transformers models for on-device use cases, we recommend | |
| exporting them to a serialized format that can be distributed and executed on specialized | |
| runtimes and hardware. In this guide, we’ll show you how to export these | |
| models to <a href="https://pytorch.org/executorch/main/intro-overview.html" rel="nofollow">ExecuTorch</a>.</p> <h2 class="relative group"><a id="why-executorch" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#why-executorch"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Why ExecuTorch?</span></h2> <p data-svelte-h="svelte-iomsxm">ExecuTorch is the ideal solution for deploying PyTorch models on edge devices, offering a streamlined process from | |
| export to deployment without leaving PyTorch ecosystem.</p> <p data-svelte-h="svelte-1veo8t7">Supporting on-device AI presents unique challenges with diverse hardware, critical power requirements, low/no internet | |
| connectivity, and realtime processing needs. These constraints have historically prevented or slowed down the creation | |
| of scalable and performant on-device AI solutions. We designed ExecuTorch, backed by our industry partners like Meta, | |
| Arm, Apple, Qualcomm, MediaTek, etc. to be highly portable and provide superior developer productivity without losing on | |
| performance.</p> <h2 class="relative group"><a id="summary" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#summary"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Summary</span></h2> <p data-svelte-h="svelte-yv2dgc">Exporting a PyTorch model to ExecuTorch is as simple as</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg class="" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg> <div class="absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0"><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent; "></div> Copied</div></button></div> <pre class=""><!-- HTML_TAG_START -->optimum-cli <span class="hljs-built_in">export</span> executorch \ | |
| --model HuggingFaceTB/SmolLM2-135M \ | |
| --task text-generation \ | |
| --recipe xnnpack \ | |
| --output_dir hf_smollm2 \ | |
| --use_custom_sdpa<!-- HTML_TAG_END --></pre></div> <p data-svelte-h="svelte-b35baa">Check out the help for more options:</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg class="" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg> <div class="absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0"><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent; "></div> Copied</div></button></div> <pre class=""><!-- HTML_TAG_START -->optimum-cli <span class="hljs-built_in">export</span> executorch --<span class="hljs-built_in">help</span><!-- HTML_TAG_END --></pre></div> <h2 class="relative group"><a id="exporting-a-model-to-executorch-using-the-cli" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#exporting-a-model-to-executorch-using-the-cli"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Exporting a model to ExecuTorch using the CLI</span></h2> <p data-svelte-h="svelte-1h7jnae">The Optimum ExecuTorch export can be used through Optimum command-line:</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg class="" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg> <div class="absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0"><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent; "></div> Copied</div></button></div> <pre class=""><!-- HTML_TAG_START -->optimum-cli <span class="hljs-built_in">export</span> executorch --<span class="hljs-built_in">help</span> | |
| usage: optimum-cli <span class="hljs-built_in">export</span> executorch [-h] -m MODEL [-o OUTPUT_DIR] [--task TASK] [--recipe RECIPE] | |
| options: | |
| -h, --<span class="hljs-built_in">help</span> show this <span class="hljs-built_in">help</span> message and <span class="hljs-built_in">exit</span> | |
| Required arguments: | |
| -m MODEL, --model MODEL | |
| Model ID on huggingface.co or path on disk to load model from. | |
| -o OUTPUT_DIR, --output_dir OUTPUT_DIR | |
| Path indicating the directory <span class="hljs-built_in">where</span> to store the generated ExecuTorch model. | |
| --task TASK The task to <span class="hljs-built_in">export</span> the model <span class="hljs-keyword">for</span>. Available tasks depend on the model, but are among: [<span class="hljs-string">'audio-classification'</span>, <span class="hljs-string">'feature-extraction'</span>, <span class="hljs-string">'image-to-text'</span>, | |
| <span class="hljs-string">'sentence-similarity'</span>, <span class="hljs-string">'depth-estimation'</span>, <span class="hljs-string">'image-segmentation'</span>, <span class="hljs-string">'audio-frame-classification'</span>, <span class="hljs-string">'masked-im'</span>, <span class="hljs-string">'semantic-segmentation'</span>, <span class="hljs-string">'text-classification'</span>, | |
| <span class="hljs-string">'audio-xvector'</span>, <span class="hljs-string">'mask-generation'</span>, <span class="hljs-string">'question-answering'</span>, <span class="hljs-string">'text-to-audio'</span>, <span class="hljs-string">'automatic-speech-recognition'</span>, <span class="hljs-string">'image-to-image'</span>, <span class="hljs-string">'multiple-choice'</span>, <span class="hljs-string">'image- | |
| classification'</span>, <span class="hljs-string">'text2text-generation'</span>, <span class="hljs-string">'token-classification'</span>, <span class="hljs-string">'object-detection'</span>, <span class="hljs-string">'zero-shot-object-detection'</span>, <span class="hljs-string">'zero-shot-image-classification'</span>, <span class="hljs-string">'text- | |
| generation'</span>, <span class="hljs-string">'fill-mask'</span>]. | |
| --recipe RECIPE Pre-defined recipes <span class="hljs-keyword">for</span> <span class="hljs-built_in">export</span> to ExecuTorch. Defaults to <span class="hljs-string">"xnnpack"</span>. | |
| --use_custom_sdpa For decoder-only models to use custom sdpa with static kv cache to boost performance. Defaults to False. | |
| <!-- HTML_TAG_END --></pre></div> <p data-svelte-h="svelte-1162q3v">You should see a <code>model.pte</code> file is stored under “./hf_smollm2/“:</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg class="" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg> <div class="absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0"><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent; "></div> Copied</div></button></div> <pre class=""><!-- HTML_TAG_START -->hf_smollm2/ | |
| └── model.pte<!-- HTML_TAG_END --></pre></div> <p data-svelte-h="svelte-6yddcz">This will fetch the model on the Hub and exports the PyTorch model with the specialized recipe. The resulting <code>model.pte</code> file can then be run on the <a href="https://pytorch.org/executorch/main/tutorial-xnnpack-delegate-lowering.html" rel="nofollow">XNNPACK backend</a>, or on many | |
| other ExecuTorh supported backends if exports with different recipes, e.g. Apple’s <a href="https://pytorch.org/executorch/main/build-run-coreml.html" rel="nofollow">Core ML</a> or <a href="https://pytorch.org/executorch/main/build-run-mps.html" rel="nofollow">MPS</a>, <a href="https://pytorch.org/executorch/main/build-run-qualcomm-ai-engine-direct-backend.html" rel="nofollow">Qualcomm’s SoCs</a>, <a href="https://pytorch.org/executorch/main/executorch-arm-delegate-tutorial.html" rel="nofollow">ARM’s Ethos-U</a>, <a href="https://pytorch.org/executorch/main/build-run-xtensa.html" rel="nofollow">Xtensa HiFi4 DSP</a>, <a href="https://pytorch.org/executorch/main/build-run-vulkan.html" rel="nofollow">Vulkan GPU</a>, <a href="https://pytorch.org/executorch/main/build-run-mediatek-backend.html" rel="nofollow">MediaTek</a>, etc.</p> <p data-svelte-h="svelte-1ss0ywk">For example, we can load and run the model with <a href="https://pytorch.org/executorch/main/runtime-overview.html" rel="nofollow">ExecuTorch Runtime</a> using the <code>optimum.executorch</code> package as follows:</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg class="" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg> <div class="absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0"><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent; "></div> Copied</div></button></div> <pre class=""><!-- HTML_TAG_START --><span class="hljs-keyword">from</span> transformers <span class="hljs-keyword">import</span> AutoTokenizer | |
| <span class="hljs-keyword">from</span> optimum.executorch <span class="hljs-keyword">import</span> ExecuTorchModelForCausalLM | |
| tokenizer = AutoTokenizer.from_pretrained(<span class="hljs-string">"HuggingFaceTB/SmolLM2-135M"</span>) | |
| model = ExecuTorchModelForCausalLM.from_pretrained(<span class="hljs-string">"hf_smollm2/"</span>) | |
| prompt = <span class="hljs-string">"Simply put, the theory of relativity states that"</span> | |
| <span class="hljs-built_in">print</span>(<span class="hljs-string">f"\nGenerated texts:\n\t<span class="hljs-subst">{model.text_generation(tokenizer=tokenizer, prompt=prompt, max_seq_len=<span class="hljs-number">45</span>)}</span>"</span>)<!-- HTML_TAG_END --></pre></div> <p data-svelte-h="svelte-wzt3ch">As you can see, converting a model to ExecuTorch does not mean leaving the Hugging Face ecosystem. You end up with a similar API as regular 🤗 Transformers models!</p> <p data-svelte-h="svelte-o488cl">In case your model wasn’t already exported to ExecuTorch, it can also be converted on-the-fly when loading your model:</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg class="" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg> <div class="absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0"><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent; "></div> Copied</div></button></div> <pre class=""><!-- HTML_TAG_START --><span class="hljs-keyword">from</span> optimum.executorch <span class="hljs-keyword">import</span> ExecuTorchModelForCausalLM | |
| model = ExecuTorchModelForCausalLM.from_pretrained(<span class="hljs-string">"HuggingFaceTB/SmolLM2-135M"</span>, recipe=<span class="hljs-string">"xnnpack"</span>, attn_implementation=<span class="hljs-string">"custom_sdpa"</span>)<!-- HTML_TAG_END --></pre></div> <p></p> | |
| <script> | |
| { | |
| __sveltekit_1mtgtva = { | |
| assets: "/docs/optimum.executorch/pr_76/en", | |
| base: "/docs/optimum.executorch/pr_76/en", | |
| env: {} | |
| }; | |
| const element = document.currentScript.parentElement; | |
| const data = [null,null]; | |
| Promise.all([ | |
| import("/docs/optimum.executorch/pr_76/en/_app/immutable/entry/start.10ba4758.js"), | |
| import("/docs/optimum.executorch/pr_76/en/_app/immutable/entry/app.be1636a4.js") | |
| ]).then(([kit, app]) => { | |
| kit.start(app, element, { | |
| node_ids: [0, 3], | |
| data, | |
| form: null, | |
| error: null | |
| }); | |
| }); | |
| } | |
| </script> | |
Xet Storage Details
- Size:
- 23.1 kB
- Xet hash:
- 0727eb55fe07d0dfc5e13213ca5d6653fb544ad07dba112ec5de3e8cec07b73a
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.