Skip to content

Conversation

@strickvl
Copy link
Contributor

@strickvl strickvl commented Dec 4, 2025

Summary

This PR adds a new project demonstrating how to train an email search agent using OpenPipe ART (Agentic Reinforcement Training) with ZenML for production ML pipelines.

  • Train an RL agent using GRPO (Group Relative Policy Optimization) with RULER scoring
  • Track artifacts including scenarios, model checkpoints, and training metrics
  • Orchestrate on Kubernetes with GPU step operators for training
  • Evaluate models with automated correctness judging

The agent learns to search through emails and answer questions using LangGraph's ReAct pattern, starting from a Qwen 2.5 7B base model.

Architecture

data_preparation_pipeline (cached, no GPU)
  download_enron_data → create_database → load_scenarios

training_pipeline (GPU required)
  setup_art_model → train_agent (LangGraph rollouts + RULER + GRPO)

evaluation_pipeline (GPU required)  
  load_trained_model → run_inference → compute_metrics

Test plan

  • Verify data preparation pipeline runs locally
  • Test training pipeline with small config on GPU
  • Validate evaluation metrics computation
  • Test Kubernetes config on cloud cluster

This project demonstrates training an email search agent using OpenPipe ART
(Agentic Reinforcement Training) with ZenML for production ML pipelines.

Features:
- GRPO training with RULER scoring for relative trajectory evaluation
- LangGraph ReAct agent with email search tools
- Three ZenML pipelines: data preparation, training, and evaluation
- Kubernetes configs with GPU node affinity for production training
- Enron email dataset with FTS5 full-text search
@dagshub
Copy link

dagshub bot commented Dec 4, 2025

@strickvl strickvl added enhancement New feature or request internal x-squad labels Dec 4, 2025
- Add inference pipeline with DeploymentSettings for HTTP serving
- Add single_inference step for real-time query processing
- Add deployment.yaml config for HTTP service configuration
- Update run.py with --pipeline deploy command
- Update README with deployment documentation and examples

The inference pipeline can be deployed as an HTTP service using
ZenML Pipeline Deployments, enabling real-time email search queries
via POST /invoke endpoint.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants