milvus
This commit is contained in:
38
bin/main.go
38
bin/main.go
@@ -193,27 +193,57 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 用向量查询相似图片
|
// 用向量查询相似图片
|
||||||
sp, _ := entity.NewIndexFlatSearchParam()
|
sp, _ := entity.NewIndexIvfFlatSearchParam(64)
|
||||||
vectors := []entity.Vector{
|
vectors := []entity.Vector{
|
||||||
entity.FloatVector(similar.Embedding),
|
entity.FloatVector(similar.Embedding),
|
||||||
}
|
}
|
||||||
resultx, err := milvusConnection.Client.Search(
|
resultx, err := milvusConnection.Client.Search(
|
||||||
context.Background(), // ctx
|
context.Background(), // ctx
|
||||||
collection_name, // CollectionName
|
collection_name, // CollectionName
|
||||||
[]string{}, // PartitionNames
|
nil, // PartitionNames
|
||||||
"", // expr
|
"", // expr
|
||||||
[]string{"id", "article_id"}, // OutputFields
|
[]string{"id", "article_id"}, // OutputFields
|
||||||
vectors, // vectors
|
vectors, // vectors
|
||||||
"embedding", // vectorField
|
"embedding", // vectorField
|
||||||
entity.L2, // entity.MetricType
|
entity.L2, // entity.MetricType
|
||||||
10, // topK
|
10, // topK
|
||||||
sp,
|
sp, // searchParam
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Println(err)
|
log.Println(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
println(resultx)
|
// 输出结果
|
||||||
|
for _, item := range resultx {
|
||||||
|
fmt.Println(item.Scores)
|
||||||
|
fmt.Println(item.IDs)
|
||||||
|
fmt.Println(item.ResultCount)
|
||||||
|
fmt.Println(item.Fields)
|
||||||
|
}
|
||||||
|
|
||||||
|
//func printResult(sRet *client.SearchResult) {
|
||||||
|
// randoms := make([]float64, 0, sRet.ResultCount)
|
||||||
|
// scores := make([]float32, 0, sRet.ResultCount)
|
||||||
|
//
|
||||||
|
// var randCol *entity.ColumnDouble
|
||||||
|
// for _, field := range sRet.Fields {
|
||||||
|
// if field.Name() == randomCol {
|
||||||
|
// c, ok := field.(*entity.ColumnDouble)
|
||||||
|
// if ok {
|
||||||
|
// randCol = c
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// for i := 0; i < sRet.ResultCount; i++ {
|
||||||
|
// val, err := randCol.ValueByIdx(i)
|
||||||
|
// if err != nil {
|
||||||
|
// log.Fatal(err)
|
||||||
|
// }
|
||||||
|
// randoms = append(randoms, val)
|
||||||
|
// scores = append(scores, sRet.Scores[i])
|
||||||
|
// }
|
||||||
|
// fmt.Printf("\trandoms: %v, scores: %v\n", randoms, scores)
|
||||||
|
//}
|
||||||
})
|
})
|
||||||
|
|
||||||
// 获取图片信息列表(分页)
|
// 获取图片信息列表(分页)
|
||||||
|
Reference in New Issue
Block a user