new: remove python docs in favour of qdrant.tech (#1174)

* new: remove python docs in favour of qdrant.tech

* fix: docs redirect

* fix: fix netlify

* fix: fix netlify
This commit is contained in:
George
2026-05-06 18:38:36 +07:00
committed by George Panchuk
parent e191b02f90
commit beb9ae5b90
70 changed files with 36 additions and 2822 deletions

4
docs/.gitignore vendored
View File

@@ -1,4 +0,0 @@
html/
.doctrees/
.idea/

View File

@@ -1,2 +0,0 @@
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="800px" height="800px" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M21.3,19a2.42,2.42,0,0,1-2.5.56l-2.35,2.35a.34.34,0,0,1-.49,0l-1-1a.36.36,0,0,1,0-.49l2.36-2.35a2.39,2.39,0,0,1,3.39-2.91L19.12,16.8l1,1,1.62-1.62A2.39,2.39,0,0,1,21.3,19ZM22,8v5.76A4.47,4.47,0,0,0,19.5,13a4.57,4.57,0,0,0-1.29.19V9.29H16.66V14A4.5,4.5,0,0,0,15,17.5a4.07,4.07,0,0,0,0,.5H4a2,2,0,0,1-2-2V8A2,2,0,0,1,4,6H20A2,2,0,0,1,22,8ZM11,15,9.09,9.27H7L5.17,15h1.7l.29-1.07H9L9.29,15Zm4.77-3.89a1.67,1.67,0,0,0-.55-1.35,2.43,2.43,0,0,0-1.62-.47h-2V15h1.54V13.11h.44a2.75,2.75,0,0,0,1-.17,1.82,1.82,0,0,0,.67-.44,1.63,1.63,0,0,0,.36-.64A2.36,2.36,0,0,0,15.75,11.11Zm-7.3.62-.12-.44-.15-.58c0-.21-.08-.37-.11-.5a4.63,4.63,0,0,1-.1.48c0,.19-.08.38-.13.57s-.08.34-.12.47l-.24.93H8.69Zm5.59-1a.63.63,0,0,0-.5-.17h-.4v1.31h.31a.9.9,0,0,0,.37-.07.59.59,0,0,0,.27-.22.75.75,0,0,0,.11-.42A.57.57,0,0,0,14,10.71Z"/><rect width="24" height="24" fill="none"/></svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 345 KiB

View File

@@ -1,108 +0,0 @@
# Configuration file for the Sphinx documentation builder.
#
# This file only contains a selection of the most common options. For a full
# list see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Path setup --------------------------------------------------------------
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
# import os
# import sys
from datetime import datetime
#
# -- Project information -----------------------------------------------------
project = "Qdrant Client"
copyright = f"{datetime.today().year}, Qdrant Client Authors"
author = "Qdrant Client Authors"
# -- General configuration ---------------------------------------------------
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
"sphinx.ext.napoleon",
"sphinx.ext.autodoc",
"sphinx.ext.viewcode",
"sphinx.ext.intersphinx",
"nbsphinx",
"IPython.sphinxext.ipython_console_highlighting",
]
# prevents sphinx from adding full path to type hints
autodoc_typehints_format = "short"
# order members by type and not alphabetically, it prevents mixing of class attributes
# and methods
autodoc_member_order = "groupwise"
# moves ``Return type`` to ``Returns``
napoleon_use_rtype = False
# If true, suppress the module name of the python reference if it can be resolved.
# Experimental feature:
# https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-python_use_unqualified_type_names
python_use_unqualified_type_names = True
# prevents sphinx to add full module path in titles
add_module_names = False
# Add any paths that contain templates here, relative to this directory.
templates_path = ["_templates"]
# prevents unfolding type hints
# autodoc_type_aliases = {
# "KeyExtractorType": "KeyExtractorType",
# "TensorInterchange": "TensorInterchange",
# "CacheCollateReturnType": "CacheCollateReturnType",
# "CollateFnType": "CollateFnType",
# }
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = [
"*grpc*",
"*tests*", # tests are not part of the documentation
]
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = "qdrant_sphinx_theme"
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
# html_static_path = []
# Files excluded via exclude_patterns still being generating by sphinx-apidoc
# As they are generated, some documents have links to them. It leads to a warning like:
# `WARNING: toctree contains reference to excluded document '...'`.
# suppress_warnings allows to remove such warnings
suppress_warnings = ["toc.excluded"]
html_theme_options = {
# google analytics can be added here
"logo_only": False,
"display_version": True,
"prev_next_buttons_location": "bottom",
"style_external_links": False,
# Toc options
"collapse_navigation": True,
"sticky_navigation": True,
"titles_only": False,
"qdrant_project": "qdrant_client",
"qdrant_logo": "_static/images/logo.svg",
}
# default is false
_FAST_DOCS_DEV = False

