Skip to content

Merge Qdrant master into update.redisearch #20

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 107 commits into
base: update.redisearch
Choose a base branch
from

Conversation

fcostaoliveira
Copy link

Perfect! We've successfully resolved all the conflicts and completed the merge of the update.redisearch branch into sync-qdrant-master. Here's a summary of what we did:

  1. Resolved conflicts in the following files:

    • engine/clients/qdrant/upload.py
    • engine/clients/redis/configure.py
    • engine/clients/redis/search.py
    • engine/clients/redis/upload.py
    • engine/clients/weaviate/upload.py
    • experiments/configurations/milvus-single-node.json
    • experiments/configurations/qdrant-single-node.json
    • run.py
    • pyproject.toml
    • scripts/process-benchmarks.ipynb
  2. Regenerated the poetry.lock file to match the updated dependencies in pyproject.toml.

  3. Successfully committed the merge with the message "Merge update.redisearch branch into sync-qdrant-master".

The merge is now complete, and the sync-qdrant-master branch contains all the changes from the update.redisearch branch.

weaviate-git-bot and others added 30 commits April 9, 2024 11:15
* updated the Weaviate Docker image location (automated bot update)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* updated the Weaviate Docker image location (automated bot update)

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* pgvector improvements

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Updated Postgres parameters

* Use versioned Docker image

* Updated pgvector to 0.6.2

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
updates:
- [github.com/pre-commit/pre-commit-hooks: v4.4.0 → v4.5.0](pre-commit/pre-commit-hooks@v4.4.0...v4.5.0)
- [github.com/psf/black: 22.12.0 → 24.3.0](psf/black@22.12.0...24.3.0)
- [github.com/PyCQA/isort: 5.12.0 → 5.13.2](PyCQA/isort@5.12.0...5.13.2)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
…drant#122)

* refactoring: Standardize format of search params in engine configs

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* address review and rename params to config

* address review

* fix: upgrade milvusdb image version

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* refactor: Nested search params in ES config

Co-authored-by: filipe oliveira <filipecosta.90@gmail.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix: Remove extra config vars

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix: Remove extra comment

* feat: Add keyword, text, and float index types in ES

---------

Co-authored-by: filipe oliveira <filipecosta.90@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* feat: Fix process benchmarks notebook

* refactor: Fix and simplify benchmark processing notebook

* fix: Backward comp for processing script

* feat: Add params
* feat: Add sparse vectors benchmark support in Qdrant

* fix: Self review

* feat: Add sparse dataset for CI benchmarks

* feat: Introduce SparseVector class

* feat: Disallow sparse vector dataset being run with non sparse vector engine configs

* feat: use different engine config to run sparse vector benchmarks

* fix: use different engine config to run sparse vector benchmarks

* feat: Optimize CI benchmarks workflow

* feat: Add 1M sparse dataset

