Commit Graph

549 Commits

Author SHA1 Message Date
George
bd3dec59cd new: move fastembed imports and constants into a class to support cus… (#994)
* new: move fastembed imports and constants into a class to support custom models and improve exceptions

* new: add is_supported model to FastEmbedMisc

* fix: fix types
2025-06-14 00:39:00 +04:00
George
7aa97098c4 fix: init_options should not crush with unpickleable objects (#993)
* fix: init_options should not crush with unpickleable objects

* fix: regen async

* fix: do not deepcopy kwargs

* Update tests/test_qdrant_client.py

---------

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2025-06-14 00:38:53 +04:00
George
89283a1c5c fix: fix set payload in batch update points, fix operation conversion… (#977)
* fix: fix set payload in batch update points, fix operation conversions, add tests

* new: add some checks

* add comments to test cases

* fix: return comment

* tests: uncomment test due to a fix in core
2025-06-14 00:38:44 +04:00
George
d0ddeac685 fix: fix escape sequences (#990)
* fix: fix escape sequences

* fix: regen inspection cache
2025-06-14 00:38:27 +04:00
George
92b918c72d new: update readme, move pre-commit to pyproject.toml (#984) 2025-06-14 00:38:18 +04:00
George
d90e704da3 tests: catch math domain error, catch abrupted error message in remote (#989) 2025-06-14 00:37:59 +04:00
George Panchuk
863116e881 bump version to v1.14.2 v1.14.2 2025-04-24 17:43:12 +03:00
George
b2af969c15 fix: fix local inference on list of prefetches (#965) 2025-04-24 17:35:07 +03:00
George
eef5e2560e fix: set default limit in query batch points in local mode (#967) 2025-04-24 17:34:59 +03:00
Luis Cossío
e1b793f1b3 dedup order_by by value and id (#959)
* dedup order_by by value and id

* fix: fill order_value when order_by is used

* tests: add tests for duplicated values, fix payload value comparison

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2025-04-24 17:34:54 +03:00
George
5beca2ae63 fix: fix bm25 search on empty collection (#966) 2025-04-24 17:34:47 +03:00
George Panchuk
c125908ded bump version to v1.14.1 v1.14.1 2025-04-22 19:06:10 +03:00
George
8643755d5f fix: remove pytest import in prod code (#957) 2025-04-22 19:05:38 +03:00
George Panchuk
6cb0a602ee bump version to v1.14.0 v1.14.0 2025-04-22 18:25:32 +03:00
George
b0c49eef5d new: update models (#956) 2025-04-22 18:24:29 +03:00
George
8f02f3d1fe Rethink offset prefetch (#955)
* fix: fix local mode offset in sample random

* fix: fix random sampling, do not propagate offset into prefetches

* fix: ignore offset in random sampling
2025-04-22 18:24:22 +03:00
George
944dd1cfb8 refactor: refactor test local inference (#952) 2025-04-22 15:43:24 +03:00
George
ef99fa6b04 new: support multimodal embeddings (#908)
* new: support multimodal embeddings

* fix: fix embed when model name is present in both text and image supported models

* fix: fix type checkers

* refactor: split multimodal embed into embed text and embed image

* chore: comment batch separation

* chore: rollback formatting
2025-04-22 15:43:13 +03:00
George
b6e175ddac fix: non-list conditions in filter clauses (#949)
* fix: non-list conditions in filter clauses

* r u happy mypy?
2025-04-22 15:43:08 +03:00
George
05b1251a94 Remove multitask models list (#945)
* new: remove multitask embedding list

* new: update fastembed
2025-04-22 15:43:03 +03:00
George
c1651be0dd new: add hf token to ci, remove redundant envs, run local inference w… (#951)
* new: add hf token to ci, remove redundant envs, run local inference w/o fastembed

* fix: fix env in ci
2025-04-22 15:42:58 +03:00
Ed Jinks
7bd32db6a5 Fix/add geo polygon support for grpc (#950)
* add geo point to grpc conversion, add rpc recovery, add test

* rm whitespace

* add whitespace

* run pre-commit

* update polygon in test, add missing interiors conversion

* fix: nit fix in geo polygon conversoin, update conversion tests

---------

Co-authored-by: ed <ed@extrac.ai>
Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2025-04-22 15:42:53 +03:00
Hossam Hagag
a5f4c8cc56 Unlock numpy ci (#946)
* ci: Unlcok numpy

* fix: Fix type hints

* chore: Remove comment

* fix: Fix type hints
2025-04-22 15:42:47 +03:00
George
7143b21f92 new: forbid pydantic >2.0,<2.2.1 due to bug in update_forward_refs (#943) 2025-04-22 15:42:40 +03:00
Luis Cossío
8de270afa8 [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-22 15:42:34 +03:00
George
f670a418a3 Recommend sum score (#940)
* new: add sum_scores strategy, fix lookup from in query_batch_points, fix euclid between multivectors local mode

* new: recommend average multivectors, fix tests, add new tests for multivectors

* fix: address review comments

* fix: regen async

* tests: uncomment tests

* new: update poetry lock, require pydantic >=2.11 for populate inspection cache

* fix: tmp disable euclidean multivec search tests, fix multivec with nan test

* fix: align euclid and manhattan with core, add tests

* fix: fix type hints

* tests: use atol in comparison

* tests: remove manhattan tests

* tests: reduce number of multivectors

* remove float comparison relaxation

* explain why it is different for euclid and manhattan

---------

Co-authored-by: Luis Cossío <luis.cossio@outlook.com>
2025-04-22 15:42:12 +03:00
Luis Cossío
47fb0131aa [score boosting] Support datetime expressions (#930)
* gen grpc

* generate rest client

* use float for formula evaluation, match multivalue behavior

* support datetime expressions

* populate inspection cache

* review remarks

* support datetime_key

* fix: address AI comments

* fix: regen inspection cache

* regen inspection cache with pydantic 2.10

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2025-04-22 15:41:31 +03:00
Dmitrii Ogn
ce629fbc69 Rest & grpc client generation fix (#938)
* rest client in separate env generation

* rest client in separate env generation

* GRPC generation
Two options for it to work:
Manually switch to python 3.10 using poetry env use python3.10 or just have python3.10 available in PATH explicitly

* Rebuild to venv management

* Create new env using venv & install & clean up

* nit: some generators improvements (#941)

* nit: some generators improvements

* fix: check which python is available in generators

* fix: address AI comments

* fix: address ai comments

---------

Co-authored-by: d.rudenko <dimitriyrudenk@gmail.com>
Co-authored-by: George <george.panchuk@qdrant.tech>
2025-04-22 15:41:18 +03:00
Luis Cossío
72257c990f [score boosting] support decay functions (#929)
* update grpc client

* generate rest client

* add decay expressions evaluation and fixtures

* add conversions

* validate in formula and fix test

* add fixtures

* new: update inspection cache

* Review remarks

* review nit

* fix rebase

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2025-04-22 15:36:05 +03:00
Luis Cossío
e1215364a3 Score boosting local mode (#915)
* add local mode of formula scoring

* grpc<->rest conversions

* fixes for formula evaluation

* add mixed payload type to fixture payload

* update tests

* ignore math warnings (invalid operations raise an error anyway)

* fix conversions

* use same haversine distance as in core

* upd tests

* add fixtures for expressions

* fix import

* temporary hack for tests

* evaluation fixes

* satisfy mypy

* gen async client

* reduce flakiness

..by nesting less equations, so that floating point differences affect
less

* get_args_subscribed

* retriever match multivalue behavior

* review remarks

* more review remarks

* review nit

* no type ignore

* fix imports
2025-04-22 15:35:59 +03:00
tellet-q
a7d78d378f 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-04-22 15:35:48 +03:00
Arnaud Gourlay
4cddb5884f strict mode tests
* Fix backward compatibility strict mode

* Basic test for strict mode

* remove backward compat patch test from ci

* tests: update strict mode test

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2025-04-22 15:35:22 +03:00
George
42154eeb37 optimize schema parser recursion calls, update models (#924)
* fix: optimize schema parser recursive calls

* fix: fix mypy

* new: update models, regenerate cache (#925)

* new: update models, regenerate cache

* new: update conversions

* fix: fix strict mode config in migrate

* new: update field condition conversion with is_null, is_empty

* fix: apply ruff
2025-04-22 15:34:58 +03:00
Andrey Vasnetsov
b817c54a24 add tests and fix field schema conversion in case grpc is used (#910)
* add tests and fix field schema conversion in case grpc is used

* regen async client
2025-04-22 15:34:52 +03:00
George
92db63451a Default inference batch size (#907)
* fix: fix inference batch size propagation

* fix: propagate batch size to embed worker

* fix: fix type ignore comment

* fix: replace mocking class method with object method

* fix: add missing inference batch size

* fix: fix batch size propagation to worker
2025-04-22 15:34:46 +03:00
George
5b46b0b72e Optional vectors config (#905)
* new: make vectors_config optional in create collection

* remove redundant import

* fix: allow to create a collection without vectors
2025-04-22 15:34:38 +03:00
Hossam Hagag
c59a84dada propagate task_id for multitask models in local inference
* tests: Updated propagate options test

* fix: Fix CI

* fix: Fix ci

* revert test

* new: update task id propagation

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2025-04-22 15:34:31 +03:00
Alex Ermolaev
c522f58468 fix: use the same name for check_compatibility flag in args, warnings and tests (#898)
* Replace `check_version` with `check_compatibility` in warnings and tests to fit flag name

* refactoring: refactor warnings

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>
2025-04-22 15:34:25 +03:00
Arnaud Gourlay
01368c946e Regen REST and gRPC clients (#903)
* Regen REST and gRPC clients

* update inspection cache

* update dev doc

* add conversions for new strict mode fields

* handle empty strict mode fields + test

---------

Co-authored-by: generall <andrey@vasnetsov.com>
2025-04-22 15:34:19 +03:00
George
011f692d3d fix: fix poetry version constraint bug (#899)
* fix: fix poetry version constraint bug

* fix: update poetry lock
2025-04-22 15:33:59 +03:00
George
972ff61b32 new: remove grpcio tools from dependencies, add protobuf (#896) 2025-04-22 15:33:25 +03:00
Dmitrii Ogn
178e650e0a Delete non-existant points test (#895)
* Added warnings
Added tests
Added checks

* Removed warning

* Fixed non existent idx

* Fixed text straightforwardness

* Rebuild test
2025-04-22 15:32:30 +03:00
George
95eeca8757 Local inference upload collection and upload records (#862)
* wip: add draft implementation of batch processing

* fix: embed dict and list of docs, remove redundant code

* new: regen async, small refactor

* refactor: add docstrings, rename methods

* Upload points local inference (#881)

* new: separate single and plural model embeddings

* fix: fix lazy embed models

* new: add inference object inspections to upload methods

* wip: local inference upload parallel

* new: add local inference to upload points and upload collection, refactor mixin

* fix: remove redundant code

* redundant import

* tests: check is query for query points batch

* refactor: refactor semi ordered map

* tests: add test for local inference with batches with docs and vectors

* tests: check the order of dict processing

* new: distinguish models by options

* fix: fix typing

* fix: fix types

* new: embed batches with different options

* tests: add tests for batch with different options

* fix: ignore ide incorrect type inspection

* tests: wait for points to be inserted

* fix: set threads to 1 in parallel inference

* new: adjust max internal batch size

* fix: fix type hints

* function to get embeddings size (#892)

* function to get embeddings size

* async client

* keep sync

* new: extend embedding size to support image and late interaction models

---------

Co-authored-by: George Panchuk <george.panchuk@qdrant.tech>

* new: add local inference batch size (#894)

---------

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2025-04-22 15:32:20 +03:00
George Panchuk
eaee466fca bump version to v1.13.3 v1.13.3 2025-03-05 22:51:35 +01:00
George
374e115771 fix: model fields set and model config access (#918) 2025-03-05 19:38:57 +01:00
generall
64311d3a19 bump version to v1.13.2 v1.13.2 2025-01-22 17:05:04 +01:00
Andrey Vasnetsov
317e7d6517 use proper urljoin (#890) 2025-01-22 17:04:47 +01:00
generall
662acac321 bump version to v1.13.1 v1.13.1 2025-01-22 16:31:48 +01:00
Andrey Vasnetsov
f8ac59ab45 cover whole check with try catch, remove + "/", use proper urljoin (#889)
* cover whole check with try catch, remove + "/", use proper urljoin

* upd async client
2025-01-22 16:29:32 +01:00
Dmitrii Ogn
d9810a85f9 Migrate cleat fix (#888)
* Migrate cleat fix

* removed redundant import
2025-01-22 16:29:25 +01:00