Skip to the content

Language models and NLP EMNLP 2025

Spend eight picks two ways.

How to Fine-Tune Safely on a Budget: Model Adaptation Using Minimal Resources

  1. Anh Pham1
  2. Mihir Thalanki1
  3. Michael Sun1
  4. Aditya Chaloo1
  5. Ankita Gupta1
  6. Tian Xia2
  7. Aditya Mate2
  8. Ehimwenma Nosakhare2
  9. Soundararajan Srinivasan2

Affiliations at the time of publication1University of Massachusetts Amherst, 2Microsoft

The paper reports that a few added safety examples leave a model less harmful when they are refusals of harmful requests, spread evenly across harm categories, than when they are drawn at random: 1.19 against 1.48 at 150 added, on an automated 0 to 4 harm score.

Figure 1Illustration

A26B24C20D18E16F16G12H12categorydots in poolT1harmful, refusedT2not eligibleT3not eligibleT4not eligible8 picks spentpicks per category11111111

Circles (T1) are refusals of harmful requests. Columns A to H are made-up categories.

Press either button. Every press is a fresh draw.

What each rule gave: categories covered, of 8, and picks that are refusals of harmful requests, of 8
RuleCategories coveredRefusals (T1) picked
At random6 of 84 of 8
One refusal per category8 of 88 of 8
The paper’s selection rules run on an invented pool of dots. No text, no model, no safety score. Drawn here: one refusal per category, the rule the paper calls SSS-B. The two rows are the first draw under each rule. With scripts on, you can draw again.

01 The problem

Harmless fine-tuning data can undo safety training, and the known repair is bought one example at a time.

Supervised fine-tuning adapts a pre-trained model to a task. The paper starts from earlier work showing that even fine-tuning on benign data can erode the safety alignment a model already had (it cites Qi et al., 2024), and from the known repair: mix a few safety examples into the fine-tuning set. It prints no score for a model before fine-tuning, so neither does this page. What it does print is what a random handful of safety examples buys.

Figure 2Measured, Tables 1 and 2, Random row

Turn the budget up and watch what a random draw buys.

150

150 added to 20,000

Harm score, 0 to 4, lower is safer1.48 ± 0.11Table 1, Random row
Attack success rate, percent, lower is safer27.39 ± 3.67Table 2, Random row

What the last step bought

Harm score: 1.84 to 1.48, down 0.36

Attack success rate: 38.67 to 27.39, down 11.28 points

Differences of two printed means, computed by this page.

What a random draw of safety examples bought, by number added to 20,000 ordinary instructions. Random row of Tables 1 and 2 (page 1975); the 0 column is from the text of Section 5. Lower is safer in both rows.
Safety examples added0501001502503505001000
Harm score, 0 to 42.372.16 ± 0.061.84 ± 0.091.48 ± 0.110.95 ± 0.090.75 ± 0.060.64 ± 0.040.57 ± 0.03
Attack success rate, percentan estimated 5850.73 ± 2.4838.67 ± 3.3227.39 ± 3.6714.36 ± 2.1310.54 ± 1.408.70 ± 0.917.12 ± 0.88

MeasuredThe 0 stop comes from the text of Section 5, not from a table: 2.37 with no safety data, and what the paper calls “an estimated 58%” attack success rate. It prints no interval for either, and does not say how the second was estimated.

More is not free.

The paper reports that over-rejection, refusing harmless prompts such as “How can I kill a Python process?”, rises as more safety examples are added (the paper’s Figure 6, Appendix C.1). That figure prints no data labels, only axis ticks, so this page reads no values off it and draws nothing here. The paper also notes that safety data is expensive to collect and often needs manual curation, and that a larger safety set costs more compute in training.

How to read it. Every column is a printed cell of the Random row, the baseline from prior work, drawn from zero on the metric’s full scale. A whisker is the printed plus or minus: the paper reports “mean and confidence intervals” and states 10 trials for its random baselines; it does not state the confidence level. The dashed column at 0 is the paper’s number for no safety data (2.37, and an estimated 58 percent, both from the text of Section 5). The short dashed bracket marks the drop from the previous budget to the selected one. The paper calls a random draw “a strong baseline”, and the columns show why. It works, and past 250 added examples each further step buys much less: the harm score falls 0.53 from 150 to 250, then 0.20, 0.11 and 0.07 (differences of printed means, computed by this page). The paper’s words are “diminishing returns”.

So the budget is fixed. What goes in it?

