Claude commited on
Commit
f4f71fe
·
1 Parent(s): a69f12b

Improve topless/bottomless definitions to prevent confusion

Browse files

Enhanced clothing state definitions with:
- Explicit upper/lower body language
- Concrete examples (shirt and pants, bare chest, etc.)
- Clear contrast between topless and bottomless
- Added system prompt rule emphasizing the distinction

Before: "upper body is uncovered but lower body has clothing"
After: "NO shirt/top (bare chest), BUT wearing pants/bottoms"

Addresses diagnostic test failure where LLM confused bottomless
with topless on "wearing only a hoodie on upper body" caption.

https://claude.ai/code/session_015ZwE7a5E6YVTrMpuB2pXX7

Files changed (1) hide show
  1. psq_rag/llm/select.py +9 -5
psq_rag/llm/select.py CHANGED
@@ -874,13 +874,16 @@ def _load_structural_groups() -> List[StructuralGroup]:
874
  constraint="multi",
875
  tags=[
876
  ("clothed", _def("clothed",
877
- "A character is wearing clothes on both upper and lower body")),
 
878
  ("nude", _def("nude",
879
- "A character is wearing no clothes at all")),
880
  ("topless", _def("topless",
881
- "A character's upper body is uncovered but lower body has clothing")),
 
882
  ("bottomless", _def("bottomless",
883
- "A character wears clothing on upper body but lower body is uncovered")),
 
884
  ],
885
  ))
886
 
@@ -933,7 +936,8 @@ IMPORTANT RULES:
933
  2. Do NOT guess or assume things the description does not mention.
934
  3. For body type: "anthro" means an ANIMAL with a human-shaped body (walks upright, has hands, but still has fur/tail/muzzle). "humanoid" means HUMAN or human-like with NO animal features. A wolf standing on two legs = anthro, NOT humanoid.
935
  4. If the description never mentions gender, pick "gender cannot be determined".
936
- 5. If clothing is not mentioned, do NOT pick any clothing statement.
 
937
 
938
  Return JSON ONLY:
939
  {{"selections": [{{"i": 1}}, {{"i": 5}}]}}
 
874
  constraint="multi",
875
  tags=[
876
  ("clothed", _def("clothed",
877
+ "Wearing clothes on BOTH chest/torso AND legs/waist. "
878
+ "Examples: shirt and pants, dress, full outfit")),
879
  ("nude", _def("nude",
880
+ "Wearing NO clothes at all. Completely naked, no shirt and no pants")),
881
  ("topless", _def("topless",
882
+ "NO shirt/top (bare chest), BUT wearing pants/bottoms. "
883
+ "Upper body exposed, lower body covered")),
884
  ("bottomless", _def("bottomless",
885
+ "Wearing shirt/top on chest, BUT NO pants/bottoms. "
886
+ "Upper body covered, lower body exposed")),
887
  ],
888
  ))
889
 
 
936
  2. Do NOT guess or assume things the description does not mention.
937
  3. For body type: "anthro" means an ANIMAL with a human-shaped body (walks upright, has hands, but still has fur/tail/muzzle). "humanoid" means HUMAN or human-like with NO animal features. A wolf standing on two legs = anthro, NOT humanoid.
938
  4. If the description never mentions gender, pick "gender cannot be determined".
939
+ 5. For clothing state: READ CAREFULLY! "topless" = bare chest, wearing pants. "bottomless" = wearing shirt, no pants. If unsure, re-read the description.
940
+ 6. If clothing is not mentioned, do NOT pick any clothing statement.
941
 
942
  Return JSON ONLY:
943
  {{"selections": [{{"i": 1}}, {{"i": 5}}]}}