Views
No views yet
| Method | Win Rate (MSC) | PPL (Validation) | Alignment Tax |
|---|---|---|---|
| Standard DPO | 45.8% | 102.3 💥 | High |
| SimPO | 46.4% | 101.2 | High |
| DZ-TDPO (Ours) | 55.4% | 26.0 ✅ | Negligible |
Note on Scaling: We also validated this method on Qwen2.5-7B (available separately), where it maintains high stability (+1.95 PPL) with a 50.8% win rate, demonstrating the capacity-stability trade-off in larger models.
transformers library.1from transformers import AutoModelForCausalLM, AutoTokenizer
2import torch
3
4model_id = "YijunLiao/DZ-TDPO-Phi-3.5-mini-instruct"
5
6tokenizer = AutoTokenizer.from_pretrained(model_id)
7model = AutoModelForCausalLM.from_pretrained(
8 model_id,
9 torch_dtype=torch.bfloat16,
10 device_map="auto",
11 trust_remote_code=True
12)
13
14# Example: Resolving State Inertia
15messages = [
16 {"role": "user", "content": "I love spicy food."},
17 {"role": "assistant", "content": "Noted! I'll recommend spicy dishes."},
18 # ... assuming long history ...
19 {"role": "user", "content": "Actually, I have a stomach ache now. I need something mild."},
20]
21
22inputs = tokenizer.apply_chat_template(messages, return_tensors="pt", add_generation_prompt=True).to(model.device)
23outputs = model.generate(inputs, max_new_tokens=128)
24print(tokenizer.decode(outputs[0], skip_special_tokens=True))1@misc{liao2025dztdpo,
2 title={DZ-TDPO: Non-Destructive Temporal Alignment for Mutable State Tracking in Long-Context Dialogue},
3 author={Yijun Liao},
4 year={2025},
5 eprint={2512.03704},
6 archivePrefix={arXiv},
7 primaryClass={cs.CL}
8}