Earlier fixes, the paper says, rely on complex optimisation, filter by embeddings, or fall back on a random draw, and “often do not address a fundamental question: which safety examples are most effective, and why?” The paper calls its answer “a first step”.

02 The idea

What an example does, and what it covers, decide what it is worth.

The paper states this as a hypothesis with two axes: an example’s instruction and response behaviour, and its contribution to diversity across harm categories. Its sampling strategies are those two choices multiplied. Learn the four shapes first, then set the two switches yourself.

Figure 3Illustration

Four kinds of safe example. Learn the shapes once: select one to read the paper’s definition.

The instruction is harmful The instruction is safe The response refuses
T1harmful, refused
T3safe, refused
The response complies, safely
T2harmful, complied
T4safe, complied

Select a cell to read the paper’s definition of that type.

T1: Refusal of Harmful Instruction

“The model receives a harmful instruction and produces a safe refusal.” The paper’s printed example, in neutral words: a request for help with a theft, answered with a refusal that explains why and points to legal alternatives.

kept by the B strategies In the paper’s preliminary analysis, 50 examples of one type at a time over 10 random trials, T1 carries the lowest harm values while helpfulness stays level (the paper’s Figure 2).

T2: Compliance to Harmful Instruction

“The model receives a harmful instruction and provides a safe but compliant response.” In neutral words, the paper’s example is a request to research religious customs that other people find intolerable, answered with a careful explanation.

The abstract’s example of a difference in behaviour is “refusal vs. explanation”; it does not say which types it means.

T3: Refusal of Safe Instruction

“The model receives a safe instruction and unnecessarily refuses to respond.” In neutral words, the paper’s example is a question about the law on store robbery in one US state, answered with a warning that robbery is a crime and advice to follow the law; the paper files it under unnecessary refusal.

This is the behaviour the over-rejection test counts in a fine-tuned model.

T4: Compliance to Safe Instruction

“The model receives a safe instruction and provides a compliant, safe response.” An ordinary answer to an ordinary request.

In the paper’s Figure 2, 50 added T4 examples carry the highest pair of harm values of the four types, 2.29 and 2.36. For comparison, made by this page: the paper’s text gives 2.37 for no safety data.

What the paper’s Figure 2 prints for 50 examples of each type

Measured, labels of the paper’s Figure 2

Figure 2 (page 1973): 50 added examples of one type at a time. The two values printed at each error bar, lower then upper, as printed.
Type addedHarm Score labelsHelp Score labels
T12.03 and 2.124.99 and 5.29
T22.23 and 2.305.04 and 5.24
T32.18 and 2.244.98 and 5.22
T42.29 and 2.365.04 and 5.25

The figure prints two numbers at each error bar, one below and one above, and does not say what they are: they read as the two ends of an interval, no mean is printed, and the caption is silent. They are shown here exactly as printed and never as means. The four Help pairs overlap. The paper’s reading: helpfulness “remains stable across all data types”.

How to read it. The four shapes are this page’s; the four types are the paper’s, assigned automatically by the WildGuard classifier (Section 3.3). In the paper’s Figure 5, T1 is by far the tallest of the four bars, against axis ticks from 0 to 1,500 samples; the figure prints no data labels, only axis ticks, so this page reads no counts off it. In the toy pool below half the dots are T1, by our choice.

Figure 4Illustration

Set the two switches, spend the budget, read the sample.

1 Which examples are eligible?
2 How is the budget spread?
Budget, in dots
Pool, ours

Circles (T1) are refusals of harmful requests. Columns A to H are made-up categories.

Closer to a column’s centre line means more typical of that made-up category. Height inside a band means nothing. Filled with a ring: picked. Pool, ours: the paper does not print how its safety pool is spread over harm categories, or name them.

The paper’s name for this pair of choices

Random

The baseline: one uniform draw from the whole pool, category and behaviour ignored.

varies between runs

Try “At random” with Draw again a few times, then “Evenly per category”, then add “Refusals only”, then “Most typical”.

Categories covered0of 8Columns A to H that hold at least one pick.
Refusals among picks0of 16Picks that are circles, the T1 shape.
Most and fewest per category0 and 0The largest and the smallest tally under the board.
Chance of missing a category0 in 100Arithmetic about this toy pool, computed in your browser.

The last 24 draws under this rule

Column height: categories covered, of 8. Square: filled when a draw picked different dots from the one before. Rules that involve chance give a different sample each run, which is why Tables 1 and 2 print a plus or minus for Random, SSS and SSS-B and a single value for the deterministic rows.

With scripts on, this figure is a board of 144 dots that you sample with the paper’s rules. Without scripts, here is what the two switches make.

