Zem: Unified Data Pipeline Framework (ZenML + NeMo Curator + DataJuicer) for multi-domain processing
Project description
🚀 Zem
Zem is a high-performance, unified data pipeline framework designed for the modern AI era. It seamlessly bridges ZenML's production-grade orchestration with specialized curation powerhouses like NVIDIA NeMo Curator and Alibaba Data-Juicer using the Model Context Protocol (MCP).
✨ Key Features
- 🏗️ Config-Driven Power: Define complex, production-ready pipelines in single YAML files.
- ⚡ True Parallel DAGs: Execute independent processing branches concurrently using a custom
ParallelLocalOrchestrator. - 🧠 Frontier LLM Integration: Smart data masking, classification, and summarization via Ollama or OpenAI.
- 📊 Deep Observability: Real-time profiling, per-tool performance metrics, and a beautiful integrated dashboard.
- 🔄 Adaptive Caching: Fine-grained, step-level cache control to optimize your development cycles.
- 🔌 Cloud Native: Native support for S3, GCS, and Parquet with seamless export to Hugging Face Hub and Vector DBs.
🏗️ Architecture
graph TD
YAML["📄 pipeline.yaml"] --> Client["🛠️ Zem CLI / Client"]
Client --> ZenML["🌀 ZenML Orchestrator"]
ZenML --> Parallel["⚡ Parallel Local Orchestrator"]
Parallel --> MCP_Bridge["🔗 MCP Bridge"]
subgraph "Specialized Servers (MCP)"
MCP_Bridge --> Nemo["🦁 NeMo Curator (GPU)"]
MCP_Bridge --> DJ["🧃 Data-Juicer"]
MCP_Bridge --> LLM["🤖 Frontier LLMs"]
MCP_Bridge --> Prof["📈 Profiler"]
end
subgraph "Storage & Sinks"
Nemo --> S3["☁️ Cloud / Parquet"]
DJ --> HF["🤗 Hugging Face"]
LLM --> VDB["🌐 Vector DB"]
end
🚀 Quick Start
1. Installation
git clone https://github.com/OAI-Labs/xfmr-zem.git
cd xfmr-zem
uv sync
2. Initialize a New Project
# Bootstrap a standalone project with a sample agent
uv run zem init my_project
cd my_project
3. Run Your First Pipeline
uv run zem run pipeline.yaml
4. Visualize & Inspect
# Open ZenML Dashboard
uv run zem dashboard
# Preview results with sampling
uv run zem preview <artifact_id> --sample --limit 5
📦 Data Versioning (DVC)
Zem tích hợp sẵn DVC để quản lý phiên bản dữ liệu lớn, sử dụng MinIO (S3-compatible) làm remote storage.
Cấu hình credentials
export DVC_MINIO_ENDPOINT=
export DVC_MINIO_BUCKET=
export DVC_MINIO_ACCESS_KEY=
export DVC_MINIO_SECRET_KEY=
Workflow
# Khởi tạo project với DVC + MinIO
uv run zem init my_project --dvc-remote minio
# Track dataset
cd my_project
uv run zem data add data/dataset.parquet -m "add training data v1"
# Push lên remote / Pull về
uv run zem data push
uv run zem data pull
# Kiểm tra trạng thái & lineage
uv run zem data status
uv run zem data lineage data/dataset.parquet
DVC metadata (hash, git commit) được tự động log vào ZenML artifact khi pipeline chạy, đảm bảo truy xuất đúng data version cho mỗi experiment.
📖 Guided Documentation
| Topic | Description | Link |
|---|---|---|
| Core Concepts | Understand the Zem architecture and MCP model. | AGENTS.md |
| Pipeline YAML | How to write and validate your pipeline configs. | Standard Example |
| Advanced Parallelism | Setup true local concurrency. | Parallel Guide |
| LLM & Sinks | Connecting to external AI stacks. | Phase 4 Demo |
🤝 Contributing
We welcome contributions! Whether it's a new MCP server, a performance fix, or a typo in the docs, feel free to open a Pull Request.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
⚖️ License
Distributed under the Apache-2.0 License. See LICENSE for more information.
Built with ❤️ by the OAI-Labs Team
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xfmr_zem-0.3.8.tar.gz.
File metadata
- Download URL: xfmr_zem-0.3.8.tar.gz
- Upload date:
- Size: 21.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5895617991766990ed4e7dac1a563fdb5d428cf6c8c9121b65cf9027a7552cf3
|
|
| MD5 |
b6e6b4cea0754b5fa8f5e0290e70295d
|
|
| BLAKE2b-256 |
3e7141616cd71b98b75004a75872f57188aeb07e57d5eb3de8d2b515d64c3c11
|
Provenance
The following attestation bundles were made for xfmr_zem-0.3.8.tar.gz:
Publisher:
pypi-publish.yml on OAI-Labs/xfmr-zem
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
xfmr_zem-0.3.8.tar.gz -
Subject digest:
5895617991766990ed4e7dac1a563fdb5d428cf6c8c9121b65cf9027a7552cf3 - Sigstore transparency entry: 981520114
- Sigstore integration time:
-
Permalink:
OAI-Labs/xfmr-zem@e2ea6dbbd3c9576ea496ad77126010168ec16440 -
Branch / Tag:
refs/tags/v0.3.8 - Owner: https://github.com/OAI-Labs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@e2ea6dbbd3c9576ea496ad77126010168ec16440 -
Trigger Event:
push
-
Statement type:
File details
Details for the file xfmr_zem-0.3.8-py3-none-any.whl.
File metadata
- Download URL: xfmr_zem-0.3.8-py3-none-any.whl
- Upload date:
- Size: 291.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bef8a8979a2b68180072c22144f3d2083f70ea6b918ea46fe6df4eed700c74c9
|
|
| MD5 |
f99e69e2112a5711b9035cd6d04b2bce
|
|
| BLAKE2b-256 |
3b884bbc959c91f786672315a78f2d47b2693732e98de44af0dc19339a7e7d23
|
Provenance
The following attestation bundles were made for xfmr_zem-0.3.8-py3-none-any.whl:
Publisher:
pypi-publish.yml on OAI-Labs/xfmr-zem
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
xfmr_zem-0.3.8-py3-none-any.whl -
Subject digest:
bef8a8979a2b68180072c22144f3d2083f70ea6b918ea46fe6df4eed700c74c9 - Sigstore transparency entry: 981520155
- Sigstore integration time:
-
Permalink:
OAI-Labs/xfmr-zem@e2ea6dbbd3c9576ea496ad77126010168ec16440 -
Branch / Tag:
refs/tags/v0.3.8 - Owner: https://github.com/OAI-Labs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@e2ea6dbbd3c9576ea496ad77126010168ec16440 -
Trigger Event:
push
-
Statement type: