-
[04-03] We release our model at HuggingFace ๐ค, check out UltraIF Collection !
-
[02-06] Our paper is public at arxiv.
ULTRAIF first constructs the UltraComposer by decomposing user instructions into simplified ones and constraints, along with corresponding evaluation questions. This specialized composer facilitates the synthesis of instructions with more complex and diverse constraints, while the evaluation questions ensure the correctness and reliability of the generated responses.
Then, we introduce the Generate-then-Evaluate process. This framework first uses UltraComposer to incorporate constraints into instructions and then evaluates the generated responses using corresponding evaluation questions covering various quality levels.
We have to perpare pair data to train UltraComposer, which inclues (simplified instruction, original instruction, eval question)
python UltraComposer/extract_constraint.py
python generatte_eval_ques.py
Then, we use the pair data to train UltraComposer.
After this, we collect human instructions from exisiting dataset such as ShareGPT, etc, and run
python augment_query.py
python rejection_smapling.py
to get the augmented instructions and corresponding responses.
We use Xtuner as our training backbone, experimental details can be found in our paper.
The command is
xtuner train ./llama31_8b_full.py
๐ If you find our projects helpful to your research, please consider citing:
@article{an2025ultraif,
title={UltraIF: Advancing Instruction Following from the Wild},
author={An, Kaikai and Sheng, Li and Cui, Ganqu and Si, Shuzheng and Ding, Ning and Cheng, Yu and Chang, Baobao},
journal={arXiv preprint arXiv:2502.04153},
year={2025}
}