Two choices multiplied give the paper’s sampling strategies (Sections 3.2, 3.3 and 4.3).
How the budget is spreadAny behaviourRefusals of harmful requests only (T1)
At randomRandom, the baselinenot one of the seven rows
Evenly per categorySSSSSS-B
Most typical per categoryPSSPSS-B

IllustrationThe paper’s selection rules run on an invented pool of 144 dots in 8 made-up categories. No text, no model, no fine-tuning. The numbers are facts about the sample on screen, not safety results.

What is the paper’s and what is ours

The paper’s. The rules: a uniform draw from the whole pool (Random), a uniform draw inside each category (SSS), the pairs nearest each category’s embedding centroid (PSS), and the same two restricted to T1 (SSS-B, PSS-B). Cossim and Cossim-B need a second, labelled dataset and are left to the pipeline in section 03.

Ours. The pool, its categories A to H, one category per dot, the two pool presets, dealing one pick per category in turn, and centroids taken over every dot of a category.

What the toy does not show. In this toy, a random draw rarely misses a category once the budget is large: at 48 picks the chance is 1 in 100 in the uneven pool and under 1 in 100 in the even one. In Table 1 the gap between Random and SSS-B is 0.25 and 0.29 score points at 100 and 150 and 0.04 or less from 350 on (differences of printed means, computed by this page; other rows differ, for example Cossim prints 0.47 against 0.57 at 1000). The paper’s words: “The benefits of structured sampling are especially pronounced at small sample sizes.” The toy does not show that coverage causes this, and the paper does not test it. The only mechanism the paper calls “unverified” is why refusals work (Section 7); of the deterministic rules it says “there remains a gap in understanding which specific data characteristics drive these gains” (Section 5).

Figure 5Measured, Tables 1 and 2

Now read what the paper measured for the rule you set.

Safety examples added, the paper’s seven budgets

Printed cells at 150 added safety examples, strategy SSS-B. Lower is safer.

Harm score, 0 to 4 Table 1

SSS-B, this rule
1.19 ± 0.14
Random, the baseline
1.48 ± 0.11
No safety data Section 5 text
2.37

Attack success rate, percent Table 2

SSS-B, this rule
20.39 ± 2.95
Random, the baseline
27.39 ± 3.67
No safety data Section 5 text, an estimate
an estimated 58

What a rule does to a sample is arithmetic, shown above. What it does to a model is a measurement, printed here. The toy’s budget of 8 to 48 dots is never mapped onto these budgets.

Follow this rule and budget through the pipeline

03 Follow one budget

Follow one budget of 150 examples from the pool to the four tests.

By this page’s count, 150 is the budget the paper’s results text names most often (six times in Section 5), and it is one of the two budgets (150 and 500) at which SSS-B is the bold cell of both main tables. Change the budget or the strategy and the steps re-word themselves. Every number in this section is a printed cell or a number from the paper’s text, never a toy value.

Figure 6Illustration

Step through the experiment, or select any box in the drawing.

Budget
Strategy, the seven printed rows
The experiment as a pipeline. Upper lane: a safety pool of 2,483 pairs is labelled twice, filtered to refusals, and sampled across categories into a small budget of picks. Lower lane: the picks join 20,000 ordinary instructions and the model is fine-tuned. At the right, four tests score the result. Small shapes on the wires are the four behaviour types of Figure 3; a ringed mark is a pick. The safety pool Task data and the model Four tests 2,483 T1 only k = 150 20,000drawn wide, not to scale: 20,000 pairs meet a few hundred at most Safety pool2,483 pairs Harm category labelby a language model Behaviour typeT1 to T4, by WildGuard Outside labelled setCossim rows only Keep refusalsthe three B rows Spread acrosscategoriesSSS-B 150 examplesthe budget Ordinary instructions20,000 Alpaca pairs 20,000 + 150one training set Fine-tuneLLaMA 2 7B, LoRA Harm score0 to 4,lower is safer Attack successpercent,lower is safer Over-rejectionharmless promptsrefused Helpfulnessreward modelscore
  • data
  • outside set, Cossim rows only
  • detour: the filter is skipped
  • 20,000 pairs, drawn wide
  • the behaviour types of Figure 3
  • filled with a ring: a pick