View File

@@ -1,182 +0,0 @@
.. You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Qdrant Python Client Documentation
==================================
Client library for the `Qdrant <https://github.com/qdrant/qdrant>`_ vector search engine.
Library contains type definitions for all Qdrant API and allows to make both Sync and Async requests.
``Pydantic`` is used for describing request models and ``httpx`` for handling http queries.
Client allows calls for all `Qdrant API methods <https://api.qdrant.tech/>`_ directly. It also provides some additional helper methods for frequently required operations, e.g. initial collection uploading.
Installation
============
.. code-block:: bash
pip install qdrant-client
Examples
========
Instance a client
.. code-block:: python
from qdrant_client import QdrantClient
client = QdrantClient(host="localhost", port=6333)
Create a new collection
.. code-block:: python
from qdrant_client.models import VectorParams, Distance
if not client.collection_exists("my_collection"):
client.create_collection(
collection_name="my_collection",
vectors_config=VectorParams(size=100, distance=Distance.COSINE),
)
Insert vectors into a collection
.. code-block:: python
import numpy as np
from qdrant_client.models import PointStruct
vectors = np.random.rand(100, 100)
client.upsert(
collection_name="my_collection",
points=[
PointStruct(
id=idx,
vector=vector.tolist(),
payload={"color": "red", "rand_number": idx % 10}
)
for idx, vector in enumerate(vectors)
]
)
Search for similar vectors
.. code-block:: python
query_vector = np.random.rand(100)
hits = client.search(
collection_name="my_collection",
query_vector=query_vector,
limit=5 # Return 5 closest points
)
Search for similar vectors with filtering condition
.. code-block:: python
from qdrant_client.models import Filter, FieldCondition, Range
hits = client.search(
collection_name="my_collection",
query_vector=query_vector,
query_filter=Filter(
must=[ # These conditions are required for search results
FieldCondition(
key='rand_number', # Condition based on values of `rand_number` field.
range=Range(
gte=3 # Select only those results where `rand_number` >= 3
)
)
]
),
limit=5 # Return 5 closest points
)
Async Client
============
Starting from version 1.6.1, all python client methods are available in async version.
.. code-block:: python
from qdrant_client import AsyncQdrantClient, models
import numpy as np
import asyncio
async def main():
# Your async code using QdrantClient might be put here
client = AsyncQdrantClient(url="http://localhost:6333")
if not await client.collection_exists("my_collection"):
await client.create_collection(
collection_name="my_collection",
vectors_config=models.VectorParams(size=10, distance=models.Distance.COSINE),
)
await client.upsert(
collection_name="my_collection",
points=[
models.PointStruct(
id=i,
vector=np.random.rand(10).tolist(),
)
for i in range(100)
],
)
res = await client.search(
collection_name="my_collection",
query_vector=np.random.rand(10).tolist(), # type: ignore
limit=10,
)
print(res)
asyncio.run(main())
Both, gRPC and REST API are supported in async mode.
Highlighted Classes
===================
- :class:`qdrant_client.http.models.models.PointStruct`
- :class:`qdrant_client.http.models.models.Filter`
- :class:`qdrant_client.http.models.models.VectorParams`
- :class:`qdrant_client.http.models.models.BinaryQuantization`
.. toctree::
:maxdepth: 2
:caption: PointStruct Reference
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
.. toctree::
:maxdepth: 2
:caption: Examples
quickstart.ipynb
.. toctree::
:maxdepth: 2
:caption: API Reference
Models <qdrant_client.http.models.models>
Exceptions <qdrant_client.http.exceptions>
QdrantClient <qdrant_client.qdrant_client>
AsyncQdrantClient <qdrant_client.async_qdrant_client>
FastEmbed Mixin <qdrant_client.qdrant_fastembed>
.. toctree::
:maxdepth: 1
:caption: Complete Docs
Complete Client API Docs <qdrant_client>