* fix: remove scipy, read csr matrix manually (qdrant#117)

* fix: remove scipy, read csr matrix manually

* fix: Dataset query reader should have sparse_vector=None by default

* refactor: Changes based on feedback

* refactoring: refactor sparse vector support (qdrant#118)

* refactoring: refactor sparse vector support

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* feat: Use pydantic construct

* refactor: Update all engines to use Query and Record dataclasses (qdrant#116)

* refactor: Update all engines to use Query and Record dataclasses

* feat: Add ruff in pre-commit hooks

* fix: Type mismatches

* fix: Redis search client types and var names

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix: Type issues detected by linter

* fix: iter_batches func type

* refactor: knn_conditions should be class level constant

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix: Type issue

* fix: Allow python 3.8 since scipy is now removed

* fix: Add missing redis-m-16-ef-128 config

* fix: redis container port

* fix linter

---------

Co-authored-by: George <george.panchuk@qdrant.tech>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: generall <andrey@vasnetsov.com>
* fix: mc setup env vars are not set

* fix: Remove mc
* fix: Manual benchmarks

* fix: Remove gcs secrets
…in CI (qdrant#129)

* fix: Manual benchmarks

* fix: Remove gcs secrets

* feat: Use mmap to read sparse vectors

* fix: Format

* fix: Make unused var private
* feat: Use RssAnon instead of VmRSS

* feat: Show both RSSAnon and VMRss
* ci: Run *-default benchmarks for all engines

* Update poetry.lock
* feat: Add H&M filter dataset to CI benchmarks

* fix: Remove extra space

* fix: Add ServerAliveInterval and ServerAliveCountMax (qdrant#141)

* add runner resources monitoring

* Revert "add runner resources monitoring"

This reverts commit 7e5663e.

* add ServerAliveInterval and ServerAliveCountMax

---------

Co-authored-by: tellet-q <166374656+tellet-q@users.noreply.github.com>
* feat: Add BQ to CI benchmarks

* feat: Allow manual benchmarks to specify engine config
* Updated weaviate image to 1.25.1

* Updated weaviate image to 1.25.1
* feat: Add 15m timeout for CI benchmarks

* feat: Add Slack alert for CI benchmarks (qdrant#158)

* feat: Add Slack alert for CI benchmarks

* Update continuous-benchmark.yaml

* fix: Use quotes on func name to declare they arent commands

* feat: Separate failure reasons

* fix: YAML error
* set ports instead of network_mode

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* set ports for weaviate

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Kumar Shivendu <kshivendu1@gmail.com>
Current filtering query does post-filtering which is not ideal and
resulted in low precision.

Results with post filtering:
```
{
  "params": {
    "dataset": "arxiv-titles-384-angular-filters",
    "experiment": "opensearch-default",
    "engine": "opensearch",
    "parallel": 1,
    "config": {
      "knn.algo_param.ef_search": 128
    }
  },
  "results": {
    "total_time": 708.6168032020068,
    "mean_time": 0.07045893384491791,
    "mean_precisions": 0.11399200000000001,
    "std_time": 0.06840096039381999,
    "min_time": 0.008397486002650112,
    "max_time": 3.3753458530118223,
    "rps": 14.111999538838594,
    "p95_time": 0.18164870390755816,
    "p99_time": 0.20864198897208555
  }
}
```

Results with new efficient filtering:
```
{
  "params": {
    "dataset": "arxiv-titles-384-angular-filters",
    "experiment": "opensearch-default",
    "engine": "opensearch",
    "parallel": 1,
    "config": {
      "knn.algo_param.ef_search": 128
    }
  },
  "results": {
    "total_time": 394.4290532110026,
    "mean_time": 0.03913764159695711,
    "mean_precisions": 0.610144,
    "std_time": 0.05352479065894972,
    "min_time": 0.0009066620114026591,
    "max_time": 2.1307434440095676,
    "rps": 25.35310195481576,
    "p95_time": 0.1274049270534305,
    "p99_time": 0.2078282342318563
  }
}
```
* Fix opensearch query parser

Also specify schema for id in arxiv-titles-384-angular filters dataset.
This is needed as default mapping created by opensearch takes the type
as float, but in the dataset we also have string.
This leads to 99% precision on the test dataset with opensearch.

```
{
  "params": {
    "dataset": "arxiv-titles-384-angular-filters",
    "experiment": "opensearch-default",
    "engine": "opensearch",
    "parallel": 10,
    "config": {
      "knn.algo_param.ef_search": 128
    }
  },
  "results": {
    "total_time": 391.3466711850051,
    "mean_time": 0.37053632343088827,
    "mean_precisions": 0.98962,
    "std_time": 0.3485163122349799,
    "min_time": 0.04950378900684882,
    "max_time": 3.548553360000369,
    "rps": 25.552791773390613,
    "p95_time": 1.0473700279486362,
    "p99_time": 1.4396829416653787
  }
}
```

Fixes qdrant#171

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
generall and others added 30 commits January 17, 2025 15:35
* Update deps

* Add workflow: check image existence and trigger image build

* [pre-commit.ci] auto fixes from pre-commit.com hooks, for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Compare versions

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Use GITHUB_STEP_SUMMARY

* Add doc strings

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Cancel run if prepareImage fails
* Use query_points

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Fix sparce vector name

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Add with_payload param

* Update poetry

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Run benchmarks with QRANT__FEATURE_FLAGS__ALL=true for dev only

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Ensure search in current dir only

* Fix
* Add gh action to send slack message

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Add comment line

* Store cpu and telemetry cpu values for default bench
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.