Skip to content

[v1.13] Stabilize AI-powered search #1081

Open
@Strift

Description

@Strift

Following the changes related to Meilisearch v1.13.0 mega issue:

Description

Integrate AI-powered search features as stabilized in Meilisearch v1.13.0.

Since AI-powered search was initially introduced Meilisearch v1.3 as an experimental feature an subsequently refined in later releases, some features may already be partially implemented. The goal of this issue is to update the SDK to align with the stabilized API in v1.13.0.

Specifications

Update settings to handle embedders

Docs: https://www.meilisearch.com/docs/reference/api/settings#embedders

  • embedders setting. Methods getEmbedders, updateEmbedders, resetEmbedders. Also, the method updateSettings should be able to accept the new embedders field. Here is the list of the acceptable sub fields:
    • source sub field is available and accepts: ollama, rest, openAI, huggingFace and userProvided
    • apiKey sub field is available (string) - optional because not compatible with all sources. Only for openAi, ollama, rest.
    • model sub field is available (string) - optional because not compatible with all sources. Only for ollama, openAI, huggingFace
    • documentTemplate sub field is available (string) - optional
    • dimensions - optional because not compatible with all sources. Only for openAi, huggingFace, ollama, and rest
    • distribution - optional
    • request - mandatory only if using rest embedder
    • response - mandatory only if using rest embedder
    • documentTemplateMaxBytes - optional
    • revision - optional, only for huggingFace
    • headers - optional, only for rest
    • binaryQuantized - optional

Update search to handle vector search and hybrid search

Docs: https://www.meilisearch.com/docs/reference/api/search

  • Search
    • hybrid search parameter, with sub fields semanticRatio and embedder. embedder is mandatory if hybrid is set.
    • vector parameter is available
    • retrieveVectors parameter available
    • semanticHitCount in search response
    • Accept _semanticScore in the search response (optional)
    • vector should be returned in the search response, but optional (because depends on search parameters)
    • _vectors should NOT be present in the search response

Add similar documents endpoint

Docs: https://www.meilisearch.com/docs/reference/api/similar

  • Similar. Implement searchSimilarDocuments associated with the POST /indexes/:uid/similar. Do NOT implement with GET.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions