IBM data-prep-kit logo

IBM data-prep-kit

Free

Open-Source Toolkit for Efficient Unstructured Data Processing with Pre-built Modules and Local to Cluster Scalability.

FreeFree tier
Type
Open Source
Company
IBM

About IBM data-prep-kit

Open-source project for data preparation for GenAI applications. It accelerates unstructured data processing for LLM app developers, providing a growing set of modules/transforms to cleanse, transform, and enrich use case-specific data. Supports pre-training, fine-tuning, instruction-tuning of LLMs, and building Retrieval Augmented Generation (RAG) applications. Scales from commodity laptops to data center clusters. Currently supports natural language, code, and image data modalities. Modules are built on Python and Ray runtimes, and can process Parquet, ZIP, NDJSON, and JSONL file formats. Includes a framework for developing custom transforms and can deploy single transforms as Python or Ray jobs on Kubernetes. Multiple transforms can be sequenced using Tekton pipelines. Installation via pip for Python 3.10–3.13.

Key Features

Growing set of modules/transforms for data processing
Supports natural language, code, and image data modalities
Built on Python and Ray runtimes for scalable data processing
Processes Parquet, ZIP, NDJSON, and JSONL file formats
Framework for developing custom transforms
Deployable as Python or Ray jobs on Kubernetes clusters
Uses Tekton pipelines for sequencing multiple transforms
Installable via pip for Python 3.10, 3.11, 3.12, and 3.13
Scales from commodity laptop to data center clusters

Pros & Cons

Pros
  • Open-source and free to use
  • Scales seamlessly from local development to production clusters
  • Supports multiple data modalities (text, code, images) in one toolkit
  • Provides pre-built transforms for common data preparation tasks
  • Integrates with Kubernetes and Tekton for enterprise-grade pipelines
  • Easy installation via pip with Python 3.10+ support
  • Active GitHub repository with many contributors and frequent updates
Cons
  • Requires Python knowledge for setup and custom transform development
  • Learning curve for building custom transforms and deploying on Kubernetes
  • Ray dependency may be heavy for simple or small-scale tasks
  • Documentation beyond the GitHub readme may be limited

Best For

Pre-training large language models (LLMs)Fine-tuning LLMsInstruction-tuning LLMsBuilding Retrieval Augmented Generation (RAG) applicationsCleansing and transforming unstructured data for AI pipelinesEnriching datasets with custom transforms

FAQ

What is Data Prep Kit?
Data Prep Kit is an open-source project that accelerates unstructured data preparation for GenAI applications. It provides modules to cleanse, transform, and enrich data for pre-training, fine-tuning, instruction-tuning LLMs, and building RAG applications.
What data formats are supported?
The kit supports Parquet, ZIP, NDJSON, and JSONL file formats.
What data modalities are supported?
Currently, the kit supports natural language, code, and image data modalities.
How do I install Data Prep Kit?
The latest version is available on PyPi for Python 3.10–3.13. Install using pip: 'pip install uv' then 'uv pip install data-prep-toolkit-transforms[all]'.
Can Data Prep Kit run on a laptop?
Yes, it is designed to scale from a commodity laptop all the way to data center clusters.
How can I deploy transforms on a cluster?
Transforms can be deployed on Kubernetes clusters as Python or Ray jobs. Multiple transforms can be sequenced using Tekton pipelines.