Index
2026-09-21 — Experiment

writer 입력 보강 3건 — 관측 밀도 10 s · 손목캠+16프레임 · rf-v3 손목캠: 더 보여줘도 안 오른다

scene_bench 읽기 트랙 | 32B·Gemma4 · find(관측 밀도·rf-v3 손목)·resume(손목+촘촘) · 사전등록 3건 · GPU $0

TL;DR

+2.8/0.0
10 s tagmem Δ place pp (32B/Gemma4)
−5.4pp
10 s vis-pure 32B
.16→.08
32B 기록 정확도 (WM2)
+5행 p=.53
rf-v3 손목 W vs C
$0
GPU

1 배경 / 목적

오픈 모델 tagmem 의 병목은 writer 기록의 부정확이다(260917 분석: 32B 기록 정확도 .16 — 한 일의 64% 가 맞는 이름으로 기록되지 않음, 담기 과제 0%; 오라클 기록이면 flash resume .789 인데 tagmem 은 .211 — 도달 가능 점수의 3/4 이 쓰기에서 샌다). 그동안의 수정은 대부분 읽기 측이었다. 사용자가 writer 입력을 겨냥한 세 가지 가설을 제안했다.

① (260917) "wrist cam 을 안 줘서?" — 32B rf-v3 노트 덮어쓰기(보존 39%)·미기록(43%)에 손목캠이 도움이 되는가 ② (260917) "writer 에 손목 카메라를 프레임마다 쌍으로 넣고 샘플링 수도 늘려보자. 32B 부터" — 기록 누락(64%) ← 짧은 사건이 프레임 사이에 빠짐(30초 청크당 4장 ≈7.5초 간격 → 16장 2초), 오명명(바구니→table) ← 그리퍼 시야. 이전 모자이크 16프레임 파일럿의 실패는 옛 데이터(누름에 시각 흔적 없음)였다 → 재시험 근거 ③ (260919) "30초에 4프레임은 너무 sparse하다. 10초에 4프레임으로 하면 멀리 있어 안 보이는 건 무시하고 가까이 잘 보이는 것만 잘 적어도 되지 않나" — 사전 확인($0, 32B find): 질의 물체가 writer 프레임(가시 구간 안)에 잡히는 횟수 정상 3.8장 · 오결합 3.6장 · 미기록 2.5장(12%는 0장) → 10 s 창이면 10.0 / 9.8 / 6.9장, 0장 1%

2 작업 내용

① rf-v3 손목캠 통제 A/B (사전등록)

대상: find v1.0 100편·589질의, rf-v3 만, Qwen3-VL-32B, 보관 열과 같은 서빙·env(SBENCH_TEMPERATURE=0 MAX_TOKENS=4096 VLLM_LEN=65536 WRITER_PREAMBLE=v2 RF_REWRITE_PROMPT=v3b, cap 8, 4샤드) 팔: W = SBENCH_WRITER_WRIST=1(같은 시각 exo|wrist 2-up 1장, 각 320×240) / C = exo 단독 재실행(옛 측정의 재추출 잡음 측정용). 읽기는 두 팔 다 원본 exo 질의 이미지 + 노트 ⚠ 교란: W 는 exo 해상도 640×480 → 320×240(하네스 옵션 설계). 잡 133669(W, 1h02m)·133670(C, 43m), 집계 tmp/rfv3_32b/score_ab.py 예측: W 가 D1 미기록을 조금 줄이나 덮어쓰기는 그대로 → place .08~.12, blind(.114) 근처

② 32B 손목 + 촘촘한 샘플링 (결합 모드)

구현: memory_strategy._mosaic_wrist_parts — 청크당 16프레임, 한 행 = 한 순간(왼쪽 exo · 오른쪽 gripper), 4행×2열 640×960 한 장에 4프레임, 청크당 4장. F 번호는 청크 전체 기준이라 STORE image F<k>·KEEP F<j> 가 그대로 개별 프레임을 가리킨다. 세 writer 가 같은 clip_image_parts 를 쓰므로 입력 대칭, 기본값 바이트 불변 테스트 test_mosaic_plus_wrist_pairs_every_frame_one_moment_per_row (4 passed). 실물 확인 tmp/wristmosaic/chunk0_img{0,1}.jpg — 그리퍼 칸에 조작 패널이 코앞에 보임 파일럿: 32B · 최종 데이터 병합 루트 98편 158행 · writer 3전략 재ingest · $0. 팔 WM(손목+16프레임)·M(16프레임만, 기여 분리). 잡 WM 133667→134274 · M 133666 사전등록 주 계측: writer 기록 정확도(과제 매칭 160건, tmp/s2check/writer_acc_by_run.py) — resume_ok 는 32B 잡음 바닥 2~4행이라 둔함 통과 기준: WM 기록 정확도 ≥ .30 & 기록 없음 ≤ .45, press ≥ .45(기준 .30), put ≥ .15(기준 0), tasks_ok 하락 −.03 이내

교란 발견(사용자 지적 260918): "더 보여준다 ≠ 더 저장하라". 청크당 텍스트 3.1→18.9·이미지 4.2→15.3 으로 저장이 폭증했다. writer 프롬프트(v7)는 4장 전제 — "store AT LEAST one entry. There is no upper limit"·"ONE ENTRY PER OCCURRENCE … Never summarise repeats"·"For each room or surface visible … store an image entry" — 16장이 같은 30초의 2초 간격 표본이라는 말이 없어 프레임마다 새 occurrence 로 적었다(place 텍스트 0.66→6.4). 수정(모자이크 켜졌을 때만, 기본 끔 바이트 불변, 55 tests passed): ① memory_strategy.dense_sample_note — "These 16 frames are 2-second samples of ONE continuous clip. One action usually spans several consecutive frames — that is still ONE occurrence. … Store at most 4 image entries" ② 청크당 image STORE 상한 4(MOSAIC_IMG_STORE_CAP). 사전등록 M2·WM2: 교란 제거 확인(청크당 place 텍스트 ≤ 1.5 · 이미지 ≤ 4.5)이 안 되면 결과를 읽지 않는다.

③ 관측 밀도 30 s → 10 s (find, 오픈 2모델)

SBENCH_CHUNK_WINDOW_S(e4bead6) — 공통 청커 rollforward_chunks 의 창. 기본 30.0 은 바이트 동일(테스트 59 통과). 편당 청크 19→56(2.9배), 프레임 간격 7.5→2.5 s, 청크당 4장 그대로 세 writer 전부(rf-v3·vis-pure·tagmem) 재ingest + 읽기, find 100편·589질의. 잡 137405(32B)·137406(Gemma4), own 1장 5h, $0 ⚠ 입력은 대칭이지만 효과는 비대칭(사전 명시): tagmem 은 덧붙이기라 관측 증가가 이득, rf-v3 는 재작성이 19→56회로 늘어 보존 손실이 곱해짐 사전 기준: 결합률 +8pp

3 결과

③ 관측 밀도 결과 (hidden 제외 place)

모델창rf-v3vis-puretagmemtagmem 결합률항목/편
qwen3vl-32B30 s.088.214.19029.2%123
10 s.089.160.21832.2%293
Δ+0.2pp−5.4pp+2.8pp+3.0pp
Gemma4-31B30 s.190.330.26130.7%102
10 s.205.305.26136.5%207
Δ+1.5pp−2.4pp+0.0pp+5.8pp
32B 에서 순위는 뒤집히지만(vis-pure .214 > tagmem .190 → tagmem .218 > vis-pure .160) tagmem 이 오른 것(+2.8)보다 vis-pure 가 내린 것(−5.4)이 크다. 해석: vis-pure 는 보관 8장 상한 그대로 KEEP/DROP 판단이 19→56회로 늘어 최종 8장이 편 후반에 쏠릴 수 있다(가설, 보관 프레임 시간 분포 비교는 미실시) — 즉 이 설정은 vis-pure 에 구조적으로 불리하다. Gemma4 는 결합률이 +5.8pp 올랐는데 점수는 0. rf-v3 는 예상(재작성 3배→하락)과 달리 +0.2·+1.5pp 로 사실상 불변 — 예측 빗나감 기록.

② 32B 손목+촘촘 — 첫 파일럿(교란됨) vs WM2 (기록 정확도, 같은 158행)

조건정확기록 없음과소과대movepressputresume_oktasksremain
기준 (4장/30초).16.64.08.12.25.30.00.070.291.101
W 손목 단독.11.58.22.09.16.09.09.082.329.114
M 16프레임만.06.70.03.21.14.09.00.057.247.063
WM 손목+16프레임.08.55.06.30.07.07.11.057.285.070
WM2 (교란 제거).08.53.12.27.02.13.09.082.367.089
tagmem 청크당 저장량텍스트place 텍스트이미지
기준(4장)3.110.664.16
M(첫) / WM(첫)18.9 / 12.96.50 / 4.4315.3 / 15.8
M25.922.11 (기준 ≤1.5 미달 → 결과 미해석)3.83
WM24.891.49 (간신히 통과, 기준의 2.3배)3.84