Diagram drawn for this page from Sections 3 and 4 and Appendix A of the paper; it is not the paper’s Figure 1. The shapes on the wires are symbols, not counts. Wires differ by dash and width, not by colour.

  1. Start with 20,000 ordinary instructions

    A random sample of 20,000 instruction and response pairs from the cleaned Alpaca set stands in for an everyday fine-tuning job with no explicit safety intervention. For a model fine-tuned with no safety data, the paper’s text gives a harm score of 2.37 on the 0 to 4 scale.

    Read-out
    no safety data: 2.37 (Section 5 text)
  2. Open the safety pool

    2,483 pairs from earlier work (Bianchi et al., 2024), built by turning red-teaming prompts into instructions and writing safe responses with a language model. Labelled safe as a whole, the set still mixes several kinds of example: the four types of Figure 3 on this page.

    Read-out
    2,483 pairs
  3. Label every pair twice

    A language model assigns one or more harm categories, prompted with the definitions of an earlier taxonomy (Ji et al., 2023). A classifier, WildGuard, sorts each pair into T1 to T4. Both labels are automatic.

    Not said
    the names of the categories, how many were used, and which model did the labelling
  4. Keep the refusals

    Only T1 pairs, refusals of harmful requests, stay in play. The paper’s reason is its preliminary analysis: adding 50 examples of one type at a time, T1 carried the lowest harm values (the paper’s Figure 2).

    Read-out
    SSS-B: filters to T1
  5. Spread the budget across categories

    SSS and SSS-B draw uniformly inside each harm category, so every labelled category is covered by construction.

    Read-out
    k = 150; varies between runs, so its cells print a plus or minus
  6. Add 150 to 20,000 and fine-tune

    The picks join the base set: a small stream into a large one. LLaMA 2 7B is fine-tuned with LoRA for 3 epochs at batch size 128, on L40S GPUs.

    Read-out
    150 added to 20,000 (counts only)
  7. Ask four questions of the result

    Harm: 700 harmful prompts, answers scored 0 to 4 by a harm reward model. Attack: the attack-enhanced prompts of SALAD-Bench, each answer judged safe or unsafe by MD-Judge. Over-rejection: harmless but sensitive prompts from XSTest, refusals counted by WildGuard. Helpfulness: ordinary prompts, scored by a reward model.

    Read-out
    the printed cells, in the card under these steps. Over-rejection and helpfulness: no value printed for any strategy and budget.

Select any box in the drawing to read what it is in the paper, what goes in and out, and what the paper does not say. Arrow keys move between boxes.

Safety dataset Dsafety

Section 4.2, Appendix B

In
harmful prompts from an earlier red-teaming dataset, turned into instructions
Out
2,483 instruction and response pairs with safe responses written by a language model

Introduced by Bianchi et al. (2024). The appendix notes that although the set is labelled safe, it includes “potentially harmful prompts with safe refusals and safe completions”.

Not said: how many pairs fall in each behaviour type. The paper’s Figure 5 shows T1 as by far the tallest bar, against axis ticks from 0 to 1,500 samples, and prints no exact counts.

LLM-based harm category labels

Section 3.2

In
a pair, plus the definitions and taxonomy of Ji et al. (2023)
Out
“one or more harm categories” for the pair

Safety datasets often lack category labels, so the paper makes them with a language model before any category-aware sampling.

Not said: which model did the labelling, its prompt, the names of the categories, how many were used for sampling, and any check of label quality.

Behaviour type, by WildGuard

Section 3.3

In
a pair
Out
one of T1 to T4, the four shapes above

The paper’s premise: “not all safe responses are equally effective for alignment”. The same classifier later counts refusals in the over-rejection test.

Not said: how accurate these labels are.

Reference set Bj

Section 4.3

In
an external labelled dataset, “e.g., BeaverTails”
Out
for each category, pairs “exclusively labeled” with it

Used only by Cossim and Cossim-B, which take a pair’s category from this set, not from the language model’s labels: “We assign the category cj with the highest similarity score to the candidate”. It “is used only to define the embedding space and may include unsafe items”; nothing from it is added to training. The paper calls Cossim useful “when no LLM-based labels are available or when deterministic, interpretable scoring is desired”.

The B variants: keep T1

Section 3.3, the paper’s Figure 2

In
every labelled pair
Out
refusals of harmful requests only

Used by SSS-B, PSS-B and Cossim-B. In the paper’s words the variants “isolate the impact of refusal-type behavior while preserving semantic diversity across harm categories”.

Not said: why refusals work. Of refusals, the paper says “the underlying mechanism remains unverified” (Section 7).

Category-aware sampling

Sections 3.2, 4.1 and 4.3

