<!DOCTYPE html><htmlclass="default"lang="en"><head><metacharSet="utf-8"/><metahttp-equiv="x-ua-compatible"content="IE=edge"/><title>GraphModel | @vladmandic/human - v3.2.0</title><metaname="description"content="Documentation for @vladmandic/human"/><metaname="viewport"content="width=device-width, initial-scale=1"/><linkrel="stylesheet"href="../assets/style.css"/><linkrel="stylesheet"href="../assets/highlight.css"/><scriptdefersrc="../assets/main.js"></script><scriptasyncsrc="../assets/search.js"id="tsd-search-script"></script><scriptasyncsrc="../assets/navigation.js"id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme=localStorage.getItem("tsd-theme")||"os"</script><headerclass="tsd-page-toolbar"><divclass="tsd-toolbar-contents container"><divclass="table-cell"id="tsd-search"data-base=".."><divclass="field"><labelfor="tsd-search-field"class="tsd-widget tsd-toolbar-icon search no-caption"><svgwidth="16"height="16"viewBox="0 0 16 16"fill="none"><usehref="#icon-search"></use></svg></label><inputtype="text"id="tsd-search-field"aria-label="Search"/></div><divclass="field"><divid="tsd-toolbar-links"></div></div><ulclass="results"><liclass="state loading">Preparing search index...</li><liclass="state failure">The search index is not available</li></ul><ahref="../index.html"class="title">@vladmandic/human - v3.2.0</a></div><divclass="table-cell"id="tsd-widgets"><ahref="#"class="tsd-widget tsd-toolbar-icon menu no-caption"data-toggle="menu"aria-label="Menu"><svgwidth="16"height="16"viewBox="0 0 16 16"fill="none"><usehref="#icon-menu"></use></svg></a></div></div></header><divclass="container container-main"><divclass="col-content"><divclass="tsd-page-title"><ulclass="tsd-breadcrumb"><li><ahref="../index.html">@vladmandic/human</a></li><li><ahref="GraphModel.html">GraphModel</a></li></ul><h1>Class GraphModel<ModelURL></h1></div><sectionclass="tsd-panel tsd-comment"><divclass="tsd-comment tsd-typography"><p>A <code>tf.GraphModel</code> is a directed, acyclic graph built from a
</div><h4class="tsd-returns-title">Returns <spanclass="tsd-signature-type">void</span></h4><divclass="tsd-comment tsd-typography"><h4>Doc</h4></div><asideclass="tsd-sources"><ul><li>Defined in node_modules/@tensorflow/tfjs-converter/dist/executor/graph_model.d.ts:259</li></ul></aside></li></ul></section><sectionclass="tsd-panel tsd-member"><aid="execute"class="tsd-anchor"></a><h3class="tsd-anchor-link"><span>execute</span><ahref="#execute"aria-label="Permalink"class="tsd-anchor-icon"><svgviewBox="0 0 24 24"><usehref="#icon-anchor"></use></svg></a></h3><ulclass="tsd-signatures"><liclass="tsd-signature tsd-anchor-link"><aid="execute.execute-1"class="tsd-anchor"></a><spanclass="tsd-kind-call-signature">execute</span><spanclass="tsd-signature-symbol">(</span><spanclass="tsd-kind-parameter">inputs</span>, <spanclass="tsd-kind-parameter">outputs</span><spanclass="tsd-signature-symbol">?</span><spanclass="tsd-signature-symbol">)</span><spanclass="tsd-signature-symbol">: </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol"> | </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol">[]</span><ahref="#execute.execute-1"aria-label="Permalink"class="tsd-anchor-icon"><svgviewBox="0 0 24 24"><usehref="#icon-anchor"></use></svg></a></li><liclass="tsd-description"><divclass="tsd-comment tsd-typography"><p>Executes inference for the model for given input tensors.</p>
</div><divclass="tsd-parameters"><h4class="tsd-parameters-title">Parameters</h4><ulclass="tsd-parameter-list"><li><h5><spanclass="tsd-kind-parameter">inputs</span>: <ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol"> | </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol">[]</span><spanclass="tsd-signature-symbol"> | </span><spanclass="tsd-signature-type ">NamedTensorMap</span></h5><divclass="tsd-comment tsd-typography"><p>tensor, tensor array or tensor map of the inputs for the
</div><divclass="tsd-comment tsd-typography"></div></li><li><h5><codeclass="tsd-tag ts-flagOptional">Optional</code><spanclass="tsd-kind-parameter">outputs</span>: <spanclass="tsd-signature-type">string</span><spanclass="tsd-signature-symbol"> | </span><spanclass="tsd-signature-type">string</span><spanclass="tsd-signature-symbol">[]</span></h5><divclass="tsd-comment tsd-typography"><p>output node name from the TensorFlow model, if no
</div><divclass="tsd-comment tsd-typography"></div></li></ul></div><h4class="tsd-returns-title">Returns <ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol"> | </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol">[]</span></h4><p>A single tensor if provided with a single output or no outputs
are provided and there is only one default output, otherwise return a
tensor array. The order of the tensor array is the same as the outputs
if provided, otherwise the order of outputNodes attribute of the model.</p>
<divclass="tsd-comment tsd-typography"><h4>Doc</h4></div><asideclass="tsd-sources"><p>Implementation of InferenceModel.execute</p><ul><li>Defined in node_modules/@tensorflow/tfjs-converter/dist/executor/graph_model.d.ts:228</li></ul></aside></li></ul></section><sectionclass="tsd-panel tsd-member"><aid="executeAsync"class="tsd-anchor"></a><h3class="tsd-anchor-link"><span>execute<wbr/>Async</span><ahref="#executeAsync"aria-label="Permalink"class="tsd-anchor-icon"><svgviewBox="0 0 24 24"><usehref="#icon-anchor"></use></svg></a></h3><ulclass="tsd-signatures"><liclass="tsd-signature tsd-anchor-link"><aid="executeAsync.executeAsync-1"class="tsd-anchor"></a><spanclass="tsd-kind-call-signature">execute<wbr/>Async</span><spanclass="tsd-signature-symbol">(</span><spanclass="tsd-kind-parameter">inputs</span>, <spanclass="tsd-kind-parameter">outputs</span><spanclass="tsd-signature-symbol">?</span><spanclass="tsd-signature-symbol">)</span><spanclass="tsd-signature-symbol">: </span><spanclass="tsd-signature-type ">Promise</span><spanclass="tsd-signature-symbol"><</span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol"> | </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol">[]</span><spanclass="tsd-signature-symbol">></span><ahref="#executeAsync.executeAsync-1"aria-label="Permalink"class="tsd-anchor-icon"><svgviewBox="0 0 24 24"><usehref="#icon-anchor"></use></svg></a></li><liclass="tsd-description"><divclass="tsd-comment tsd-typography"><p>Executes inference for the model for given input tensors in async
</div><divclass="tsd-parameters"><h4class="tsd-parameters-title">Parameters</h4><ulclass="tsd-parameter-list"><li><h5><spanclass="tsd-kind-parameter">inputs</span>: <ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol"> | </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol">[]</span><spanclass="tsd-signature-symbol"> | </span><spanclass="tsd-signature-type ">NamedTensorMap</span></h5><divclass="tsd-comment tsd-typography"><p>tensor, tensor array or tensor map of the inputs for the
</div><divclass="tsd-comment tsd-typography"></div></li><li><h5><codeclass="tsd-tag ts-flagOptional">Optional</code><spanclass="tsd-kind-parameter">outputs</span>: <spanclass="tsd-signature-type">string</span><spanclass="tsd-signature-symbol"> | </span><spanclass="tsd-signature-type">string</span><spanclass="tsd-signature-symbol">[]</span></h5><divclass="tsd-comment tsd-typography"><p>output node name from the TensorFlow model, if no outputs
</div><divclass="tsd-comment tsd-typography"></div></li></ul></div><h4class="tsd-returns-title">Returns <spanclass="tsd-signature-type ">Promise</span><spanclass="tsd-signature-symbol"><</span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol"> | </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol">[]</span><spanclass="tsd-signature-symbol">></span></h4><p>A Promise of single tensor if provided with a single output or
no outputs are provided and there is only one default output, otherwise
return a tensor map.</p>
<divclass="tsd-comment tsd-typography"><h4>Doc</h4></div><asideclass="tsd-sources"><ul><li>Defined in node_modules/@tensorflow/tfjs-converter/dist/executor/graph_model.d.ts:245</li></ul></aside></li></ul></section><sectionclass="tsd-panel tsd-member"><aid="getIntermediateTensors"class="tsd-anchor"></a><h3class="tsd-anchor-link"><span>get<wbr/>Intermediate<wbr/>Tensors</span><ahref="#getIntermediateTensors"aria-label="Permalink"class="tsd-anchor-icon"><svgviewBox="0 0 24 24"><usehref="#icon-anchor"></use></svg></a></h3><ulclass="tsd-signatures"><liclass="tsd-signature tsd-anchor-link"><aid="getIntermediateTensors.getIntermediateTensors-1"class="tsd-anchor"></a><spanclass="tsd-kind-call-signature">get<wbr/>Intermediate<wbr/>Tensors</span><spanclass="tsd-signature-symbol">(</span><spanclass="tsd-signature-symbol">)</span><spanclass="tsd-signature-symbol">: </span><spanclass="tsd-signature-type ">NamedTensorsMap</span><ahref="#getIntermediateTensors.getIntermediateTensors-1"aria-label="Permalink"class="tsd-anchor-icon"><svgviewBox="0 0 24 24"><usehref="#icon-anchor"></use></svg></a></li><liclass="tsd-description"><divclass="tsd-comment tsd-typography"><p>Get intermediate tensors for model debugging mode (flag
Currently the batch size option is ignored for graph model.</p>
</div><divclass="tsd-comment tsd-typography"></div></li></ul></div><h4class="tsd-returns-title">Returns <ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol"> | </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol">[]</span><spanclass="tsd-signature-symbol"> | </span><spanclass="tsd-signature-type ">NamedTensorMap</span></h4><p>Inference result tensors. If the model is converted and it
originally had structured_outputs in tensorflow, then a NamedTensorMap
will be returned matching the structured_outputs. If no structured_outputs
are present, the output will be single <code>tf.Tensor</code> if the model has single
<h4>Doc</h4></div><asideclass="tsd-sources"><p>Implementation of InferenceModel.predict</p><ul><li>Defined in node_modules/@tensorflow/tfjs-converter/dist/executor/graph_model.d.ts:165</li></ul></aside></li></ul></section><sectionclass="tsd-panel tsd-member"><aid="predictAsync"class="tsd-anchor"></a><h3class="tsd-anchor-link"><span>predict<wbr/>Async</span><ahref="#predictAsync"aria-label="Permalink"class="tsd-anchor-icon"><svgviewBox="0 0 24 24"><usehref="#icon-anchor"></use></svg></a></h3><ulclass="tsd-signatures"><liclass="tsd-signature tsd-anchor-link"><aid="predictAsync.predictAsync-1"class="tsd-anchor"></a><spanclass="tsd-kind-call-signature">predict<wbr/>Async</span><spanclass="tsd-signature-symbol">(</span><spanclass="tsd-kind-parameter">inputs</span>, <spanclass="tsd-kind-parameter">config</span><spanclass="tsd-signature-symbol">?</span><spanclass="tsd-signature-symbol">)</span><spanclass="tsd-signature-symbol">: </span><spanclass="tsd-signature-type ">Promise</span><spanclass="tsd-signature-symbol"><</span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol"> | </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol">[]</span><spanclass="tsd-signature-symbol"> | </span><spanclass="tsd-signature-type ">NamedTensorMap</span><spanclass="tsd-signature-symbol">></span><ahref="#predictAsync.predictAsync-1"aria-label="Permalink"class="tsd-anchor-icon"><svgviewBox="0 0 24 24"><usehref="#icon-anchor"></use></svg></a></li><liclass="tsd-description"><divclass="tsd-comment tsd-typography"><p>Execute the inference for the input tensors in async fashion, use this
Currently the batch size option is ignored for graph model.</p>
</div><divclass="tsd-comment tsd-typography"></div></li></ul></div><h4class="tsd-returns-title">Returns <spanclass="tsd-signature-type ">Promise</span><spanclass="tsd-signature-symbol"><</span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol"> | </span><ahref="Tensor-1.html"class="tsd-signature-type tsd-kind-class">Tensor</a><spanclass="tsd-signature-symbol"><</span><ahref="../enums/Rank.html"class="tsd-signature-type tsd-kind-enum">Rank</a><spanclass="tsd-signature-symbol">></span><spanclass="tsd-signature-symbol">[]</span><spanclass="tsd-signature-symbol"> | </span><spanclass="tsd-signature-type ">NamedTensorMap</span><spanclass="tsd-signature-symbol">></span></h4><p>A Promise of inference result tensors. If the model is converted
and it originally had structured_outputs in tensorflow, then a
NamedTensorMap will be returned matching the structured_outputs. If no
structured_outputs are present, the output will be single <code>tf.Tensor</code> if
the model has single output node, otherwise Tensor[].</p>
<p>An <code>IOHandler</code> is an object that has a <code>save</code> method of the proper
signature defined. The <code>save</code> method manages the storing or
transmission of serialized data ("artifacts") that represent the
model's topology and weights onto or via a specific medium, such as
file downloads, local storage, IndexedDB in the web browser and HTTP
requests to a server. TensorFlow.js provides <code>IOHandler</code>
implementations for a number of frequently used saving mediums, such as
<code>tf.io.browserDownloads</code> and <code>tf.io.browserLocalStorage</code>. See <code>tf.io</code>
for more details.</p>
<p>This method also allows you to refer to certain types of <code>IOHandler</code>s
as URL-like string shortcuts, such as 'localstorage://' and
'indexeddb://'.</p>
<p>Example 1: Save <code>model</code>'s topology and weights to browser <ahref="https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage">local
</div><divclass="tsd-parameters"><h4class="tsd-parameters-title">Parameters</h4><ulclass="tsd-parameter-list"><li><h5><spanclass="tsd-kind-parameter">handlerOrURL</span>: <spanclass="tsd-signature-type">string</span><spanclass="tsd-signature-symbol"> | </span><spanclass="tsd-signature-type ">IOHandler</span></h5><divclass="tsd-comment tsd-typography"><p>An instance of <code>IOHandler</code> or a URL-like,
scheme-based string shortcut for <code>IOHandler</code>.</p>
</div><divclass="tsd-comment tsd-typography"></div></li><li><h5><codeclass="tsd-tag ts-flagOptional">Optional</code><spanclass="tsd-kind-parameter">config</span>: <spanclass="tsd-signature-type ">SaveConfig</span></h5><divclass="tsd-comment tsd-typography"><p>Options for saving the model.</p>
</div><divclass="tsd-comment tsd-typography"></div></li></ul></div><h4class="tsd-returns-title">Returns <spanclass="tsd-signature-type ">Promise</span><spanclass="tsd-signature-symbol"><</span><spanclass="tsd-signature-type ">SaveResult</span><spanclass="tsd-signature-symbol">></span></h4><p>A <code>Promise</code> of <code>SaveResult</code>, which summarizes the result of