# Overview

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by Microsoft Visio, SVG Export ai-developer-workflow.svg ai-ml-developer-workflow -->
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="20.0521in" height="2.58498in" viewbox="0 0 1443.75 186.119" xml:space="preserve" color-interpolation-filters="sRGB" class="st9" aria-label="../_images/ai-developer-workflow.svg" svgdefaultwidth="1443"><v:documentproperties v:langid="1033" v:viewmarkup="false">	<v:userdefs>		<v:ud v:nameu="msvNoAutoConnect" v:val="VT0(1):26"></v:ud>	</v:userdefs></v:documentproperties>
<style>.svg-1 .st1 { fill: #ffffff; stroke: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 0.75 }
.svg-1 .st2 { fill: #6280cc; stroke: #6280cc; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2 }
.svg-1 .st3 { fill: #ffffff; font-family: Roboto; font-size: 1.5em; font-weight: bold }
.svg-1 .st4 { font-size: 1em }
.svg-1 .st5 { marker-end: url("#mrkr13-26"); stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2 }
.svg-1 .st6 { fill: #000000; fill-opacity: 1; stroke: #000000; stroke-opacity: 1; stroke-width: 0.44247787610619 }
.svg-1 .st7 { marker-end: url("#mrkr13-37"); stroke: #000000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5 }
.svg-1 .st8 { fill: #000000; fill-opacity: 1; stroke: #000000; stroke-opacity: 1; stroke-width: 0.37313432835821 }
.svg-1 .st9 { fill: none; fill-rule: evenodd; font-size: 12px; overflow: visible; stroke-linecap: square; stroke-miterlimit: 3 }</style>
<defs id="Markers">	<g id="lend13">		<path d="M 3 1 L 0 0 L 3 -1 L 3 1 " style="stroke:none"></path>	</g>	<marker id="mrkr13-26" class="st6" v:arrowtype="13" v:arrowsize="2" v:setback="6.78" refx="-6.78" orient="auto" markerunits="strokeWidth" overflow="visible">		<use xlink:href="#lend13" transform="scale(-2.26,-2.26) "></use>	</marker>	<marker id="mrkr13-37" class="st8" v:arrowtype="13" v:arrowsize="2" v:setback="8.04" refx="-8.04" orient="auto" markerunits="strokeWidth" overflow="visible">		<use xlink:href="#lend13" transform="scale(-2.68,-2.68) "></use>	</marker></defs><g v:mid="10" v:index="2" v:groupcontext="foregroundPage">	<title>ai-ml-developer-workflow</title>	<v:pageproperties v:drawingscale="0.0138889" v:pagescale="0.0138889" v:drawingunits="29" v:shadowoffsetx="9" v:shadowoffsety="-9"></v:pageproperties>	<v:layer v:name="Connector" v:index="0"></v:layer>	<g id="shape36-1" v:mid="36" v:groupcontext="shape" transform="translate(18.375,-18.375)">		<title>Sheet.36</title>		<rect x="0" y="36.75" width="1407" height="149.369" class="st1"></rect>	</g>	<g id="shape27-3" v:mid="27" v:groupcontext="shape" transform="translate(45.048,-45.048)">		<title>Sheet.27</title>		<desc>Pretrained model</desc>		<v:textblock v:margins="rect(4,4,4,4)"></v:textblock>		<v:textrect cx="100.716" cy="138.107" width="201.44" height="96.0227"></v:textrect>		<rect x="0" y="90.096" width="201.432" height="96.0227" rx="8" ry="8" class="st2"></rect>		<text x="30.81" y="143.51" class="st3" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>Pretrained model</text>		</g>	<g id="shape28-6" v:mid="28" v:groupcontext="shape" transform="translate(335.091,-49.0489)">		<title>Sheet.28</title>		<desc>Compile and optimize model</desc>		<v:textblock v:margins="rect(4,4,4,4)"></v:textblock>		<v:textrect cx="100.716" cy="138.107" width="201.44" height="96.0227"></v:textrect>		<rect x="0" y="90.096" width="201.432" height="96.0227" rx="8" ry="8" class="st2"></rect>		<text x="50.06" y="132.71" class="st3" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>Compile and<v:lf></v:lf><tspan x="35.83" dy="1.2em" class="st4"> </tspan>optimize model</text>		</g>	<g id="shape29-10" v:mid="29" v:groupcontext="shape" transform="translate(623.16,-45.048)">		<title>Sheet.29</title>		<desc>Optimized model</desc>		<v:textblock v:margins="rect(4,4,4,4)"></v:textblock>		<v:textrect cx="100.716" cy="138.107" width="201.44" height="96.0227"></v:textrect>		<rect x="0" y="90.096" width="201.432" height="96.0227" rx="8" ry="8" class="st2"></rect>		<text x="59.31" y="132.71" class="st3" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>Optimized<v:lf></v:lf><tspan x="75.51" dy="1.2em" class="st4">model</tspan></text>		</g>	<g id="shape30-14" v:mid="30" v:groupcontext="shape" transform="translate(910.586,-45.048)">		<title>Sheet.30</title>		<desc>Build/customize AI/ML application</desc>		<v:textblock v:margins="rect(4,4,4,4)"></v:textblock>		<v:textrect cx="100.716" cy="138.107" width="201.44" height="96.0227"></v:textrect>		<rect x="0" y="90.096" width="201.432" height="96.0227" rx="8" ry="8" class="st2"></rect>		<text x="34.62" y="132.71" class="st3" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>Build/customize<v:lf></v:lf><tspan x="28.87" dy="1.2em" class="st4">AI/ML application</tspan></text>		</g>	<g id="shape31-18" v:mid="31" v:groupcontext="shape" transform="translate(1199.3,-45.048)">		<title>Sheet.31</title>		<desc>Deploy</desc>		<v:textblock v:margins="rect(4,4,4,4)"></v:textblock>		<v:textrect cx="100.716" cy="138.107" width="201.44" height="96.0227"></v:textrect>		<rect x="0" y="90.096" width="201.432" height="96.0227" rx="8" ry="8" class="st2"></rect>		<text x="72.94" y="143.51" class="st3" v:langid="1033"><v:paragraph v:horizalign="1"></v:paragraph><v:tablist></v:tablist>Deploy</text>		</g>	<g id="shape32-21" v:mid="32" v:groupcontext="shape" transform="translate(246.48,-93.0594)">		<title>Sheet.32</title>		<path d="M0 186.12 L75.05 186.12" class="st5"></path>	</g>	<g id="shape33-27" v:mid="33" v:groupcontext="shape" transform="translate(538.498,-93.0594)">		<title>Sheet.33</title>		<path d="M0 186.12 L69.13 186.12" class="st5"></path>	</g>	<g id="shape34-32" v:mid="34" v:groupcontext="shape" transform="translate(826.863,-93.0594)">		<title>Sheet.34</title>		<path d="M0 186.12 L70.38 186.12" class="st7"></path>	</g>	<g id="shape35-38" v:mid="35" v:groupcontext="shape" transform="translate(1113.3,-93.0594)">		<title>Sheet.35</title>		<path d="M0 186.12 L71.96 186.12" class="st7"></path>	</g></g>
</svg>

Join us and watch this training session focused on the Qualcomm
Linux AI Developer Workflow.

It is tailored for developers and professionals in the IoT
sector who are keen to enhance their understanding and skills
in deploying on-device AI solutions on a Qualcomm platform.

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 640 400" width="640" height="400" style="cursor:auto !important" aria-label="../_images/ai-developer-workflow-video.svg" svgdefaultwidth="544">
    <defs>
      <style>@import url("https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&amp;display=swap");
.svg-2 .bg-fill { fill: var(--color-background) }
.svg-2 .fill-text { color: var(--color-content); fill: var(--color-content) }
.svg-2 .video-hoverbox { transition: opacity 0.15s ease-in-out }
.svg-2 .video-hoverbox:hover { opacity: 0.9 }</style>
  </defs>

  <foreignobject x="0" y="0" width="640" height="400">
    <body xmlns="http://www.w3.org/1999/xhtml">
        <iframe width="640" height="400" src="https://players.brightcove.net/1414329538001/4JiZQnWhg_default/index.html?videoId=6357317318112" allowfullscreen="" allow="encrypted-media"></iframe>
    <div class='topic-detail'><div class='topic-updated-date'><span> Last Published: </span>Oct 13, 2025</div><div class='prev-and-next-links'><span class='previous-topic-link'><span aria-hidden='true' class='disabled' data-tip='' data-effect='solid'></span></span></div></div></body>
    </foreignobject>
</svg>

The AI/ML developer workflow on Qualcomm Linux has two major steps:

| Step 1<br><br><br>Compile and optimize a model | <ul class="simple"><br><li><p>Compile and optimize the model from the third-party AI<br>framework to efficiently run on Qualcomm hardware. For<br>example, a Tensorflow model can be exported to a LiteRT<br>model.</p></li><br><li><p>Optionally, quantize, fine-tune performance, and accuracy<br>using hardware-specific customizations.</p></li><br></ul> |
| --- | --- |
| Step 2<br><br><br>Build an application to use the optimized model to run on<br>device inference | <ul class="simple"><br><li><p>Integrate the AI model into the use case pipeline.</p></li><br><li><p>Cross-compile the application to generate an executable<br>binary using dependent libraries.</p></li><br></ul> |

Important

- Ensure that the host computer uses Ubuntu 22.04.
- The commands in this document are compatible with Qualcomm Linux 1.4.

    Verify your Qualcomm Linux release version by running the commands described in the
[Dev Kit Quick Start guide](https://docs.qualcomm.com/bundle/publicresource/topics/80-70018-253/getting_started.html)

    If your release version isn’t 1.4,
[update your software](https://docs.qualcomm.com/bundle/publicresource/topics/80-70018-253/set_up_the_device.html#panel-0-VWJ1bnR1tab$update-software).
- Sample applications and AI procedures in this document are compatible with the
[supported versions](https://docs.qualcomm.com/bundle/publicresource/topics/80-70018-51/introduction.html#supported-component-versions).

    Ensure you download the matching SDKs to your host computer before starting AI/ML development.

## AI architecture

<?xml version="1.0" encoding="UTF-8"?>
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="1152px" height="769.72px" viewbox="0 0 1152 769.72" aria-label="../_images/ai-app-development-overview_QLI.svg" svgdefaultwidth="979">
  <!-- Generator: Adobe Illustrator 29.3.1, SVG Export Plug-In . SVG Version: 2.1.0 Build 151)  -->
  <defs>
    <style>.svg-3 .st0 { fill: #2a2aea }
.svg-3 .st1 { fill: url("#linear-gradient2") }
.svg-3 .st2 { fill: #dedfdf }
.svg-3 .st3,.svg-3 .st4 { fill: #fff }
.svg-3 .st3,.svg-3 .st5 { font-family: Roboto-Bold, Roboto; font-size: 20px; font-weight: 700 }
.svg-3 .st6 { fill: url("#linear-gradient1") }
.svg-3 .st7 { fill: #007884 }
.svg-3 .st8,.svg-3 .st9 { fill: none }
.svg-3 .st10 { fill: #b2b2b2 }
.svg-3 .st11,.svg-3 .st12 { fill: #040a40 }
.svg-3 .st13 { fill: #343433 }
.svg-3 .st14 { fill: #d8d8d8 }
.svg-3 .st15 { font-family: Roboto-Regular, Roboto; font-size: 14px }
.svg-3 .st9 { stroke: #2a2aea }
.svg-3 .st9,.svg-3 .st16,.svg-3 .st12 { stroke-miterlimit: 10; stroke-width: 2px }
.svg-3 .st17 { fill: #ee4c2c }
.svg-3 .st16 { fill: #fafafa; stroke: #d4d8e3 }
.svg-3 .st18 { fill: #f4f5f6 }
.svg-3 .st12 { stroke: #040a40 }
.svg-3 .st19 { fill: url("#linear-gradient3") }
.svg-3 .st20 { fill: #fefefe }
.svg-3 .st21 { fill: url("#linear-gradient") }
.svg-3 .st22 { fill: #d1d1d1 }</style>
    <lineargradient id="linear-gradient" x1="940.82" y1="156" x2="954" y2="156" gradientunits="userSpaceOnUse">
      <stop offset="0" stop-color="#ff6f00"></stop>
      <stop offset="1" stop-color="#ffa800"></stop>
    </lineargradient>
    <lineargradient id="linear-gradient1" x1="926" x2="939.18" xlink:href="#linear-gradient"></lineargradient>
    <lineargradient id="linear-gradient2" x1="692.82" x2="706" xlink:href="#linear-gradient"></lineargradient>
    <lineargradient id="linear-gradient3" x1="678" x2="691.18" xlink:href="#linear-gradient"></lineargradient>
  </defs>
  <rect class="st4" width="1152" height="769.72"></rect>
  <rect class="st16" x="132" y="588" width="1008" height="112"></rect>
  <rect class="st16" x="132" y="452" width="1008" height="112"></rect>
  <rect class="st16" x="132" y="236" width="1008" height="192"></rect>
  <rect class="st16" x="132" y="100" width="1008" height="112"></rect>
  <g id="applications">
    <rect class="st12" x="132" y="12" width="1008" height="64"></rect>
    <text class="st3" transform="translate(579.71 51.5)"><tspan x="0" y="0">Applications</tspan></text>
  </g>
  <g id="Callouts">
    <text class="st5" transform="translate(14.92 149.5)"><tspan x="0" y="0">Framework </tspan><tspan x="2.13" y="28">Converters</tspan></text>
    <text class="st5" transform="translate(40.66 333.5)"><tspan x="0" y="0">Runtime </tspan><tspan x="-25.74" y="28">Framework</tspan></text>
    <text class="st5" transform="translate(26.32 501.5)"><tspan x="0" y="0">Low Level </tspan><tspan x="10.58" y="28">Libraries</tspan></text>
    <text class="st5" transform="translate(30.55 651.5)"><tspan x="0" y="0">AI Engine</tspan></text>
  </g>
  <g id="Open_Source">
    <g>
      <rect class="st7" x="191.56" y="736.97" width="18" height="18" rx="4.63" ry="4.63"></rect>
      <path class="st7" d="M204.93,737.97c2,0,3.63,1.63,3.63,3.63v8.74c0,2-1.63,3.63-3.63,3.63h-8.74c-2,0-3.63-1.63-3.63-3.63v-8.74c0-2,1.63-3.63,3.63-3.63h8.74M204.93,735.97h-8.74c-3.11,0-5.63,2.52-5.63,5.63v8.74c0,3.11,2.52,5.63,5.63,5.63h8.74c3.11,0,5.63-2.52,5.63-5.63v-8.74c0-3.11-2.52-5.63-5.63-5.63h0Z"></path>
    </g>
    <text class="st15" transform="translate(223.71 751.22)"><tspan x="0" y="0">Open Source</tspan></text>
  </g>
  <g id="Qualcomm">
    <rect class="st0" x="33.12" y="735.97" width="20" height="20" rx="5.63" ry="5.63"></rect>
    <text class="st15" transform="translate(66.27 751.22)"><tspan x="0" y="0">Qualcomm</tspan></text>
  </g>
  <g>
    <g>
      <rect class="st9" x="932.19" y="595.87" width="95.61" height="95.61" rx="11.5" ry="11.5"></rect>
      <rect class="st9" x="936.37" y="600.04" width="87.27" height="87.27" rx="7" ry="7"></rect>
      <g>
        <g>
          <circle class="st0" cx="944.84" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="960.47" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="968.28" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="976.09" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="983.91" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="991.72" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="999.53" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="608.29" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="944.84" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="960.47" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="968.28" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="976.09" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="983.91" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="991.72" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="999.53" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="616.15" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="944.84" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="960.47" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="968.28" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="976.09" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="983.91" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="991.72" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="999.53" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="671.2" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="944.84" cy="663.34" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="663.34" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="663.34" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="663.34" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="944.84" cy="655.47" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="655.47" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="655.47" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="655.47" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="944.84" cy="647.61" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="647.61" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="647.61" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="647.61" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="944.84" cy="639.75" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="639.75" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="639.75" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="639.75" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="944.84" cy="631.88" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="631.88" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="631.88" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="631.88" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="944.84" cy="624.02" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="624.02" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="624.02" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="624.02" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="944.84" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="952.65" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="960.47" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="968.28" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="976.09" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="983.91" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="991.72" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="999.53" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="1007.35" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="1015.16" cy="679.07" r="1.98"></circle>
        </g>
      </g>
    </g>
    <g>
      <path class="st0" d="M974.26,640.74c.06.14.08.36-.22.44l-1.98.5c-.3.06-.38-.14-.44-.28-.78-1.5-2.18-2.52-4.22-2.52-2.66,0-4.64,2.14-4.64,4.84s1.96,4.8,4.68,4.8c1.92,0,3.46-1.1,4.14-2.68h-3.84c-.24,0-.44-.2-.44-.42v-1.32c0-.24.2-.42.44-.42h6.02c.24,0,.44.18.44.42v6.14c0,.24-.2.44-.44.44h-1.58c-.24,0-.44-.2-.44-.44v-1.44c-.9,1.24-2.36,2.16-4.66,2.16-4.08,0-7.12-3.16-7.12-7.28s3.26-7.28,7.44-7.28c3.1,0,5.86,1.64,6.86,4.34Z"></path>
      <path class="st0" d="M978.58,650.68h-1.84c-.24,0-.42-.2-.42-.44v-13.14c0-.22.18-.42.42-.42h5.26c3.3,0,5,2.12,5,4.62s-1.7,4.62-5,4.62h-3v4.32c0,.24-.18.44-.42.44ZM981.82,643.56c1.34,0,2.4-.86,2.4-2.26s-1.06-2.26-2.4-2.26h-2.82v4.52h2.82Z"></path>
      <path class="st0" d="M994.24,650.96c-3.02,0-5.78-1.62-5.78-5.26v-8.6c0-.22.18-.42.42-.42h1.82c.24,0,.44.2.44.42v8.42c0,1.86,1.14,3,3.1,3s3.12-1.14,3.12-3v-8.42c0-.22.2-.42.44-.42h1.82c.22,0,.42.2.42.42v8.58c0,3.64-2.76,5.28-5.8,5.28Z"></path>
    </g>
  </g>
  <g>
    <g>
      <rect class="st9" x="596.19" y="595.87" width="95.61" height="95.61" rx="11.5" ry="11.5"></rect>
      <rect class="st9" x="600.37" y="600.04" width="87.27" height="87.27" rx="7" ry="7"></rect>
      <g>
        <g>
          <circle class="st0" cx="608.84" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="624.47" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="632.28" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="640.09" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="647.91" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="655.72" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="663.53" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="608.29" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="608.29" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="608.84" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="624.47" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="632.28" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="640.09" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="647.91" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="655.72" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="663.53" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="616.15" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="616.15" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="608.84" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="624.47" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="632.28" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="640.09" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="647.91" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="655.72" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="663.53" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="671.2" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="671.2" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="608.84" cy="663.34" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="663.34" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="663.34" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="663.34" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="608.84" cy="655.47" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="655.47" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="655.47" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="655.47" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="608.84" cy="647.61" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="647.61" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="647.61" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="647.61" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="608.84" cy="639.75" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="639.75" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="639.75" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="639.75" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="608.84" cy="631.88" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="631.88" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="631.88" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="631.88" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="608.84" cy="624.02" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="624.02" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="624.02" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="624.02" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="608.84" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="616.65" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="624.47" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="632.28" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="640.09" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="647.91" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="655.72" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="663.53" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="671.35" cy="679.07" r="1.98"></circle>
          <circle class="st0" cx="679.16" cy="679.07" r="1.98"></circle>
        </g>
      </g>
    </g>
    <g>
      <path class="st0" d="M627.56,640.78v9.34c0,.24-.18.42-.42.42h-1.84c-.24,0-.42-.18-.42-.42v-13.16c0-.22.18-.42.42-.42h2.38c.24,0,.46.08.62.34l5.86,9.2v-9.12c0-.22.18-.42.4-.42h1.84c.22,0,.44.2.44.42v13.16c0,.24-.22.42-.44.42h-1.98c-.42,0-.68-.12-.86-.42l-6-9.34Z"></path>
      <path class="st0" d="M641.66,650.54h-1.84c-.24,0-.42-.2-.42-.44v-13.14c0-.22.18-.42.42-.42h5.26c3.3,0,5,2.12,5,4.62s-1.7,4.62-5,4.62h-3v4.32c0,.24-.18.44-.42.44ZM644.9,643.42c1.34,0,2.4-.86,2.4-2.26s-1.06-2.26-2.4-2.26h-2.82v4.52h2.82Z"></path>
      <path class="st0" d="M657.32,650.82c-3.02,0-5.78-1.62-5.78-5.26v-8.6c0-.22.18-.42.42-.42h1.82c.24,0,.44.2.44.42v8.42c0,1.86,1.14,3,3.1,3s3.12-1.14,3.12-3v-8.42c0-.22.2-.42.44-.42h1.82c.22,0,.42.2.42.42v8.58c0,3.64-2.76,5.28-5.8,5.28Z"></path>
    </g>
  </g>
  <g>
    <g>
      <rect class="st9" x="244.19" y="595.99" width="95.61" height="95.61" rx="11.5" ry="11.5"></rect>
      <rect class="st9" x="248.37" y="600.16" width="87.27" height="87.27" rx="7" ry="7"></rect>
      <g>
        <g>
          <circle class="st0" cx="256.84" cy="608.41" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="608.41" r="1.98"></circle>
          <circle class="st0" cx="272.47" cy="608.41" r="1.98"></circle>
          <circle class="st0" cx="280.28" cy="608.41" r="1.98"></circle>
          <circle class="st0" cx="288.09" cy="608.41" r="1.98"></circle>
          <circle class="st0" cx="295.91" cy="608.41" r="1.98"></circle>
          <circle class="st0" cx="303.72" cy="608.41" r="1.98"></circle>
          <circle class="st0" cx="311.53" cy="608.41" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="608.41" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="608.41" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="256.84" cy="616.27" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="616.27" r="1.98"></circle>
          <circle class="st0" cx="272.47" cy="616.27" r="1.98"></circle>
          <circle class="st0" cx="280.28" cy="616.27" r="1.98"></circle>
          <circle class="st0" cx="288.09" cy="616.27" r="1.98"></circle>
          <circle class="st0" cx="295.91" cy="616.27" r="1.98"></circle>
          <circle class="st0" cx="303.72" cy="616.27" r="1.98"></circle>
          <circle class="st0" cx="311.53" cy="616.27" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="616.27" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="616.27" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="256.84" cy="671.32" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="671.32" r="1.98"></circle>
          <circle class="st0" cx="272.47" cy="671.32" r="1.98"></circle>
          <circle class="st0" cx="280.28" cy="671.32" r="1.98"></circle>
          <circle class="st0" cx="288.09" cy="671.32" r="1.98"></circle>
          <circle class="st0" cx="295.91" cy="671.32" r="1.98"></circle>
          <circle class="st0" cx="303.72" cy="671.32" r="1.98"></circle>
          <circle class="st0" cx="311.53" cy="671.32" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="671.32" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="671.32" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="256.84" cy="663.46" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="663.46" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="663.46" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="663.46" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="256.84" cy="655.59" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="655.59" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="655.59" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="655.59" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="256.84" cy="647.73" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="647.73" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="647.73" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="647.73" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="256.84" cy="639.87" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="639.87" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="639.87" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="639.87" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="256.84" cy="632" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="632" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="632" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="632" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="256.84" cy="624.14" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="624.14" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="624.14" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="624.14" r="1.98"></circle>
        </g>
        <g>
          <circle class="st0" cx="256.84" cy="679.19" r="1.98"></circle>
          <circle class="st0" cx="264.65" cy="679.19" r="1.98"></circle>
          <circle class="st0" cx="272.47" cy="679.19" r="1.98"></circle>
          <circle class="st0" cx="280.28" cy="679.19" r="1.98"></circle>
          <circle class="st0" cx="288.09" cy="679.19" r="1.98"></circle>
          <circle class="st0" cx="295.91" cy="679.19" r="1.98"></circle>
          <circle class="st0" cx="303.72" cy="679.19" r="1.98"></circle>
          <circle class="st0" cx="311.53" cy="679.19" r="1.98"></circle>
          <circle class="st0" cx="319.35" cy="679.19" r="1.98"></circle>
          <circle class="st0" cx="327.16" cy="679.19" r="1.98"></circle>
        </g>
      </g>
    </g>
    <g>
      <path class="st0" d="M272.35,643.8c0-4.12,3.24-7.28,7.36-7.28,3.04,0,5.76,1.6,6.68,4.34.06.18.08.36-.22.44l-2,.5c-.3.06-.38-.14-.44-.28-.72-1.46-2.06-2.52-4-2.52-2.66,0-4.58,2.1-4.58,4.8s1.92,4.8,4.58,4.8c1.94,0,3.28-1.06,4-2.52.06-.14.14-.34.44-.28l2,.5c.3.08.28.26.22.44-.92,2.74-3.64,4.34-6.68,4.34-4.12,0-7.36-3.16-7.36-7.28Z"></path>
      <path class="st0" d="M290.19,650.8h-1.84c-.24,0-.42-.2-.42-.44v-13.14c0-.22.18-.42.42-.42h5.26c3.3,0,5,2.12,5,4.62s-1.7,4.62-5,4.62h-3v4.32c0,.24-.18.44-.42.44ZM293.43,643.68c1.34,0,2.4-.86,2.4-2.26s-1.06-2.26-2.4-2.26h-2.82v4.52h2.82Z"></path>
      <path class="st0" d="M305.85,651.08c-3.02,0-5.78-1.62-5.78-5.26v-8.6c0-.22.18-.42.42-.42h1.82c.24,0,.44.2.44.42v8.42c0,1.86,1.14,3,3.1,3s3.12-1.14,3.12-3v-8.42c0-.22.2-.42.44-.42h1.82c.22,0,.42.2.42.42v8.58c0,3.64-2.76,5.28-5.8,5.28Z"></path>
    </g>
  </g>
  <g id="gpu-backend-lib">
    <rect class="st0" x="836" y="476" width="288" height="64" rx="8" ry="8"></rect>
    <text class="st3" transform="translate(876.68 515.5)"><tspan x="0" y="0">GPU Backend Libraries</tspan></text>
  </g>
  <g id="npu-backend-lib">
    <rect class="st0" x="500" y="476" width="288" height="64" rx="8" ry="8"></rect>
    <text class="st3" transform="translate(540.44 515.5)"><tspan x="0" y="0">NPU Backend Libraries</tspan></text>
  </g>
  <g id="cpu-backend-lib">
    <rect class="st0" x="148" y="476" width="288" height="64" rx="8" ry="8"></rect>
    <text class="st3" transform="translate(188.95 515.5)"><tspan x="0" y="0">CPU Backend Libraries</tspan></text>
  </g>
  <g id="tflite">
    <g>
      <rect class="st7" x="836.65" y="261" width="286" height="142" rx="7" ry="7"></rect>
      <path class="st7" d="M1115.65,262c3.31,0,6,2.69,6,6v128c0,3.31-2.69,6-6,6h-272c-3.31,0-6-2.69-6-6v-128c0-3.31,2.69-6,6-6h272M1115.65,260h-272c-4.42,0-8,3.58-8,8v128c0,4.42,3.58,8,8,8h272c4.42,0,8-3.58,8-8v-128c0-4.42-3.58-8-8-8h0Z"></path>
    </g>
    <a xlink:href="https://docs.qualcomm.com/bundle/publicresource/topics/80-70018-15B/tflite.html">
      <text class="st3" transform="translate(950.24 339.5)"><tspan x="0" y="0">LiteRT</tspan></text>
    </a>
  </g>
  <g id="ai-eng-dir-qnn">
    <rect class="st0" x="500.31" y="260" width="288" height="144" rx="8" ry="8"></rect>
    <a xlink:href="https://docs.qualcomm.com/bundle/publicresource/topics/80-70018-15B/qairt.html
 ">
      <text class="st3" transform="translate(541.75 339.5)"><tspan x="0" y="0">AI Engine Direct (QNN)</tspan></text>
    </a>
  </g>
  <g id="snpe">
    <rect class="st0" x="148" y="260" width="288" height="144" rx="8" ry="8"></rect>
    <a xlink:href="https://docs.qualcomm.com/bundle/publicresource/topics/80-70018-15B/qairt.html">
      <text class="st3" transform="translate(209.17 329)"><tspan x="0" y="0">Neural Processing </tspan><tspan x="17.43" y="21">Engine (SNPE)</tspan></text>
    </a>
  </g>
  <g id="tensorflowlite">
    <g>
      <rect class="st7" x="917" y="125" width="206" height="62" rx="7" ry="7"></rect>
      <path class="st7" d="M1116,126c3.31,0,6,2.69,6,6v48c0,3.31-2.69,6-6,6h-192c-3.31,0-6-2.69-6-6v-48c0-3.31,2.69-6,6-6h192M1116,124h-192c-4.42,0-8,3.58-8,8v48c0,4.42,3.58,8,8,8h192c4.42,0,8-3.58,8-8v-48c0-4.42-3.58-8-8-8h0Z"></path>
    </g>
    <a xlink:href="https://www.tensorflow.org/lite">
      <text class="st3" transform="translate(964 163.5)"><tspan x="0" y="0">LiteRT</tspan></text>
    </a>
    <g>
      <g>
        <polygon class="st21" points="954 154.89 953.98 147.81 940.82 140 940.82 172 946.08 168.83 946.08 159.83 950.05 162.21 950.03 156.06 946.08 153.71 946.08 150.14 954 154.89"></polygon>
        <polygon class="st6" points="926 154.89 933.92 150.14 933.92 168.83 939.18 172 939.18 140 926.02 147.81 926 154.89"></polygon>
      </g>
      <rect class="st8" x="924" y="140" width="32" height="32"></rect>
    </g>
  </g>
  <g id="tensorflow">
    <g>
      <rect class="st7" x="661" y="125" width="206" height="62" rx="7" ry="7"></rect>
      <path class="st7" d="M860,126c3.31,0,6,2.69,6,6v48c0,3.31-2.69,6-6,6h-192c-3.31,0-6-2.69-6-6v-48c0-3.31,2.69-6,6-6h192M860,124h-192c-4.42,0-8,3.58-8,8v48c0,4.42,3.58,8,8,8h192c4.42,0,8-3.58,8-8v-48c0-4.42-3.58-8-8-8h0Z"></path>
    </g>
    <a xlink:href="https://www.tensorflow.org/">
      <text class="st3" transform="translate(724 163.5)"><tspan x="0" y="0">TensorFlow</tspan></text>
    </a>
    <g>
      <g>
        <polygon class="st1" points="706 154.89 705.98 147.81 692.82 140 692.82 172 698.08 168.83 698.08 159.83 702.05 162.21 702.03 156.06 698.08 153.71 698.08 150.14 706 154.89"></polygon>
        <polygon class="st19" points="678 154.89 685.92 150.14 685.92 168.83 691.18 172 691.18 140 678.02 147.81 678 154.89"></polygon>
      </g>
      <rect class="st8" x="676" y="140" width="32" height="32"></rect>
    </g>
  </g>
  <g id="pytorch">
    <g>
      <rect class="st7" x="405" y="125" width="206" height="62" rx="7" ry="7"></rect>
      <path class="st7" d="M604,126c3.31,0,6,2.69,6,6v48c0,3.31-2.69,6-6,6h-192c-3.31,0-6-2.69-6-6v-48c0-3.31,2.69-6,6-6h192M604,124h-192c-4.42,0-8,3.58-8,8v48c0,4.42,3.58,8,8,8h192c4.42,0,8-3.58,8-8v-48c0-4.42-3.58-8-8-8h0Z"></path>
    </g>
    <a xlink:href="https://pytorch.org/">
      <text class="st3" transform="translate(484 163.5)"><tspan x="0" y="0">PyTorch</tspan></text>
    </a>
    <g>
      <g>
        <path class="st17" d="M461.4,149.36l-2.4,2.38c3.93,3.9,3.93,10.18,0,14.02-3.93,3.9-10.26,3.9-14.14,0-3.93-3.9-3.93-10.18,0-14.02h0l6.24-6.19.89-.88h0v-4.66l-9.41,9.33c-5.23,5.19-5.23,13.58,0,18.78s13.69,5.19,18.84,0c5.21-5.19,5.21-13.52-.03-18.75Z"></path>
        <ellipse class="st17" cx="456.7" cy="147.07" rx="1.74" ry="1.73"></ellipse>
      </g>
      <rect class="st8" x="436" y="140" width="32" height="32"></rect>
    </g>
  </g>
  <g id="onnx">
    <g>
      <rect class="st7" x="149" y="125" width="206" height="62" rx="7" ry="7"></rect>
      <path class="st7" d="M348,126c3.31,0,6,2.69,6,6v48c0,3.31-2.69,6-6,6h-192c-3.31,0-6-2.69-6-6v-48c0-3.31,2.69-6,6-6h192M348,124h-192c-4.42,0-8,3.58-8,8v48c0,4.42,3.58,8,8,8h192c4.42,0,8-3.58,8-8v-48c0-4.42-3.58-8-8-8h0Z"></path>
    </g>
    <g>
      <a xlink:href="https://onnx.ai/">
        <text class="st3" transform="translate(240 163.5)"><tspan x="0" y="0">ONNX</tspan></text>
      </a>
      <g>
        <g>
          <path class="st13" d="M222.68,155.06c-.14,0-.25-.07-.31-.19l-5.13-9.43c-.07-.11-.08-.24-.03-.35.23-.67-.12-1.4-.8-1.64-.4-.14-.84-.07-1.18.17-.13.1-.31.14-.47.09l-10.09-2.01c-.16,0-.29-.12-.32-.27-.49-1.67-3.01-.89-2.47.76.06.14.03.31-.07.43l-8.01,11.41c-.11.15-.21.22-.37.16-.69-.06-1.3.43-1.39,1.1-.11.69.36,1.33,1.06,1.44.02,0,.03,0,.05,0,.16,0,.29.11.33.27l4.31,10.55c.05.11.06.24.03.37-.37,1.21,1.04,2.17,2.04,1.39.1-.08.22-.12.35-.1l12.99,1.26c.15,0,.28.09.33.22.74,1.68,3.25.39,2.3-1.18-.08-.11-.08-.26,0-.37l6.55-11.3c.06-.14.2-.22.34-.21,1.75.02,1.76-2.6,0-2.57h0ZM202.62,144.87l.37-1.57c.03-.13.07-.21.24-.22.32-.02.63-.17.83-.43.08-.12.23-.16.36-.11l10.15,2.01s.05.02.16.06l-3.19,1.37-9.63,4.16s-.1.04-.15.06c-.1.04-.2.14-.32.04-.11-.09-.03-.2,0-.29l1.2-5.1h0ZM201.89,143.99l.05.03-1.37,5.8c-.02.13-.12.25-.25.28-.5.14-.86.57-.89,1.09,0,.13-.07.25-.18.31l-4.33,2.53s-.07.02-.11.02l7.07-10.07ZM198.47,166.63c-.02.08-.04.16-.06.25l-4.14-10.12c-.1-.17-.08-.39.07-.53.18-.2.27-.47.24-.74-.03-.17.07-.33.23-.39l4.74-2.77c.09-.05.18-.17.31-.05.12.11.28.16.25.39l-.43,3.63-1.2,10.35h0ZM199.96,167.43c-.13-.16-.3-.27-.5-.33-.12-.04-.2-.08-.16-.19l.37-3.22.74-6.41.51-4.48c.03-.3.25-.29.43-.4s.23.05.31.12l10.75,9.27c.23.24.17.63-.13.79l-11.98,4.91c-.14.06-.24.07-.35-.07h0ZM213.98,169.12c-.1.04-.18.11-.24.2-.17.35-.45.3-.75.27l-12.44-1.22-.02-.06,1.93-.8,10.09-4.14c.19-.08.31,0,.48.05.5.17.51.56.56.97l.51,4.41c.02.12.01.22-.12.29h0ZM213.55,160.99c-.02.16-.09.2-.22.26s-.28.03-.37-.08l-2.58-2.23-8.18-7.06c-.2-.21-.28-.5-.22-.78.06-.11.19-.12.3-.17l12.41-5.37c.18-.08.32-.12.46.07.07.08.16.14.26.18.12.05.17.11.14.2l-.36,2.72-1.63,12.27h-.01ZM214.96,168.84l-.2-1.63-.36-3.12c-.04-.29-.06-.52.25-.75.33-.25.49-.67.41-1.08-.01-.12-.01-.19.1-.27l6.08-4.11s.06-.02.09-.02l-6.36,10.98ZM221.56,155.74c-.15.21-.21.47-.15.73.04.15-.03.32-.18.39l-6.51,4.43c-.07.05-.13.14-.25.07-.13-.07-.08-.18-.07-.28l1.98-14.85c.02-.11.04-.22.08-.4l1.18,2.15,3.93,7.23c.13.16.13.38,0,.54h0Z"></path>
          <path class="st20" d="M215.54,145.99c.03-.08-.02-.15-.14-.2-.1-.04-.19-.1-.26-.18-.14-.19-.28-.15-.46-.07l-1.93.84c-3.49,1.51-6.98,3.02-10.47,4.53-.1.04-.24.05-.3.17-.06.28.02.57.22.78l10.76,9.3c.09.11.24.14.37.08.13-.06.2-.1.22-.26l.82-6.17c.27-2.04.54-4.07.81-6.11l.36-2.72h0Z"></path>
          <path class="st18" d="M212.42,161.81c-3.58-3.09-7.16-6.18-10.75-9.27-.08-.07-.15-.23-.31-.12s-.4.1-.43.4l-.51,4.48-.74,6.41-.37,3.22c-.04.11.04.16.16.19.2.06.37.17.5.33.11.14.21.13.35.07,3.99-1.64,7.98-3.27,11.98-4.91.25-.12.34-.42.22-.67-.02-.04-.05-.08-.09-.12h0Z"></path>
          <path class="st2" d="M217.62,147.97l-1.18-2.15-.08.4-.67,5.07c-.44,3.26-.87,6.52-1.31,9.79-.01.1-.06.2.07.28.12.07.18-.02.25-.07l6.51-4.43c.14-.07.22-.23.18-.39-.05-.25,0-.52.15-.73.13-.16.12-.39,0-.54-1.32-2.41-2.63-4.82-3.93-7.23Z"></path>
          <path class="st22" d="M201.43,150.26c.12.1.22,0,.32-.04l.15-.06c3.21-1.39,6.42-2.78,9.63-4.16l3.19-1.37-.16-.06c-3.38-.67-6.77-1.34-10.15-2.01-.13-.05-.28,0-.36.11-.2.26-.5.41-.83.43-.17.01-.21.09-.24.22-.12.52-.24,1.05-.37,1.57l-1.2,5.1c-.02.1-.1.2,0,.29h0ZM213.59,164.41c-.05-.41-.06-.8-.56-.97-.18-.06-.29-.13-.48-.05-3.36,1.38-6.72,2.76-10.09,4.12l-1.93.8.02.06,12.44,1.22c.3.03.59.07.75-.27.06-.09.14-.16.24-.2.13-.07.13-.16.12-.29-.17-1.47-.34-2.94-.51-4.41h0Z"></path>
          <path class="st14" d="M200.1,152.65c.03-.23-.13-.28-.25-.39-.13-.12-.22,0-.31.05l-4.74,2.77c-.16.06-.25.23-.23.39.03.27-.06.54-.24.74-.14.14-.17.36-.07.53.9,2.18,1.79,4.37,2.68,6.55l1.46,3.57c.02-.08.05-.16.06-.24.2-1.69.4-3.39.59-5.08.2-1.76.41-3.51.61-5.27l.43-3.63h0Z"></path>
          <path class="st10" d="M215.16,162.01c-.11.07-.11.15-.1.27.08.41-.08.82-.41,1.08-.31.21-.28.45-.25.75l.36,3.12.2,1.63,6.37-10.98s-.06.01-.09.02c-2.02,1.38-4.05,2.75-6.07,4.13h0ZM199.25,151.5c.11-.06.18-.18.18-.31.04-.51.39-.95.89-1.09.13-.03.23-.14.25-.28.45-1.93.91-3.87,1.37-5.8l-.05-.03-7.07,10.07s.07-.01.11-.02c1.44-.84,2.88-1.69,4.33-2.53Z"></path>
        </g>
        <rect class="st8" x="192" y="140" width="32" height="32"></rect>
      </g>
    </g>
  </g>
  <g id="Open_Source1" data-name="Open_Source">
    <rect class="st11" x="356" y="733.83" width="20" height="20" rx="5.63" ry="5.63"></rect>
    <text class="st15" transform="translate(389.15 749.08)"><tspan x="0" y="0">Third party</tspan></text>
  </g>
</svg>

Developers can bring models from ONNX, PyTorch, TensorFlow or TFLite
and run them efficiently on Qualcomm AI Hardware–HTP (NPU), GPU,
CPU using Qualcomm AI SDKs.

## AI hardware

- **Qualcomm Kryo™ CPU**: Best-in-class CPU with high performance and
remarkable power efficiency.
- **Qualcomm Adreno GPU**: Suitable to run AI workloads with
balanced power and performance. AI workloads are accelerated with
OpenCL kernels. The GPU can also be used to accelerate model
pre/postprocessing.
- **Qualcomm Hexagon Tensor Processor (HTP)**: Also known as
NPU/DSP/HMX, suitable to run AI workloads with low-power and
high-performance. For optimized performance, pretrained models need
be quantized to one of the supported precisions.

## AI software

AI stack contains SDKs to harness the power of AI hardware
accelerators. Developers can use one of the SDKs of their choice to
deploy AI workloads. Pretrained models (except for LiteRT models)
need to be converted to an executable format with the selected SDK
before running them. LiteRT models can be run directly using TFLite
Delegate.

TFLite

LiteRT models can be natively run on Qualcomm hardware with
acceleration using the following Delegates.

| Delegate | Acceleration |
| --- | --- |
| AI Engine Direct Delegate (QNN Delegate) | CPU, GPU and HTP |
| XNNPACK Delegate | CPU |
| GPU Delegate | GPU |

Qualcomm Neural Processing Engine SDK (SNPE)

Qualcomm Neural Processing Engine (SNPE) is a software accelerated
runtime for execution of deep neural networks. SNPE offers tools to
convert, quantize neural networks and accelerate them on hardware
accelerators including CPU, GPU, and HTP.

Qualcomm AI Engine Direct (QNN)

Qualcomm AI Engine Direct is a software architecture for AI/ML use
cases on Qualcomm chipsets and AI acceleration cores. The
architecture is designed to provide a unified API and modular and
extensible per-accelerator libraries, which form a reusable basis for
full stack AI solutions. It provides support for runtimes such as
Qualcomm Neural Processing SDK, LiteRT AI Engine Direct Delegate.

AI Model Efficiency Toolkit (AIMET)

Open-source library to optimize (compress and quantize) trained neural
network models. This is a complex SDK designed to generate optimized
quantized models and is intended only for advanced developers.

Last Published: Oct 13, 2025

[Previous Topic
AI developer workflow documentation](https://docs.qualcomm.com/bundle/publicresource/80-70018-15B/topics/introduction.md) [Next Topic
Compile and optimize an AI model](https://docs.qualcomm.com/bundle/publicresource/80-70018-15B/topics/compile-and-optimize-model.md)