Drop named-position axis for grounded geometry (30B still mis-names positions)

Even the 30B mis-identifies named sex positions (doggy/cowgirl) from images, so
position_name is removed. The pose cluster is now purely observable geometry:
body_orientation enriched with facing direction (who faces whom), plus
limb_arrangement / contact_points / pose. The agent composes any named label from
these reliable primitives. 23 default axes. Docs/examples updated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-26 23:49:23 +02:00
parent e4dfaac63b
commit 06992506d7
4 changed files with 21 additions and 19 deletions
+3 -3
View File
@@ -120,7 +120,7 @@ observes; it suggests no fixes (a stronger external model owns correction).
{
"axes": {
"subject_count": {"verdict": "match", "ref": "1 woman", "gen": "1 woman"},
"position_name": {"verdict": "mismatch", "ref": "doggy style", "gen": "cowgirl"},
"body_orientation":{"verdict": "mismatch", "ref": "female on top, facing partner", "gen": "female on bottom"},
"clothing_state": {"verdict": "mismatch", "ref": "red lace lingerie", "gen": "nude"},
"scene": {"verdict": "partial", "ref": "dim bedroom", "gen": "lit bedroom"},
"lighting_color": {"verdict": "match", "ref": "warm low-key", "gen": "warm low-key"}
@@ -132,9 +132,9 @@ A **discrete verdict** (match/partial/mismatch) is used instead of a 01 score
give unreliable fine scores (identical ref/gen often scored ~0.6) but classify the three
buckets reliably. `overall_score` + `mismatch_count` are computed from the verdicts on our
side (mean ordinal), so they're trustworthy as a stop signal. The axis list is
**configurable**; the default ~24 axes are grouped identity / body / wardrobe / action·pose
**configurable**; the default ~23 axes are grouped identity / body / wardrobe / action·pose
/ affect / camera / render, with the action·pose cluster split fine (`sexual_act`,
`position_name`, `body_orientation`, `limb_arrangement`, `penetration`, `contact_points`,
`body_orientation`, `limb_arrangement`, `penetration`, `contact_points`,
`genital_visibility`) so it stays discriminative for explicit content. Each axis carries a
one-line definition in the prompt. The agent steers each `mismatch`/`partial` axis toward
its `ref`. See [CALIBRATION_POLICY.md](CALIBRATION_POLICY.md).