View File

@@ -1,7 +0,0 @@
qdrant\_client.async\_client\_base module
=========================================
.. automodule:: qdrant_client.async_client_base
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.async\_qdrant\_client module
===========================================
.. automodule:: qdrant_client.async_qdrant_client
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.async\_qdrant\_fastembed module
==============================================
.. automodule:: qdrant_client.async_qdrant_fastembed
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.async\_qdrant\_remote module
===========================================
.. automodule:: qdrant_client.async_qdrant_remote
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.client\_base module
==================================
.. automodule:: qdrant_client.client_base
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.connection module
================================
.. automodule:: qdrant_client.connection
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.conversions.common\_types module
===============================================
.. automodule:: qdrant_client.conversions.common_types
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.conversions.conversion module
============================================
.. automodule:: qdrant_client.conversions.conversion
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,19 +0,0 @@
qdrant\_client.conversions package
==================================
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.conversions.common_types
qdrant_client.conversions.conversion
Module contents
---------------
.. automodule:: qdrant_client.conversions
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.fastembed\_common module
=======================================
.. automodule:: qdrant_client.fastembed_common
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.collections\_pb2 module
===========================================
.. automodule:: qdrant_client.grpc.collections_pb2
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.collections\_pb2\_grpc module
=================================================
.. automodule:: qdrant_client.grpc.collections_pb2_grpc
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.collections\_service\_pb2 module
====================================================
.. automodule:: qdrant_client.grpc.collections_service_pb2
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.collections\_service\_pb2\_grpc module
==========================================================
.. automodule:: qdrant_client.grpc.collections_service_pb2_grpc
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.json\_with\_int\_pb2 module
===============================================
.. automodule:: qdrant_client.grpc.json_with_int_pb2
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.json\_with\_int\_pb2\_grpc module
=====================================================
.. automodule:: qdrant_client.grpc.json_with_int_pb2_grpc
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.points\_pb2 module
======================================
.. automodule:: qdrant_client.grpc.points_pb2
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.points\_pb2\_grpc module
============================================
.. automodule:: qdrant_client.grpc.points_pb2_grpc
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.points\_service\_pb2 module
===============================================
.. automodule:: qdrant_client.grpc.points_service_pb2
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.points\_service\_pb2\_grpc module
=====================================================
.. automodule:: qdrant_client.grpc.points_service_pb2_grpc
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.qdrant\_pb2 module
======================================
.. automodule:: qdrant_client.grpc.qdrant_pb2
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.qdrant\_pb2\_grpc module
============================================
.. automodule:: qdrant_client.grpc.qdrant_pb2_grpc
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,31 +0,0 @@
qdrant\_client.grpc package
===========================
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.grpc.collections_pb2
qdrant_client.grpc.collections_pb2_grpc
qdrant_client.grpc.collections_service_pb2
qdrant_client.grpc.collections_service_pb2_grpc
qdrant_client.grpc.json_with_int_pb2
qdrant_client.grpc.json_with_int_pb2_grpc
qdrant_client.grpc.points_pb2
qdrant_client.grpc.points_pb2_grpc
qdrant_client.grpc.points_service_pb2
qdrant_client.grpc.points_service_pb2_grpc
qdrant_client.grpc.qdrant_pb2
qdrant_client.grpc.qdrant_pb2_grpc
qdrant_client.grpc.snapshots_service_pb2
qdrant_client.grpc.snapshots_service_pb2_grpc
Module contents
---------------
.. automodule:: qdrant_client.grpc
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.snapshots\_service\_pb2 module
==================================================
.. automodule:: qdrant_client.grpc.snapshots_service_pb2
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.grpc.snapshots\_service\_pb2\_grpc module
========================================================
.. automodule:: qdrant_client.grpc.snapshots_service_pb2_grpc
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.http.api.cluster\_api module
===========================================
.. automodule:: qdrant_client.http.api.cluster_api
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.http.api.collections\_api module
===============================================
.. automodule:: qdrant_client.http.api.collections_api
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.http.api.points\_api module
==========================================
.. automodule:: qdrant_client.http.api.points_api
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,22 +0,0 @@
qdrant\_client.http.api package
===============================
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.http.api.cluster_api
qdrant_client.http.api.collections_api
qdrant_client.http.api.points_api
qdrant_client.http.api.service_api
qdrant_client.http.api.snapshots_api
Module contents
---------------
.. automodule:: qdrant_client.http.api
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.http.api.service\_api module
===========================================
.. automodule:: qdrant_client.http.api.service_api
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.http.api.snapshots\_api module
=============================================
.. automodule:: qdrant_client.http.api.snapshots_api
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.http.api\_client module
======================================
.. automodule:: qdrant_client.http.api_client
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.http.configuration module
========================================
.. automodule:: qdrant_client.http.configuration
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.http.exceptions module
=====================================
.. automodule:: qdrant_client.http.exceptions
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.http.models.models module
========================================
.. automodule:: qdrant_client.http.models.models
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,18 +0,0 @@
qdrant\_client.http.models package
==================================
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.http.models.models
Module contents
---------------
.. automodule:: qdrant_client.http.models
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,29 +0,0 @@
qdrant\_client.http package
===========================
Subpackages
-----------
.. toctree::
:maxdepth: 4
qdrant_client.http.api
qdrant_client.http.models
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.http.api_client
qdrant_client.http.configuration
qdrant_client.http.exceptions
Module contents
---------------
.. automodule:: qdrant_client.http
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.local.async\_qdrant\_local module
================================================
.. automodule:: qdrant_client.local.async_qdrant_local
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.local.distances module
=====================================
.. automodule:: qdrant_client.local.distances
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.local.geo module
===============================
.. automodule:: qdrant_client.local.geo
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.local.local\_collection module
=============================================
.. automodule:: qdrant_client.local.local_collection
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.local.payload\_filters module
============================================
.. automodule:: qdrant_client.local.payload_filters
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.local.payload\_value\_extractor module
=====================================================
.. automodule:: qdrant_client.local.payload_value_extractor
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.local.persistence module
=======================================
.. automodule:: qdrant_client.local.persistence
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.local.qdrant\_local module
=========================================
.. automodule:: qdrant_client.local.qdrant_local
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,33 +0,0 @@
qdrant\_client.local package
============================
Subpackages
-----------
.. toctree::
:maxdepth: 4
qdrant_client.local.tests
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.local.async_qdrant_local
qdrant_client.local.distances
qdrant_client.local.geo
qdrant_client.local.local_collection
qdrant_client.local.payload_filters
qdrant_client.local.payload_value_extractor
qdrant_client.local.persistence
qdrant_client.local.qdrant_local
Module contents
---------------
.. automodule:: qdrant_client.local
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,18 +0,0 @@
qdrant\_client.local.tests package
==================================
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.local.tests.test_payload_filters
Module contents
---------------
.. automodule:: qdrant_client.local.tests
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.local.tests.test\_payload\_filters module
========================================================
.. automodule:: qdrant_client.local.tests.test_payload_filters
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.migrate.migrate module
=====================================
.. automodule:: qdrant_client.migrate.migrate
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,18 +0,0 @@
qdrant\_client.migrate package
==============================
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.migrate.migrate
Module contents
---------------
.. automodule:: qdrant_client.migrate
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,10 +0,0 @@
qdrant\_client.models package
=============================
Module contents
---------------
.. automodule:: qdrant_client.models
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.parallel\_processor module
=========================================
.. automodule:: qdrant_client.parallel_processor
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.qdrant\_client module
====================================
.. automodule:: qdrant_client.qdrant_client
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.qdrant\_fastembed module
=======================================
.. automodule:: qdrant_client.qdrant_fastembed
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.qdrant\_remote module
====================================
.. automodule:: qdrant_client.qdrant_remote
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,42 +0,0 @@
qdrant\_client package
======================
Subpackages
-----------
.. toctree::
:maxdepth: 4
qdrant_client.conversions
qdrant_client.grpc
qdrant_client.http
qdrant_client.local
qdrant_client.migrate
qdrant_client.models
qdrant_client.uploader
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.async_client_base
qdrant_client.async_qdrant_client
qdrant_client.async_qdrant_fastembed
qdrant_client.async_qdrant_remote
qdrant_client.client_base
qdrant_client.connection
qdrant_client.fastembed_common
qdrant_client.parallel_processor
qdrant_client.qdrant_client
qdrant_client.qdrant_fastembed
qdrant_client.qdrant_remote
Module contents
---------------
.. automodule:: qdrant_client
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.uploader.grpc\_uploader module
=============================================
.. automodule:: qdrant_client.uploader.grpc_uploader
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.uploader.rest\_uploader module
=============================================
.. automodule:: qdrant_client.uploader.rest_uploader
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,20 +0,0 @@
qdrant\_client.uploader package
===============================
Submodules
----------
.. toctree::
:maxdepth: 4
qdrant_client.uploader.grpc_uploader
qdrant_client.uploader.rest_uploader
qdrant_client.uploader.uploader
Module contents
---------------
.. automodule:: qdrant_client.uploader
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,7 +0,0 @@
qdrant\_client.uploader.uploader module
=======================================
.. automodule:: qdrant_client.uploader.uploader
:members:
:undoc-members:
:show-inheritance:

