<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Vector queries on INFINI Pizza</title><link>/docs/references/search/vector/</link><description>Recent content in Vector queries on INFINI Pizza</description><generator>Hugo</generator><language>en</language><atom:link href="/docs/references/search/vector/index.xml" rel="self" type="application/rss+xml"/><item><title>Vector query (kNN)</title><link>/docs/references/search/vector/vector/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/references/search/vector/vector/</guid><description>&lt;h1 id="vector-query-knn">
 Vector query (kNN)
 &lt;a class="anchor" href="#vector-query-knn">#&lt;/a>
&lt;/h1>
&lt;p>Finds the &lt;code>k&lt;/code> nearest neighbors of a query vector — similarity search
over &lt;code>dense_vector&lt;/code> / &lt;code>sparse_vector&lt;/code> fields. The query vector can be
supplied directly, or as natural-language text that the serving layer
embeds with the field&amp;rsquo;s configured model (schema-driven semantic
search).&lt;/p>
&lt;h2 id="examples">
 Examples
 &lt;a class="anchor" href="#examples">#&lt;/a>
&lt;/h2>
&lt;div class="pizza-playground" data-dataset="embeddings" data-dsl="{
 &amp;#34;query&amp;#34;: {
 &amp;#34;vector&amp;#34;: {
 &amp;#34;field&amp;#34;: &amp;#34;embedding&amp;#34;,
 &amp;#34;query_vector&amp;#34;: [
 1,
 0,
 0,
 0,
 0,
 0,
 0,
 0
 ],
 &amp;#34;k&amp;#34;: 8,
 &amp;#34;similarity&amp;#34;: &amp;#34;cosine&amp;#34;
 }
 },
 &amp;#34;size&amp;#34;: 8,
 &amp;#34;track_total_hits&amp;#34;: true
}">
 &lt;noscript>JavaScript is disabled — use the curl form of this example instead.&lt;/noscript>
&lt;/div>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">POST /my-collection/_search
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;query&amp;#34;&lt;/span>: &lt;span class="o">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;vector&amp;#34;&lt;/span>: &lt;span class="o">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;field&amp;#34;&lt;/span>: &lt;span class="s2">&amp;#34;embedding&amp;#34;&lt;/span>,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;query_vector&amp;#34;&lt;/span>: &lt;span class="o">[&lt;/span>0.12, 0.45, 0.1, 0.0, -0.3, 0.2, 0.05, -0.1&lt;span class="o">]&lt;/span>,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;k&amp;#34;&lt;/span>: &lt;span class="m">10&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Text in, embedding server-side (requires an embedding endpoint — see
below):&lt;/p></description></item><item><title>Multi-vector query</title><link>/docs/references/search/vector/multi_vector/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/references/search/vector/multi_vector/</guid><description>&lt;h1 id="multi-vector-query">
 Multi-vector query
 &lt;a class="anchor" href="#multi-vector-query">#&lt;/a>
&lt;/h1>
&lt;p>Executes several 
 &lt;a href="/docs/references/search/vector/vector/">&lt;code>vector&lt;/code>&lt;/a> queries — each targeting a
(potentially different) vector field — and fuses their results into one
ranking.&lt;/p>
&lt;h2 id="examples">
 Examples
 &lt;a class="anchor" href="#examples">#&lt;/a>
