Anthropic measured Claude's "values" like a scientist measures a rat, and found they shift by model and by language

Anthropic measured Claude's "values" like a scientist measures a rat, and found they shift by model and by language

Good morning ๐Ÿ‘‹ Anthropic pointed an instrument at 300,000+ Claude conversations and caught its own models playing favorites, depending on what language you typed in.

In today's issue:

Get tomorrow's issue in your inbox.

One concise AI brief, sent after the signal clears the noise.


๐Ÿ”ญ THE ONE THING

๐Ÿชž Anthropic measured Claude's "values" like a scientist measures a rat, and found they shift by model and by language

Anthropic combed 309,815 real Claude.ai conversations across three models (Sonnet 4.6, Opus 4.6, Opus 4.7), roughly 5,000 conversations per language across the top 20 languages on the platform, and boiled 3,307 distinct expressed values down to four axes: deference/caution, warmth/rigor, depth/brevity, candor/execution. Sonnet 4.6 comes out warm and deferential; Opus 4.7 leans cautious and deep, which tracks with what anyone who's switched between the two already suspected. Prompt in Hindi or Arabic and Claude gets warmer, more affirming, quicker to wrap up; prompt in English or Russian and it starts correcting your assumptions and asking for evidence instead. Read that generously and it's Claude developing situational judgment. Read it plainly and it's RLHF plus training-data mix leaving fingerprints that Anthropic finally built an instrument sensitive enough to read, and if you're running the same agent across markets or swapping model tiers mid-pipeline, that tone shift is real and your users will notice it before your eval suite does.


๐Ÿง  MODELS & RELEASES


๐Ÿ”ฌ RESEARCH HIGHLIGHTS


๐Ÿ› ๏ธ TRY THIS

Stop forwarding the caller's raw token to your multi-tenant agent's downstream APIs

AWS published the implementation guide for on-behalf-of (OBO) token exchange in Bedrock AgentCore Gateway this week. Worth stealing even off AWS: it fixes the confused-deputy bug every multi-tenant agent eventually hits, where a shared service account ends up acting with more authority than any single user should have.

1. Register each tenant's authorization server as its own OAuth2 credential provider. Grant type TOKEN_EXCHANGE, actorTokenContent set to NONE.

2. Lock your gateway's JWT authorizer to one inbound audience, so nothing gets orchestrated on a token you haven't validated first.

3. On every downstream target, inject the tenant's audience as a custom parameter. Same tool call, different tenant, differently-minted token each time.

4. Diff the claims before and after exchange. sub should hold steady across the swap. aud should flip to the tenant's endpoint. If sub moves, you built impersonation, not delegation.

Prompt: Given this OpenAPI spec for [tenant API], write the AgentCore Identity credential-provider config for RFC 8693 token exchange. Flag any place I'm forwarding the caller's raw JWT instead of exchanging it for an audience-bound token.

๐Ÿ”— QUICK LINKS


See you tomorrow.

Pradeep Perugu

Get inovAIte in your inbox.