AI Elasticsearch

AI Elasticsearch

Certified

Store embeddings in Elasticsearch

Targets an Elasticsearch 8.15+ cluster using the provided hosts/index; when drop=true the index is deleted. Supports basic auth, custom headers, path prefix, and trust-all TLS for self-signed certs.

yaml
type: io.kestra.plugin.ai.embeddings.Elasticsearch

Ingest documents into an Elasticsearch embedding store (requires Elasticsearch 8.15+)

yaml
id: document_ingestion
namespace: company.ai

tasks:
  - id: ingest
    type: io.kestra.plugin.ai.rag.IngestDocument
    provider:
      type: io.kestra.plugin.ai.provider.GoogleGemini
      modelName: gemini-embedding-001
      apiKey: "{{ secret('GEMINI_API_KEY') }}"
    embeddings:
      type: io.kestra.plugin.ai.embeddings.Elasticsearch
      connection:
        hosts:
          - http://localhost:9200
    fromExternalURLs:
      - https://raw.githubusercontent.com/kestra-io/docs/refs/heads/main/content/blogs/release-0-24.md
Properties

Connection

Elasticsearch connection configuration (hosts, authentication, and TLS settings).

Definitions
hosts*Requiredarray
SubTypestring
Min items1

List of HTTP Elasticsearch servers

Must be a URI like https://example.com: 9200 with scheme and port

basicAuth

Basic authorization configuration

passwordstring

Basic authorization password

usernamestring

Basic authorization username

headersarray
SubTypestring

List of HTTP headers to be sent with every request

Each item is a key: value string, e.g., Authorization: Token XYZ

pathPrefixstring

Path prefix for all HTTP requests

If set to /my/path, each client request becomes /my/path/ + endpoint. Useful when Elasticsearch is behind a proxy providing a base path; do not use otherwise.

strictDeprecationModebooleanstring

Treat responses with deprecation warnings as failures

targetServerVersionintegerstring
Default8

Target Elasticsearch server major version

Major version used for compatible-with media-type headers (Accept and Content-Type). The bundled elasticsearch-java 9.x client defaults to compatible-with=9, which Elasticsearch 8 rejects. Set to 8 when targeting an Elasticsearch 8 cluster (the default), or 9 for Elasticsearch 9.

trustAllSslDeprecatedbooleanstring

Trust all SSL CA certificates

Use this if the server uses a self-signed SSL certificate. WARNING: enabling this disables both certificate chain validation and hostname verification, exposing connections to man-in-the-middle attacks. Prefer supplying a custom CA certificate instead. Use only in trusted, controlled environments.

The name of the index to store embeddings