Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
215 commits
Select commit Hold shift + click to select a range
6983b6f
Pin the distillation objective before refactoring
qgallouedec Jul 19, 2026
d443d3b
Pin on-policy and off-policy training end to end
qgallouedec Jul 19, 2026
a8bb14c
Document the num_items_in_batch denominator bug
qgallouedec Jul 19, 2026
98eef79
Move IW-OPD to a dedicated experimental trainer
qgallouedec Jul 19, 2026
b65f8a7
Extract the teacher-server path into ServerDistillationTrainer
qgallouedec Jul 19, 2026
f75cd7e
Remove the local sparse top-1 loss path from the base trainer
qgallouedec Jul 19, 2026
6458636
Remove top-k support from the base generalized JSD loss
qgallouedec Jul 19, 2026
166808b
Validate the teacher by vocab size instead of tokenizer identity
qgallouedec Jul 19, 2026
952b0c3
Deprecate `lmbda` on/off-policy mixing
qgallouedec Jul 19, 2026
55e5973
Point the GKD paper reproduction at GKDTrainer
qgallouedec Jul 19, 2026
0b72a4e
Remove `lmbda` and the off-policy training branch
qgallouedec Jul 19, 2026
2527d3d
style
qgallouedec Jul 20, 2026
1c5bdea
Merge branch '04-move-iw-opd' into 05-extract-server-distillation
qgallouedec Jul 20, 2026
f232c18
Merge branch '05-extract-server-distillation' into 06-remove-local-sp…
qgallouedec Jul 20, 2026
7aab597
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
6efeb9f
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
0a4a3d6
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
5eabac4
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
aa0b5fb
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
e058764
style
qgallouedec Jul 20, 2026
4c65faf
Merge branch '05-extract-server-distillation' into 06-remove-local-sp…
qgallouedec Jul 20, 2026
3500348
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
de167a9
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
1908e5f
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
5a4f715
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
f270c1f
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
456df91
Fix IW-OPD paper metadata used in the model card
qgallouedec Jul 20, 2026
9ecf348
Merge branch '04-move-iw-opd' into 05-extract-server-distillation
qgallouedec Jul 20, 2026
28382eb
Merge branch '05-extract-server-distillation' into 06-remove-local-sp…
qgallouedec Jul 20, 2026
c4acfb4
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
d95c977
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
f64f96c
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
614bb6b
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
5cd0e91
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
26038dd
Remove stale on/off-policy comments after the off-policy removal
qgallouedec Jul 20, 2026
3515b22
Accept a `prompt` column alongside `messages`
qgallouedec Jul 20, 2026
4e5d06f
Accept a `prompt` column alongside `messages`
qgallouedec Jul 20, 2026
dfbf0e5
style
qgallouedec Jul 20, 2026
89494f2
Relax self-distillation train-loss assertion to tolerate fp noise
qgallouedec Jul 20, 2026
9b5ad81
Fix server-config construction to only copy dataclass init fields
qgallouedec Jul 20, 2026
d616372
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
1341b51
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
33667d3
Merge branch 'main' into 01-pin-distillation-objective
qgallouedec Jul 20, 2026
041e337
Merge branch '01-pin-distillation-objective' into 02-pin-on-and-off-p…
qgallouedec Jul 20, 2026
9e989d1
Merge branch '02-pin-on-and-off-policy-training' into 03-document-num…
qgallouedec Jul 20, 2026
b2c2b73
Merge branch '03-document-num-items-in-batch-bug' into 04-move-iw-opd
qgallouedec Jul 20, 2026
97cb164
Merge branch '04-move-iw-opd' into 05-extract-server-distillation
qgallouedec Jul 20, 2026
7db5120
Merge branch '05-extract-server-distillation' into 06-remove-local-sp…
qgallouedec Jul 20, 2026
2d2d32f
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
e63069d
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
e4764cc
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
800b68b
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
b290c1a
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
cad0c5e
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
c978997
0.5 -> 0.25
qgallouedec Jul 20, 2026
acc70cc
Merge branch 'main' into 01-pin-distillation-objective
qgallouedec Jul 20, 2026
854d89d
Merge branch '01-pin-distillation-objective' into 02-pin-on-and-off-p…
qgallouedec Jul 20, 2026
b9f99f1
Diverge the teacher in the on/off-policy param-update pin
qgallouedec Jul 20, 2026
911b0e5
Merge branch 'main' into 01-pin-distillation-objective
qgallouedec Jul 20, 2026
6e8a528
Merge branch '01-pin-distillation-objective' into 02-pin-on-and-off-p…
qgallouedec Jul 20, 2026
fd67ed4
Merge branch '02-pin-on-and-off-policy-training' into 03-document-num…
qgallouedec Jul 20, 2026
a4831c6
Merge branch '03-document-num-items-in-batch-bug' into 04-move-iw-opd
qgallouedec Jul 20, 2026
222615d
Merge branch '04-move-iw-opd' into 05-extract-server-distillation
qgallouedec Jul 20, 2026
15a7f6f
Merge branch '05-extract-server-distillation' into 06-remove-local-sp…
qgallouedec Jul 20, 2026
34e801a
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
0a79977
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
cff3b68
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
1f8690a
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
4871948
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
8057ca4
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
a0d5328
Merge branch 'main' into 02-pin-on-and-off-policy-training
qgallouedec Jul 20, 2026
f750ddd
Merge branch '02-pin-on-and-off-policy-training' into 03-document-num…
qgallouedec Jul 20, 2026
d0d7de3
Merge branch '03-document-num-items-in-batch-bug' into 04-move-iw-opd
qgallouedec Jul 20, 2026
e8ac1df
Merge branch '04-move-iw-opd' into 05-extract-server-distillation
qgallouedec Jul 20, 2026
0b4fa84
Merge branch '05-extract-server-distillation' into 06-remove-local-sp…
qgallouedec Jul 20, 2026
b4f7d75
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
f7d9dc8
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
5914158
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
b8f85a4
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
1492b20
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
d8892e4
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
26eba3c
remove unused import
qgallouedec Jul 20, 2026
f51acd6
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
0462f03
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
ce31b5d
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
989ae4d
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
15e24cc
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
3cbd70f
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
24b235c
Merge remote-tracking branch 'origin/main' into pr/qgallouedec/6452
qgallouedec Jul 20, 2026
5e05b9d
Rework the num_items_in_batch xfail: applied denominator, on-policy
qgallouedec Jul 20, 2026
23784c3
Use a non-strict xfail for the num_items_in_batch pin
qgallouedec Jul 20, 2026
7615bfe
Merge branch '03-document-num-items-in-batch-bug' into 04-move-iw-opd
qgallouedec Jul 20, 2026
82a2017
Merge branch '04-move-iw-opd' into 05-extract-server-distillation
qgallouedec Jul 20, 2026
3eaabc7
Merge branch '05-extract-server-distillation' into 06-remove-local-sp…
qgallouedec Jul 20, 2026
4d9ac2b
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
e881f07
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
7632074
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
4b3c62a
Merge branch 'main' into 04-move-iw-opd
qgallouedec Jul 20, 2026
685d3f5
Merge branch '04-move-iw-opd' into 05-extract-server-distillation
qgallouedec Jul 20, 2026
7bf9d07
Merge branch '05-extract-server-distillation' into 06-remove-local-sp…
qgallouedec Jul 20, 2026
40f96ed
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
40ee117
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
821d875
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
9ad8c2a
Merge remote-tracking branch 'origin/main' into pr/qgallouedec/6454
qgallouedec Jul 20, 2026
fc5b481
Merge branch '05-extract-server-distillation' into 06-remove-local-sp…
qgallouedec Jul 20, 2026
6f8c4a7
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
59a804d
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
f23fc4f
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
d3be590
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
ba3aa35
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
6a2be12
Deprecate `messages`-format datasets
qgallouedec Jul 20, 2026
a41d5df
Merge remote-tracking branch 'origin/main' into pr/qgallouedec/6455
qgallouedec Jul 20, 2026
f069c1e
Merge branch '06-remove-local-sparse-top1' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
58c13be
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
01b6f67
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
3faa04b
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
1375800
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
43c42f4
Merge remote-tracking branch 'origin/11-remove-lmbda-offpolicy' into …
qgallouedec Jul 20, 2026
1a58484
Merge remote-tracking branch 'origin/main' into 07-remove-topk-from-jsd
qgallouedec Jul 20, 2026
45fdb23
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
0bca659
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
939143d
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
0a08547
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
901b155
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
a056303
Merge branch '12-accept-prompt-column' into 13-deprecate-messages-dat…
qgallouedec Jul 20, 2026
93f6f55
Drop the loss_top_k usage-tips bullet from the docs
qgallouedec Jul 20, 2026
dc4c01b
Merge branch '07-remove-topk-from-jsd' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
356eaab
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
bca4b35
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
825de01
Merge branch 'main' into 08-teacher-vocab-validation
qgallouedec Jul 20, 2026
6d09aa1
Merge branch '08-teacher-vocab-validation' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
5b99699
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
e185842
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
4365c60
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
a5fa96c
Merge branch '12-accept-prompt-column' into 13-deprecate-messages-dat…
qgallouedec Jul 20, 2026
94a185d
Merge branch 'main' into 09-deprecate-lmbda
qgallouedec Jul 20, 2026
e9365a6
Merge branch '09-deprecate-lmbda' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
a320f99
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
16ec8c3
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
e6b1d37
Merge branch '12-accept-prompt-column' into 13-deprecate-messages-dat…
qgallouedec Jul 20, 2026
8567f94
Merge branch 'main' into 10-move-gkd-paper-repro
qgallouedec Jul 20, 2026
9ef74d9
Merge branch '10-move-gkd-paper-repro' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
109333e
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
0d76047
Merge branch '12-accept-prompt-column' into 13-deprecate-messages-dat…
qgallouedec Jul 20, 2026
782f088
Merge branch 'main' into 11-remove-lmbda-offpolicy
qgallouedec Jul 20, 2026
88795b0
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
749efd6
Merge branch '12-accept-prompt-column' into 13-deprecate-messages-dat…
qgallouedec Jul 20, 2026
ddcb836
Drop leftover lmbda=1.0 from the num_items xfail test
qgallouedec Jul 20, 2026
d36d174
Merge branch '11-remove-lmbda-offpolicy' into 12-accept-prompt-column
qgallouedec Jul 20, 2026
c077758
Merge branch '12-accept-prompt-column' into 13-deprecate-messages-dat…
qgallouedec Jul 20, 2026
71883b9
Merge remote-tracking branch 'origin/main' into 12-accept-prompt-column
qgallouedec Jul 21, 2026
ff9a39a
Merge branch '12-accept-prompt-column' into 13-deprecate-messages-dat…
qgallouedec Jul 21, 2026
46d1c26
Fix num_items_in_batch to count generated completion tokens
qgallouedec Jul 21, 2026
010f250
Revert "Fix num_items_in_batch to count generated completion tokens"
qgallouedec Jul 21, 2026
6c60211
Fix num_items_in_batch to count generated completion tokens
qgallouedec Jul 21, 2026
fbf4c3b
style
qgallouedec Jul 21, 2026
fa5e277
Normalize the num_items loss correctly for DDP and grad-accumulation
qgallouedec Jul 21, 2026
8351cb0
Normalize the num_items loss correctly for DDP and grad-accumulation
qgallouedec Jul 21, 2026
289c40c
Switch tests, docs, and example to prompt-only datasets
qgallouedec Jul 21, 2026
b02741c
remove pr desc
qgallouedec Jul 21, 2026
4a9273f
Qualify expected dataset as conversational prompt-only
qgallouedec Jul 21, 2026
2b5b737
Remove messages-format support and prompt-length config
qgallouedec Jul 21, 2026
4f91a90
Pin signature columns to GRPO's [prompt, image, images]
qgallouedec Jul 21, 2026
3c42827
Emit completion_mask alongside labels in the generated batch
qgallouedec Jul 21, 2026
6497bc5
Switch the loss to consume completion_mask instead of labels
qgallouedec Jul 21, 2026
b38280e
Emit prompt_ids/prompt_mask/completion_ids in the batch
qgallouedec Jul 21, 2026
790e9eb
Merge remote-tracking branch 'origin/main' into 13-deprecate-messages…
Jul 21, 2026
db068b1
Merge branch '13-deprecate-messages-datasets' into 14-fix-num-items
qgallouedec Jul 21, 2026
5f60751
Merge branch '14-fix-num-items' into 15-switch-tests-docs-prompt-only
qgallouedec Jul 21, 2026
14bb155
Merge branch '15-switch-tests-docs-prompt-only' into 16-remove-messag…
qgallouedec Jul 21, 2026
df5112e
Merge branch '16-remove-messages-support' into 17-pin-signature-columns
qgallouedec Jul 21, 2026
58514ce
Merge branch '17-pin-signature-columns' into 18-emit-completion-mask
qgallouedec Jul 21, 2026
1962b77
Merge branch '18-emit-completion-mask' into 19-loss-consumes-completi…
qgallouedec Jul 21, 2026
54ecc8b
Merge branch '19-loss-consumes-completion-mask' into 20-emit-prompt-c…
qgallouedec Jul 21, 2026
5d9178a
Merge branch 'main' into 14-fix-num-items
qgallouedec Jul 21, 2026
194481e
Merge branch '14-fix-num-items' into 15-switch-tests-docs-prompt-only
qgallouedec Jul 21, 2026
5aac5aa
Merge branch '15-switch-tests-docs-prompt-only' into 16-remove-messag…
qgallouedec Jul 21, 2026
c0c999a
Merge branch '16-remove-messages-support' into 17-pin-signature-columns
qgallouedec Jul 21, 2026
a35c66d
Merge branch '17-pin-signature-columns' into 18-emit-completion-mask
qgallouedec Jul 21, 2026
16ecfbd
Merge branch '18-emit-completion-mask' into 19-loss-consumes-completi…
qgallouedec Jul 21, 2026
3de49f6
Merge branch '19-loss-consumes-completion-mask' into 20-emit-prompt-c…
qgallouedec Jul 21, 2026
9378f79
Merge branch 'main' into 15-switch-tests-docs-prompt-only
qgallouedec Jul 21, 2026
76115bf
Merge branch '15-switch-tests-docs-prompt-only' into 16-remove-messag…
qgallouedec Jul 21, 2026
e044b15
Merge branch '16-remove-messages-support' into 17-pin-signature-columns
qgallouedec Jul 21, 2026
a0e4aad
Merge branch '17-pin-signature-columns' into 18-emit-completion-mask
qgallouedec Jul 21, 2026
f030767
Merge branch '18-emit-completion-mask' into 19-loss-consumes-completi…
qgallouedec Jul 21, 2026
77712c0
Merge branch '19-loss-consumes-completion-mask' into 20-emit-prompt-c…
qgallouedec Jul 21, 2026
f1d4896
Remove stale teacher-server section from the distillation doc
qgallouedec Jul 21, 2026
7cd12e0
Merge branch '15-switch-tests-docs-prompt-only' into 16-remove-messag…
qgallouedec Jul 21, 2026
431f1da
Merge branch '16-remove-messages-support' into 17-pin-signature-columns
qgallouedec Jul 21, 2026
a9d882d
Merge branch '17-pin-signature-columns' into 18-emit-completion-mask
qgallouedec Jul 21, 2026
7fa5fcd
Merge branch '18-emit-completion-mask' into 19-loss-consumes-completi…
qgallouedec Jul 21, 2026
66d058d
Merge branch '19-loss-consumes-completion-mask' into 20-emit-prompt-c…
qgallouedec Jul 21, 2026
fe497cd
Merge branch 'main' into 15-switch-tests-docs-prompt-only
qgallouedec Jul 21, 2026
9f68612
Merge branch '15-switch-tests-docs-prompt-only' into 16-remove-messag…
qgallouedec Jul 21, 2026
34f6eb1
Merge branch '16-remove-messages-support' into 17-pin-signature-columns
qgallouedec Jul 21, 2026
3bf52d7
Merge branch '17-pin-signature-columns' into 18-emit-completion-mask
qgallouedec Jul 21, 2026
d59a130
Merge branch '18-emit-completion-mask' into 19-loss-consumes-completi…
qgallouedec Jul 21, 2026
8de3282
Merge branch '19-loss-consumes-completion-mask' into 20-emit-prompt-c…
qgallouedec Jul 21, 2026
f07dd4e
Merge remote-tracking branch 'origin/main' into 16-remove-messages-su…
qgallouedec Jul 22, 2026
532ba1e
Merge branch '16-remove-messages-support' into 17-pin-signature-columns
qgallouedec Jul 22, 2026
7837ea4
Merge branch '17-pin-signature-columns' into 18-emit-completion-mask
qgallouedec Jul 22, 2026
292a17a
Merge branch '18-emit-completion-mask' into 19-loss-consumes-completi…
qgallouedec Jul 22, 2026
095502a
Merge branch '19-loss-consumes-completion-mask' into 20-emit-prompt-c…
qgallouedec Jul 22, 2026
ac1f71f
Drop stale local-teacher loss comment
qgallouedec Jul 22, 2026
ea143ae
Merge branch 'main' into 17-pin-signature-columns
qgallouedec Jul 22, 2026
a934541
Merge branch '17-pin-signature-columns' into 18-emit-completion-mask
qgallouedec Jul 22, 2026
40ec499
Merge branch '18-emit-completion-mask' into 19-loss-consumes-completi…
qgallouedec Jul 22, 2026
752c9b3
Merge branch '19-loss-consumes-completion-mask' into 20-emit-prompt-c…
qgallouedec Jul 22, 2026
a33b289
Merge branch 'main' into 18-emit-completion-mask
qgallouedec Jul 22, 2026
f263644
Merge branch '18-emit-completion-mask' into 19-loss-consumes-completi…
qgallouedec Jul 22, 2026
be286b1
Merge branch '19-loss-consumes-completion-mask' into 20-emit-prompt-c…
qgallouedec Jul 22, 2026
80d20fb
Merge branch 'main' into 19-loss-consumes-completion-mask
qgallouedec Jul 22, 2026
79cc62c
Merge branch '19-loss-consumes-completion-mask' into 20-emit-prompt-c…
qgallouedec Jul 22, 2026
69bbafc
Merge branch 'main' into 20-emit-prompt-completion-ids
qgallouedec Jul 22, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions tests/experimental/test_distillation_trainer.py
Original file line number Diff line number Diff line change
Expand Up @@ -426,6 +426,27 @@ def _capturing(self, model, inputs, *args, **kwargs):
assert "completion_mask" in inputs
assert torch.equal(inputs["completion_mask"].bool(), inputs["labels"] != -100)

