Skip to content

Commit bd53b10

Browse files
rsareddy0329rsareddy0329
andauthored
test(mlops): add prompt field to DPO preference integ dataset (#6553)
test_dpo_trainer_pipeline_create_and_execute began failing on the 2026-10-29 CI Health V3 Master canary with: DPOFineTune: Dataset is missing required columns: 'prompt' Available columns: ['chosen', 'rejected'] Root cause is external JumpStart Hub drift, not an SDK change. The SageMakerPublicHub model meta-textgeneration-llama-3-2-1b-instruct was republished (hub content 2.17.0, 2026-10-28 12:37 UTC, DPO recipe v2.0.6) with a training container that now enforces the prompt column the recipe maps via data.prompt_key. The preference_train.jsonl fixture only carried chosen/rejected, so it last passed on the 2026-10-28 canary and failed on 2026-10-29. The only SDK commit in that window was an unrelated codegen/codestyle fix. prompt+chosen+rejected is the documented DPO schema (DPO example notebook) and the format the SDK's own ai_registry.validate_dpo enforces, so this is a stale-fixture fix, not a customer-facing change. Lift the shared user turn into prompt; chosen/rejected now hold the assistant completions. Co-authored-by: rsareddy0329 <rsareddy@amazon.com>
1 parent 5f7c481 commit bd53b10

1 file changed

Lines changed: 20 additions & 20 deletions

File tree

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
{"chosen": [{"role": "user", "content": "What is ML?"}, {"role": "assistant", "content": "ML is a subset of AI that enables systems to learn from data."}], "rejected": [{"role": "user", "content": "What is ML?"}, {"role": "assistant", "content": "I don't know."}]}
2-
{"chosen": [{"role": "user", "content": "What is SageMaker?"}, {"role": "assistant", "content": "SageMaker is a managed machine learning service by AWS."}], "rejected": [{"role": "user", "content": "What is SageMaker?"}, {"role": "assistant", "content": "It's a thing."}]}
3-
{"chosen": [{"role": "user", "content": "What is fine-tuning?"}, {"role": "assistant", "content": "Fine-tuning adapts a pre-trained model to a specific task."}], "rejected": [{"role": "user", "content": "What is fine-tuning?"}, {"role": "assistant", "content": "Making things fine."}]}
4-
{"chosen": [{"role": "user", "content": "What is LoRA?"}, {"role": "assistant", "content": "LoRA is Low-Rank Adaptation for efficient model fine-tuning."}], "rejected": [{"role": "user", "content": "What is LoRA?"}, {"role": "assistant", "content": "A name."}]}
5-
{"chosen": [{"role": "user", "content": "What is RLHF?"}, {"role": "assistant", "content": "RLHF is Reinforcement Learning from Human Feedback."}], "rejected": [{"role": "user", "content": "What is RLHF?"}, {"role": "assistant", "content": "An acronym."}]}
6-
{"chosen": [{"role": "user", "content": "What is DPO?"}, {"role": "assistant", "content": "DPO is Direct Preference Optimization for alignment."}], "rejected": [{"role": "user", "content": "What is DPO?"}, {"role": "assistant", "content": "Something."}]}
7-
{"chosen": [{"role": "user", "content": "What is a transformer?"}, {"role": "assistant", "content": "A neural network architecture using self-attention mechanisms."}], "rejected": [{"role": "user", "content": "What is a transformer?"}, {"role": "assistant", "content": "A robot."}]}
8-
{"chosen": [{"role": "user", "content": "What is tokenization?"}, {"role": "assistant", "content": "Splitting text into smaller units called tokens."}], "rejected": [{"role": "user", "content": "What is tokenization?"}, {"role": "assistant", "content": "Tokens."}]}
9-
{"chosen": [{"role": "user", "content": "What is inference?"}, {"role": "assistant", "content": "Using a trained model to generate predictions on new data."}], "rejected": [{"role": "user", "content": "What is inference?"}, {"role": "assistant", "content": "Guessing."}]}
10-
{"chosen": [{"role": "user", "content": "What is a GPU?"}, {"role": "assistant", "content": "A processor for parallel computation used in ML training."}], "rejected": [{"role": "user", "content": "What is a GPU?"}, {"role": "assistant", "content": "A card."}]}
11-
{"chosen": [{"role": "user", "content": "What is backpropagation?"}, {"role": "assistant", "content": "An algorithm for computing gradients in neural networks."}], "rejected": [{"role": "user", "content": "What is backpropagation?"}, {"role": "assistant", "content": "Going back."}]}
12-
{"chosen": [{"role": "user", "content": "What is an epoch?"}, {"role": "assistant", "content": "One complete pass through the training dataset."}], "rejected": [{"role": "user", "content": "What is an epoch?"}, {"role": "assistant", "content": "A time period."}]}
13-
{"chosen": [{"role": "user", "content": "What is overfitting?"}, {"role": "assistant", "content": "When a model memorizes training data instead of learning."}], "rejected": [{"role": "user", "content": "What is overfitting?"}, {"role": "assistant", "content": "Too much fitting."}]}
14-
{"chosen": [{"role": "user", "content": "What is a loss function?"}, {"role": "assistant", "content": "Measures how far predictions are from actual values."}], "rejected": [{"role": "user", "content": "What is a loss function?"}, {"role": "assistant", "content": "Loss."}]}
15-
{"chosen": [{"role": "user", "content": "What is batch size?"}, {"role": "assistant", "content": "Number of samples processed before updating weights."}], "rejected": [{"role": "user", "content": "What is batch size?"}, {"role": "assistant", "content": "A size."}]}
16-
{"chosen": [{"role": "user", "content": "What is learning rate?"}, {"role": "assistant", "content": "Controls how much weights change during training."}], "rejected": [{"role": "user", "content": "What is learning rate?"}, {"role": "assistant", "content": "A rate."}]}
17-
{"chosen": [{"role": "user", "content": "What is regularization?"}, {"role": "assistant", "content": "Techniques to prevent overfitting in models."}], "rejected": [{"role": "user", "content": "What is regularization?"}, {"role": "assistant", "content": "Making regular."}]}
18-
{"chosen": [{"role": "user", "content": "What is an embedding?"}, {"role": "assistant", "content": "A dense vector representation of discrete data."}], "rejected": [{"role": "user", "content": "What is an embedding?"}, {"role": "assistant", "content": "A vector."}]}
19-
{"chosen": [{"role": "user", "content": "What is attention?"}, {"role": "assistant", "content": "A mechanism that weighs importance of different inputs."}], "rejected": [{"role": "user", "content": "What is attention?"}, {"role": "assistant", "content": "Focus."}]}
20-
{"chosen": [{"role": "user", "content": "What is a pipeline?"}, {"role": "assistant", "content": "An automated workflow for ML model development."}], "rejected": [{"role": "user", "content": "What is a pipeline?"}, {"role": "assistant", "content": "A pipe."}]}
1+
{"prompt": [{"role": "user", "content": "What is ML?"}], "chosen": [{"role": "assistant", "content": "ML is a subset of AI that enables systems to learn from data."}], "rejected": [{"role": "assistant", "content": "I don't know."}]}
2+
{"prompt": [{"role": "user", "content": "What is SageMaker?"}], "chosen": [{"role": "assistant", "content": "SageMaker is a managed machine learning service by AWS."}], "rejected": [{"role": "assistant", "content": "It's a thing."}]}
3+
{"prompt": [{"role": "user", "content": "What is fine-tuning?"}], "chosen": [{"role": "assistant", "content": "Fine-tuning adapts a pre-trained model to a specific task."}], "rejected": [{"role": "assistant", "content": "Making things fine."}]}
4+
{"prompt": [{"role": "user", "content": "What is LoRA?"}], "chosen": [{"role": "assistant", "content": "LoRA is Low-Rank Adaptation for efficient model fine-tuning."}], "rejected": [{"role": "assistant", "content": "A name."}]}
5+
{"prompt": [{"role": "user", "content": "What is RLHF?"}], "chosen": [{"role": "assistant", "content": "RLHF is Reinforcement Learning from Human Feedback."}], "rejected": [{"role": "assistant", "content": "An acronym."}]}
6+
{"prompt": [{"role": "user", "content": "What is DPO?"}], "chosen": [{"role": "assistant", "content": "DPO is Direct Preference Optimization for alignment."}], "rejected": [{"role": "assistant", "content": "Something."}]}
7+
{"prompt": [{"role": "user", "content": "What is a transformer?"}], "chosen": [{"role": "assistant", "content": "A neural network architecture using self-attention mechanisms."}], "rejected": [{"role": "assistant", "content": "A robot."}]}
8+
{"prompt": [{"role": "user", "content": "What is tokenization?"}], "chosen": [{"role": "assistant", "content": "Splitting text into smaller units called tokens."}], "rejected": [{"role": "assistant", "content": "Tokens."}]}
9+
{"prompt": [{"role": "user", "content": "What is inference?"}], "chosen": [{"role": "assistant", "content": "Using a trained model to generate predictions on new data."}], "rejected": [{"role": "assistant", "content": "Guessing."}]}
10+
{"prompt": [{"role": "user", "content": "What is a GPU?"}], "chosen": [{"role": "assistant", "content": "A processor for parallel computation used in ML training."}], "rejected": [{"role": "assistant", "content": "A card."}]}
11+
{"prompt": [{"role": "user", "content": "What is backpropagation?"}], "chosen": [{"role": "assistant", "content": "An algorithm for computing gradients in neural networks."}], "rejected": [{"role": "assistant", "content": "Going back."}]}
12+
{"prompt": [{"role": "user", "content": "What is an epoch?"}], "chosen": [{"role": "assistant", "content": "One complete pass through the training dataset."}], "rejected": [{"role": "assistant", "content": "A time period."}]}
13+
{"prompt": [{"role": "user", "content": "What is overfitting?"}], "chosen": [{"role": "assistant", "content": "When a model memorizes training data instead of learning."}], "rejected": [{"role": "assistant", "content": "Too much fitting."}]}
14+
{"prompt": [{"role": "user", "content": "What is a loss function?"}], "chosen": [{"role": "assistant", "content": "Measures how far predictions are from actual values."}], "rejected": [{"role": "assistant", "content": "Loss."}]}
15+
{"prompt": [{"role": "user", "content": "What is batch size?"}], "chosen": [{"role": "assistant", "content": "Number of samples processed before updating weights."}], "rejected": [{"role": "assistant", "content": "A size."}]}
16+
{"prompt": [{"role": "user", "content": "What is learning rate?"}], "chosen": [{"role": "assistant", "content": "Controls how much weights change during training."}], "rejected": [{"role": "assistant", "content": "A rate."}]}
17+
{"prompt": [{"role": "user", "content": "What is regularization?"}], "chosen": [{"role": "assistant", "content": "Techniques to prevent overfitting in models."}], "rejected": [{"role": "assistant", "content": "Making regular."}]}
18+
{"prompt": [{"role": "user", "content": "What is an embedding?"}], "chosen": [{"role": "assistant", "content": "A dense vector representation of discrete data."}], "rejected": [{"role": "assistant", "content": "A vector."}]}
19+
{"prompt": [{"role": "user", "content": "What is attention?"}], "chosen": [{"role": "assistant", "content": "A mechanism that weighs importance of different inputs."}], "rejected": [{"role": "assistant", "content": "Focus."}]}
20+
{"prompt": [{"role": "user", "content": "What is a pipeline?"}], "chosen": [{"role": "assistant", "content": "An automated workflow for ML model development."}], "rejected": [{"role": "assistant", "content": "A pipe."}]}

0 commit comments

Comments
 (0)