Mistral-ORPO is a fine-tuned version of mistralai/Mistral-7B-v0.1 using the odds ratio preference optimization (ORPO). With ORPO, the model directly learns the preference without the supervised fine-tuning warmup phase. Mistral-ORPO-⍺ is fine-tuned exclusively on HuggingFaceH4/ultrafeedback_binarized.
1from transformers import AutoModelForCausalLM, AutoTokenizer
23model = AutoModelForCausalLM.from_pretrained("kaist-ai/mistral-orpo-alpha")4tokenizer = AutoTokenizer.from_pretrained("kaist-ai/mistral-orpo-alpha")56# Apply chat template7query =[{'role':'user','content':'Hi! How are you doing?'}]8prompt = tokenizer.apply_chat_template(query, tokenize=False, add_generation_prompt=True)9inputs = tokenizer(prompt, return_tensors='pt')1011# Generation with specific configurations12output = model.generate(13**inputs,14 max_new_tokens=128,15 do_sample=True,16 temperature=0.717)18response = tokenizer.batch_decode(output)1920#<|user|>21#Hi! How are you doing?</s>22#<|assistant|>23#I'm doing well, thank you! How are you?</s>
📎 Citation
@misc{hong2024orpo,
title={ORPO: Monolithic Preference Optimization without Reference Model},
author={Jiwoo Hong and Noah Lee and James Thorne},
year={2024},
eprint={2403.07691},
archivePrefix={arXiv},
primaryClass={cs.CL}
}