NVIDIA NeMo Curator provides a module for performing distributed classification on large text datasets using GPU acceleration. This enables the categorization and filtering of text documents based on multiple dimensions such as domain, quality, safety, educational value, content type, and more. These classifications can enhance the quality of training data for large language models by identifying high-value content and removing problematic material.
The distributed data classification in NeMo Curator works by:
DistributedDataClassifier base classThe DistributedDataClassifier is designed to run on GPU clusters with minimal code changes regardless of which specific classifier you’re using. All classifiers support filtering based on classification results and storing prediction scores as metadata.
Distributed classification requires GPU acceleration and is not supported for CPU-only processing. As long as GPU resources are available and NeMo Curator is correctly installed, GPU acceleration is handled automatically.
NVIDIA NeMo Curator provides a base class DistributedDataClassifier that can be extended to fit your specific model. The only requirement is that the model can fit on a single GPU. This module operates on the GPU and works within the pipeline framework using DocumentBatch processing.
The Domain Classifier categorizes English text documents into specific domains or subject areas.
Functionally similar to the Domain Classifier, but supports 52 languages.
The Quality Classifier assesses document quality using the NVIDIA Quality Classifier DeBERTa model.
The exact label categories returned by the Quality Classifier depend on the model configuration. Check the prediction column in your results to see the available labels for filtering with the filter_by parameter.
The AEGIS classifier detects unsafe content across 13 critical risk categories. It requires a HuggingFace token for access to Llama Guard.
The classifier adds a column with labels: “safe,” “O1” through “O13” (each representing specific safety risks), or “unknown.” For raw LLM output, use:
Detects LLM poisoning attacks in instruction-response datasets. Requires HuggingFace token access.
The output includes two columns: a float score instruction_data_guard_poisoning_score and a Boolean is_poisoned.
Scores documents on educational value from 0–5. This helps prioritize content for knowledge-intensive tasks.
Similar to the FineWeb Edu Classifier but trained with different annotation sources:
Both provide a quality label column marking scores above 2.5 as “high_quality”:
Categorizes documents into 11 distinct speech types.
Classifies prompts by task type and complexity dimensions.
NVIDIA NeMo Curator’s distributed classifiers are optimized for high-throughput processing through several key features:
The classifiers optimize throughput through:
sort_by_length=True (default)