summaryrefslogtreecommitdiffstats
path: root/python/vespa/docs/search.html
diff options
context:
space:
mode:
Diffstat (limited to 'python/vespa/docs/search.html')
-rw-r--r--python/vespa/docs/search.html291
1 files changed, 291 insertions, 0 deletions
diff --git a/python/vespa/docs/search.html b/python/vespa/docs/search.html
new file mode 100644
index 00000000000..e3200f5ed61
--- /dev/null
+++ b/python/vespa/docs/search.html
@@ -0,0 +1,291 @@
+---
+
+title: Search API
+
+keywords: fastai
+sidebar: home_sidebar
+
+summary: "Python search API"
+description: "Python search API"
+---
+<!--
+
+#################################################
+### THIS FILE WAS AUTOGENERATED! DO NOT EDIT! ###
+#################################################
+# file to edit: notebooks/search.ipynb
+# command to build the docs after a change: nbdev_build_docs
+
+-->
+
+<div class="container" id="notebook-container">
+
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+
+</div>
+ {% endraw %}
+
+<div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
+<div class="text_cell_render border-box-sizing rendered_html">
+<p>We can connect to the CORD-19 Search app and use it to exemplify the search API</p>
+
+</div>
+</div>
+</div>
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+<div class="input">
+
+<div class="inner_cell">
+ <div class="input_area">
+<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">vespa.application</span> <span class="kn">import</span> <span class="n">Vespa</span>
+
+<span class="n">app</span> <span class="o">=</span> <span class="n">Vespa</span><span class="p">(</span><span class="n">url</span> <span class="o">=</span> <span class="s2">&quot;https://api.cord19.vespa.ai&quot;</span><span class="p">)</span>
+</pre></div>
+
+ </div>
+</div>
+</div>
+
+</div>
+ {% endraw %}
+
+<div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
+<div class="text_cell_render border-box-sizing rendered_html">
+<h2 id="Specify-the-request-body">Specify the request body<a class="anchor-link" href="#Specify-the-request-body"> </a></h2><blockquote><p>Full flexibility by specifying the entire request body</p>
+</blockquote>
+
+</div>
+</div>
+</div>
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+<div class="input">
+
+<div class="inner_cell">
+ <div class="input_area">
+<div class=" highlight hl-ipython3"><pre><span></span><span class="n">body</span> <span class="o">=</span> <span class="p">{</span>
+ <span class="s1">&#39;yql&#39;</span><span class="p">:</span> <span class="s1">&#39;select title, abstract from sources * where userQuery();&#39;</span><span class="p">,</span>
+ <span class="s1">&#39;hits&#39;</span><span class="p">:</span> <span class="mi">5</span><span class="p">,</span>
+ <span class="s1">&#39;query&#39;</span><span class="p">:</span> <span class="s1">&#39;coronavirus temperature sensitivity&#39;</span><span class="p">,</span>
+ <span class="s1">&#39;type&#39;</span><span class="p">:</span> <span class="s1">&#39;any&#39;</span><span class="p">,</span>
+ <span class="s1">&#39;ranking&#39;</span><span class="p">:</span> <span class="s1">&#39;bm25&#39;</span>
+<span class="p">}</span>
+</pre></div>
+
+ </div>
+</div>
+</div>
+
+</div>
+ {% endraw %}
+
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+<div class="input">
+
+<div class="inner_cell">
+ <div class="input_area">
+<div class=" highlight hl-ipython3"><pre><span></span><span class="n">results</span> <span class="o">=</span> <span class="n">app</span><span class="o">.</span><span class="n">search</span><span class="p">(</span><span class="n">body</span><span class="o">=</span><span class="n">body</span><span class="p">)</span>
+</pre></div>
+
+ </div>
+</div>
+</div>
+
+</div>
+ {% endraw %}
+
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+<div class="input">
+
+<div class="inner_cell">
+ <div class="input_area">
+<div class=" highlight hl-ipython3"><pre><span></span><span class="n">results</span><span class="p">[</span><span class="s2">&quot;root&quot;</span><span class="p">][</span><span class="s2">&quot;fields&quot;</span><span class="p">]</span>
+</pre></div>
+
+ </div>
+</div>
+</div>
+
+<div class="output_wrapper">
+<div class="output">
+
+<div class="output_area">
+
+
+
+<div class="output_text output_subarea output_execute_result">
+<pre>{&#39;totalCount&#39;: 46917}</pre>
+</div>
+
+</div>
+
+</div>
+</div>
+
+</div>
+ {% endraw %}
+
+<div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
+<div class="text_cell_render border-box-sizing rendered_html">
+<h3 id="Query-+-term-matching-+-rank-profile">Query + term-matching + rank profile<a class="anchor-link" href="#Query-+-term-matching-+-rank-profile"> </a></h3>
+</div>
+</div>
+</div>
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+<div class="input">
+
+<div class="inner_cell">
+ <div class="input_area">
+<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">vespa.search</span> <span class="kn">import</span> <span class="n">Search</span><span class="p">,</span> <span class="n">OR</span><span class="p">,</span> <span class="n">RankProfile</span>
+
+<span class="n">results</span> <span class="o">=</span> <span class="n">app</span><span class="o">.</span><span class="n">search</span><span class="p">(</span>
+ <span class="n">query</span><span class="o">=</span><span class="s2">&quot;Is remdesivir an effective treatment for COVID-19?&quot;</span><span class="p">,</span>
+ <span class="n">search_model</span> <span class="o">=</span> <span class="n">Search</span><span class="p">(</span>
+ <span class="n">match_phase</span><span class="o">=</span><span class="n">OR</span><span class="p">(),</span>
+ <span class="n">rank_profile</span><span class="o">=</span><span class="n">RankProfile</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s2">&quot;bm25&quot;</span><span class="p">)</span>
+ <span class="p">)</span>
+<span class="p">)</span>
+</pre></div>
+
+ </div>
+</div>
+</div>
+
+</div>
+ {% endraw %}
+
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+<div class="input">
+
+<div class="inner_cell">
+ <div class="input_area">
+<div class=" highlight hl-ipython3"><pre><span></span><span class="n">results</span><span class="p">[</span><span class="s2">&quot;root&quot;</span><span class="p">][</span><span class="s2">&quot;fields&quot;</span><span class="p">]</span>
+</pre></div>
+
+ </div>
+</div>
+</div>
+
+<div class="output_wrapper">
+<div class="output">
+
+<div class="output_area">
+
+
+
+<div class="output_text output_subarea output_execute_result">
+<pre>{&#39;totalCount&#39;: 46917}</pre>
+</div>
+
+</div>
+
+</div>
+</div>
+
+</div>
+ {% endraw %}
+
+<div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
+<div class="text_cell_render border-box-sizing rendered_html">
+<h3 id="Query-+-term-matching-+-ann-operator-+-rank_profile">Query + term-matching + ann operator + rank_profile<a class="anchor-link" href="#Query-+-term-matching-+-ann-operator-+-rank_profile"> </a></h3>
+</div>
+</div>
+</div>
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+<div class="input">
+
+<div class="inner_cell">
+ <div class="input_area">
+<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">vespa.search</span> <span class="kn">import</span> <span class="n">Search</span><span class="p">,</span> <span class="n">ANN</span><span class="p">,</span> <span class="n">WeakAnd</span><span class="p">,</span> <span class="n">Union</span><span class="p">,</span> <span class="n">RankProfile</span>
+<span class="kn">from</span> <span class="nn">random</span> <span class="kn">import</span> <span class="n">random</span>
+
+<span class="n">match_phase</span> <span class="o">=</span> <span class="n">Union</span><span class="p">(</span>
+ <span class="n">WeakAnd</span><span class="p">(</span><span class="n">hits</span> <span class="o">=</span> <span class="mi">10</span><span class="p">),</span>
+ <span class="n">ANN</span><span class="p">(</span>
+ <span class="n">doc_vector</span><span class="o">=</span><span class="s2">&quot;title_embedding&quot;</span><span class="p">,</span>
+ <span class="n">query_vector</span><span class="o">=</span><span class="s2">&quot;title_vector&quot;</span><span class="p">,</span>
+ <span class="n">embedding_model</span><span class="o">=</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="p">[</span><span class="n">random</span><span class="p">()</span> <span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">768</span><span class="p">)],</span>
+ <span class="n">hits</span> <span class="o">=</span> <span class="mi">10</span><span class="p">,</span>
+ <span class="n">label</span><span class="o">=</span><span class="s2">&quot;title&quot;</span>
+ <span class="p">)</span>
+<span class="p">)</span>
+<span class="n">rank_profile</span> <span class="o">=</span> <span class="n">RankProfile</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s2">&quot;bm25&quot;</span><span class="p">,</span> <span class="n">list_features</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+<span class="n">search_model</span> <span class="o">=</span> <span class="n">Search</span><span class="p">(</span><span class="n">match_phase</span><span class="o">=</span><span class="n">match_phase</span><span class="p">,</span> <span class="n">rank_profile</span><span class="o">=</span><span class="n">rank_profile</span><span class="p">)</span>
+</pre></div>
+
+ </div>
+</div>
+</div>
+
+</div>
+ {% endraw %}
+
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+<div class="input">
+
+<div class="inner_cell">
+ <div class="input_area">
+<div class=" highlight hl-ipython3"><pre><span></span><span class="n">results</span> <span class="o">=</span> <span class="n">app</span><span class="o">.</span><span class="n">search</span><span class="p">(</span><span class="n">query</span><span class="o">=</span><span class="s2">&quot;Is remdesivir an effective treatment for COVID-19?&quot;</span><span class="p">,</span>
+ <span class="n">search_model</span><span class="o">=</span><span class="n">search_model</span><span class="p">)</span>
+</pre></div>
+
+ </div>
+</div>
+</div>
+
+</div>
+ {% endraw %}
+
+ {% raw %}
+
+<div class="cell border-box-sizing code_cell rendered">
+<div class="input">
+
+<div class="inner_cell">
+ <div class="input_area">
+<div class=" highlight hl-ipython3"><pre><span></span><span class="n">results</span><span class="p">[</span><span class="s2">&quot;root&quot;</span><span class="p">][</span><span class="s2">&quot;fields&quot;</span><span class="p">]</span>
+</pre></div>
+
+ </div>
+</div>
+</div>
+
+<div class="output_wrapper">
+<div class="output">
+
+<div class="output_area">
+
+
+
+<div class="output_text output_subarea output_execute_result">
+<pre>{&#39;totalCount&#39;: 1049}</pre>
+</div>
+
+</div>
+
+</div>
+</div>
+
+</div>
+ {% endraw %}
+
+</div>
+
+