SSS: “uniformly sample examples from each harm category”. PSS: embed every pair with Sentence-BERT (all-mpnet-base-v2), average each category’s embeddings into a centroid, keep the top k per category by cosine similarity to it. Cossim: score each pair by its average cosine similarity to an outside labelled set, assign the best-scoring category, keep the top k per category. Random skips all of this.

Not said: how SSS splits a budget that does not divide evenly, what any rule does when a category runs out, and how instruction and response become one embedding.

The picks: k safety examples

Tables 1 and 2

In
the sampler’s choice
Out
k pairs, chosen once, before training

The paper tries seven budgets: 50, 100, 150, 250, 350, 500 and 1000. Cossim and PSS are deterministic and print single values; Random and SSS “require multiple runs”, so their cells print a mean and an interval.

Base fine-tuning set D

Section 4.2

In
the cleaned Alpaca dataset
Out
a random sample of 20,000 instruction and response pairs

Used “to simulate standard instruction fine-tuning without explicit safety interventions”. The limitations section says about 20k samples “may not capture all dynamics in other data settings”.

D plus the picks

Sections 1 and 7

In
20,000 ordinary pairs and k safety pairs
Out
one training set

The paper describes the additions as “a small set of high-impact demonstrations”. Selection happens once: it calls its methods “one-shot sampling” and leaves strategies that adjust during training to future work.

Fine-tuning

Section 4.1

In
the training set and LLaMA 2 7B
Out
one fine-tuned model per run

Low-Rank Adaptation (LoRA), 3 epochs, batch size 128, “consistent with prior work”, on L40S GPUs with 48GB of memory.

Not said: base or chat checkpoint, LoRA settings, learning rate, decoding settings, number of GPUs, or any training time.

Harm Reward Model score

Section 4.4, Table 1

In
answers to the 700 harmful prompts of BeaverTails-Evaluation, labelled across 14 harm categories
Out
a score from 0 (no harm) to 4 (severe harm); lower is safer

The scorer is the Harm Reward Model of Bianchi et al. (2024). It is an automated judgement, and the paper says such scorers “may not fully capture subjective perceptions of safety”.

Attack success rate on SALAD-Bench

Section 4.4, Table 2

In
answers to the attack-enhanced prompts of a benchmark of “over 30,000 prompts”
Out
“the percentage of attack-enhanced prompts for which the model produces an unsafe response”; lower is safer

The judge is the MD-Judge model, which gives each response a binary safety label.

Not said: the size of the subsets used.

Over-rejection rate on XSTest

Section 4.4, the paper’s Figure 6

In
answers to safe but sensitive prompts, for example “How can I kill a Python process?”
Out
the proportion of these safe prompts that the model refuses; lower is better

WildGuard classifies each response as a refusal or not.

Not said: any value. The paper’s Figure 6 draws four curves that end higher than they start. It prints no data labels, only axis ticks, so this page reads no values off it.

Helpfulness

Appendix A.2, the paper’s Figure 2

In
answers to prompts from the I-Alpaca dataset
Out
a score from the OpenAssistant reward model; higher is more helpful

The paper reports that helpfulness “remains stable across all data types” and shows it only for the 50-example runs of the paper’s Figure 2.

Not said: the scale of the score, and any helpfulness number per strategy, budget or model.

Measured, Tables 1 and 2Printed cells at 150 added safety examples, strategy SSS-B. Lower is safer.

Harm score, 0 to 4 Table 1

SSS-B, this rule
1.19 ± 0.14
Random, the baseline
1.48 ± 0.11
No safety data Section 5 text
2.37

Attack success rate, percent Table 2

SSS-B, this rule
20.39 ± 2.95
Random, the baseline
27.39 ± 3.67
No safety data Section 5 text, an estimate
an estimated 58

Over-rejection and helpfulness

No value printed for any strategy and budget: the paper’s Figure 6 draws curves with no data labels, only axis ticks, so this page reads no values off it, and helpfulness appears only in the paper’s Figure 2.

IllustrationThe drawing is this page’s own. The numbers in the card are measured: printed cells of Tables 1 and 2 and two numbers from the text of Section 5.

04 The evidence

One rule, a uniform draw of refusals from every category (SSS-B), prints a lower score than a random draw at every budget the paper tried. No other strategy does.

Both tables come from one setting: LLaMA 2 7B fine-tuned with LoRA on 20,000 ordinary instructions plus the picks, drawn from a pool of 2,483. Lower is safer in both. Read every row against Random, the baseline from prior work. At the same budget, SSS-B prints lower than Random in every cell; each of the other five rules prints level or higher somewhere (computed by this page from Tables 1 and 2; not a significance test). The amount added still moves the score far more than the way of choosing.

Harm score. Table 1: score, 0 to 4, lower is safer

Figure 7Measured, Table 1

Read every strategy against Random, budget by budget.

Rows shown, Random stays in every view

One budget at a time, from zero

Safety examples added

computed At 150 added: all 6 strategies print lower than Random. Lowest: SSS-B, 1.19 ± 0.14.

computed SSS-B is the only strategy that prints a lower value than Random in all 14 cells of Tables 1 and 2.

Against Random, cell by cell: is the row’s printed mean lower than, level with or higher than Random’s at the same budget? Computed by this page from Table 1. Not a significance test.
Strategy501001502503505001000Lower at
Cossimlowerhigherlowerlowerlowerhigherlower5 of 7
SSSlowerlowerlowerlowerlowerlevellower6 of 7
PSSlowerlowerlowerlevelhigherhigherhigher3 of 7
Cossim-Blowerlowerlowerlowerlowerhigherlower6 of 7
SSS-Blowerlowerlowerlowerlowerlowerlower7 of 7
PSS-Blowerlowerlowerlowerhigherlevelhigher4 of 7

lower than Random level higher

Table 1 (page 1975). Harm Reward Model scores across sampling strategies (rows) and numbers of added safety examples (columns). Lower scores reflect safer behaviour. Cells as printed: mean and interval for the rows that need several runs, a single value for the deterministic rows.
Strategy501001502503505001000
Random Sampling (Baseline)2.16 ± 0.061.84 ± 0.091.48 ± 0.110.95 ± 0.090.75 ± 0.060.64 ± 0.040.57 ± 0.03
Cossim2.04, lowest in this column, computed1.911.290.73, lowest in this column, computed0.710.670.47, lowest in this column, computed
SSS2.13 ± 0.051.82 ± 0.201.32 ± 0.060.88 ± 0.070.73 ± 0.040.64 ± 0.040.53 ± 0.02
PSS2.061.521.230.950.810.710.60
Cossim-B2.061.39, lowest in this column, computed1.440.830.64, lowest in this column, computed0.690.52
SSS-B2.07 ± 0.041.59 ± 0.131.19 ± 0.14, lowest in this column, computed0.80 ± 0.080.72 ± 0.040.61 ± 0.06, lowest in this column, computed0.53 ± 0.04
PSS-B2.091.481.200.890.900.640.61

Bold and underlined: bold in the paper, which says bold numbers “denote the best results”. ▽ lowest in its column, computed by this page; in this table the two agree in every column. The two heavier rules between rows are the paper’s; it prints no group names. ↓ lower is safer in every column.

What the plus or minus is. The captions say “mean and confidence intervals” over “multiple runs” for Random and SSS (the SSS-B row prints them too); the paper states 10 trials for its random baselines and does not state the confidence level. Rows without an interval are deterministic single runs. A lower mean is not a significance test: several intervals overlap, for example 2.07 ± 0.04 against 2.16 ± 0.06 at 50 in Table 1. With no safety data the paper reports 2.37 (Section 5 text).

Attack success rate. Table 2: percent, lower is safer

Figure 8Measured, Table 2

Read the same seven rows on the attack test.

Rows shown, Random stays in every view

One budget at a time, from zero

Safety examples added

computed At 150 added: all 6 strategies print lower than Random. Lowest: SSS-B, 20.39 ± 2.95.

computed SSS-B is the only strategy that prints a lower value than Random in all 14 cells of Tables 1 and 2.

Against Random, cell by cell: is the row’s printed mean lower than, level with or higher than Random’s at the same budget? Computed by this page from Table 2. Not a significance test.
Strategy501001502503505001000Lower at
Cossimlowerhigherlowerlowerlowerhigherlower5 of 7
SSSlowerlowerlowerlowerhigherlowerlower6 of 7
PSSlowerlowerlowerhigherhigherhigherhigher3 of 7
Cossim-Blowerlowerlowerlowerlowerhigherlower6 of 7
SSS-Blowerlowerlowerlowerlowerlowerlower7 of 7
PSS-Blowerlowerlowerlowerhigherlowerlower6 of 7

lower than Random level higher

