Index
2026-08-19 — Experiment

S1 — 누출 제거 계약(v3)으로 5전략 첫 측정

scene_bench | 프롬프트가 바뀌었으니 결과를 확인한다 · 3 eps / 18질의 / 축 7종 완전 커버

TL;DR

0.0
blind (누출 제거)
0.92
vis-pure: distractor
0.50
textlog: target
2
적발된 자체 결함
51/51
tests

1 전략별 성적 (18질의)

gemini-3.6-flash

전략loc_setplacecountloc_f1기권
blind (대조군)0.2220.2350.50.2590.444
textlog (이벤트 로그)0.2220.1760.4440.2780.556
rollforward-v2 (자필 노트)0.0560.0590.3330.0830.667
vis-pure (자선별 프레임)0.5560.5290.8330.630.0
frames-uniform (균등 16장)0.50.4710.7780.5740.056

claude-sonnet-5

전략loc_setplacecountloc_f1기권
blind (대조군)0.00.00.1670.00.778
textlog (이벤트 로그)0.1670.1180.3330.2220.667
rollforward-v2 (자필 노트)0.3330.3530.50.3980.389
vis-pure (자선별 프레임)0.6670.5290.8330.7410.0
frames-uniform (균등 16장)0.3890.3530.8330.50.0

loc_set=위치 집합 일치(개수까지) · place=위치+표면 · count=개수 일치 · loc_f1=부분 점수. 바닥 답은 방을 채점하지 않는다(GT가 room=null).

2 핵심 — 질의 종류별로 강점이 갈린다

gemini-3.6-flash

전략find_target (옮긴 물체)find_distractor (안 건드린 물체)
blind (대조군)0.000.33
textlog (이벤트 로그)0.500.08
rollforward-v2 (자필 노트)0.000.08
vis-pure (자선별 프레임)0.170.75
frames-uniform (균등 16장)0.170.67

claude-sonnet-5

전략find_target (옮긴 물체)find_distractor (안 건드린 물체)
blind (대조군)0.000.00
textlog (이벤트 로그)0.500.00
rollforward-v2 (자필 노트)0.170.42
vis-pure (자선별 프레임)0.170.92
frames-uniform (균등 16장)0.000.58
상보성이 뚜렷하다. find_target(로봇이 옮긴 물체)은 이벤트 로그가 정확히 기록하는 대상이라 textlog가 앞서고, find_distractor(지나치며 본 물체)는 로그에 아예 등장하지 않아 textlog가 0.00으로 무력하다 — 대신 프레임에는 남아 있어 vis-pure가 0.92를 낸다. 두 채널이 서로의 사각을 덮는다는 뜻이고, 벤치마크가 두 질의 종류를 나눈 설계가 실제로 다른 능력을 잰다는 증거다.

바닥(떨어뜨린) 답 vs 표면 답

gemini-3.6-flash

전략바닥 답표면 답
blind (대조군)0.000.29
textlog (이벤트 로그)0.750.07
rollforward-v2 (자필 노트)0.000.07
vis-pure (자선별 프레임)0.250.64
frames-uniform (균등 16장)0.250.57

claude-sonnet-5

전략바닥 답표면 답
blind (대조군)0.000.00
textlog (이벤트 로그)0.750.00
rollforward-v2 (자필 노트)0.000.43
vis-pure (자선별 프레임)0.000.86
frames-uniform (균등 16장)0.000.50
바닥 답은 텍스트만 맞힌다. "떨어뜨렸다"는 사건은 로그에 남지만, 바닥에 놓인 작은 물체는 키프레임에서 잘 안 보인다. 시각 전략은 바닥 답에서 전부 0.00이고 대신 그럴듯한 표면을 답한다(§4 ④).

3 이 테스트가 적발한 자체 결함 2건

