Downloads ยท 30 days
196
2% of all-time downloads
Qwen/WorldPM-72B
WorldPM-72B is a text classification model from Qwen. Use it when you need a label for a piece of text. It is set up for transformers. The card lists the license as apache-2.0.
[](https://opensource.org/licenses/Apache-2.0) [](https://arxiv.org/abs/2505.10527) [](https://github.com/QwenLM/WorldPM)
Downloads ยท 30 days
196
2% of all-time downloads
All-time downloads
9.7K
Public
Parameters
72.8B
146 GB on disk
Likes
82
Public
Click a slice to open those files.
.safetensors146 GB ยท 100%
From the Hugging Face model README
๐ WorldPM (World Preference Modeling) demonstrates that preference modeling follows similar scaling laws as language modeling. Through large-scale training on 15M preference data, we reveal that preference models can learn unified preference representations.

In our scaling experiments for preference modeling, we observed clear scaling trends in objective domains but not in subjective ones. We attribute this to the multi-dimensional nature of subjective evaluations - the assessment results are essentially averages across many dimensions. This leads to positive scaling in some dimensions and negative scaling in others, resulting in an apparent lack of overall scaling. Notably, as explained in our paper, for certain surface-level dimensions like style, WorldPM overcomes these biases, leading to significantly lower evaluation scores.
The scalability of preference modeling might seem counterintuitive, with two main concerns:
Task Perspective: Preference modeling appears too simple with only binary signals (indicating which response is preferred), resulting in sparse supervision.
Data Perspective: Human forum data appears noisy and seemingly difficult to scale.
On Sparse Supervision: Consider why next token prediction successfully models language - to accurately predict the next word (e.g., with 90% probability), language models must understand comprehensive language rules. Similarly, to successfully predict 90% of preference dataset labels, models must learn sufficiently universal human preference representations.
On Noisy Data: Noise refers to the apparent randomness in labels or supervision signals. However, since forum data represents genuine human annotations, it inherently contains its own rationality. Even if individual human intelligence cannot discern the patterns, powerful language models can discover underlying structures.
Neural network scalability might depend neither on dense supervision signals nor on precise supervision signals. As long as the supervision signals are reasonable and challenging, scaling is possible - although dense and precise signals would accelerate convergence.
</details> </details>WorldPM represents a breakthrough in unified preference representation learning through large-scale training. While our experiments demonstrate strong generalization capabilities across various preference scenarios, we recommend task-specific fine-tuning for optimal performance.
Each model is fine-tuned on human preference datasets of varying sizes:
| Model | Dataset | Training Scale |
|---|---|---|
| WorldPM-72B-HelpSteer2 | HelpSteer2 | 7K |
| WorldPM-72B-UltraFeedback | UltraFeedback | 100K |
| WorldPM-72B-RLHFLow | RLHFLow | 800K |
The base WorldPM-72B model serves as an excellent starting point for custom fine-tuning. Our experiments confirm that starting from WorldPM leads to better performance compared to training from scratch.
transformers>=4.40.0transformersWarning: Version requirement is crucial as Qwen2.5 integration started from
transformers 4.37.0
For GPU requirements and performance metrics, check the Qwen2 benchmark results.
</details><|endoftext|> tokenfrom transformers import AutoModel, AutoTokenizer, AutoConfig
model_name = 'Qwen/WorldPM-72B'
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
config = AutoConfig.from_pretrained(model_name,trust_remote_code=True )
model = AutoModel.from_pretrained(
model_name,
config = config,
device_map = "auto",
trust_remote_code=True,
).eval()
def get_score(model, tokenizer, conversation):
con_str = tokenizer.apply_chat_template(conversation, tokenize=False, add_generation_prompt=False)
input_ids = tokenizer.encode(con_str, return_tensors="pt", add_special_tokens=False)
outputs = model(input_ids=input_ids.to(model.device))
score = outputs[0].cpu().item()
return score
messages = [
[
{'role': 'system', 'content': ""},
{'role': 'user', 'content': "Tips for better sleep?"},
{'role': 'assistant', 'content': "Three key tips for better sleep:\n1. Set a consistent bedtime and wake-up schedule\n2. Avoid screens 1 hour before bed\n3. Keep your bedroom cool and dark\n\nStart with these habits and you should notice improvement within a week."}
],
[
{'role': 'system', 'content': ""},
{'role': 'user', 'content': "Tips for better sleep?"},
{'role': 'assistant', 'content': "just try sleeping earlier or take some pills if u cant sleep lol. maybe watch tv until u get tired idk"}
]
]
score = [get_score(model, tokenizer=tokenizer, conversation=message) for message in messages]
print(score) #[0.6298332214355469, -1.6425328254699707] for WorldPM-72B
</details>
@article{WorldPM,
title={WorldPM:Scaling Human Preference Modeling},
author={Binghai Wang, Runji Lin, Keming Lu, Le Yu, Zhenru Zhang, Fei Huang, Chujie Zheng, Kai Dang, Yang Fan, Xingzhang Ren, An Yang, Dayiheng Liu, Tao Gui, Qi Zhang, Xuanjing Huang, Yu-Gang Jiang, Bowen Yu, Jingren Zhou, and Junyang Lin},
journal={arXiv preprint arXiv:2505.10527},
year={2025}
}
We welcome discussions and feedback from the community! Here's how you can reach out:
Feel free to engage with us through any of these channels. We value your input and look forward to hearing from you!