From 8a000fb98147b43b3acba7aa42042f518a4f6212 Mon Sep 17 00:00:00 2001 From: Arnaud Gourlay Date: Mon, 12 Oct 2026 15:11:22 +0200 Subject: [PATCH 1/2] Send BM25 k and b in the nested params of qdrant#11012 qdrant#11012 reserved TextQuery fields 2 and 3 and moved k/b into `scoring.bm25`. With the old client a current server drops them as unknown fields, so `kind: text` requests with k or b silently ran at the defaults. The client's TextQueryBuilder keeps its setters, so only the test changes. Co-Authored-By: Claude Opus 5.5 (1M context) --- Cargo.lock | 2 +- Cargo.toml | 2 +- src/search/from_config.rs | 6 +++++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7c861dd..9f8b03b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1472,7 +1472,7 @@ dependencies = [ [[package]] name = "qdrant-client" version = "1.16.1-dev" -source = "git+https://github.com/qdrant/rust-client?branch=dev#71143d873ffe1030bf712da8b0d67613b12ccee6" +source = "git+https://github.com/qdrant/rust-client?branch=sync-bm25-params#12ed409790644688ca656fab62ad252b9d27e5a5" dependencies = [ "anyhow", "derive_builder", diff --git a/Cargo.toml b/Cargo.toml index 1c8c675..8897a22 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -32,7 +32,7 @@ parquet = { version = "59.1", default-features = false, features = [ ] } # `download_snapshots` (default) is unused and pulls reqwest + aws-lc-sys, which makes # static musl cross-builds needlessly painful; without it TLS is rustls + ring only. -qdrant-client = { git = "https://github.com/qdrant/rust-client", branch = "dev", default-features = false, features = ["serde"] } +qdrant-client = { git = "https://github.com/qdrant/rust-client", branch = "sync-bm25-params", default-features = false, features = ["serde"] } rand = "0.10.1" rand_distr = "0.6.0" serde = { version = "1.0", features = ["derive"] } diff --git a/src/search/from_config.rs b/src/search/from_config.rs index 4c4303b..11e8bc2 100644 --- a/src/search/from_config.rs +++ b/src/search/from_config.rs @@ -498,6 +498,7 @@ impl Processor for ConfigSearchProcessor { mod tests { use clap::Parser; use qdrant_client::qdrant::query::Variant as QueryVariant; + use qdrant_client::qdrant::text_query; use qdrant_client::qdrant::vector_input::Variant as InputVariant; use super::*; @@ -566,7 +567,10 @@ mod tests { let Some(QueryVariant::Text(text)) = request.query.and_then(|q| q.variant) else { panic!("expected a text query"); }; - assert_eq!((text.k, text.b), (Some(1.5), Some(0.25))); + let Some(text_query::Scoring::Bm25(bm25)) = text.scoring else { + panic!("expected BM25 params"); + }; + assert_eq!((bm25.k, bm25.b), (Some(1.5), Some(0.25))); assert_eq!(text.query.split(' ').count(), 2); } From b9f22c0c634ce538064ff584c892c25df81870dc Mon Sep 17 00:00:00 2001 From: Arnaud Gourlay Date: Mon, 12 Oct 2026 15:20:08 +0200 Subject: [PATCH 2/2] Lock qdrant-client at dev 637cee6, rust-client#301 merged Co-Authored-By: Claude Opus 5.5 (1M context) --- Cargo.lock | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9f8b03b..12b580d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1472,7 +1472,7 @@ dependencies = [ [[package]] name = "qdrant-client" version = "1.16.1-dev" -source = "git+https://github.com/qdrant/rust-client?branch=sync-bm25-params#12ed409790644688ca656fab62ad252b9d27e5a5" +source = "git+https://github.com/qdrant/rust-client?branch=dev#637cee6fdbfdb0a620dfc41b3677bbce405aaa28" dependencies = [ "anyhow", "derive_builder", diff --git a/Cargo.toml b/Cargo.toml index 8897a22..1c8c675 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -32,7 +32,7 @@ parquet = { version = "59.1", default-features = false, features = [ ] } # `download_snapshots` (default) is unused and pulls reqwest + aws-lc-sys, which makes # static musl cross-builds needlessly painful; without it TLS is rustls + ring only. -qdrant-client = { git = "https://github.com/qdrant/rust-client", branch = "sync-bm25-params", default-features = false, features = ["serde"] } +qdrant-client = { git = "https://github.com/qdrant/rust-client", branch = "dev", default-features = false, features = ["serde"] } rand = "0.10.1" rand_distr = "0.6.0" serde = { version = "1.0", features = ["derive"] }