Enable users to generate text embeddings directly in their ES|QL queries, which is essential for semantic search, similarity search, and other vector operations without requiring a separate ETL step.
FROM documents
| WHERE KNN(embedding_field, TEXT_EMBEDDING(content, "all-MiniLM-L6-v2"), 10)
TEXT_EMBEDDING(text: string, inference_id: string) -> dense_vector
meta issue: #123043
Summary
Add a new
TEXT_EMBEDDINGfunction to ES|QL that generates dense vector embeddings for text using a specified inference model.Motivation
Enable users to generate text embeddings directly in their ES|QL queries, which is essential for semantic search, similarity search, and other vector operations without requiring a separate ETL step.
Basic Example
Detailed Design
Function Signature
Parameters
text: The input text to embed (string literal or column reference)inference_id: The ID of the inference model to use (string literal)Behavior
dense_vectortypeError Cases
Related Issues
TODO List
Done: