You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* transformers bump + fa2
* patched data_loader
* add patched data loaders to runners
* load models w/ fa2 properly
* add train / eval dataset handling
* fmt
* gitignore update for dataset cache
* Add load_tokenizer helper and SFT_EXCLUDED_KEYS
load_tokenizer loads only the tokenizer without model weights, for
use during pre-tokenization on the driver. SFT_EXCLUDED_KEYS lists
config keys that must be filtered when building TrainingArguments
for plain Trainer (replacing SFTConfig).
* Add pre-tokenization functions for SFT and DPO
tokenize_sft / tokenize_and_pack_sft: distributed tokenization via
Ray .map(), with optional BFD packing via TRL's pack_dataset.
tokenize_dpo / tokenize_dpo_dataset: replicates DPOTrainer's
tokenization pipeline (extract prompt, apply chat template, tokenize,
append eos, truncate) as a Ray .map() step.
* Rewrite SFT to use plain Trainer with pre-tokenized data
Replace SFTTrainer/SFTConfig with Trainer/TrainingArguments since
tokenization now happens centrally on the driver. Use TRL's
DataCollatorForLanguageModeling for labels, padding, and padding-free
mode. Get eval shard from Ray instead of materializing full eval on
every worker. Fix import paths (configs -> training_configs) and
extract run_name_template before filtering config keys.
* Pre-tokenized DPO with PreTokenizedDPOTrainer subclass
* Centralize tokenization on driver via Ray .map()
* Add tokenization caching with parquet persistence
* Simplify checkpoint callback to skip Ray checkpoint duplication
* Fix checkpoint callback to call _rename_checkpoint on save
* Use available memory instead of total for Ray object store
* Make tokenization caching opt-in via cache_dataset flag
* check if cuda available before committing time to ray workflow
* consistent naming for cached dataset
* _resolve_model_id already has this logic
* Make tokenization caching opt-in via cache_dataset flag
* Clear metrics after checkpoint report to avoid re-reporting stale values
* Avoid full dataset materialization for non-packing SFT runs
---------
Co-authored-by: EdoardoMosca <edoardo@liquid.ai>
0 commit comments