Table 2 (page 1975). Attack Success Rate (%) on SALAD-Bench across sampling strategies (rows) and numbers of added safety examples (columns). Lower is safer. Cells as printed.
Strategy501001502503505001000
Random Sampling (Baseline)50.73 ± 2.4838.67 ± 3.3227.39 ± 3.6714.36 ± 2.1310.54 ± 1.408.70 ± 0.917.12 ± 0.88
Cossim41.62, lowest in this column, computed39.0322.5811.28, lowest in this column, computed10.3810.015.49, lowest in this column, computed
SSS49.49 ± 1.8437.06 ± 4.5023.40 ± 1.0813.32 ± 1.9410.69 ± 0.788.42 ± 0.616.37 ± 0.61
PSS48.1128.5623.9014.5811.809.648.72
Cossim-B46.2924.81, lowest in this column, computed26.3013.1810.459.195.88
SSS-B46.94 ± 1.6131.42 ± 4.0920.39 ± 2.95, lowest in this column, computed11.87 ± 1.499.82 ± 1.04, lowest in this column, computed7.79 ± 0.93, lowest in this column, computed6.25 ± 0.73
PSS-B46.2927.3121.2113.0515.188.376.67

Bold and underlined: bold as printed; this caption does not say what bold means. ▽ lowest in its column, computed by this page. In the 50 column the paper’s bold is on 46.29 (Cossim-B); the lowest value in that column is 41.62 (Cossim), and PSS-B prints the same 46.29 without bold. ↓ lower is safer in every column.

What the plus or minus is. The captions say “mean and confidence intervals” over “multiple runs” for Random and SSS (the SSS-B row prints them too); the paper states 10 trials for its random baselines and does not state the confidence level. Rows without an interval are deterministic single runs. A lower mean is not a significance test: several intervals overlap, for example 2.07 ± 0.04 against 2.16 ± 0.06 at 50 in Table 1. With no safety data the paper reports “an estimated 58%” (Section 5 text).

05 Other models, and the price of more

The same rule prints lower scores on four other models, and the paper reports that adding more makes a model refuse more harmless prompts.

The appendix repeats the comparison of Random and SSS-B on LLaMA3, LLaMA3-Instruct, Qwen2.5-Instruct and Mistral: two strategies, two budgets, the harm score only. Then it says what a bigger budget costs, in words and in curves without data labels.

Figure 9Measured, Table 4

Compare the two marks on each row: a random draw and SSS-B at the same budget.

Safety examples added
Table 4 (page 1981). Harm score of a random draw and of SSS-B on four other models at 50 and 100 added safety examples. Cells as printed.
MethodLlama3Llama3 InstrQwenMistral
Size 50
Random2.09 ± 0.051.28 ± 0.111.47 ± 0.051.21 ± 0.09
SSS-B2.00 ± 0.041.14 ± 0.051.31 ± 0.071.01 ± 0.08
Size 100
Random1.80 ± 0.080.83 ± 0.051.09 ± 0.070.72 ± 0.05
SSS-B1.57 ± 0.080.70 ± 0.040.97 ± 0.050.70 ± 0.05

Cells as printed, mean and interval. Table 4 prints no bold marks. Lower is safer. The caption and Appendix C.2 call the metric “harmfulness scores”; that this is the 0 to 4 Harm Reward Model score of Table 1 is this page’s reading of Section 4.4, the paper does not restate the scale here.

computed SSS-B prints the lower mean in 8 of 8 pairs. In 4 of them the printed intervals overlap or touch (Llama3 at 50, Llama3 Instr at 50, Qwen at 100 and Mistral at 100); the paper does not state the confidence level.

What it covers. Two strategies, two budgets, one metric. Where two marks would cover each other (for example Mistral at 100 added: 0.70 against 0.72) the circle is nudged up and the square down; left to right, every mark stands at its printed value. No attack success rate, no over-rejection and no level without safety data is printed for these four models. A lower mean is not a significance test. The paper’s own reading keeps a hedge: “These findings suggest that the effectiveness of behavior- and category-aware safety sampling extends beyond any single base model.”

Over-rejection rises with the budget.

The paper reports that as more safety examples are added, models refuse more harmless prompts, in all four panels it plots: Random and the three refusal-based rows PSS-B, SSS-B and Cossim-B (the paper’s Figure 6; the PSS-B and Cossim-B curves each dip once on the way up). The figure prints no data labels, only axis ticks, so this page reads no values off it and draws none. The paper prints no comparison of over-rejection between strategies at the same budget.

Refusals again, on a second pool.

In a supplementary run the authors rewrote the responses of BeaverTails pairs marked unsafe into refusals with GPT-4o mini, about 3,000 examples, and compared random draws from that set with random draws from the pairs marked safe. The paper reports a lower attack success rate at every sample size (the paper’s Figure 7, which prints no data labels, only axis ticks). As the paper sets it up: the refusal pool keeps the instructions of the pairs marked unsafe and replaces their responses with refusals written by GPT-4o mini; the baseline pool is every pair marked safe, which the paper says holds a mix of T1 to T4, with the original responses. The paper reads the result as support for its hypothesis about refusal behaviour; it reports no run in which only the behaviour type changes.

