Implement Search() in Infinity in GO (#13645)

### What problem does this PR solve?

Implement Search() in Infinity in GO.

The function can handle the following request. 
"search '曹操' on datasets 'infinity'" 
"search '常胜将军' on datasets 'infinity'"
"search '卓越儒雅' on datasets 'infinity'"
"search '辅佐刘禅北伐中原' on datasets 'infinity'"

The output is exactly the same as  request to python Search()

### Type of change

- [ ] New Feature (non-breaking change which adds functionality)
This commit is contained in:
qinling0210
2026-03-17 16:45:45 +08:00
committed by GitHub
parent 549833b8a4
commit ca182dc188
9 changed files with 1023 additions and 303 deletions

View File

@@ -43,6 +43,10 @@ type SearchRequest struct {
SimilarityThreshold float64 // Minimum similarity score (default: 0.1)
VectorSimilarityWeight float64 // Weight for vector vs keyword (default: 0.3)
// Sorting and ranking
OrderBy string // Order by field (e.g., "field1 desc, field2 asc")
RankFeature map[string]float64 // Rank features for learning to rank
// Engine-specific options (optional, for advanced use)
Options map[string]interface{}
}