&lt;/h2>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">POST /my-collection/_search
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;query&amp;#34;&lt;/span>: &lt;span class="o">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;multi_vector&amp;#34;&lt;/span>: &lt;span class="o">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;queries&amp;#34;&lt;/span>: &lt;span class="o">[&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">{&lt;/span> &lt;span class="s2">&amp;#34;field&amp;#34;&lt;/span>: &lt;span class="s2">&amp;#34;title_embedding&amp;#34;&lt;/span>, &lt;span class="s2">&amp;#34;query&amp;#34;&lt;/span>: &lt;span class="s2">&amp;#34;search engines&amp;#34;&lt;/span>, &lt;span class="s2">&amp;#34;k&amp;#34;&lt;/span>: &lt;span class="m">50&lt;/span> &lt;span class="o">}&lt;/span>,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">{&lt;/span> &lt;span class="s2">&amp;#34;field&amp;#34;&lt;/span>: &lt;span class="s2">&amp;#34;body_embedding&amp;#34;&lt;/span>, &lt;span class="s2">&amp;#34;query&amp;#34;&lt;/span>: &lt;span class="s2">&amp;#34;search engines&amp;#34;&lt;/span>, &lt;span class="s2">&amp;#34;k&amp;#34;&lt;/span>: &lt;span class="m">50&lt;/span> &lt;span class="o">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">]&lt;/span>,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;fusion&amp;#34;&lt;/span>: &lt;span class="s2">&amp;#34;weighted_sum&amp;#34;&lt;/span>,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;weights&amp;#34;&lt;/span>: &lt;span class="o">[&lt;/span>2.0, 1.0&lt;span class="o">]&lt;/span>,
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;k&amp;#34;&lt;/span>: &lt;span class="m">10&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="o">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="parameters-for-multi_vector">
 Parameters for &lt;code>multi_vector&lt;/code>
 &lt;a class="anchor" href="#parameters-for-multi_vector">#&lt;/a>
&lt;/h2>
&lt;ul>
&lt;li>&lt;code>queries&lt;/code> &lt;br>
(Required, array of vector queries) The individual

 &lt;a href="/docs/references/search/vector/vector/">&lt;code>vector&lt;/code>&lt;/a> queries to execute.&lt;/li>
&lt;li>&lt;code>fusion&lt;/code> &lt;br>
(Optional) Fusion strategy for combining results:
&lt;ul>
&lt;li>&lt;code>&amp;quot;weighted_sum&amp;quot;&lt;/code> — weighted sum of normalized scores; each query&amp;rsquo;s
score is multiplied by its weight (from &lt;code>weights&lt;/code>) before summing.&lt;/li>
&lt;li>&lt;code>{&amp;quot;rrf&amp;quot;: {&amp;quot;k&amp;quot;: 60}}&lt;/code> — Reciprocal Rank Fusion: combines rankings
rather than raw scores, with &lt;code>k&lt;/code> as the RRF smoothing constant
(default 60).&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>&lt;code>weights&lt;/code> &lt;br>
(Optional, array of numbers) Per-query weights, must match
&lt;code>queries.len()&lt;/code> if provided. For &lt;code>WeightedSum&lt;/code>: score multipliers;
for &lt;code>RRF&lt;/code>: rank contribution multipliers. Defaults to equal weight
(&lt;code>1.0&lt;/code>) per query.&lt;/li>
&lt;li>&lt;code>k&lt;/code> &lt;br>
(Optional, integer, default: &lt;code>10&lt;/code>) Final top-k to return after
fusion.&lt;/li>
&lt;/ul></description></item><item><title>Semantic query</title><link>/docs/references/search/vector/semantic/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/references/search/vector/semantic/</guid><description>&lt;h1 id="semantic-query">
 Semantic query
 &lt;a class="anchor" href="#semantic-query">#&lt;/a>
&lt;/h1>
&lt;p>Semantic search with zero field knowledge: the vector field and the
embedding model resolve from the collection schema, and the request is
plain text.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-sh" data-lang="sh">&lt;span class="line">&lt;span class="cl">POST /my-collection/_search
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">{&lt;/span>&lt;span class="s2">&amp;#34;query&amp;#34;&lt;/span>: &lt;span class="o">{&lt;/span>&lt;span class="s2">&amp;#34;semantic&amp;#34;&lt;/span>: &lt;span class="s2">&amp;#34;find documents about search engines&amp;#34;&lt;/span>&lt;span class="o">}}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>The gateway embeds the text server-side through the field&amp;rsquo;s configured
model (the same inference path as text 
 &lt;a href="/docs/references/search/vector/vector/">vector&lt;/a> queries)
and rewrites the clause into a native &lt;code>vector&lt;/code> query — so &lt;code>semantic&lt;/code>
composes inside &lt;code>bool&lt;/code> like any other leaf:&lt;/p></description></item></channel></rss>