The one cost the paper measures.

Building that refusal set took “about 2.27M input tokens and 485K output tokens per split, costing approximately $0.70 and taking around 5 hours per version to generate” (Appendix C.3; “per split” and “per version” are not defined). The paper measures no training cost.

The takeaway

For a small budget the paper’s advice is plain: add refusals of harmful requests, and deal them evenly across harm categories.

What is new

A way to choose which safety examples to add: sort them by behaviour, keep the refusals, and spread the budget across harm categories. The paper tests six strategies built from these two choices, three of which keep only refusals, against a random draw at seven budgets.

What it buys

At 150 added examples, 1.19 against 1.48 on the harm score and 20.39 against 27.39 percent attack success. Computed by this page: the gap to Random is widest at 100 to 250 added examples (0.25, 0.29, 0.15 score points) and is 0.04 or less from 350 on.

Not claimed

That choosing beats adding more: a random draw of 250 prints lower than any strategy at 150. With a large budget the choice matters less, and the paper reports that the model starts refusing things it should not.

06 Office hours

The night shift answers.

Written by Tian's agent while Tian slept and Pepper supervised. Pepper accepts no liability either.

Each answer says where in the paper it comes from, so you can check the agent's work.

Pepper, the tabby cat, supervising: fast asleep on his blanket on the sofa, beside the laptop.
Is how you choose really a bigger lever than how many you add?

No, and the tables show it. A random draw alone goes from 2.16 at 50 examples to 0.57 at 1,000, and Random at 250 (0.95) prints lower than every strategy at 150. What the paper supports is narrower: at the same budget, SSS-B prints lower than Random at every size, by 0.25 to 0.29 score points at 100 and 150 and by 0.04 or less from 350 on. Its reasons for keeping the budget small are that safety data is costly to collect and that more of it makes the model refuse harmless prompts.

Source: Table 1; Section 1; Appendix C.1. The differences are computed by this page from printed means.
Why would refusals work better than other safe answers?

The paper does not know, and says so: refusals “may provide a clear and direct safety signal”, but “the underlying mechanism remains unverified”. Its evidence is empirical: 50 examples of each type, one type at a time, over 10 random trials, with T1 carrying the lowest harm values in the paper’s Figure 2 and helpfulness level; and the supplementary BeaverTails run. It lists mixed ratios of behaviour types as future work.

Source: Section 3.3, the paper’s Figure 2, Appendix C.3, Section 7
Who decided what counts as harmful?

Models did, at every stage. A language model assigned the harm categories, WildGuard assigned the behaviour types and counted refusals, a harm reward model gave the 0 to 4 scores, and MD-Judge labelled attack responses safe or unsafe. The paper names this as a limitation, says these tools “are not a substitute for human judgment”, and mentions a sanity check against human annotations without describing it. It does not name the labelling model or report how accurate any of these labels are.

Source: Sections 3.2, 3.3, 4.4, 7, 8 and 9
Does the safer model get less useful, or start refusing everything?

Helpfulness: the paper reports it “remains stable”, but shows it only for the preliminary analysis (50 examples of one type at a time); there is no helpfulness number per strategy, budget or model. Over-rejection: the paper reports that it rises with the amount added in all four panels of the paper’s Figure 6. The four panels share one y axis (labelled XSTest score, tick labels from 0.00 to 0.35) and carry no data labels, so strategies can be compared only by eye, the paper prints no such comparison, and this page reads no numbers off curves. Its conclusion calls SSS-B “a practical balance between safety improvements and over-rejection risks”.

Source: Appendix A.2, the paper’s Figure 2, Appendix C.1, the paper’s Figure 6, Section 6
What was not tested?

One base set of about 20,000 Alpaca pairs and one 2,483-pair pool, plus the supplementary BeaverTails run. LoRA only. One main model, with four others checked at two sizes for two strategies on one metric. The only baseline is a random draw: the paper calls its own approach complementary to the filtering methods it discusses, SAFT and SEAL, and does not run them. Random baselines use 10 trials; the deterministic strategies are single runs; the confidence level of the intervals is not stated. The taxonomy is fixed, selection happens once before training, and there is no full human evaluation.

Source: Sections 2, 4, 7 and 8; Appendix C.2; captions of Tables 1 and 2