Practical overview
When it fits
Use Data Juicer when a foundation-model workflow needs configurable dataset preparation or analysis, particularly when the data includes multiple modalities or the steps need to be composed into a reusable pipeline.
Who it is for
- Developers assembling repeatable data-processing pipelines for foundation-model projects.
- Researchers and data teams preparing or analyzing multimodal datasets.
- Teams curating instruction-tuning examples, agent traces, or RAG data.
Documented uses
- Filter and normalize text samples through composable operators.
- Prepare and analyze data for pretraining and instruction tuning.
- Clean or structure agent interaction traces.
- Prepare and profile datasets for RAG workflows.
- Build reusable processing workflows with YAML recipes or Python.
Requirements & limits
The project is available as a public GitHub repository under the Apache-2.0 license. The documented package installation uses `uv`.
- Choose between the documented command-line configuration workflow and Python API according to whether the job is recipe-based or code-driven.
- Check the operator documentation for support relevant to the dataset and transformations you need.
- The README describes both local-scale examples and large-scale processing claims; the small Python example is not a deployment recipe.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Install Data Juicer and run the documented sample configuration
Install the Python package and start a processing job using the sample YAML configuration.
Before you start
- Python package installation using uv
- The Data Juicer repository or its sample configuration
Steps
Install the package with the command below.
uv pip install py-data-juicerRun
dj-process --config demos/process_simple/process.yaml.
Expected outcome
The documented sample processing configuration is submitted to the Data Juicer command-line processor.
Guide limitations
- The README does not specify the sample job's output or runtime requirements.
Apply filter and normalization operators to a Python dataset
Create a small text dataset and process it with the documented length filter and whitespace-normalization mapper.
Before you start
- Python environment with Data Juicer installed
- The
NestedDataset,TextLengthFilter, andWhitespaceNormalizationMappercomponents
Steps
Create a
NestedDatasetfrom a dictionary containing text samples.Call
processwithTextLengthFilter(min_len=10)followed byWhitespaceNormalizationMapper().Iterate over the returned dataset to print its samples.
Expected outcome
The example applies a minimum-text-length filter and whitespace normalization to the dataset.
Guide limitations
- The example covers a small text dataset and does not document a multimodal or distributed run.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 7 October 2026
- Original website title
- datajuicer/data-juicer · Official homepage title · retained in its source language

