This commit is contained in:
2023-04-12 17:39:23 +08:00
parent 6aa48128a3
commit f6c61d421d

View File

@@ -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)
//}
}) })
// 获取图片信息列表(分页) // 获取图片信息列表(分页)