* 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
* 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
* 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>
* fix: fix local mode offset in sample random
* fix: fix random sampling, do not propagate offset into prefetches
* fix: ignore offset in random sampling
* 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
* 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>
* 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>
* 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>
* 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
* 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>
* 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>
* 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>
* 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>