From e795f60cedfd2602cdb3ca4fb8c984d92a0af648 Mon Sep 17 00:00:00 2001 From: curquiza Date: Wed, 19 Jun 2024 15:53:07 +0200 Subject: [PATCH] Add retrieveVectors and fix test --- index_search.go | 3 +++ index_search_test.go | 5 ++--- types.go | 1 + types_easyjson.go | 7 +++++++ 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/index_search.go b/index_search.go index b18d8444..c12ca990 100644 --- a/index_search.go +++ b/index_search.go @@ -153,6 +153,9 @@ func searchPostRequestParams(query string, request *SearchRequest) map[string]in hybrid["semanticRatio"] = request.Hybrid.SemanticRatio params["hybrid"] = hybrid } + if request.RetrieveVectors { + params["retrieveVectors"] = request.RetrieveVectors + } return params } diff --git a/index_search_test.go b/index_search_test.go index 17999135..59313c1e 100644 --- a/index_search_test.go +++ b/index_search_test.go @@ -1638,11 +1638,11 @@ func TestIndex_SearchWithVectorStore(t *testing.T) { client: defaultClient, query: "Pride and Prejudice", request: SearchRequest{ - Vector: []float32{0.1, 0.2, 0.3}, Hybrid: &SearchRequestHybrid{ SemanticRatio: 0.5, Embedder: "default", }, + RetrieveVectors: true, }, } @@ -1663,7 +1663,6 @@ func TestIndex_SearchWithVectorStore(t *testing.T) { vectors := hit["_vectors"].(map[string]interface{}) require.NotNil(t, vectors["default"]) - def := vectors["default"].([]interface{}) - require.Equal(t, 3, len(def)) + def := vectors["default"].(map[string]interface{}) } } diff --git a/types.go b/types.go index 6cfbb016..126c06ca 100644 --- a/types.go +++ b/types.go @@ -361,6 +361,7 @@ type SearchRequest struct { IndexUID string Query string Hybrid *SearchRequestHybrid + RetrieveVectors bool } type SearchRequestHybrid struct { diff --git a/types_easyjson.go b/types_easyjson.go index 2bb8c28b..b8292390 100644 --- a/types_easyjson.go +++ b/types_easyjson.go @@ -2670,6 +2670,8 @@ func easyjson6601e8cdDecodeGithubComMeilisearchMeilisearchGo16(in *jlexer.Lexer, } (*out.Hybrid).UnmarshalEasyJSON(in) } + case "RetrieveVectors": + out.RetrieveVectors = bool(in.Bool()) default: in.SkipRecursive() } @@ -2891,6 +2893,11 @@ func easyjson6601e8cdEncodeGithubComMeilisearchMeilisearchGo16(out *jwriter.Writ (*in.Hybrid).MarshalEasyJSON(out) } } + { + const prefix string = ",\"RetrieveVectors\":" + out.RawString(prefix) + out.Bool(bool(in.RetrieveVectors)) + } out.RawByte('}') }