OpenViSTAI · Agents · Blockchain · Crypto
Menu
RAG & Knowledge Systems

ElasticTransformers

ElasticTransformers is a Python library with notebooks and utilities for creating Elasticsearch indices, indexing text with Sentence Transformers embeddings, and querying by keyword or semantic similarity. It includes chunked CSV ingestion and relies on a consistent embedding function for indexing and semantic queries.

Independent OpenViST project profile, based on linked sources.

ElasticTransformers — OpenViST project profile in RAG & Knowledge Systems.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use it when you want a Python and notebook-based starting point for indexing a custom text dataset in Elasticsearch and comparing lexical and semantic queries.

Who it is for

  • Developers building search over their own text datasets in Elasticsearch.
  • Practitioners comparing keyword matching with embedding-based semantic search.
  • Users who want a notebook-based example of chunked CSV ingestion into Elasticsearch.

Documented uses

  • Define an Elasticsearch index with text fields and dense-vector fields.
  • Process large CSV files in chunks and add embeddings to an index.
  • Search indexed text using keyword matching or dense-vector semantics.
Before you choose

Requirements & limits

The repository is public and lists an Apache-2.0 license.

  • The project is a library and notebook workflow, not a hosted search service; the documented setup uses a separately started Elasticsearch server.
  • Semantic search depends on using the same embedding function for indexing and querying.
  • The README describes a Python 3.7 Conda environment and installation from the repository’s requirements file.
  • The project estimates about three hours to index one million articles on four CPU cores.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Create an index and ingest CSV data with embeddings

Use the library’s documented utilities to define an Elasticsearch index and send chunked CSV records with embeddings to it.

Before you start

  • A running Elasticsearch service
  • The installed project dependencies
  • A CSV dataset
  • An embedding utility for the selected text field

Steps

  1. Initialize ElasticTransformers with the Elasticsearch URL and, optionally, an index name.

  2. Define the text-search fields, dense-vector field and vector dimension with create_index_spec.

  3. Call create_index to create the configured index.

  4. Call write_large_csv with the CSV path, chunk size, embedding utility and field to embed.

Expected outcome

The documented workflow creates an Elasticsearch index and feeds it chunked CSV records with embeddings.

Guide limitations

  • The embedding utility and its configuration must be supplied for the dataset.
  • The README’s example later requires the same embedding function for semantic search.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
18 October 2026
Original website title
md-experiments/elastic_transformers · Official homepage title · retained in its source language