Experimental features

    Meilisearch periodically introduces new experimental features. Experimental features are not always ready for production, but offer functionality that might benefit some users.

    An experimental feature's API can change significantly and become incompatible between releases. Keep this in mind when using experimental features in a production environment.

    Meilisearch makes experimental features available expecting they will become stable in a future release, but this is not guaranteed.

    Activating experimental features

    Experimental features fall into two groups based on how they are activated or deactivated:

    1. Those that are activated at launch with a command-line flag or environment variable
    2. Those that are activated with the /experimental-features API route.

    Activating experimental features at launch

    Some experimental features can be activated at launch, for example with a command-line flag:

    ./meilisearch --experimental-enable-metrics
    

    Flags and environment variables for experimental features are not included in the regular configuration options list. Instead, consult the specific documentation page for the feature you are interested in, which can be found in the experimental section.

    Command-line flags for experimental features are always prefixed with --experimental. Environment variables for experimental features are always prefixed with MEILI_EXPERIMENTAL.

    Activating or deactivating experimental features this way requires you to relaunch Meilisearch.

    Activating experimental features during runtime

    Some experimental features can be activated via an HTTP call using the /experimental-features API route:

    curl \
      -X PATCH 'http://localhost:7700/experimental-features/' \
      -H 'Content-Type: application/json'  \
      --data-binary '{
        "metrics": true
      }'

    Activating or deactivating experimental features this way does not require you to relaunch Meilisearch.

    Current experimental features

    NameDescriptionHow to configure
    Limit task batch sizeLimits number of tasks processed in a single batchAt launch with a CLI flag or environment variable
    Log customizationCustomize log output and set up log streamsAt launch with a CLI flag or environment variable, during runtime with the API route
    Metrics APIExposes Prometheus-compatible analytics dataAt launch with a CLI flag or environment variable, during runtime with the API route
    Reduce indexing memory usageOptimizes indexing performanceAt launch with a CLI flag or environment variable
    Replication parametersAlters task processing for clustering compatibilityAt launch with a CLI flag or environment variable
    Search queue sizeConfigure maximum number of concurrent search requestsAt launch with a CLI flag or environment variable
    Vector storeAllows Meilisearch to function as a vector embedding storeDuring runtime with the API route
    CONTAINS filter operatorEnables usage of CONTAINS with the filter search parameterDuring runtime with the API route
    Edit documents with functionUse a RHAI function to edit documents directly in the Meilisearch databaseDuring runtime with the API route