From fe927249499dc61b9ea94ddf81bd8c97e1e2d4fd Mon Sep 17 00:00:00 2001 From: Strift Date: Sat, 8 Feb 2025 11:23:41 +0800 Subject: [PATCH 1/4] Stabilize vector store usage --- meilisearch/index.py | 7 +------ tests/conftest.py | 17 ----------------- tests/index/test_index_search_meilisearch.py | 1 - tests/settings/test_settings.py | 2 -- tests/settings/test_settings_embedders.py | 3 --- 5 files changed, 1 insertion(+), 29 deletions(-) diff --git a/meilisearch/index.py b/meilisearch/index.py index 42f3bf10..e3c14632 100644 --- a/meilisearch/index.py +++ b/meilisearch/index.py @@ -281,12 +281,7 @@ def search(self, query: str, opt_params: Optional[Mapping[str, Any]] = None) -> String containing the searched word(s) opt_params (optional): Dictionary containing optional query parameters. - Note: The vector parameter is only available in Meilisearch >= v1.3.0, and is experimental - Meilisearch v1.3.0. In order to use this feature in Meilisearch v1.3.0 you first need to - enable the feature by sending a PATCH request to /experimental-features with - { "vectoreStore": true }. Because this feature is experimental it may be removed or - updated causing breaking changes in this library without a major version bump so use - with caution. + Note: The vector parameter is only available in Meilisearch >= v1.13.0 https://www.meilisearch.com/docs/reference/api/search#search-in-an-index Returns diff --git a/tests/conftest.py b/tests/conftest.py index 6622ca3e..c7874291 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -213,23 +213,6 @@ def get_private_key(client): return key -@fixture -def enable_vector_search(): - requests.patch( - f"{common.BASE_URL}/experimental-features", - headers={"Authorization": f"Bearer {common.MASTER_KEY}"}, - json={"vectorStore": True}, - timeout=10, - ) - yield - requests.patch( - f"{common.BASE_URL}/experimental-features", - headers={"Authorization": f"Bearer {common.MASTER_KEY}"}, - json={"vectorStore": False}, - timeout=10, - ) - - @fixture def new_embedders(): return { diff --git a/tests/index/test_index_search_meilisearch.py b/tests/index/test_index_search_meilisearch.py index 64840687..8939e9c5 100644 --- a/tests/index/test_index_search_meilisearch.py +++ b/tests/index/test_index_search_meilisearch.py @@ -502,7 +502,6 @@ def test_show_ranking_score(index_with_documents): assert response["hits"][0]["_rankingScore"] >= 0.9 -@pytest.mark.usefixtures("enable_vector_search") def test_vector_search(index_with_documents_and_vectors): response = index_with_documents_and_vectors().search( "", diff --git a/tests/settings/test_settings.py b/tests/settings/test_settings.py index 2d611099..a872dab5 100644 --- a/tests/settings/test_settings.py +++ b/tests/settings/test_settings.py @@ -41,7 +41,6 @@ def test_get_settings_default(empty_index): assert response["synonyms"] == {} -@pytest.mark.usefixtures("enable_vector_search") def test_update_settings(new_settings, empty_index): """Tests updating some settings.""" index = empty_index() @@ -61,7 +60,6 @@ def test_update_settings(new_settings, empty_index): assert isinstance(response["embedders"]["open_ai"], OpenAiEmbedder) -@pytest.mark.usefixtures("enable_vector_search") def test_reset_settings(new_settings, empty_index): """Tests resetting all the settings to their default value.""" index = empty_index() diff --git a/tests/settings/test_settings_embedders.py b/tests/settings/test_settings_embedders.py index a8290e36..a8022080 100644 --- a/tests/settings/test_settings_embedders.py +++ b/tests/settings/test_settings_embedders.py @@ -4,7 +4,6 @@ from meilisearch.models.index import OpenAiEmbedder, UserProvidedEmbedder -@pytest.mark.usefixtures("enable_vector_search") def test_get_default_embedders(empty_index): """Tests getting default embedders.""" response = empty_index().get_embedders() @@ -12,7 +11,6 @@ def test_get_default_embedders(empty_index): assert response is None -@pytest.mark.usefixtures("enable_vector_search") def test_update_embedders_with_user_provided_source(new_embedders, empty_index): """Tests updating embedders.""" index = empty_index() @@ -24,7 +22,6 @@ def test_update_embedders_with_user_provided_source(new_embedders, empty_index): assert isinstance(response_get.embedders["open_ai"], OpenAiEmbedder) -@pytest.mark.usefixtures("enable_vector_search") def test_reset_embedders(new_embedders, empty_index): """Tests resetting the typo_tolerance setting to its default value.""" index = empty_index() From ebab4866dd4391eb19c6264b076e625ae5762304 Mon Sep 17 00:00:00 2001 From: Strift Date: Sat, 8 Feb 2025 11:27:51 +0800 Subject: [PATCH 2/4] Remove unused imports --- tests/conftest.py | 1 - tests/settings/test_settings_embedders.py | 1 - 2 files changed, 2 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index c7874291..2ec280de 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -2,7 +2,6 @@ import json from typing import Optional -import requests from pytest import fixture import meilisearch diff --git a/tests/settings/test_settings_embedders.py b/tests/settings/test_settings_embedders.py index a8022080..f932bbae 100644 --- a/tests/settings/test_settings_embedders.py +++ b/tests/settings/test_settings_embedders.py @@ -1,5 +1,4 @@ # pylint: disable=redefined-outer-name -import pytest from meilisearch.models.index import OpenAiEmbedder, UserProvidedEmbedder From b4659705fd5e1e6a03f74dbadbe54416d3cd7fd8 Mon Sep 17 00:00:00 2001 From: Strift Date: Sat, 8 Feb 2025 11:31:12 +0800 Subject: [PATCH 3/4] Update default embedders --- tests/settings/test_settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/settings/test_settings.py b/tests/settings/test_settings.py index a872dab5..1eede8fe 100644 --- a/tests/settings/test_settings.py +++ b/tests/settings/test_settings.py @@ -92,4 +92,4 @@ def test_reset_settings(new_settings, empty_index): assert response["searchableAttributes"] == ["*"] assert response["stopWords"] == [] assert response["synonyms"] == {} - assert response.get("embedders") is None + assert response.get("embedders") is {} From ceebdd6ab69e5dccd3c94fc68165b1c0df0c9fc0 Mon Sep 17 00:00:00 2001 From: Strift Date: Sat, 8 Feb 2025 13:47:49 +0800 Subject: [PATCH 4/4] Lint --- tests/settings/test_settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/settings/test_settings.py b/tests/settings/test_settings.py index 1eede8fe..8bbdafa2 100644 --- a/tests/settings/test_settings.py +++ b/tests/settings/test_settings.py @@ -92,4 +92,4 @@ def test_reset_settings(new_settings, empty_index): assert response["searchableAttributes"] == ["*"] assert response["stopWords"] == [] assert response["synonyms"] == {} - assert response.get("embedders") is {} + assert response["embedders"] == {}