View File

@@ -1,357 +0,0 @@
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Quickstart\n",
"\n",
"\n",
"We'll cover the following here: \n",
"\n",
"## Installation\n",
"\n",
"1. Installation with fastembed\n",
"2. Installation without fastembed\n",
"\n",
"## Embedding, Inserting and Querying\n",
"\n",
"1. `add` and `query` with fastembed\n",
"2. Qdrant without fastembed: Points, upsert and query "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Installation\n",
"\n",
"### Installation with fastembed\n",
"\n",
"Qdrant's Python client ships with FastEmbed, an optional dependency for embedding text without handling"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"!pip install 'qdrant-client[fastembed]' --quiet"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Initialize the Client\n",
"\n",
"We support 3 production options:\n",
"\n",
"1. Qdrant [Cloud](https://qdrant.to/cloud?utm_source=docs&utm_medium=website&utm_campaign=python-docs&utm_content=article&utm_term=intro) - Recommended for Getting Started\n",
"2. Qdrant Managed Deployment with your Cloud Provider - Recommendeded for Enteprises\n",
"3. Qdrant [Self-Hosted with Docker](https://qdrant.tech/documentation/quick-start/) - Recommended for those with specific requirements\n",
"\n",
"In addition, Python client wraps `numpy` in a `:memory:` mode, which is useful for getting a feel of the client syntax."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"from qdrant_client import QdrantClient\n",
"\n",
"# client = QdrantClient(path=\"path/to/db\") # Persists changes to disk\n",
"# or\n",
"client = QdrantClient(\":memory:\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Embedding, Inserting and Querying\n",
"\n",
"We'll use the FastEmbed library to embed text without handling the embedding model.\n",
"\n",
"### Embedding and Inserting\n",
"\n",
"We wrap the `Point` creation and insertion into a single API: `add` for convenience."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['a3e23385a815464385a7589443f850db', 'd5bef7146f1541518cd767313f6569d5']"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Prepare your documents, metadata, and IDs\n",
"docs = [\"Qdrant has Langchain integrations\", \"Qdrant also has Llama Index integrations\"]\n",
"\n",
"client.add(\n",
" collection_name=\"demo_collection\",\n",
" documents=docs,\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"If you'd like to add points with control over the metadata, you can use the `metadata` parameter. Here is a quick example:"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[42, 2]"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Prepare your documents, metadata, and IDs\n",
"docs = [\"Qdrant has Langchain integrations\", \"Qdrant also has Llama Index integrations\"]\n",
"metadata = [\n",
" {\"source\": \"Langchain-docs\"},\n",
" {\"source\": \"Linkedin-docs\"},\n",
"]\n",
"ids = [42, 2]\n",
"\n",
"# Use the new add method\n",
"client.add(\n",
" collection_name=\"demo_collection\",\n",
" documents=docs,\n",
" metadata=metadata,\n",
" ids=ids\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Querying with text directly\n",
"\n",
"At query time, we need to embed the incoming query and then search for the nearest neighbors. We can do this with the `query` API:"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[QueryResponse(id=42, embedding=None, metadata={'document': 'Qdrant has Langchain integrations', 'source': 'Langchain-docs'}, document='Qdrant has Langchain integrations', score=0.8276550115796268)]\n"
]
}
],
"source": [
"search_result = client.query(\n",
" collection_name=\"demo_collection\",\n",
" query_text=\"This is a query document\",\n",
" limit=1\n",
")\n",
"print(search_result)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Qdrant without `fastembed`\n",
"\n",
"### Collection\n",
"\n",
"A collection is a set of points with the same dimensionality and a similarity metric (e.g. Dot, Cosine) defined on it. We can create a collection with the `create_collection` method:"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from qdrant_client.http.models import Distance, VectorParams\n",
"\n",
"if not client.collection_exists(\"test_collection\"):\n",
"\tclient.create_collection(\n",
"\t\tcollection_name=\"test_collection\",\n",
"\t\tvectors_config=VectorParams(size=4, distance=Distance.DOT),\n",
"\t)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notice that we didn't have to explicitly create a collection with `fastembed`: If the collection exists already, we update or create a new one when using `add`. \n",
"\n",
"## Points\n",
"A point is a vector of floats with a unique identifier `id`. We can create a point with the `Point` API:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"operation_id=0 status=<UpdateStatus.COMPLETED: 'completed'>\n"
]
}
],
"source": [
"from qdrant_client.http.models import PointStruct\n",
"\n",
"operation_info = client.upsert(\n",
" collection_name=\"test_collection\",\n",
" wait=True,\n",
" points=[\n",
" PointStruct(id=1, vector=[0.05, 0.61, 0.76, 0.74], payload={\"city\": \"Berlin\"}),\n",
" PointStruct(id=2, vector=[0.19, 0.81, 0.75, 0.11], payload={\"city\": \"London\"}),\n",
" PointStruct(id=3, vector=[0.36, 0.55, 0.47, 0.94], payload={\"city\": \"Moscow\"}),\n",
" PointStruct(id=4, vector=[0.18, 0.01, 0.85, 0.80], payload={\"city\": \"New York\"}),\n",
" PointStruct(id=5, vector=[0.24, 0.18, 0.22, 0.44], payload={\"city\": \"Beijing\"}),\n",
" PointStruct(id=6, vector=[0.35, 0.08, 0.11, 0.44], payload={\"city\": \"Mumbai\"}),\n",
" ]\n",
")\n",
"print(operation_info)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This creation of `Points` is also abstracted away with the `add` API. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Querying with Vector"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[ScoredPoint(id=2, version=0, score=1.2660000014305115, payload={'city': 'London'}, vector=None)]\n"
]
}
],
"source": [
"search_result = client.search(\n",
" collection_name=\"test_collection\",\n",
" query_vector=[0.18, 0.81, 0.75, 0.12], \n",
" limit=1\n",
")\n",
"print(search_result)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Querying with a Filter and Vector"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[ScoredPoint(id=2, version=0, score=0.8709999993443489, payload={'city': 'London'}, vector=None)]\n"
]
}
],
"source": [
"from qdrant_client.http.models import Filter, FieldCondition, MatchValue\n",
"\n",
"search_result = client.search(\n",
" collection_name=\"test_collection\",\n",
" query_vector=[0.2, 0.1, 0.9, 0.7], \n",
" query_filter=Filter(\n",
" must=[\n",
" FieldCondition(\n",
" key=\"city\",\n",
" match=MatchValue(value=\"London\")\n",
" )\n",
" ]\n",
" ),\n",
" limit=1\n",
")\n",
"print(search_result)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "client",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}

View File

@@ -1,6 +1,9 @@
[build]
publish = "docs/html"
command = "bash -x tools/generate_docs_netlify.sh"
command = "mkdir -p public"
publish = "public"
[build.environment]
PYTHON_VERSION = "3.10"
[[redirects]]
from = "/*"
to = "https://qdrant.tech/documentation/"
status = 301
force = true

1566
poetry.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -44,14 +44,6 @@ ruff = "0.4.3"
pytest-mock = "^3.14.0"
pre-commit = "^4.2.0"
[tool.poetry.group.docs.dependencies]
sphinx = "^5.0.0"
qdrant-sphinx-theme = { git = "https://github.com/qdrant/qdrant_sphinx_theme.git", branch = "master" }
nbsphinx = "^0.9.3"
ipython = "8"
Pygments= "2.16.1"
[tool.poetry.group.types.dependencies]
pyright = ">=1.1.293"
mypy = "^1.0.0"

View File

@@ -1,17 +0,0 @@
#!/usr/bin/env sh
set -xe
# Ensure current path is project root
cd "$(dirname "$0")/../"
python3 -m venv venv
source venv/bin/activate
brew install pandoc
export PATH="/opt/buildhome/.local/bin:$PATH"
pip3 install poetry
poetry install
sphinx-build docs/source docs/html