def test_generated_batch_emits_prompt_and_completion_ids(self, monkeypatch):
"""The generated batch emits GRPO-style `prompt_ids`/`prompt_mask`/`completion_ids` alongside the old keys."""
trainer = self._make_local_trainer()
captured = {}
original = DistillationTrainer.compute_loss

def _capturing(self, model, inputs, *args, **kwargs):
captured.setdefault("inputs", {k: v.clone() if torch.is_tensor(v) else v for k, v in inputs.items()})
return original(self, model, inputs, *args, **kwargs)

monkeypatch.setattr(DistillationTrainer, "compute_loss", _capturing)
trainer.train()

inputs = captured["inputs"]
for key in ("prompt_ids", "prompt_mask", "completion_ids"):
assert key in inputs
# cat(prompt_ids, completion_ids) reconstructs input_ids; the new keys mirror the existing prompt tensors.
assert torch.equal(torch.cat([inputs["prompt_ids"], inputs["completion_ids"]], dim=1), inputs["input_ids"])
assert torch.equal(inputs["prompt_ids"], inputs["prompts"])
assert torch.equal(inputs["prompt_mask"], inputs["prompt_attention_mask"])

@require_liger_kernel
@require_torch_accelerator
def test_distillation_trainer_with_liger(self):
Expand Down
9 changes: 9 additions & 0 deletions trl/experimental/distillation/distillation_trainer.py
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,9 @@ def __call__(self, examples: list[dict[str, Any]]) -> dict[str, torch.Tensor]:
"completion_mask": (labels_t != self.ignore_index).int(),
"prompts": prompts_t,
"prompt_attention_mask": prompt_mask_t,
"prompt_ids": prompts_t,
"prompt_mask": prompt_mask_t,
"completion_ids": input_ids_t[:, prompts_t.shape[1] :],
}


Expand Down Expand Up @@ -773,6 +776,9 @@ def _generate_with_model(self, slices: list[dict[str, torch.Tensor | Any]], on_p
updated["attention_mask"] = new_attention_mask
updated["labels"] = new_labels
updated["completion_mask"] = new_completion_mask
updated["prompt_ids"] = slice_inputs["prompts"]
updated["prompt_mask"] = prompt_mask
updated["completion_ids"] = generated_tokens[:, prompt_width:]
Comment thread
qgallouedec marked this conversation as resolved.

self._buffered_inputs[slice_idx] = updated
self._buffered_text_logs[slice_idx] = (prompt_texts, completion_texts)
Expand Down Expand Up @@ -851,6 +857,9 @@ def _store_completions_in_buffer(
updated["attention_mask"] = new_attention_mask
updated["labels"] = new_labels
updated["completion_mask"] = new_completion_mask
updated["prompt_ids"] = prompt_ids
updated["prompt_mask"] = prompt_attention_mask
updated["completion_ids"] = completion_ids_padded
# Update prompts to match the new padding width so prompt_length is consistent
updated["prompts"] = prompt_ids
updated["prompt_attention_mask"] = prompt_attention_mask
Expand Down
Loading