ARTICLE AD BOX
I’m using Milvus 2.6.x with the Go SDK and trying to apply a function-based reranker in a hybrid search workflow, but the reranker is not being executed at all.
My setup uses HybridSearch with multiple ANN requests. The search itself works fine and returns results, but when I attach a function reranker via WithFunctionRerankers, the reranking logic appears to be silently ignored:
Results are returned successfully
The ranking is identical to running hybrid search without any reranker
No errors are reported
Any custom reranker logic (e.g. a self-hosted service) is never invoked
For comparison, using the built-in reranker works as expected:
WithReranker(client.NewWeightedReranker([]float64{0.5, 0.5}))
However, when switching to a function-based reranker like this:
WithFunctionRerankers( entity.NewFunction(). WithName("weighted_reranker"). WithType(entity.FunctionTypeRerank). WithInputFields(). WithParam("reranker", "weighted"). WithParam("weights", []float64{0.5, 0.5}). WithParam("norm_score", false), )
the reranker is never applied, and the hybrid search behaves as if no reranker was configured.
I’ve reviewed the Go client test cases in the Milvus repository (e.g. reranker_function_test.go) and tried to follow the same pattern, but I still can’t get WithFunctionRerankers to take effect in real usage.
My question is:
What conditions or configurations are required for WithFunctionRerankers to actually run in a HybridSearch when using the Milvus Go SDK (2.6.x)? Are there known limitations or incomplete support for function rerankers in this version that would cause them to be ignored?
