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
In the chat-template step, always pass a tokenizer (if a processor was provided, use its .tokenizer). This keeps the chat templating code agnostic to multimodal processors.
Motivation
When running DPO on multimodal families (e.g., Gemma 3) with text-only data, users pass a tokenizer. The current code infers is_vision_model from model.config.model_type and subsequently calls process_row, which assumes a processor and accesses .tokenizer, leading to:
AttributeError: <TokenizerClass> has no attribute tokenizer