편당 tagmem 항목: 기준 108 · W 98 · M 506 · WM 425(place 항목 12.6 → 107.3/76.6) — 실제 놓기는 편당 10~15회인데 2초 간격 프레임마다 "놓았다"로 다시 적어 과대집계가 .12→.21→.30. 같은 입력의 다른 writer 도 같이 내려간다(vis-pure .114→.095(M)→.070(WM), rf-v3 .038→.051). WM2 부수 관찰(사전등록 밖): tasks_ok .291→.367(+12행, 25승 13패, p=.07) — "어느 명령이 중단됐나"는 좋아지지만 회차(remaining .101→.089)는 과대집계로 나빠져 resume_ok 는 +2행. 판정: 주 지표(≥.30) 미달, 기록 없음 .53(목표 ≤ .45 미달), press .13·put .09 미달 → 기각. 교란 제거 후에도 32B writer 는 같은 사건을 2.3배 재기록하고 그것이 정확도를 깎는다. flash 확인은 하지 않음(사전등록: 32B 에서 효과가 분명할 때만).

① rf-v3 손목캠 A/B 결과 (find, 세 팔 모두 scene card GT)

팔placeloc기권질의 물체 최종 노트단계당 보존첫 청크→최종D1D2D3
보관 (exo, 8/30).080.14864%22%76.2%36.4%.121.078.000
C 대조군 (exo 재실행).068.10968%22%77.3%37.7%.093.071.020
W 손목캠 (exo|wrist).077.13462%20%78.0%39.3%.126.063.020
blind (참고).114

짝 검정: W vs C +23/−18(순 +5행, p=.53) · C vs 보관 +11/−18(−7행, p=.26) · W vs 보관 +21/−23(−2행, p=.88). W−C 차이(+5행)는 exo 재실행 자체의 재추출 폭(보관 대비 −7행) 안이다. 사전등록 예측(".08~.12, blind 근처, 덮어쓰기 그대로") 그대로이고, 교란(exo 해상도 절반)은 해상도가 줄었는데도 W ≥ C 라 결론에 영향 없다. D1(만진 물체)은 W .126 vs C .093(+7행)이나 D2 는 반대(−2행).

4 Takeaway

의미

1) "더 보여주면 더 잘 적겠지"는 32B 에 안 통했다. 이 모델의 writer 실패는 못 봐서가 아니라 본 것을 정리하지 못해서다 — 샘플을 4배 늘리면 기록이 5배 늘고 정확도는 반토막, 안내문을 줘도 재기록을 절반밖에 못 줄인다(WM2 2.3배).

2) 관측 밀도 가설의 전제(미기록 물체가 체계적으로 덜 노출된다 — 2.5 vs 3.8장)는 맞았지만 노출을 늘려도 접지는 그만큼 따라오지 않는다(결합률 +3~6pp, 점수 0~+2.8pp). v12(어휘 준수)와 같은 결론: 병목은 관측 기회나 표기 규율이 아니라 writer 의 시각 접지 능력.

3) 손목캠은 rf-v3 를 살리지 못한다 — 원인 지표(최종 노트 언급률 22→20%, 보존 36~38→39%)가 하나도 안 움직였다. MEM-style 재작성 노트가 32B 에서 무너지는 것은 입력(카메라)이 아니라 writer 의 보존 능력이며, zero-shot 재작성 메모리는 writer 보존력에 지수적으로 민감하다(flash 72% vs 32B 36~39%).

4) 10 s 밀도는 tagmem 이 유리해지는 설정(vis-pure 는 나빠짐)이라 본표로 채택하지 않고 "메모리 표현별 관측률 민감도" ablation 으로만 보고할 수 있다 — 고정 예산 키프레임 선택이 관측률에 취약하다는 근거.

5 Next Steps

미해결 한계

10 s 에서 vis-pure 하락이 "후반 쏠림"인지는 보관 프레임의 시간 분포(30 s vs 10 s)를 비교하면 가려지나($0) 미실시. flash 는 미측정(재ingest ≈$39, 32B·Gemma4 가 기준 미달이라 제안하지 않음). 결합 모드 코드 _mosaic_wrist_parts 는 기본 끔·테스트 통과 상태로 남겨 다른 모델에서 재시험 가능.

다음 작업

남은 유일한 쓰기 측 레버는 writer 의 중복 제거(직전 청크에 같은 (행동·물체·도착지)가 있으면 재기록 금지 같은 결정론 규칙)인데 전략 변경이라 평가 범위 밖(evaluate-dont-optimize) — 사용자 결정 필요. 가설: 결정론 중복 제거를 넣으면 WM2 의 과대집계(.27)가 기준(.12) 근처로 내려가고 손목 시야의 이득(put 0→.09, tasks_ok +12행)이 드러난다. 이 방향은 v12·v20 기각과 함께 "프롬프트로는 안 됨"의 마지막 대안이다.