You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: learn/resources/experimental_features_overview.mdx
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,4 +59,6 @@ Activating or deactivating experimental features this way does not require you t
59
59
|[Search query embedding cache](/learn/self_hosted/configure_meilisearch_at_launch#search-query-embedding-cache)| Enable a cache for search query embeddings | CLI flag or environment variable |
60
60
|[Uncompressed snapshots](/learn/self_hosted/configure_meilisearch_at_launch#uncompressed-snapshots)| Disable snapshot compaction | CLI flag or environment variable |
61
61
|[Maximum batch payload size](/learn/self_hosted/configure_meilisearch_at_launch#maximum-batch-payload-size)| Limit batch payload size | CLI flag or environment variable |
62
-
|[Disable new indexer](/learn/self_hosted/configure_meilisearch_at_launch)| Use previous settings indexer | CLI flag or environment variable |
62
+
|[Multimodal search](/reference/api/settings)| Enable multimodal search | API route |
63
+
|[Disable new indexer](/learn/self_hosted/configure_meilisearch_at_launch)| Use previous settings indexer | CLI flag or environment variable |
Specifies data to populate search fragments when performing multimodal searches.
1310
+
1311
+
`media` must be an object whose fields must correspond to the data required by one [search fragment](/reference/api/settings#searchfragments). `media` must match a single search fragment. If `media` matches more than one fragment or no search fragments at all, Meilisearch will return an error.
1312
+
1313
+
It is mandatory to specify an embedder when using `media`. `media` is incompatible with `vector`.
`indexingFragments` specifies which fields in your documents should be used to generate multimodal embeddings. It must be an object with the following structure:
2896
+
2897
+
```json
2898
+
"FRAGMENT_NAME": {
2899
+
"value": {
2900
+
…
2901
+
}
2902
+
}
2903
+
```
2904
+
2905
+
`FRAGMENT_NAME` can be any valid string. It must contain a single field, `value`. `value` must then follow your chosen model's specifications.
2906
+
2907
+
For example, for [VoyageAI's multimodal embedding route](https://docs.voyageai.com/reference/multimodal-embeddings-api), `value` must be an object containing a `content` field. `content` itself must contain an array of objects with a `type` field. Depending on `type`'s value, you must include either `text`, `image_url`, or `image_base64`:
2908
+
2909
+
```json
2910
+
{
2911
+
"VOYAGE_FRAGMENT_NAME_A": {
2912
+
"value": {
2913
+
"content": [
2914
+
{
2915
+
"type": "text",
2916
+
"text": "A document called {{doc.title}} that can be described as {{doc.description}}"
2917
+
}
2918
+
]
2919
+
}
2920
+
},
2921
+
"VOYAGE_FRAGMENT_NAME_B": {
2922
+
"value": {
2923
+
"content": [
2924
+
{
2925
+
"type": "image_url",
2926
+
"image_url": "{{doc.image_url}}"
2927
+
}
2928
+
]
2929
+
}
2930
+
},
2931
+
}
2932
+
```
2933
+
2934
+
Use Liquid templates to interpolate document data into the fragment fields, where `doc` gives you access to all fields within a document.
2935
+
2936
+
`indexingFragments` is optional when using the `rest` source.
2937
+
2938
+
`indexingFragments` is incompatible with all other embedder sources.
2939
+
2940
+
Specifying a `documentTemplate` in an embedder using `indexingFragments` will result in an error.
2941
+
2942
+
You must specify at least one valid fragment in `searchFragments` when using `indexingFragments`.
`searchFragments` instructs Meilisearch how to parse fields present in a query's [`media` search parameter](/reference/api/search#media). It must be an object following the same structure as the [`indexingFragments`](/reference/api/settings#indexingfragments) object:
2960
+
2961
+
```json
2962
+
"FRAGMENT_NAME": {
2963
+
"value": {
2964
+
…
2965
+
}
2966
+
}
2967
+
```
2968
+
2969
+
As with `indexingFragments`, the content of `value` should follow your model's specification.
2970
+
2971
+
Use Liquid templates to interpolate search query data into the fragment fields, where `media` gives you access to all multimodal data received with a query:
Copy file name to clipboardExpand all lines: reference/errors/error_codes.mdx
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -146,6 +146,14 @@ The given [`uid`](/reference/api/keys#uid) is invalid. The `uid` must follow the
146
146
147
147
The value passed to [`attributesToSearchOn`](/reference/api/search#customize-attributes-to-search-on-at-search-time) is invalid. `attributesToSearchOn` accepts an array of strings indicating document attributes. Attributes given to `attributesToSearchOn` must be present in the [`searchableAttributes` list](/learn/relevancy/displayed_searchable_attributes#the-searchableattributes-list).
148
148
149
+
## `invalid_search_media`
150
+
151
+
The value passed to [`media`](/reference/api/search#media) is not a valid JSON object.
152
+
153
+
## `invalid_search_media_and_vector`
154
+
155
+
The search query contains non-`null` values for both [`media`](/reference/api/search#media) and [`vector`](/reference/api/search#media). These two parameters are mutually exclusive, since `media` generates vector embeddings via the embedder configured in `hybrid`.
156
+
149
157
## `invalid_content_type`
150
158
151
159
The [Content-Type header](/reference/api/overview#content-type) is not supported by Meilisearch. Currently, Meilisearch only supports JSON, CSV, and NDJSON.
0 commit comments