Commit Graph

68 Commits

Author SHA1 Message Date
George
ea412c4959 Fix congruence upload (#183)
* fix: fix congruence upload collection list of np.array, fix type hints

* fix: update type hints, remove broken code

* tests: delete collection after test just in case

* fix: return Dict[str, NumpyArray], support it in local mode

* fix: update type
2023-07-08 15:40:36 +04:00
Kacper Łukawski
b9a7a15cee [WIP] Enable testing on macos (#199)
* Enable testing on windows and macos

* Add platform to the name

* Add Docker on MacOS

* Temporarily disable tests on Windows

* Explicitly set ports to be opened

* Add problematic case for MacOS

* Increase the timeout in tests
2023-07-07 13:31:32 +02:00
Andrey Vasnetsov
1ec45bd97b V1.3.0 (#194)
* wip: implement release checnges

* lookup tests

* fix mypy
2023-06-23 14:52:04 +02:00
George
5fc8bb7f5f fix: fix group search with np array, add tests (#190) 2023-06-19 17:49:00 +02:00
Andrey Vasnetsov
0d3448c9af fix parsing of localhost:6333 as url 2023-06-09 19:12:27 +02:00
George
a3778e4230 new: add grpc endpoints (#176)
* new: add grpc endpoints

* fix: fix payload index conversions

* fix: fix payload schema fixtures, vector param conversion

* fix: fix collection info conversion

* refactoring: remove ipdb
2023-06-09 18:38:00 +02:00
George
4c48dcd245 fix: add optimizers_config, deprecate optimizer_config in update_collection (#186)
* fix: add optimizers_config, deprecate optimizer_config in update collection

* allow `optimizer_config` without warning

---------

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2023-06-09 17:58:04 +02:00
George
b350c2c2d9 new: assert for with_vector (#185)
* new: assert for with_vector

* new: assert kwargs is empty

* fix: fix kwargs in count and scroll tests
2023-06-09 16:36:08 +02:00
Andrey Vasnetsov
d42bd635e4 test for empty vectors 2023-06-08 23:56:43 +02:00
George
f9949ba4c7 Fix local upload collection (#158)
* fix: fix upload collection with id or payload generators

* tests: add test for local upload collection
2023-05-30 12:51:23 +04:00
Andrey Vasnetsov
329b4150cf v1.2.0 (#173)
* wip: interface for new APIs

* upd docker version

* remove duplicated comments + extent interface

* start implementing remote client + remove duplicated comments there

* implement remote methods

* quantization converter

* extend coverege

* wip: saving and loading of optional vectors

* update and delete vectors test

* rm unused imports

* nested filters

* fix mypy

* fix pyright

* wip: add search groups and recommend groups (#174)

* wip: add search groups and recommend groups

* fix: fix signature

* fix: fix mypy

* simplify group-by and condition checks

* fix tests

---------

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>

* add match except condition + improve group-by tests

* fix: lock typing exchanges due to broken release

* tests: add maybe and maybe_null checks to group tests

* new: add new methods to type stubs

---------

Co-authored-by: George <george.panchuk@qdrant.tech>
2023-05-24 11:06:10 +02:00
Andrey Vasnetsov
071b190573 test for large vectors persistence (#167)
* test for large vectors persistence

* large vectors for tests

* use sqlite for persistence

* mypy + migration error reporting

* fix sphinx version

* Local persistence test fixes (#169)

* Reload the collections to support multiple clients

* Extend the test_local_persistence.py with assertions

* prevent parallel access

* fix types

---------

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>

---------

Co-authored-by: Kacper Łukawski <kacperlukawski@users.noreply.github.com>
2023-05-09 17:38:17 +02:00
Andrey Vasnetsov
2650c350ac expose raw async grpc client (#159)
* expose raw async grpc client

* fix intercepters in async channels
2023-04-25 23:51:06 +02:00
Andrey Vasnetsov
ddede52acc redundent test 2023-04-13 10:51:14 +02:00
Andrey Vasnetsov
c6db1e092d upd to qdrant v1.1.1 + fix isEmpty in local mode (#152)
* upd to qdrant v1.1.1 + fix isEmpty in local mode

* fix mypy
2023-04-11 20:33:00 +02:00
Kacper Łukawski
d301ce010f Fix inconsistencies between local and remote modes (#151)
* Fix some inconsistencies between local and remote

* Test updating collection params (remote only)
2023-04-11 13:28:22 +02:00
Andrey Vasnetsov
8afc8d6d31 fix collections test 2023-04-10 15:47:19 +02:00
Andrey Vasnetsov
9ec4136e8f fix get_collections in local mode 2023-04-08 16:50:39 +02:00
Andrey Vasnetsov
d784afaff6 add test 2023-04-07 14:12:04 +02:00
Andrey Vasnetsov
0e88c48854 wip: universal entry point (#142)
* wip: universal entry point

* init entry points

* fix types

* fix types

* fix types

* fix types

* rename qdrant_impl to _client

* upd readme

* big picture

* fix wording
2023-03-30 21:40:28 +02:00
Andrey Vasnetsov
392e3b6d1f Local qdrant (#137)
* base class for qdrant

* WIP: implement local qdrant client

* fix mypy

* fix mypy

* search tests

* search tests

* fix mypy

* scroll test

* filters: fixtures, tests, and fixes

* fix types

* fix types

* fix types

* fix: fix local CollectionInfo, add __test__ to avoid pytest complaints, fix typo

* fix: fix typo in import

* tests: add local upload tests (#139)

* new: make local collection info more similar to remote one

* new: add local upsert tests

* tests: moved compare collections

* scroll tests

* recommendations test

* tests: fix vector comparison in utils, add retrieve tests

* fix: fix types

* persistence test

* fix: fix types

* fix: fix db path creation

* tests: add delete points tests, refactoring (#140)

* skip local tests on old version

* test aliases

* test count

* tests: add delete payload tests, move set and overwrite payload tests

* tests: fix pytest warning

* cover some more stuff with tests

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2023-03-28 14:57:05 +02:00
Andrey Vasnetsov
8840f2b5bf V1.1.0 (#134)
* WIP: generate models and conversions

* update quantization param + match any condition + test

* update versions

* consistent naming

* use old grpc types generator

* fix: update type hints

* disable match-any in backward comp test

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2023-03-17 20:06:10 +01:00
George
bdae392066 new: add pre-commit (#126)
* new: add pre-commit

* new: exclude auto-generated files

* new: increase black line length

* fix: fix exclude pattern

* remove default version

* apply black

---------

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2023-03-01 21:19:46 +04:00
George
c57cebf8f3 new: more python versions for type check ci, fix numpy typing for 3.7 (#123)
* new: more python versions for type check ci, fix numpy typing for 3.7

* fix: fix ci python version
2023-02-28 16:53:49 +01:00
Andrey Vasnetsov
848ef68f8e fix scroll request next page id with gprc (#122)
* fix scroll request next page id with gprc

* fix types

* ignore mypy whining

* types
2023-02-28 12:57:35 +01:00
George
5c0cb3d9a6 new: add default= to pydantic models to fix pyright complaints (#110)
* new: add default= to pydantic models to fix pyright complaints

* tests: check pydantic default values with pyright
2023-02-17 17:21:23 +04:00
George
d35a2c21da Ci type checkers 2 (#104)
* fix: update missing return types and other mypy complaints, add mypy and pyright

* new: add mypy and pyright to ci, update type hints

* fix: add types group in pyproject.toml, add types-protobuf

* fix: fix typo

* fix: fix return types in api
2023-02-09 15:27:39 +04:00
Andrey Vasnetsov
c3389e3c20 update api to v1.0.0 (#101)
* update api

* upd openapi fix bugs

* pylance fix

* fix: add TypeAlias to some common types

* fix: update models import for pylance

* fix: fix Batch test

* fix: update mypy config

* fix: define Payload before Batch

* fix: add missing .result to requests, add assert None for responses (#102)

* pylance fix in generator

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2023-02-08 11:11:25 +01:00
Andrey Vasnetsov
7ef11264bd add batch to test cases 2023-02-05 22:08:19 +01:00
George
1f3d59fbf0 new: introduce url param to init (#99)
* new: introduce url param to init

* fix: fix _https, update docstring

* refactoring: add blank line to docstring

* fix: replace urllib with urllib3

* refactoring: remove redundant method
2023-02-03 18:49:14 +04:00
George
8d42a6376b new: make rest port optional #96 (#97) 2023-01-30 16:34:17 +04:00
Andrey Vasnetsov
9b64ada9f5 explicit timeout param (#86) 2022-12-30 16:02:51 +01:00
Andrey Vasnetsov
b4c49fd5e5 v0.11.6 (#82) 2022-12-27 14:44:34 +01:00
Andrey Vasnetsov
8502755352 update to v0.11.5 (#81)
* update to v0.11.5

* fix backward compatibility

* fix backward compatibility again
2022-12-06 21:41:16 +01:00
Andrey Vasnetsov
31b4a8c85d V0.11.4 (#80)
* upd to qdrant v0.11.4

* upd qdrant version in tests
2022-11-25 17:07:09 +01:00
Andrey Vasnetsov
3296949f17 update to v0.11.0 (#77)
* update to v0.11.0

* add locks API

* disable locks test for older version

* fix: disable locks test for older version

* fix backward compatibility
2022-10-26 12:38:59 +02:00
Andrey Vasnetsov
98f87f45f3 lower dependency requirements (#74) 2022-09-26 23:03:32 +02:00
Andrey Vasnetsov
34fdf028a9 remove deprecated api fields (#72) 2022-09-19 16:53:04 +02:00
Arnaud Gourlay
ddd24214b8 v0.10.0 (#71)
* generate gRPC client

* generate REST client

* draft

* wip

* fix conversion test

* old api compatible

* clean deprecated

* batch search + reco tests

* multi-vector test

* full-text filtering

* Fast protobuf (#67)

* generate grpc client

use new grpc client in qdrant methods

fix grpc parallel issue

remove betterproto

remove betterproto

remove betterproto type annotation

extend test coverage

upd protobuf to master

* rm eventloop

* upd version

* shortcut for models

* v0.10.1 compatibility hotfix: make deprecated ram_data_size optional

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2022-09-19 12:59:29 +02:00
Andrey Vasnetsov
f37d65fc6b add test for match condition (#68)
* add test for match condition

* add field index creation

* fix json converter for empty list values

* undo debug
2022-09-01 17:32:52 +02:00
Andrey Vasnetsov
bb4d97a0b4 record-based collection uploader 2022-08-25 12:51:37 +02:00
Arnaud Gourlay
60249e4b3c new version v0.9.2 2022-08-23 17:18:40 +02:00
Andrey Vasnetsov
7d78688695 allow iterable vectors on upload + fix async loop warning 2022-08-22 15:16:33 +02:00
Andrey Vasnetsov
928f03af28 upd version to v0.9.0 (#56) 2022-08-08 12:56:41 +02:00
Andrey Vasnetsov
52bca997e1 V0.8.5 0.8.7 (#54)
* upd to support v0.8.5 of Qdrant

* add generated files
2022-07-26 10:05:16 +02:00
Andrey Vasnetsov
a4098d8b08 add count + snapshot API (#50) 2022-07-05 15:23:12 +02:00
Andrey Vasnetsov
09cb61e8c3 v0.8.3 (#49)
* v0.8.3

* upd dockerhub tag
2022-06-28 13:13:39 +02:00
Andrey Vasnetsov
eb15dc373c V0.8.0 (#45)
* updates for v0.8.0

* update dependencies

* fix: use strict bool
2022-06-08 13:43:47 +02:00
Andrey Vasnetsov
9f3da2464d add crud + payload methods to client (#43)
* add crud + payload methods to client

* add recommend and scroll methods

* Update qdrant_client/qdrant_client.py

Co-authored-by: M. Yusuf Sarıgöz <yusufsarigoz@gmail.com>

* review fixes

Co-authored-by: M. Yusuf Sarıgöz <yusufsarigoz@gmail.com>
2022-05-30 09:24:36 +02:00
Andrey Vasnetsov
7204275931 gRPC search (#41)
* allow using grpc for search

* add docs

* assert + docs fix
2022-05-23 14:12:17 +02:00