blob: c3e736482ef145eded62f518ab3dbe9b5f4ce945 [file] [log] [blame]
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>apache_beam.ml.inference.vertex_ai_inference module &mdash; Apache Beam 2.52.0 documentation</title>
<script type="text/javascript" src="_static/js/modernizr.min.js"></script>
<script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/language_data.js"></script>
<script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="apache_beam.ml.inference.xgboost_inference module" href="apache_beam.ml.inference.xgboost_inference.html" />
<link rel="prev" title="apache_beam.ml.inference.utils module" href="apache_beam.ml.inference.utils.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="index.html" class="icon icon-home"> Apache Beam
</a>
<div class="version">
2.52.0
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="apache_beam.coders.html">apache_beam.coders package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.dataframe.html">apache_beam.dataframe package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.io.html">apache_beam.io package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.metrics.html">apache_beam.metrics package</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="apache_beam.ml.html">apache_beam.ml package</a><ul class="current">
<li class="toctree-l2 current"><a class="reference internal" href="apache_beam.ml.html#subpackages">Subpackages</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="apache_beam.ml.gcp.html">apache_beam.ml.gcp package</a></li>
<li class="toctree-l3 current"><a class="reference internal" href="apache_beam.ml.inference.html">apache_beam.ml.inference package</a><ul class="current">
<li class="toctree-l4 current"><a class="reference internal" href="apache_beam.ml.inference.html#submodules">Submodules</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="apache_beam.ml.transforms.html">apache_beam.ml.transforms package</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.options.html">apache_beam.options package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.portability.html">apache_beam.portability package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.runners.html">apache_beam.runners package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.testing.html">apache_beam.testing package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.transforms.html">apache_beam.transforms package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.typehints.html">apache_beam.typehints package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.utils.html">apache_beam.utils package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.yaml.html">apache_beam.yaml package</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.error.html">apache_beam.error module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pipeline.html">apache_beam.pipeline module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pvalue.html">apache_beam.pvalue module</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">Apache Beam</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html">Docs</a> &raquo;</li>
<li><a href="apache_beam.ml.html">apache_beam.ml package</a> &raquo;</li>
<li><a href="apache_beam.ml.inference.html">apache_beam.ml.inference package</a> &raquo;</li>
<li>apache_beam.ml.inference.vertex_ai_inference module</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/apache_beam.ml.inference.vertex_ai_inference.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="module-apache_beam.ml.inference.vertex_ai_inference">
<span id="apache-beam-ml-inference-vertex-ai-inference-module"></span><h1>apache_beam.ml.inference.vertex_ai_inference module<a class="headerlink" href="#module-apache_beam.ml.inference.vertex_ai_inference" title="Permalink to this headline"></a></h1>
<dl class="class">
<dt id="apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON">
<em class="property">class </em><code class="descclassname">apache_beam.ml.inference.vertex_ai_inference.</code><code class="descname">VertexAIModelHandlerJSON</code><span class="sig-paren">(</span><em>endpoint_id: str</em>, <em>project: str</em>, <em>location: str</em>, <em>experiment: Optional[str] = None</em>, <em>network: Optional[str] = None</em>, <em>private: bool = False</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/ml/inference/vertex_ai_inference.html#VertexAIModelHandlerJSON"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="apache_beam.ml.inference.base.html#apache_beam.ml.inference.base.ModelHandler" title="apache_beam.ml.inference.base.ModelHandler"><code class="xref py py-class docutils literal notranslate"><span class="pre">apache_beam.ml.inference.base.ModelHandler</span></code></a></p>
<p>Implementation of the ModelHandler interface for Vertex AI.
<strong>NOTE:</strong> This API and its implementation are under development and
do not provide backward compatibility guarantees.
Unlike other ModelHandler implementations, this does not load the model
being used onto the worker and instead makes remote queries to a
Vertex AI endpoint. In that way it functions more like a mid-pipeline
IO. Public Vertex AI endpoints have a maximum request size of 1.5 MB.
If you wish to make larger requests and use a private endpoint, provide
the Compute Engine network you wish to use and set <cite>private=True</cite></p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>endpoint_id</strong> – the numerical ID of the Vertex AI endpoint to query</li>
<li><strong>project</strong> – the GCP project name where the endpoint is deployed</li>
<li><strong>location</strong> – the GCP location where the endpoint is deployed</li>
<li><strong>experiment</strong> – optional. experiment label to apply to the
queries. See
<a class="reference external" href="https://cloud.google.com/vertex-ai/docs/experiments/intro-vertex-ai-experiments">https://cloud.google.com/vertex-ai/docs/experiments/intro-vertex-ai-experiments</a>
for more information.</li>
<li><strong>network</strong> – optional. the full name of the Compute Engine
network the endpoint is deployed on; used for private
endpoints. The network or subnetwork Dataflow pipeline
option must be set and match this network for pipeline
execution.
Ex: “projects/12345/global/networks/myVPC”</li>
<li><strong>private</strong> – optional. if the deployed Vertex AI endpoint is
private, set to true. Requires a network to be provided
as well.</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="method">
<dt id="apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON.load_model">
<code class="descname">load_model</code><span class="sig-paren">(</span><span class="sig-paren">)</span> &#x2192; google.cloud.aiplatform.models.Endpoint<a class="reference internal" href="_modules/apache_beam/ml/inference/vertex_ai_inference.html#VertexAIModelHandlerJSON.load_model"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON.load_model" title="Permalink to this definition"></a></dt>
<dd><p>Loads the Endpoint object used to build and send prediction request to
Vertex AI.</p>
</dd></dl>
<dl class="method">
<dt id="apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON.get_request">
<code class="descname">get_request</code><span class="sig-paren">(</span><em>batch: Sequence[Any], model: google.cloud.aiplatform.models.Endpoint, throttle_delay_secs: int, inference_args: Optional[Dict[str, Any]]</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/ml/inference/vertex_ai_inference.html#VertexAIModelHandlerJSON.get_request"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON.get_request" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
<dl class="method">
<dt id="apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON.run_inference">
<code class="descname">run_inference</code><span class="sig-paren">(</span><em>batch: Sequence[Any], model: google.cloud.aiplatform.models.Endpoint, inference_args: Optional[Dict[str, Any]] = None</em><span class="sig-paren">)</span> &#x2192; Iterable[apache_beam.ml.inference.base.PredictionResult]<a class="reference internal" href="_modules/apache_beam/ml/inference/vertex_ai_inference.html#VertexAIModelHandlerJSON.run_inference"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON.run_inference" title="Permalink to this definition"></a></dt>
<dd><p>Sends a prediction request to a Vertex AI endpoint containing batch
of inputs and matches that input with the prediction response from
the endpoint as an iterable of PredictionResults.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>batch</strong> – a sequence of any values to be passed to the Vertex AI endpoint.
Should be encoded as the model expects.</li>
<li><strong>model</strong> – an aiplatform.Endpoint object configured to access the desired
model.</li>
<li><strong>inference_args</strong> – any additional arguments to send as part of the
prediction request.</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">An iterable of Predictions.</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="method">
<dt id="apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON.validate_inference_args">
<code class="descname">validate_inference_args</code><span class="sig-paren">(</span><em>inference_args: Optional[Dict[str, Any]]</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/ml/inference/vertex_ai_inference.html#VertexAIModelHandlerJSON.validate_inference_args"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.ml.inference.vertex_ai_inference.VertexAIModelHandlerJSON.validate_inference_args" title="Permalink to this definition"></a></dt>
<dd></dd></dl>
</dd></dl>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="apache_beam.ml.inference.xgboost_inference.html" class="btn btn-neutral float-right" title="apache_beam.ml.inference.xgboost_inference module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="apache_beam.ml.inference.utils.html" class="btn btn-neutral float-left" title="apache_beam.ml.inference.utils module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>