결함증상수정
textlog 생성 규칙이 v0.7과 불일치outcome 5종(ok 397 / failed_no_place 176 / failed_dropped 60 / failed_not_seen 14 / failed 9)을 "failed to place" 하나로 뭉갬 → 낙하 사건 소멸 → 모델이 "원래 자리"로 추론해 전멸. 인스턴스를 모두 "the bowl"로 불러 개수 판단 불가outcome별 문구 분리, bowl #1/#2 별칭, 실패 후 gaze 반영. 측정 좌표는 미포함(정답이므로)
채점의 floor/room 축 혼동GT는 on_floor 답의 room을 항상 null로 둔다(64/64). 구 계약은 room에 "floor"를 요구해, 모델이 "kitchen"(실제로 kitchen 바닥)이라 답하면 정답인데 오답 처리floor는 표면 축의 값. surface="floor"면 방은 채점하지 않음. GT에 표면이 없는 11건은 place 채점만 제외
둘 다 "모델이 못한 것"으로 오독되기 쉬웠다. 프롬프트를 바꿨으니 결과를 확인하자는 판단이 없었다면 textlog 0.0을 모델 한계로 기록할 뻔했다.

4 실물 — 모델 출력 원문

① textlog: 낙하 기록으로 바닥을 추론 정답

모델: claude-sonnet-5 · 전략: textlog · val_693__0 질의: "Pick up the vase I moved earlier" GT : [(None, 'floor')]
[모델 출력 원문] {"reasoning": "The vase was last picked up from the toilet in the bathroom and carried toward the shelving unit in the kitchen, but it could not be placed there, meaning it was dropped and ended up on the floor near the shelf in the kitchen.", "selections": [{"category": "vase", "room": "kitchen", "surface": "floor"}], "abstain": false}

② vis-pure: 지나치며 본 물체를 프레임에서 회수 정답

모델: claude-sonnet-5 · 전략: rollforward-vis-pure · val_693__0 질의: "Pick up the fork" GT : [('kitchen', 'countertop')]
[모델 출력 원문] {"reasoning": "The fork appeared on the marble kitchen countertop at t=0.0s and t=16.2s, near the egg and spray bottle. It was never picked up or moved in later frames, so it should still be resting there.", "selections": [{"category": "fork", "room": "kitchen", "surface": "countertop"}], "abstain": false}

③ textlog의 원리적 한계: 이벤트 로그에 없는 물체 → 정직한 기권 기권

모델: claude-sonnet-5 · 전략: textlog · val_693__0 질의: "Pick up the fork" GT : [('kitchen', 'countertop')]
[모델 출력 원문] {"reasoning": "The episode transcript never mentions a fork being picked up, moved, or seen anywhere. There is no information about its location.", "selections": [], "abstain": true}

④ vis-pure의 약점: 바닥에 떨어진 물체를 표면으로 오답 오답

모델: claude-sonnet-5 · 전략: rollforward-vis-pure · val_693__0 질의: "Pick up all the bowls I moved earlier" GT : [('kitchen', 'dining table'), ('kitchen', 'countertop')]
[모델 출력 원문] {"reasoning": "A single white bowl appears on the desk (with statue, lamp, box) at t=258-270s, then is carried and placed on the marble kitchen countertop (with spray bottle and soap dispenser) at t=323-328s, matching the final view. No other bowls were observed being moved.", "selections": [{"category": "bowl", "room": "kitchen", "surface": "countertop"}], "abstain": false}

5 비용 · 시간

모델calls비용wall
gemini-3.6-flash188$1.65431813s
claude-sonnet-5188$1.83231211s

18질의 × 5전략 + ingest(2전략 × 49청크). 전량(759질의) 환산 시 모델당 약 40배 — S2 층화 파일럿(15 eps)에서 전략을 3종으로 줄인 뒤 진행한다.

6 Takeaway / Next

메모리 매체는 하나로 충분하지 않다

파일럿(구 데이터·구 계약)에서는 텍스트 로그가 만능처럼 보였다. 누출을 제거하고 v0.7의 두 질의 종류를 제대로 나누자, 텍스트는 로봇이 한 일에, 시각은 로봇이 본 것에 각각 강하다는 상보 구조가 드러났다. 이는 "무엇을 적을 것인가"의 답이 단일 매체가 아니라 사건 로그 + 장면 프레임의 결합일 가능성을 시사한다 — S2에서 하이브리드를 다시 후보로 올릴 근거다.

다음 ① S2 층화 파일럿 15 eps — 인스턴스수·twin·misplaced 축 검증, 전략 5→3 ② 텍스트+시각 하이브리드 재도입 검토(상보성 근거) ③ multi 개수 판단 실패 원인 분석 ④ 방 이름 미유도 38건(4.6%) 조인 확장.