From 65a0f4e702ee61e9e217b5d842fad6f66def5447 Mon Sep 17 00:00:00 2001 From: Dhruv Nathawani Date: Mon, 23 Feb 2026 15:05:11 -0800 Subject: [PATCH 1/2] docs: add prompt sensitivity devnote --- docs/devnotes/posts/prompt-sensitivity.md | 370 ++++++++++++++++++++++ 1 file changed, 370 insertions(+) create mode 100644 docs/devnotes/posts/prompt-sensitivity.md diff --git a/docs/devnotes/posts/prompt-sensitivity.md b/docs/devnotes/posts/prompt-sensitivity.md new file mode 100644 index 000000000..266c7a6de --- /dev/null +++ b/docs/devnotes/posts/prompt-sensitivity.md @@ -0,0 +1,370 @@ +--- +date: 2026-02-18 +authors: + - dnathawani +--- + +# **Mitigating Prompt Sensitivity: Manufacturing Robustness Through Diverse Preambles** + +Models behave differently based on how a question is phrased --- a "cynical senior dev" and a "curious student" get different answers to the same problem. Using NeMo Data Designer, we built a pipeline that generates hundreds of diverse prompt preambles with controlled variation across tone, strictness, verbosity, and answer format, then validates each one for compliance. These preambles feed into a YAML-driven training mixture pipeline that prepends diverse instructions to existing SFT data at scale. This work directly improved Nemotron model robustness on evaluation benchmarks where prompt format varies. + + + +--- + +## **Why This Matters: The 5-15 Point Swing** + +When we evaluated early Nemotron checkpoints on [LiveBench](https://livebench.ai/) and internal STEM benchmarks, we noticed a troubling pattern: the model's accuracy swung by **5-15 percentage points** depending solely on how the question was phrased. The underlying reasoning was identical --- the model could solve the problem --- but small variations in the preamble caused it to format its response differently, triggering scoring failures. + +``` +"Select the best answer" → 82% accuracy +"Choose the correct option" → 78% accuracy +"Which of the following is true?" → 74% accuracy +``` + +Same questions. Same model. Same knowledge. Different scores. + +This is the **prompt sensitivity problem**, and it's pervasive across the industry. The root cause is simple: **the training data lacks prompt diversity**. If every STEM MCQ in your SFT dataset starts with "Answer the following question and place your answer in \boxed{}", the model learns that specific format perfectly but becomes brittle to anything else. + +The fix is equally simple in principle --- expose the model to the same problems with many different phrasings --- but doing this manually at the scale of thousands of training examples is impractical. We needed to generate preambles that span a wide diversity space: + +- **Sentence types:** imperative ("Select the answer"), interrogative ("Which option is correct?"), declarative ("The correct answer is to be placed in...") +- **Tones:** formal, neutral, concise, encouraging, strict +- **Strictness levels:** from "here's a question" to "you MUST follow this exact format" +- **Verbosity:** one-liners vs. detailed multi-sentence instructions +- **Answer formats:** `\boxed{}`, `\boxed{LETTER}`, `Answer: A/B/C/D`, `((X))`, `X`, and dozens more + +Manually writing hundreds of preambles covering all combinations is tedious and inevitably misses regions of the diversity space. Data Designer's sampler-driven approach solves this systematically. + +--- + +## **Pipeline Architecture** + +``` + PROMPT SENSITIVITY PIPELINE + ========================== + + ┌─────────────────────────────────────────────────────────────────────────────────────┐ + │ STAGE 1: SEED EXAMPLES │ + │ │ + │ 5 curated MCQ preambles as style anchors (not templates to copy) │ + │ Loaded via DataFrameSeedSource with SamplingStrategy.SHUFFLE │ + └─────────────────────────────────────────┬───────────────────────────────────────────┘ + │ + ▼ + ┌─────────────────────────────────────────────────────────────────────────────────────┐ + │ STAGE 2: DIVERSITY SAMPLERS │ + │ │ + │ sentence_type (3) tone (5) strictness_level (3) │ + │ imperative formal low │ + │ interrogative neutral medium │ + │ declarative concise high │ + │ encouraging │ + │ strict verbosity_level (3) │ + │ concise / standard / detailed │ + │ domain_context (3) answer_format (3) │ + │ general \boxed{} │ + │ STEM \boxed{LETTER} Combinatorial space: │ + │ humanities \boxed{} 3 × 5 × 3 × 3 × 3 × 3 = 1,215 │ + └─────────────────────────────────────────┬───────────────────────────────────────────┘ + │ + ▼ + ┌─────────────────────────────────────────────────────────────────────────────────────┐ + │ STAGE 3: LLM PREAMBLE GENERATION │ + │ │ + │ Single LLMTextColumnConfig conditioned on all 6 samplers + seed example │ + │ "Generate a preamble instruction for a multiple-choice question..." │ + │ 1,000+ unique preambles generated per domain (STEM, Math, Code) │ + └─────────────────────────────────────────┬───────────────────────────────────────────┘ + │ + ▼ + ┌─────────────────────────────────────────────────────────────────────────────────────┐ + │ STAGE 4: DUAL QUALITY JUDGES │ + │ │ + │ format_compliance (binary 0/1): │ + │ Does the preamble mention the correct answer format? │ + │ ~15-20% of preambles fail this without the judge gate │ + │ │ + │ preamble_quality (rubric 0-3): │ + │ Does the preamble match requested tone, verbosity, clarity? │ + │ Filter to score ≥ 2 (Good or Excellent) │ + └─────────────────────────────────────────┬───────────────────────────────────────────┘ + │ + ▼ + ┌─────────────────────────────────────────────────────────────────────────────────────┐ + │ STAGE 5: INTEGRATION INTO TRAINING MIXTURES │ + │ │ + │ YAML-driven pipeline: add_prompt_variations.py │ + │ ├─ Load base SFT dataset (STEM MCQ, Math, Code) │ + │ ├─ Sample preambles from generated pool │ + │ ├─ Prepend preamble to each problem's user prompt │ + │ ├─ majority_percentage: 25% (original format) / 75% (diverse variations) │ + │ └─ Pack sequences to 128k tokens for training │ + └─────────────────────────────────────────────────────────────────────────────────────┘ +``` + +The 6 samplers create a combinatorial diversity space of **1,215 unique combinations**. Even generating 1,000 records covers a substantial fraction of this space, ensuring the training data doesn't cluster around a few dominant styles. + +--- + +## **Step 1: Curated Seed Examples** + +We provide 5 hand-written preambles as reference examples. These aren't used as templates to copy --- they're provided as *style anchors* so the LLM understands what a preamble looks like: + +```python +import pandas as pd +import data_designer.config as dd +from data_designer.interface import DataDesigner + +seed_data = pd.DataFrame([ + {"example_preamble": "Choose the correct answer. Place your final answer in \\boxed{}."}, + {"example_preamble": "Read carefully and select the best option. Write your answer as \\boxed{LETTER}."}, + {"example_preamble": "Answer the following MCQ. Put your final answer in \\boxed{}."}, + {"example_preamble": "Consider each option and pick the correct one. Format: \\boxed{your answer}."}, + {"example_preamble": "Solve the problem and select the right choice. Enclose your answer in \\boxed{}."}, +]) + +config = dd.DataDesignerConfigBuilder(model_configs=[ + dd.ModelConfig(alias="preamble-gen", model="qwen/qwen3-235b-a22b", provider="nvidia"), +]) + +config.with_seed_dataset( + dd.DataFrameSeedSource(df=seed_data), + sampling_strategy=dd.SamplingStrategy.SHUFFLE, +) +``` + +With `SamplingStrategy.SHUFFLE`, each generated record sees a random seed example alongside its sampled style parameters. + +--- + +## **Step 2: Six Dimensions of Diversity** + +Each sampler controls one axis of variation: + +```python +config.add_column(dd.SamplerColumnConfig( + name="sentence_type", + sampler_type=dd.SamplerType.CATEGORY, + params=dd.CategorySamplerParams(values=["imperative", "interrogative", "declarative"]), +)) + +config.add_column(dd.SamplerColumnConfig( + name="tone", + sampler_type=dd.SamplerType.CATEGORY, + params=dd.CategorySamplerParams(values=["formal", "neutral", "concise", "encouraging", "strict"]), +)) + +config.add_column(dd.SamplerColumnConfig( + name="strictness_level", + sampler_type=dd.SamplerType.CATEGORY, + params=dd.CategorySamplerParams(values=["low", "medium", "high"]), +)) + +config.add_column(dd.SamplerColumnConfig( + name="verbosity_level", + sampler_type=dd.SamplerType.CATEGORY, + params=dd.CategorySamplerParams(values=["concise", "standard", "detailed"]), +)) + +config.add_column(dd.SamplerColumnConfig( + name="domain_context", + sampler_type=dd.SamplerType.CATEGORY, + params=dd.CategorySamplerParams(values=["general", "STEM", "humanities"]), +)) + +config.add_column(dd.SamplerColumnConfig( + name="answer_format", + sampler_type=dd.SamplerType.CATEGORY, + params=dd.CategorySamplerParams(values=["\\boxed{}", "\\boxed{LETTER}", "\\boxed{}"]), +)) +``` + +The generation prompt references all six via Jinja2 templates: + +```python +config.add_column(dd.LLMTextColumnConfig( + name="preamble", + model_alias="preamble-gen", + prompt=( + "Generate a preamble instruction for a multiple-choice question.\n" + "Style requirements:\n" + "- Sentence type: {{ sentence_type }}\n" + "- Tone: {{ tone }}\n" + "- Strictness: {{ strictness_level }}\n" + "- Verbosity: {{ verbosity_level }}\n" + "- Domain: {{ domain_context }}\n" + "- Answer format: the student MUST place their final answer in {{ answer_format }}\n\n" + "Reference example (for style, not to copy): {{ example_preamble }}\n\n" + "Requirements:\n" + "1. Do NOT include the actual question or options\n" + "2. The preamble MUST mention the exact format {{ answer_format }}\n" + "3. Keep it to 1-3 sentences based on verbosity level\n" + "4. Match the requested tone and sentence type\n\n" + "Return ONLY the preamble text." + ), +)) +``` + +This is the power of Data Designer's sampler + template approach: you define the diversity *dimensions*, and the framework handles the *combinatorics*. + +--- + +## **Step 3: Dual Quality Judges** + +Two separate judges evaluate each generated preamble: + +**Format compliance (binary):** Does the preamble actually mention the required answer format? Without this gate, roughly 15-20% of generated preambles mention the wrong format or omit it entirely. + +```python +config.add_column(dd.LLMJudgeColumnConfig( + name="format_compliance", + model_alias="preamble-gen", + prompt=( + "Check if this preamble instructs the user to format their answer as " + "{{ answer_format }}.\n\n" + "Preamble: {{ preamble }}\n" + "Expected format: {{ answer_format }}" + ), + scores=[dd.Score( + name="format_match", + description="Does the preamble mention the correct answer format?", + options={1: "Yes, format is correctly specified", 0: "No, format is missing or wrong"}, + )], +)) +``` + +**Quality (0-3 rubric):** Does the preamble match the requested tone and verbosity? Is it clear and professional? + +```python +config.add_column(dd.LLMJudgeColumnConfig( + name="preamble_quality", + model_alias="preamble-gen", + prompt=( + "Evaluate the quality of this MCQ preamble.\n\n" + "Preamble: {{ preamble }}\n" + "Tone requested: {{ tone }}\n" + "Verbosity requested: {{ verbosity_level }}" + ), + scores=[dd.Score( + name="quality", + description="Overall preamble quality", + options={3: "Excellent", 2: "Good", 1: "Fair", 0: "Poor"}, + )], +)) +``` + +--- + +## **Step 4: Integration into Training Mixtures** + +Generated preambles don't exist in isolation. They feed into a YAML-driven training mixture pipeline (`add_prompt_variations.py`) that operates at production scale: + +```yaml +mixture: + target: 1000000 + seed: 13 + files: + - path: /path/to/openstem.jsonl + percent: 70.6 + - path: /path/to/openstem_15p.jsonl + percent: 10.6 + - path: /path/to/hle.jsonl + percent: 16.3 + - path: /path/to/hle_15p.jsonl + percent: 2.5 + +preamble: + augment: true + majority_preamble: |- + Answer the following multiple choice question. The last line of your + response should be in the following format: 'Answer: \boxed{A/B/C/D}' + (e.g. 'Answer: \boxed{A}'). + + {problem} + majority_percentage: 25.0 + variations: + path: prompts/stem_prompts_1000.jsonl + field: preamble_text + +pack: + enabled: true + shuffle_before: true + shuffle_after: true + max_seq_length: 128000 +``` + +The pipeline: + +1. **Builds the mixture** by reservoir-sampling from multiple JSONL files according to configured percentages. +2. **Applies preamble variations**: for each record, with 25% probability it uses the `majority_preamble` (the original canonical format); with 75% probability it samples from the 1,000 DD-generated variations. This ratio ensures the model still sees the canonical format frequently but is exposed to massive diversity. +3. **Detects MCQ-like prompts** using regex heuristics (looks for `\n(A)`, `\n(B)` patterns or `\boxed{}` in the assistant response). Non-MCQ records pass through unchanged. +4. **Packs sequences** to 128k tokens for efficient training. + +The result: a 1M-record training mixture where each problem appears with one of 1,000+ different instruction phrasings. + +--- + +## **Beyond SFT: Diverse RL Answer Formats** + +For RL training, prompt sensitivity manifests differently. The model needs to produce answers in whatever format the evaluation harness expects, and the reward signal depends on parsing the answer correctly. We generated diverse answer format templates, each paired with an extraction regex: + +```yaml +- prompt: 'End your response with ''Correct Option: A/B/C/D/...''.' + output_regex: 'Correct Option:\s*([A-Za-z])' + +- prompt: 'Put the chosen letter inside double brackets: ((X)).' + output_regex: '\(\(([A-Za-z])\)\)' + +- prompt: 'Wrap your final answer letter in XML-style tags: X.' + output_regex: '\s*([A-Za-z])\s*' + +- prompt: 'Finish by enclosing the correct option letter in double asterisks (like **A**).' + output_regex: '\*\*([A-Za-z])\*\*' + +- prompt: 'Conclude by stating ''Correct Answer >> A/B/C/D/...''.' + output_regex: 'Correct Answer >> ([A-Za-z])' +``` + +We curated 25+ distinct format templates spanning brackets, parentheses, XML tags, markdown bold, arrows, and plain text. Each template includes the corresponding regex so the RL reward function can extract the answer regardless of format. This teaches the model to follow *arbitrary* formatting instructions, not just the one it saw most during SFT. + +--- + +## **Production Scale** + +We generated preambles for three domains, each with its own Data Designer pipeline: + +| Domain | Preambles Generated | Mixture Size | Packing | +|--------|-------------------|--------------|---------| +| STEM MCQ | 1,000 | 1,000,000 records | 128k tokens | +| Math (boxed) | 1,000 | 1,000,000 records | 128k tokens | +| Code (Python/C++) | 1,000 | 1,000,000 records | 128k tokens | + +Each domain has domain-specific answer formats (MCQ uses letter options, Math uses `\boxed{}` with numeric answers, Code uses code-only or function-signature formats) and domain-specific tone calibration. + +--- + +## **Key Takeaways** + +1. **Samplers make diversity systematic.** Six categorical samplers with 3-5 values each create a 1,215-combination space. No human annotator covers that surface area consistently. + +2. **Seed examples are style anchors, not templates.** The LLM needs to see what a preamble *is*, but the samplers control what each preamble *says*. Without seeds, the LLM guesses at the format; without samplers, it converges to a narrow style. + +3. **Format compliance is a hard gate.** A preamble that mentions `\boxed{LETTER}` when the answer should be `\boxed{}` will confuse the model during training. Binary judges catch this --- LLMs generate the wrong format ~15-20% of the time. + +4. **The value is in the pipeline, not the individual records.** Any single preamble is easy to write by hand. The value is generating 1,000+ diverse, validated preambles automatically and integrating them into million-record training mixtures with controlled majority/variation ratios. + +5. **RL needs format diversity too.** The reward function parses answers using regex. If the model only sees `\boxed{}` during training, it can't follow "put your answer in double brackets: ((X))" at evaluation time. Paired prompt-regex templates solve this. + +6. **Majority percentage controls the tradeoff.** Setting `majority_percentage: 25` means the model sees the canonical format 25% of the time and diverse variations 75% of the time. This ratio was tuned empirically --- too much diversity degrades canonical-format performance; too little doesn't build robustness. + +--- + +Key Resources: + +1. [NeMo Data Designer on GitHub](https://github.com/NVIDIA-NeMo/DataDesigner) +2. [LiveBench: A Challenging, Contamination-Free LLM Benchmark](https://livebench.ai/) + +--- + +*Want to learn more about NeMo Data Designer? Check out our [documentation](https://github.com/NVIDIA-NeMo/DataDesigner) and start building your own synthetic data pipelines today.* From 5b5551f85cacc0b1e28ae5add18eb92eb3dfbeb7 Mon Sep 17 00:00:00 2001 From: Dhruv Nathawani Date: Thu, 26 Feb 2026 11:54:50 -0800 Subject: [PATCH 2/2] docs: revamp prompt sensitivity devnote with regex-paired templates and code dropdown --- docs/devnotes/.authors.yml | 4 + docs/devnotes/posts/prompt-sensitivity.md | 280 +++++++++++++++++++--- docs/devnotes/posts/prompt_anatomy.png | Bin 0 -> 93209 bytes mkdocs.yml | 1 + 4 files changed, 257 insertions(+), 28 deletions(-) create mode 100644 docs/devnotes/posts/prompt_anatomy.png diff --git a/docs/devnotes/.authors.yml b/docs/devnotes/.authors.yml index b2523cd8b..9e8c6818e 100644 --- a/docs/devnotes/.authors.yml +++ b/docs/devnotes/.authors.yml @@ -15,3 +15,7 @@ authors: name: Kirit Thadaka description: Product Manager at NVIDIA avatar: https://avatars.githubusercontent.com/u/8190572?v=4 + dnathawani: + name: Dhruv Nathawani + description: Researcher at NVIDIA + avatar: https://avatars.githubusercontent.com/u/128275431?v=4 diff --git a/docs/devnotes/posts/prompt-sensitivity.md b/docs/devnotes/posts/prompt-sensitivity.md index 266c7a6de..217ef5014 100644 --- a/docs/devnotes/posts/prompt-sensitivity.md +++ b/docs/devnotes/posts/prompt-sensitivity.md @@ -12,9 +12,55 @@ Models behave differently based on how a question is phrased --- a "cynical seni --- -## **Why This Matters: The 5-15 Point Swing** +## **Goal** -When we evaluated early Nemotron checkpoints on [LiveBench](https://livebench.ai/) and internal STEM benchmarks, we noticed a troubling pattern: the model's accuracy swung by **5-15 percentage points** depending solely on how the question was phrased. The underlying reasoning was identical --- the model could solve the problem --- but small variations in the preamble caused it to format its response differently, triggering scoring failures. +- **Reduce LLM sensitivity to prompt phrasing** by generating diverse, high-quality prompts for both SFT and RL training data using Data Designer. +- **Improve model robustness and generalization** across different instruction styles, tones, and structures. +- **Specifically target variations in preambles and format instructions** while keeping the core problem unchanged. + +--- + +## **What Is Prompt Sensitivity?** + +A prompt to an LLM typically has three distinct components: the **preamble** (high-level instructions), the **problem** (the actual question or task), and the **format instruction** (how to structure the answer). Prompt sensitivity is the phenomenon where a model's accuracy changes significantly based on how the preamble and format instruction are phrased, even when the underlying problem is identical. + +![Prompt Anatomy](prompt_anatomy.png) + +``` + ANATOMY OF A PROMPT + RESPONSE + ================================ + + ┌──────────────────────────────────────────────────────────────┐ + │ PREAMBLE (variable — what we diversify) [GREEN] │ + │ │ + │ "Answer the following multiple choice question" │ + ├──────────────────────────────────────────────────────────────┤ + │ PROBLEM (fixed — from the source dataset) [RED] │ + │ │ + │ What is the capital of France? │ + │ A) London │ + │ B) Berlin │ + │ C) Paris │ + │ D) Madrid │ + ├──────────────────────────────────────────────────────────────┤ + │ FORMAT INSTRUCTION (variable — what we diversify) [GREEN] │ + │ │ + │ "The last line of your response should be \boxed{LETTER}" │ + └──────────────────────────────────────────────┬───────────────┘ + │ + ▼ + ┌──────────────────────────────────────────────────────────────┐ + │ ROLLOUT / OUTPUT (model's response) │ + │ │ + │ ... reasoning ... │ + │ │ + │ \boxed{C} │ + └──────────────────────────────────────────────────────────────┘ +``` + +The preamble and format instruction (green) are the parts we can vary freely without changing the problem. The problem itself (red) comes from the source dataset and stays fixed. When models are trained on data with only one preamble style and one format instruction, they become brittle --- they can solve the problem, but small wording changes cause them to misformat their response, triggering scoring failures. + +When we evaluated early Nemotron checkpoints on internal STEM benchmarks with varied prompt phrasings, we observed accuracy swings of **up to 15 percentage points** depending solely on how the question was phrased: ``` "Select the best answer" → 82% accuracy @@ -22,11 +68,11 @@ When we evaluated early Nemotron checkpoints on [LiveBench](https://livebench.ai "Which of the following is true?" → 74% accuracy ``` -Same questions. Same model. Same knowledge. Different scores. +Same questions. Same model. Same knowledge. Different scores. This is a well-documented phenomenon across the industry --- models overfit to the prompt format seen during training. -This is the **prompt sensitivity problem**, and it's pervasive across the industry. The root cause is simple: **the training data lacks prompt diversity**. If every STEM MCQ in your SFT dataset starts with "Answer the following question and place your answer in \boxed{}", the model learns that specific format perfectly but becomes brittle to anything else. +The root cause is straightforward: **the training data lacks prompt diversity**. If every STEM MCQ in your SFT dataset starts with "Answer the following question and place your answer in \boxed{}", the model learns that specific format perfectly but becomes brittle to anything else. -The fix is equally simple in principle --- expose the model to the same problems with many different phrasings --- but doing this manually at the scale of thousands of training examples is impractical. We needed to generate preambles that span a wide diversity space: +The fix is equally simple in principle --- expose the model to the same problems with many different phrasings --- but doing this manually at the scale of thousands of training examples is impractical. We need preambles that span a wide diversity space: - **Sentence types:** imperative ("Select the answer"), interrogative ("Which option is correct?"), declarative ("The correct answer is to be placed in...") - **Tones:** formal, neutral, concise, encouraging, strict @@ -34,15 +80,18 @@ The fix is equally simple in principle --- expose the model to the same problems - **Verbosity:** one-liners vs. detailed multi-sentence instructions - **Answer formats:** `\boxed{}`, `\boxed{LETTER}`, `Answer: A/B/C/D`, `((X))`, `X`, and dozens more -Manually writing hundreds of preambles covering all combinations is tedious and inevitably misses regions of the diversity space. Data Designer's sampler-driven approach solves this systematically. +Covering the full combinatorial space of these dimensions manually is intractable --- and this is exactly the kind of structured diversity problem that synthetic data generation is designed to solve. Data Designer's sampler-driven approach lets us define the diversity *dimensions* declaratively, and the framework handles the *combinatorics* at scale, generating thousands of validated preamble variations that no human annotator could match. --- -## **Pipeline Architecture** +## **Pipeline Architecture: QA Preamble Generation** + +The pipeline below shows one specific instantiation for generating diverse preambles for **QA/MCQ datasets**, designed to improve the prompt sensitivity of the question prompt. The same architecture can be adapted for Math, Code, or any domain where prompt diversity is needed. ``` - PROMPT SENSITIVITY PIPELINE - ========================== + PROMPT SENSITIVITY PIPELINE + ========================== + (QA Preamble Generation) ┌─────────────────────────────────────────────────────────────────────────────────────┐ │ STAGE 1: SEED EXAMPLES │ @@ -65,7 +114,7 @@ Manually writing hundreds of preambles covering all combinations is tedious and │ domain_context (3) answer_format (3) │ │ general \boxed{} │ │ STEM \boxed{LETTER} Combinatorial space: │ - │ humanities \boxed{} 3 × 5 × 3 × 3 × 3 × 3 = 1,215 │ + │ humanities \boxed{} 3 × 5 × 3 × 3 × 3 × 3 = 1,215 │ └─────────────────────────────────────────┬───────────────────────────────────────────┘ │ ▼ @@ -95,7 +144,7 @@ Manually writing hundreds of preambles covering all combinations is tedious and │ STAGE 5: INTEGRATION INTO TRAINING MIXTURES │ │ │ │ YAML-driven pipeline: add_prompt_variations.py │ - │ ├─ Load base SFT dataset (STEM MCQ, Math, Code) │ + │ ├─ Load base SFT dataset (STEM MCQ, Math, Code) │ │ ├─ Sample preambles from generated pool │ │ ├─ Prepend preamble to each problem's user prompt │ │ ├─ majority_percentage: 25% (original format) / 75% (diverse variations) │ @@ -305,9 +354,9 @@ The result: a 1M-record training mixture where each problem appears with one of --- -## **Beyond SFT: Diverse RL Answer Formats** +## **Regex-Paired Format Templates: Enabling Both SFT and RL** -For RL training, prompt sensitivity manifests differently. The model needs to produce answers in whatever format the evaluation harness expects, and the reward signal depends on parsing the answer correctly. We generated diverse answer format templates, each paired with an extraction regex: +The key design decision that makes this pipeline work for both SFT and RL is **pairing every format instruction with an extraction regex**. Each template defines a human-readable format instruction (which gets paraphrased by Data Designer for diversity) and a regex pattern (which stays fixed for automated answer extraction). ```yaml - prompt: 'End your response with ''Correct Option: A/B/C/D/...''.' @@ -326,21 +375,12 @@ For RL training, prompt sensitivity manifests differently. The model needs to pr output_regex: 'Correct Answer >> ([A-Za-z])' ``` -We curated 25+ distinct format templates spanning brackets, parentheses, XML tags, markdown bold, arrows, and plain text. Each template includes the corresponding regex so the RL reward function can extract the answer regardless of format. This teaches the model to follow *arbitrary* formatting instructions, not just the one it saw most during SFT. - ---- - -## **Production Scale** +We curated 25+ distinct format templates spanning `\boxed{}`, brackets, parentheses, XML tags, markdown bold, arrows, and plain text. This dual-use design means: -We generated preambles for three domains, each with its own Data Designer pipeline: +- **For SFT:** The paraphrased format instructions add diversity to the training data. The model sees the same problem with many different answer format requirements, building robustness. +- **For RL:** The paired regex lets the reward function extract the answer from model output regardless of which format was requested. The RL environment (e.g., NeMo-Gym) uses the regex to verify correctness without brittle string matching. -| Domain | Preambles Generated | Mixture Size | Packing | -|--------|-------------------|--------------|---------| -| STEM MCQ | 1,000 | 1,000,000 records | 128k tokens | -| Math (boxed) | 1,000 | 1,000,000 records | 128k tokens | -| Code (Python/C++) | 1,000 | 1,000,000 records | 128k tokens | - -Each domain has domain-specific answer formats (MCQ uses letter options, Math uses `\boxed{}` with numeric answers, Code uses code-only or function-signature formats) and domain-specific tone calibration. +The preamble (generic instruction) and format instruction (answer format) are generated as separate LLM columns, then composed into a final `user_prompt` with the `{problem}` placeholder arranged in one of 8 placement orders (P + F + {problem}, {problem} + P + F, etc.). This separation lets you vary each dimension independently and prevents positional overfitting. --- @@ -354,16 +394,200 @@ Each domain has domain-specific answer formats (MCQ uses letter options, Math us 4. **The value is in the pipeline, not the individual records.** Any single preamble is easy to write by hand. The value is generating 1,000+ diverse, validated preambles automatically and integrating them into million-record training mixtures with controlled majority/variation ratios. -5. **RL needs format diversity too.** The reward function parses answers using regex. If the model only sees `\boxed{}` during training, it can't follow "put your answer in double brackets: ((X))" at evaluation time. Paired prompt-regex templates solve this. +5. **Regex-paired templates unify SFT and RL.** The same format templates serve double duty: paraphrased instructions add SFT diversity, while the paired regex enables RL reward parsing. One pipeline, both training paradigms. 6. **Majority percentage controls the tradeoff.** Setting `majority_percentage: 25` means the model sees the canonical format 25% of the time and diverse variations 75% of the time. This ratio was tuned empirically --- too much diversity degrades canonical-format performance; too little doesn't build robustness. --- +## **Try For Yourself** + +
+Full source: prompt sensitivity pipeline + +```python +import itertools +import pandas as pd +import data_designer.config as dd +from data_designer.interface import DataDesigner + +# --- Format templates with paired regexes --- +MCQ_FORMAT_TEMPLATES = [ + {"format_key": "boxed_letter", + "seed_format_instruction": "Choose exactly one letter. Place your answer in \\boxed{LETTER} format.", + "output_regex": r"\\boxed\{([A-Za-z])\}"}, + {"format_key": "correct_option", + "seed_format_instruction": "End your response with 'Correct Option: A/B/C/D/...'.", + "output_regex": r"Correct Option:\s*([A-Za-z])"}, + {"format_key": "double_brackets", + "seed_format_instruction": "Put the chosen letter inside double brackets: ((X)).", + "output_regex": r"\(\(([A-Za-z])\)\)"}, + {"format_key": "xml_tags", + "seed_format_instruction": "Wrap your final answer letter in XML-style tags: X.", + "output_regex": r"\s*([A-Za-z])\s*"}, + {"format_key": "double_asterisks", + "seed_format_instruction": "Finish by enclosing the correct option letter in double asterisks (like **A**).", + "output_regex": r"\*\*([A-Za-z])\*\*"}, + {"format_key": "square_brackets", + "seed_format_instruction": "Give the letter choice at the end: [Answer: X] where X is the correct letter.", + "output_regex": r"\[Answer:\s*([A-Za-z])\]"}, + {"format_key": "angle_brackets", + "seed_format_instruction": "Provide the correct option enclosed in angle brackets: .", + "output_regex": r"<([A-Za-z])>"}, + {"format_key": "correct_answer_arrow", + "seed_format_instruction": "Conclude by stating 'Correct Answer >> A/B/C/D/...'.", + "output_regex": r"Correct Answer >> ([A-Za-z])"}, + {"format_key": "curly_braces", + "seed_format_instruction": "End your answer by writing the correct option: 'Answer Choice: {X}'.", + "output_regex": r"Answer Choice:\s*\{([A-Za-z])\}"}, + {"format_key": "selected_option", + "seed_format_instruction": "Provide the selected option: Selected Option -> X.", + "output_regex": r"Selected Option\s*->\s*([A-Za-z])"}, +] + +SEED_PREAMBLES = [ + "Choose the correct answer from the options below.", + "Read the question carefully and select the best option.", + "Answer the following multiple choice question.", + "Consider each option and pick the correct one.", + "Solve the problem and select the right choice.", +] + +# Cross-product seed data +seed_df = pd.DataFrame([ + {**fmt, "seed_preamble": preamble} + for fmt, preamble in itertools.product( + pd.DataFrame(MCQ_FORMAT_TEMPLATES).to_dict(orient="records"), + SEED_PREAMBLES, + ) +]) + +# --- Model + config --- +config = dd.DataDesignerConfigBuilder(model_configs=[ + dd.ModelConfig(alias="gen", model="qwen/qwen3-235b-a22b", provider="nvidia"), +]) +config.with_seed_dataset( + dd.DataFrameSeedSource(df=seed_df), + sampling_strategy=dd.SamplingStrategy.SHUFFLE, +) + +# --- Samplers --- +for name, values in [ + ("sentence_type", ["imperative", "interrogative", "declarative"]), + ("tone", ["formal", "neutral", "concise", "encouraging", "strict"]), + ("strictness_level", ["low", "medium", "high"]), + ("verbosity_level", ["concise", "standard", "detailed"]), + ("domain_context", ["general", "STEM", "humanities"]), + ("preamble_format_order", [ + "P + F + {problem}", "F + P + {problem}", + "P + {problem} + F", "F + {problem} + P", + "{problem} + P + F", "{problem} + F + P", + "PF + {problem}", "{problem} + PF", + ]), +]: + config.add_column(dd.SamplerColumnConfig( + name=name, + sampler_type=dd.SamplerType.CATEGORY, + params=dd.CategorySamplerParams(values=values), + )) + +# --- LLM columns --- +config.add_column(dd.LLMTextColumnConfig( + name="preamble", + model_alias="gen", + prompt=( + "You are writing a concise instruction line to accompany a " + "{{ domain_context }} question.\n" + "Keep it neutral and generic; do NOT include output formatting requirements.\n\n" + "Constraints:\n" + "- Sentence type: {{ sentence_type }}\n" + "- Tone: {{ tone }}\n" + "- Strictness: {{ strictness_level }}\n" + "- Verbosity: {{ verbosity_level }}\n\n" + "Seed (paraphrase; do not copy): \"{{ seed_preamble }}\"\n\n" + "Return ONLY the instruction line text." + ), +)) + +config.add_column(dd.LLMTextColumnConfig( + name="format_instruction", + model_alias="gen", + prompt=( + "You are writing a concise format instruction for a multiple-choice question.\n" + "The format must be compatible with this output pattern:\n\n" + "- Output regex: {{ output_regex }}\n\n" + "Constraints:\n" + "- Tone: {{ tone }}\n" + "- The answer must appear at the end of the response.\n\n" + "Seed (paraphrase; keep meaning): \"{{ seed_format_instruction }}\"\n\n" + "Return ONLY the format instruction." + ), +)) + +config.add_column(dd.LLMTextColumnConfig( + name="user_prompt", + model_alias="gen", + prompt=( + "Concatenate these components in the specified order:\n\n" + "- P (Preamble): {{ preamble }}\n" + "- F (Format Instruction): {{ format_instruction }}\n" + "- {problem}: Placeholder (keep as literal text)\n\n" + "Order: {{ preamble_format_order }}\n\n" + "Rules: arrange per order, merge if 'PF', newline before/after {problem}, " + "no labels like 'P:' or 'F:'.\n\n" + "Return ONLY the assembled prompt text." + ), +)) + +# --- Judges --- +config.add_column(dd.LLMJudgeColumnConfig( + name="format_compliance", + model_alias="gen", + prompt="Does this instruction enforce the format?\n\nInstruction: {{ format_instruction }}\nRegex: {{ output_regex }}", + scores=[dd.Score(name="format_match", description="Format enforced?", + options={1: "Yes", 0: "No"})], +)) + +config.add_column(dd.LLMJudgeColumnConfig( + name="regex_alignment", + model_alias="gen", + prompt="Does the instruction align with this regex?\n\nRegex: {{ output_regex }}\nInstruction: {{ format_instruction }}", + scores=[dd.Score(name="aligned", description="Regex aligned?", + options={1: "Aligned", 0: "Not aligned"})], +)) + +config.add_column(dd.LLMJudgeColumnConfig( + name="order_coherence", + model_alias="gen", + prompt="Is this user prompt coherent?\n\nUser prompt: {{ user_prompt }}", + scores=[dd.Score(name="coherent", description="Ordering coherent?", + options={1: "Coherent", 0: "Incoherent"})], +)) + +config.add_column(dd.LLMJudgeColumnConfig( + name="preamble_quality", + model_alias="gen", + prompt="Evaluate this instruction line.\n\nInstruction: {{ preamble }}\nTone: {{ tone }}\nVerbosity: {{ verbosity_level }}", + scores=[dd.Score(name="quality", description="Preamble quality", + options={3: "Excellent", 2: "Good", 1: "Fair", 0: "Poor"})], +)) + +# --- Run --- +data_designer = DataDesigner() +results = data_designer.create( + config_builder=config, + num_records=1000, + dataset_name="prompt-sensitivity-mcq", +) +``` + +
+ +--- + Key Resources: 1. [NeMo Data Designer on GitHub](https://github.com/NVIDIA-NeMo/DataDesigner) -2. [LiveBench: A Challenging, Contamination-Free LLM Benchmark](https://livebench.ai/) --- diff --git a/docs/devnotes/posts/prompt_anatomy.png b/docs/devnotes/posts/prompt_anatomy.png new file mode 100644 index 0000000000000000000000000000000000000000..1600f8f7aac1a8135d58807e8366e40b224a6dfd GIT binary patch literal 93209 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

_(EDepp8+(Z27-L0q~o;nU>P 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 mwxZfk^kbKX|Jkw{