mirror of
https://gitee.com/milvus-io/milvus.git
synced 2026-02-02 01:06:41 +08:00
issue : https://github.com/milvus-io/milvus/issues/41746 This PR adds MinHash "DIDO" (Data In, Data Out) support to Milvus, which allows computing MinHash signatures on-the-fly during search operations instead of requiring pre-stored vectors. Key changes: - Implemented SIMD-optimized C++ MinHash computation (AVX2/AVX512 for x86, NEON/SVE for ARM) - Added runtime CPU detection and function hooks to automatically select the best SIMD implementation - Integrated MinHash computation into search pipeline (brute force search, growing segment search) - Added support for LSH-based MinHash search with configurable band width and bit width parameters - Enabled direct text-to-signature conversion during query execution, reducing storage overhead This enables efficient text deduplication and similarity search without storing pre-computed MinHash vectors. Signed-off-by: cqy123456 <qianya.cheng@zilliz.com>
Go MilvusClient
Go MilvusClient for Milvus. To contribute code to this project, please read our contribution guidelines first.
Getting started
Prerequisites
Go 1.24.11 or higher
Install Milvus Go SDK
-
Use
go getto install the latest version of the Milvus Go SDK and dependencies:go get -u github.com/milvus-io/milvus/client/v2 -
Include the Go MilvusClient in your application:
import "github.com/milvus-io/milvus/client/v2/milvusclient" //...other snippet ... ctx, cancel := context.WithCancel(context.Background()) defer cancel() milvusAddr := "YOUR_MILVUS_ENDPOINT" cli, err := milvusclient.New(ctx, &milvusclient.ClientConfig{ Address: milvusAddr, }) if err != nil { // handle error } // Do your work with milvus client
API Documentation
Refer to https://milvus.io/api-reference/go/v2.5.x/About.md for the Go SDK API documentation.
Code format
The Go source code is formatted using gci & gofumpt. Please run make lint-fix before sumbit a PR.