LLMs Cheating in Training
Difference between en9 and en10, changed 380 character(s)
Some people use LLMs to cheat on Codeforces. It turns out that LLMs also cheat during the reinforcement learning training process; this is called "reward hacking".↵
↵
As LLMs have gotten stronger, their own cheating during training has gotten worse. Here are some examples of advanced reward hacks:↵
↵
![ ](https://raw.githubusercontent.com/rqi3/cf-blog-assets/main/fig4.png)↵
^ r
1. Reconstructing a test by simulating the pseudorandom number generator process. Perhaps some of us have done something similar :) imilar things.↵
![ ](https://raw.githubusercontent.com/rqi3/cf-blog-assets/main/fig4.png)↵
↵
2. Replacing the Python library. This doesn't work on Codeforces!
↵
![ ](https://raw.githubusercontent.com/rqi3/cf-blog-assets/main/fig3.png)↵
^ Replacing the Python library. This doesn't work on Codeforces!↵
↵
↵
3. Spawning a background process.
↵
![ ](https://raw.githubusercontent.com/rqi3/cf-blog-assets/main/fig5.png)↵
↵
These were done as part of a research run where we intentionally trained the model on many environments where reward hacking was possible, in order to study how such a model behaves after training.↵
↵
![ ](https://raw.githubusercontent.com/rqi3/cf-blog-assets/main/fig2.png)↵
↵
We saw that the resulting model generalizes to display a desire to satisfy the grader and get a high score within its thinking (Chain-of-Thought), including conducting unauthorized cyberattacks in simulations in order to cheat. 
WOverall, we show that a high rate of reward hacking during RL can cause models to be willing to perform long sequences of harmful real-world actions in pursuit of task success.↵
↵
![ ](https://raw.githubusercontent.com/rqi3/cf-blog-assets/main/fig1.png)↵
↵
↵
This was part of larger alignment research blogpost which goes into a lot more detail: https://alignment.anthropic.com/2026/reward-seeker/↵
↵
Making sure AIs are aligned is a difficult and important problem, and they keep getting smarter. I hope competitive programmers can help with this and make the future go well :)

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en11 English rqi 2026-09-02 00:16:14 5
en10 English rqi 2026-09-01 11:32:33 380 Tiny change: 'to cheat. We show tha' -> 'to cheat. Overall, we show tha' (published)
en9 English rqi 2026-09-01 11:29:02 534 Tiny change: 'rd-seeker/' -> 'rd-seeker/\n\nMaking sure AIs are '
en8 English rqi 2026-09-01 11:22:23 641
en7 English rqi 2026-09-01 11:19:51 143
en6 English rqi 2026-09-01 11:19:14 425
en5 English rqi 2026-09-01 11:17:11 439 Tiny change: 's part of larger al' -> 's part of a larger al'
en4 English rqi 2026-09-01 11:03:25 272
en3 English rqi 2026-09-01 10:56:53 85
en2 English rqi 2026-09-01 10:54:41 1029
en1 English rqi 2026-09-01 10:42:42 126 Initial revision (saved to drafts)