Commit Graph

145 Commits

Author SHA1 Message Date
George Panchuk
fb1591a47d new: adjust numpy versioning 2025-12-04 11:53:11 +07:00
George Panchuk
1a75c218f1 new: update pyproject and lock 2025-12-02 11:53:47 +07:00
George
1de2ce2f23 bump to 1.16.2-dev 2025-11-25 17:48:36 +07:00
George
b5ccd9ff4e new: include pyi into the package (#1121) 2025-11-24 20:04:47 +07:00
George
717640f701 new: bump version to v1.16.1-dev (#1115) 2025-11-17 23:09:51 +07:00
kurtqq
99f96eb3a8 Relax allowed version of portalocker (#1034)
* Relax minmum version of portalocker

* Update pyproject.toml

* upd poetry lock

---------

Co-authored-by: generall <andrey@vasnetsov.com>
2025-07-17 10:11:05 +02:00
George
b41e97416f new: update fastembed to ^0.7 (#1026)
* new: update fastembed to ^0.7

* fix: update poetry lock
2025-06-14 09:54:37 +03:00
George
7900a7563e new: update readme, move pre-commit to pyproject.toml (#984) 2025-05-15 14:46:45 +04:00
George
acb33121b1 bump version to v1.4.3-dev (#972) 2025-04-25 15:58:05 +03:00
George
5c402ac3c0 bump dev to 1.4.2-dev (#961) 2025-04-24 16:52:29 +03:00
George
5c2f3e883c Remove multitask models list (#945)
* new: remove multitask embedding list

* new: update fastembed
2025-04-15 16:43:06 +03:00
George
e9b427f023 new: forbid pydantic >2.0,<2.2.1 due to bug in update_forward_refs (#943) 2025-04-07 18:44:17 +03:00
Luis Cossío
85b86f7db8 [gen grpc] Include pyi grpc files (#917)
* generate grpc client with pyi files

* poetry lock

* new: do not include pyi files into the package

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2025-04-07 13:03:03 +03:00
tellet-q
635457b47c new: Support for too many requests (#914)
* Update grpc client

* Update rest client and add new exception

* Ensure uploaders continue after wait

* Update

* Address coderabitai review

* Fix tests

* Re-generate clients

* Address review

* Revert attempt handling

* Add new exception

* Add tests

* Do not throw ResourceQuotaExceeded

* Add support for async grpc

* Remove iscoroutine check and more

* update models

* Address some coderabbitai comments

* Address review

* Fix test

* Fix backwards compatibility tests

* Address review

* Get rid of redundant code

* Address ai review

* refactoring: refactor tests

* refactoring: do not inherit resource exhausted from aiorpcerror

* fix: remove redundant import

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2025-03-24 18:05:15 +03:00
George
8ae2c3b220 bump dev version to 1.13.3-dev (#900) 2025-02-17 09:59:26 +01:00
George
bc7b955fec fix: fix poetry version constraint bug (#899)
* fix: fix poetry version constraint bug

* fix: update poetry lock
2025-02-15 22:27:45 +01:00
George
de53ccae62 new: remove grpcio tools from dependencies, add protobuf (#896) 2025-02-05 12:35:19 +01:00
George
3c0d7d1bdd bump version to 1.13.1-dev, update ci (#883) 2025-01-20 12:40:47 +01:00
George
dffab2e208 update clients (#880)
* update clients

* new: update conversions

* fix: update inspection cache

* update grpc

* bump fastembed to 0.5.1

* update poetry lock

* update poetry lock
2025-01-16 13:01:27 +01:00
George
a960b1aa6e Fastembed 0.5.0 (#870)
* new: update fastembed to 0.5.0, update numpy version mapping, bump qdrant-client to v1.12.2

* new: update qdrant version in integration tests

* update lock

* drop python3.8

* fix numpy for type checkers

* fix netlify

* fix netlify
2024-12-27 19:17:43 +01:00
George
baa3e264c8 Drop python 3.8 (#848)
* new: drop python 3.8 support, update type hints

* fix: remove 3.8 from ci

* fix: update type hints

* fix: make netlify use python3.10

* fix: try python3.9 for sphinx

* debug: try updating sphinx

* new: bump ffastembed to 0.4.2

* fix: install numpy<2 for mypy

* fix: install numpy via poetry
2024-11-15 15:54:32 +01:00
George
5e0a40e954 Propagate options (#835)
* new: propagate model params in document options

* new: update fastembed version

* fix: fix option propagation, add tests

* fix: update poetry lock

* fix: don't change the set model on embed raw types

* tests: extend propagate options test

* fix: erase cls model storage after each test
2024-10-31 09:56:58 +01:00
George
7de6aed644 bump version to 1.12.2-dev (#824) 2024-10-29 18:06:02 +01:00
George
1eb9b78f5d new: update dev version (#820)
* new: update dev version

* fix: update qdrant version for backward compatibility in ci
2024-10-25 17:06:02 +02:00
George
2c638903ae bump to 1.11.4-dev (#792) 2024-09-24 23:00:37 +02:00
George
55fecb2417 bump dev version to 1.11.3-dev (#777) 2024-09-17 23:14:58 +02:00
George
f568a21a97 bump dev version to 1.11.2-dev (#751) 2024-08-29 09:19:11 +04:00
George
d4c7545c2d new: update fastembed to 0.3.6 (#753) 2024-08-23 22:19:10 +02:00
George
55d5dc3ab1 new: bump dev version (#737) 2024-08-15 15:18:58 +02:00
George
9a9fb0c1a4 chore: remove qdrant_openapi_client directory (#731)
* chore: remove qdrant_openapi_client directory

* fix: remove qdrant_openapi_client from pyproject.toml

* chore: finish deletion
2024-08-09 21:26:05 +02:00
Hossam Hagag
3c42c3a9a6 added new to type stub + fixed type hinting (#717)
* added new to type stub + fixed type hinting

* unlocked pyright + updated type_stub

* updated poetry lock

* fix: fix local collection upsert type hint

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2024-08-08 17:44:17 +02:00
George
d354293a4e new: set idf modifier in fastembed mixin for bm models (#686)
* new: set idf modifier in fastembed mixin for bm models

* fix: update poetry lock

* fix: tmp fix, restrict pyright version

* refactor: update bm model extraction, update fastembed

* fix: fix list of bm models

* fix: fix default bm models list value

* refactoring: remove redundant import
2024-07-30 18:01:47 +02:00
Luis Cossío
a5023f6cf7 Bump to v1.10.2-dev (#657)
* fix typo, bump version

* new: update version

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2024-07-10 20:06:22 +03:00
Andrey Vasnetsov
8556cc86d6 Drop black (#623)
* replace black with ruff

* use line length

* remove isort

* regen async

* regen async

* fix ruff version [no-ci]
2024-05-07 20:47:27 +02:00
George
3bdb6f6719 new: add gpu support for fastembed, add fastembed providers (#612)
* new: add gpu support for fastembed, add fastembed providers

* new: update fastembed, add fastembed-gpu, add type alias for onnx providers

* new: update readme

* fix: fix poetry.lock
2024-05-03 21:23:44 +02:00
George
987ce2821a fix: align formatters versions (#602) 2024-04-19 15:55:51 +02:00
George
e7fe4febfa new: update fastembed with fix for sparse models parallelism (#584) 2024-04-10 18:48:09 +02:00
Andrey Vasnetsov
822aefa1c1 WIP: hybrid search with fastembed (#553)
* WIP: hybrid search with fastembed

* hybrid queries with fastembed

* test for hybrid

* fix typo

* new: extend hybrid search tests, fix mypy, small refactoring (#554)

* refactor: align model name parameters in setters, update tests

* fix: fix async

* fix: add a good test, fix sparse vectors in query batch

* refactoring: reduce branching, refactor fastembed tests

---------

Co-authored-by: George <george.panchuk@qdrant.tech>
2024-03-27 13:57:58 +01:00
George
9221338fcc new: propagate timeout from methods to httpx (#534)
* new: propagate timeout from methods to httpx

* refactor: refactor timeout propagation (#535)

* tests: add timeout test

* refactor: remove redundant kwargs
2024-03-13 21:01:24 +01:00
Nirant
fc4b3cf9e2 Upgrade FastEmbed Version (#493)
* Update fastembed to v0.2.1

* chore(qdrant_fastembed.py): update DEFAULT_EMBEDDING_MODEL

* fix(fastembed integration): upgrade to latest version

* Prefer black over ruff

* Prefer black over ruff

* Remove hardcoded directory structure from Qdrant Client checks

* new: deprecate current default model, deprecate max token length, update fastembed

* fix: make embedding_model_name method sync

* fix: update poetry lock

* refactor: use list_supported_models() (#501)

* fix: fix fastembed check

* fix: fix fastembed class var assignment

* fix: remove fastembed deprecation from qdrant client (#524)

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
Co-authored-by: Anush <anushshetty90@gmail.com>
2024-03-05 21:09:31 +01:00
Armaghan
3ad05b3671 feat: Expose Setting for GRPC Channel-Level Compression at Client Side (#480)
* expose grpc channel-level compression settings in base functions

* expose grpc channel-level compression settings in remote classes

* expose grpc channel-level compression settings in client

* raise TypeError for compression

* added test cases for grcp channel-level compression

* move grpc_compression parameter from client's signature to **kwargs

* use grpc.Compression instead of creating new enum qdrant.grpc.Compression in qdrant/grpc/__init__.py

* refactor grpc_compression type hint

* fix: Compression instead of grpc.Compression in type hint

* tests: move and update tests

* chore: remove magic method

* fix: fix async client generator, update precommit dependencies

* fix: update isort options

* fix: update dev dependencies

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2024-03-01 18:31:16 +01:00
Jack Ling
8c359b6c8b Update the urlllib3 package dependency to make it compatible with v2 (#418)
* chore: update the depandency compatibility range of urllib3

* Update pyproject.toml

---------

Co-authored-by: George <panchuk.george@outlook.com>
2024-01-08 20:21:25 +01:00
George
5c24dd9c30 new: unlock python upper cap (#419) 2024-01-05 20:55:43 +01:00
Luis Cossío
d3332eae2a Add Discovery API and local mode (#368)
* add score calculations

* fix type errors, route scorers accordingly

* generate grpc client (only discovery stuff)

* generate rest client

* discover preprocessing + local mode handling

* implement discover for remote client

* add failing tests, fix some stuff

* update rest client and local mode

* fixes and more tests

* fix mypy errors

* generate async client

* tiny edit docstring

* simplify custom distance calculation,
fix euclidean case for recommend best score

* fix python version for generating grpc client

* update grpc (select only discovery changes)

* generate grpc: add also ShardKey changes,
fix conversion changes for deprecated PointsUpdateOperation operations

* fix coverage on conversions

* generate async client

* generate async client with python 3.11

* change dict -> typings.Dict

* add deprecated field handling for grpc.PointsUpdateOperation

* update grpc client

* fix grpc conversion issues and review comments

* increase coverage

* also test for prefer_grpc = True

* fix has_field

* unflake test_context_many_pairs

* don't convert if None in model conversions

* move docstring to qdrant_client.py

* handle request timeout on all other interfaces

* oopsie: define timeout param in search_batch

* generate async client
2023-11-22 16:02:41 -03:00
Nirant
76c3168f4d Add New API to Docs (#361)
* * chore(.gitignore): add docs/source/examples/*/*/* to ignore list

* * feat(docs): add new modules and subpackages to qdrant_client documentation

* * docs(qdrant_client): update QdrantClient documentation to include information about async versions

* * docs(index.rst): update link to complete client API docs

* * chore(pyproject.toml): remove unused dependencies from dev group
* feat(pyproject.toml): add dependencies for documentation group

* * chore(pyproject.toml): update ipython dependency version to 8
* fix(pyproject.toml): fix typo in Pygments dependency version

* * chore(generate_docs_netlify.sh): remove unnecessary pip installations and fix newline at end of file

* * docs(index.rst): update Qdrant Client Documentation title to include [Python]
* docs(index.rst): update Qdrant Client Documentation description to include vector search engine
* docs(index.rst): update recreate_collection code example to include vectors_config parameter

* * docs(index.rst): add code samples for async client support

* * chore(conf.py): exclude grpc and tests directories from documentation build

* * docs(index.rst): fix title of Qdrant Python Client Documentation
* docs(index.rst): remove unnecessary link to test file in async mode section
* docs(index.rst): add missing classes to API Reference section

* * chore(conf.py): exclude local directory from documentation generation

* * docs(quickstart.ipynb): update section title from "Points, Upsert and Search without `fastembed`" to "Qdrant without `fastembed`"

* * chore(conf.py): exclude tests from documentation by updating exclude_patterns
2023-11-01 20:14:32 +05:30
Nirant
b8ea4fbe62 Add Executable Quickstart Example (#352)
* * chore(docs): add nbsphinx extension to Sphinx configuration
* chore(pyproject.toml): add nbsphinx package to project dependencies

* * docs(source/examples/install.rst): delete install.rst file
* docs(source/examples/quickstart.ipynb): create quickstart.ipynb file
* docs(source/index.rst): update examples section to include quickstart.ipynb

* * attempt(generate_docs.sh): add pandoc installation step

* * chore(generate_docs_netlify.sh): add installation of pandoc package

* * chore(generate_docs.sh): comment out the installation of pandoc
* chore(generate_docs_netlify.sh): comment out the installation of pandoc

* * chore(generate_docs_netlify.sh): add nbsphinx package installation
* chore(generate_docs_netlify.sh): install pandoc using apt-get

* * chore(generate_docs_netlify.sh): change installation command for pandoc from 'sudo apt-get install' to 'apt-get install'

* * chore(generate_docs.sh): add pandoc installation and configuration

* * chore(generate_docs.sh): remove unused code and comments
* feat(generate_docs_netlify.sh): add pandoc installation and configuration

* * chore(generate_docs_netlify.sh): update script to install pandoc using brew
* chore(generate_docs_netlify.sh): update script to install qdrant-client using pip

* * docs(index.rst): update API references in the documentation

* * docs(source/index.rst): remove append_payload and limit parameters from code examples

* * fix(docs): fix incorrect argument name in code example

* * fix(quickstart.ipynb): add limit parameter to the queries

* * fix(docs): update comments in code examples for clarity and consistency

* * docs(index.rst): remove unnecessary API references and sections

* * docs(index.rst): add highlighted classes section with relevant classes

* * fix(generate_docs.sh): install pandoc using apt-get before running sphinx-apidoc

* * docs(index.rst): update root `toctree` directive
2023-10-26 20:17:00 +05:30
Andrey Vasnetsov
0f32e578ec update interface and version for fastembed (#340)
* update interface and version for fastembed

* fix types

* fix types

* regen async

* use python 3.11 to check compatibility

* fix docstring

* regen async

* propagate batch size
2023-10-16 18:13:52 +02:00
George
278a68d297 Async qdrant client (#319)
* new: manually implemented async qdrant client

* fix: remove await before sync call

* fix: make upload collection, records and migrate synchronous

* fix: add init method to async client base

* refactoring: remove redundant import

* new: add super().__init__ in qdrant remote, update import in http

* new: mvp async qdrant client generator

* new: fix mypy, update generator script, refactoring

* fix: fix test script

* new: update generator launch script, update async files

* new: refactor async client generator

* refactoring: remove redundant operations, add comments, refactor

* new: add isort, black and autoflake to dev dependencies

* fix: add more checks, fix type hints

* fix: do not check types in async client generator for python3.8

* new: do not type check async_qdrant_fastembed

* fix: fix pyright run

* new: update async client tests

* fix: update versions in CI

* new: update pre-commit python version, update autogenerated files

* new: update generated files, add tests for async generator, update generator script

* fix: exclude generator test from 3.8

* fix: fix python version condition

* fix: add python target version for black

* fix: generate async client only on python 3.9
2023-10-13 22:26:53 +02:00
Andrey Vasnetsov
89843eaad0 python 3.12 support (#326) 2023-10-06 15:55:10 +02:00
Andrey Vasnetsov
8452f2ae72 fix fastembed for pydantic 1.x (#285)
* fix fastembed for pydantic 1.x

* add extras setup in readme

* move fastembed from group to extras

* lock
2023-09-11 15:09:12 +02:00