meilisearch-python-sdk 5.1.0__tar.gz → 5.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of meilisearch-python-sdk might be problematic. Click here for more details.
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/PKG-INFO +8 -8
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/README.md +7 -7
- meilisearch_python_sdk-5.2.0/docs/client_api.md +53 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/json_handler.md +9 -9
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/plugins.md +36 -36
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/add_documents_decorator.py +5 -5
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/add_documents_in_batches.py +4 -4
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/documents_and_search_results.py +11 -11
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/orjson_example.py +3 -3
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/search_tracker.py +7 -7
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/ujson_example.py +3 -3
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/update_settings.py +5 -5
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/_client.py +108 -90
- meilisearch_python_sdk-5.2.0/meilisearch_python_sdk/_version.py +1 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/index.py +303 -303
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/pyproject.toml +2 -2
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/conftest.py +2 -1
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/uv.lock +316 -291
- meilisearch_python_sdk-5.1.0/docs/client_api.md +0 -35
- meilisearch_python_sdk-5.1.0/meilisearch_python_sdk/_version.py +0 -1
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.github/FUNDING.yml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.github/release-draft-template.yaml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.github/renovate.json5 +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.github/workflows/docs_publish.yml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.github/workflows/nightly_testing.yml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.github/workflows/pypi_publish.yml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.github/workflows/release-drafter.yml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.github/workflows/testing.yml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.gitignore +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/.pre-commit-config.yaml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/CONTRIBUTING.md +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/LICENSE +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/assets/add_in_batches.png +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/assets/searches.png +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/codecov.yml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/datasets/small_movies.json +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docker-compose.https.yml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docker-compose.yml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/.nojekyll +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/CNAME +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/async_client_api.md +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/async_index_api.md +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/css/custom.css +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/decorators_api.md +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/index.md +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/index_api.md +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/js/umami.js +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/overrides/partials/footer.html +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/docs/pydantic.md +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/.gitignore +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/README.md +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/__init__.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/async_add_documents_decorator.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/async_add_documents_in_batches.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/async_documents_and_search_results.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/async_search_tracker.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/async_update_settings.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/fastapi_example.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/pyproject.toml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/requirements.txt +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/tests/__init__.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/tests/conftest.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/tests/test_async_examples.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/tests/test_examples.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/justfile +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/__init__.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/_batch.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/_http_requests.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/_task.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/_utils.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/decorators.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/errors.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/json_handler.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/__init__.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/batch.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/client.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/documents.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/health.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/index.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/search.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/settings.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/task.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/version.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/models/webhook.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/plugins.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/py.typed +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/meilisearch_python_sdk/types.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/mkdocs.yaml +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/__init__.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_async_client.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_async_documents.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_async_index.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_async_index_plugins.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_async_search.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_client.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_decorators.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_documents.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_errors.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_index.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_index_plugins.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_search.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_settings_models.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_utils.py +0 -0
- {meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/tests/test_version.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: meilisearch-python-sdk
|
|
3
|
-
Version: 5.
|
|
3
|
+
Version: 5.2.0
|
|
4
4
|
Summary: A Python client providing both async and sync support for the Meilisearch API
|
|
5
5
|
Project-URL: repository, https://github.com/sanders41/meilisearch-python-sdk
|
|
6
6
|
Project-URL: homepage, https://github.com/sanders41/meilisearch-python-sdk
|
|
@@ -122,15 +122,15 @@ async with AsyncClient('http://127.0.0.1:7700', 'masterKey') as client:
|
|
|
122
122
|
```py
|
|
123
123
|
from meilisearch_python_sdk import Client
|
|
124
124
|
|
|
125
|
-
|
|
126
|
-
index = client.index("books")
|
|
125
|
+
with Client('http://127.0.0.1:7700', 'masterKey') as client:
|
|
126
|
+
index = client.index("books")
|
|
127
127
|
|
|
128
|
-
documents = [
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
]
|
|
128
|
+
documents = [
|
|
129
|
+
{"id": 1, "title": "Ready Player One"},
|
|
130
|
+
{"id": 42, "title": "The Hitchhiker's Guide to the Galaxy"},
|
|
131
|
+
]
|
|
132
132
|
|
|
133
|
-
index.add_documents(documents)
|
|
133
|
+
index.add_documents(documents)
|
|
134
134
|
```
|
|
135
135
|
|
|
136
136
|
The server will return an update id that can be used to
|
|
@@ -66,15 +66,15 @@ async with AsyncClient('http://127.0.0.1:7700', 'masterKey') as client:
|
|
|
66
66
|
```py
|
|
67
67
|
from meilisearch_python_sdk import Client
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
index = client.index("books")
|
|
69
|
+
with Client('http://127.0.0.1:7700', 'masterKey') as client:
|
|
70
|
+
index = client.index("books")
|
|
71
71
|
|
|
72
|
-
documents = [
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
]
|
|
72
|
+
documents = [
|
|
73
|
+
{"id": 1, "title": "Ready Player One"},
|
|
74
|
+
{"id": 42, "title": "The Hitchhiker's Guide to the Galaxy"},
|
|
75
|
+
]
|
|
76
76
|
|
|
77
|
-
index.add_documents(documents)
|
|
77
|
+
index.add_documents(documents)
|
|
78
78
|
```
|
|
79
79
|
|
|
80
80
|
The server will return an update id that can be used to
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
## `client` Usage
|
|
2
|
+
|
|
3
|
+
### Create a client with a context manager
|
|
4
|
+
|
|
5
|
+
This client runs in a context manager which ensures that everything is cleaned up after the use of
|
|
6
|
+
the client is done. To create a client:
|
|
7
|
+
|
|
8
|
+
```py
|
|
9
|
+
from meilisearch-python-sdk import Client
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
with Client("http://localhost:7700", "masterKey") as client:
|
|
13
|
+
index = client.index("movies")
|
|
14
|
+
...
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### Custom headers
|
|
18
|
+
|
|
19
|
+
Custom headers can be added to the client by adding them to `custom_headers` when creating the
|
|
20
|
+
client.
|
|
21
|
+
|
|
22
|
+
```py
|
|
23
|
+
from meilisearch_python_sdk import Client
|
|
24
|
+
|
|
25
|
+
with Client(
|
|
26
|
+
"http://127.0.0.1:7700",
|
|
27
|
+
"masterKey",
|
|
28
|
+
custom_headers={"header_key_1": "header_value_1", "header_key_2": "header_value_2"}
|
|
29
|
+
) as client:
|
|
30
|
+
index = client.index("movies")
|
|
31
|
+
...
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### Create a client without a context manager
|
|
35
|
+
|
|
36
|
+
It is also possible to call the client without using a context manager, but in doing so you will
|
|
37
|
+
need to make sure to do the cleanup yourself:
|
|
38
|
+
|
|
39
|
+
```py
|
|
40
|
+
from meilisearch-python-sdk import Client
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
try:
|
|
44
|
+
client = Client("http://localhost:7700", "masterKey")
|
|
45
|
+
...
|
|
46
|
+
finally:
|
|
47
|
+
await client.close()
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## `Client` API
|
|
52
|
+
|
|
53
|
+
::: meilisearch_python_sdk.Client
|
|
@@ -37,9 +37,9 @@ documents = [
|
|
|
37
37
|
{"id": uuid4(), "title": "test 1", "when": datetime.now()},
|
|
38
38
|
{"id": uuid4(), "title": "Test 2", "when": datetime.now()},
|
|
39
39
|
]
|
|
40
|
-
|
|
41
|
-
index = client.index("movies", primary_key="id")
|
|
42
|
-
index.add_documents(documents)
|
|
40
|
+
with Client("http://127.0.0.1:7700", json_handler=BuiltinHandler(serializer=CustomEncoder)) as client:
|
|
41
|
+
index = client.index("movies", primary_key="id")
|
|
42
|
+
index.add_documents(documents)
|
|
43
43
|
```
|
|
44
44
|
|
|
45
45
|
## orjson
|
|
@@ -57,9 +57,9 @@ documents = [
|
|
|
57
57
|
{"id": uuid4(), "title": "test 1"},
|
|
58
58
|
{"id": uuid4(), "title": "Test 2"},
|
|
59
59
|
]
|
|
60
|
-
|
|
61
|
-
index = client.index("movies", primary_key="id")
|
|
62
|
-
index.add_documents(documents)
|
|
60
|
+
with Client("http://127.0.0.1:7700", json_handler=OrjsonHandler()) as client:
|
|
61
|
+
index = client.index("movies", primary_key="id")
|
|
62
|
+
index.add_documents(documents)
|
|
63
63
|
```
|
|
64
64
|
|
|
65
65
|
## ujson
|
|
@@ -77,7 +77,7 @@ documents = [
|
|
|
77
77
|
{"id": uuid4(), "title": "test 1"},
|
|
78
78
|
{"id": uuid4(), "title": "Test 2"},
|
|
79
79
|
]
|
|
80
|
-
|
|
81
|
-
index = client.index("movies", primary_key="id")
|
|
82
|
-
index.add_documents(documents)
|
|
80
|
+
with Client("http://127.0.0.1:7700", json_handler=UjsonHandler()) as client:
|
|
81
|
+
index = client.index("movies", primary_key="id")
|
|
82
|
+
index.add_documents(documents)
|
|
83
83
|
```
|
|
@@ -84,13 +84,13 @@ async def main() -> int:
|
|
|
84
84
|
with open("datasets/small_movies.json") as f:
|
|
85
85
|
documents = json.load(f)
|
|
86
86
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
87
|
+
async with AsyncClient("http://127.0.0.1:7700", "masterKey") as client:
|
|
88
|
+
plugins = AsyncIndexPlugins(search_plugins=(SearchTrackerPlugin(),))
|
|
89
|
+
index = await client.create_index("movies", primary_key="id", plugins=plugins)
|
|
90
|
+
task = await index.add_documents(documents)
|
|
91
|
+
await client.wait_for_task(task.task_uid)
|
|
92
|
+
result = await index.search("Cars")
|
|
93
|
+
print(result) # noqa: T201
|
|
94
94
|
|
|
95
95
|
return 0
|
|
96
96
|
|
|
@@ -142,13 +142,13 @@ def main() -> int:
|
|
|
142
142
|
with open("datasets/small_movies.json") as f:
|
|
143
143
|
documents = json.load(f)
|
|
144
144
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
145
|
+
with Client("http://127.0.0.1:7700", "masterKey") as client:
|
|
146
|
+
plugins = IndexPlugins(search_plugins=(SearchTrackerPlugin(),))
|
|
147
|
+
index = client.create_index("movies", primary_key="id", plugins=plugins)
|
|
148
|
+
task = index.add_documents(documents)
|
|
149
|
+
client.wait_for_task(task.task_uid)
|
|
150
|
+
result = index.search("Cars")
|
|
151
|
+
print(result) # noqa: T201
|
|
152
152
|
|
|
153
153
|
return 0
|
|
154
154
|
|
|
@@ -224,17 +224,17 @@ async def main() -> int:
|
|
|
224
224
|
with open("datasets/small_movies.json") as f:
|
|
225
225
|
documents = json.load(f)
|
|
226
226
|
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
227
|
+
async with AsyncClient("http://127.0.0.1:7700", "masterKey") as client:
|
|
228
|
+
plugins = AsyncIndexPlugins(
|
|
229
|
+
add_documents_plugins=(ModifyDocumentPlugin(),),
|
|
230
|
+
update_documents_plugins=(ModifyDocumentPlugin(),),
|
|
231
|
+
search_plugins=(FilterSearchResultsPlugin(),),
|
|
232
|
+
)
|
|
233
|
+
index = await client.create_index("movies", primary_key="id", plugins=plugins)
|
|
234
|
+
task = await index.add_documents(documents)
|
|
235
|
+
await client.wait_for_task(task.task_uid)
|
|
236
|
+
result = await index.search("cars")
|
|
237
|
+
print(result) # noqa: T201
|
|
238
238
|
|
|
239
239
|
return 0
|
|
240
240
|
|
|
@@ -295,17 +295,17 @@ def main() -> int:
|
|
|
295
295
|
with open("datasets/small_movies.json") as f:
|
|
296
296
|
documents = json.load(f)
|
|
297
297
|
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
298
|
+
with Client("http://127.0.0.1:7700", "masterKey") as client:
|
|
299
|
+
plugins = IndexPlugins(
|
|
300
|
+
add_documents_plugins=(ModifyDocumentPlugin(),),
|
|
301
|
+
update_documents_plugins=(ModifyDocumentPlugin(),),
|
|
302
|
+
search_plugins=(FilterSearchResultsPlugin(),),
|
|
303
|
+
)
|
|
304
|
+
index = client.create_index("movies", primary_key="id", plugins=plugins)
|
|
305
|
+
task = index.add_documents(documents)
|
|
306
|
+
client.wait_for_task(task.task_uid)
|
|
307
|
+
result = index.search("cars")
|
|
308
|
+
print(result) # noqa: T201
|
|
309
309
|
|
|
310
310
|
return 0
|
|
311
311
|
|
{meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/add_documents_decorator.py
RENAMED
|
@@ -19,12 +19,12 @@ def load_documents() -> list[dict[str, Any]]:
|
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
def main() -> int:
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
with Client("http://127.0.0.1:7700", "masterKey") as client:
|
|
23
|
+
index = client.create_index("movies", "id")
|
|
24
|
+
load_documents()
|
|
25
|
+
documents = index.get_documents()
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
print(documents) # noqa: T201
|
|
28
28
|
|
|
29
29
|
return 0
|
|
30
30
|
|
{meilisearch_python_sdk-5.1.0 → meilisearch_python_sdk-5.2.0}/examples/add_documents_in_batches.py
RENAMED
|
@@ -9,11 +9,11 @@ def main() -> int:
|
|
|
9
9
|
with open("../datasets/small_movies.json") as f:
|
|
10
10
|
documents = json.load(f)
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
with Client("http://127.0.0.1:7700", "masterKey") as client:
|
|
13
|
+
index = client.index("movies")
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
# Meilisearch prefers larger batch sizes so set this as large as you can.
|
|
16
|
+
index.add_documents_in_batches(documents, primary_key="id", batch_size=1000)
|
|
17
17
|
|
|
18
18
|
return 0
|
|
19
19
|
|
|
@@ -50,17 +50,17 @@ def main() -> int:
|
|
|
50
50
|
with open("../datasets/small_movies.json") as f:
|
|
51
51
|
documents = json.load(f)
|
|
52
52
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
53
|
+
with Client("http://127.0.0.1:7700", "masterKey") as client:
|
|
54
|
+
plugins = IndexPlugins(
|
|
55
|
+
add_documents_plugins=(ModifyDocumentPlugin(),),
|
|
56
|
+
update_documents_plugins=(ModifyDocumentPlugin(),),
|
|
57
|
+
search_plugins=(FilterSearchResultsPlugin(),),
|
|
58
|
+
)
|
|
59
|
+
index = client.create_index("movies", primary_key="id", plugins=plugins)
|
|
60
|
+
task = index.add_documents(documents)
|
|
61
|
+
client.wait_for_task(task.task_uid)
|
|
62
|
+
result = index.search("cars")
|
|
63
|
+
print(result) # noqa: T201
|
|
64
64
|
|
|
65
65
|
return 0
|
|
66
66
|
|
|
@@ -8,9 +8,9 @@ from meilisearch_python_sdk.models.task import TaskInfo
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
def add_documents(file_path: Path | str = "../datasets/small_movies.json") -> TaskInfo:
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
with Client("http://127.0.0.1:7700", "masterKey", json_handler=OrjsonHandler()) as client:
|
|
12
|
+
index = client.create_index("movies", primary_key="id")
|
|
13
|
+
return index.add_documents_from_file(file_path)
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
def main() -> int:
|
|
@@ -53,13 +53,13 @@ def search(index: Index, query: str) -> SearchResults[JsonDict]:
|
|
|
53
53
|
|
|
54
54
|
|
|
55
55
|
def main() -> int:
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
56
|
+
with Client("http://127.0.0.1:7700", "masterKey") as client:
|
|
57
|
+
plugins = IndexPlugins(search_plugins=(SearchTrackerPlugin(),))
|
|
58
|
+
index = client.create_index("movies", primary_key="id", plugins=plugins)
|
|
59
|
+
task = add_documents(index)
|
|
60
|
+
client.wait_for_task(task.task_uid)
|
|
61
|
+
result = search(index, "Cars")
|
|
62
|
+
print(result) # noqa: T201
|
|
63
63
|
|
|
64
64
|
return 0
|
|
65
65
|
|
|
@@ -8,9 +8,9 @@ from meilisearch_python_sdk.models.task import TaskInfo
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
def add_documents(file_path: Path | str = "../datasets/small_movies.json") -> TaskInfo:
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
with Client("http://127.0.0.1:7700", "masterKey", json_handler=UjsonHandler()) as client:
|
|
12
|
+
index = client.create_index("movies", primary_key="id")
|
|
13
|
+
return index.add_documents_from_file(file_path)
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
def main() -> int:
|
|
@@ -25,11 +25,11 @@ def update_settings(index: Index) -> TaskInfo:
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
def main() -> int:
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
28
|
+
with Client("http://127.0.0.1:7700", "masterKey") as client:
|
|
29
|
+
index = client.create_index("movies", primary_key="id")
|
|
30
|
+
task = update_settings(index)
|
|
31
|
+
client.wait_for_task(task.task_uid)
|
|
32
|
+
add_documents(index)
|
|
33
33
|
|
|
34
34
|
return 0
|
|
35
35
|
|