Index
2026-09-14 · scene_bench · VLM read eval

오픈 모델 추가 — Qwen3-VL-32B 본표 편입, InternVL3.5-8B 는 부록

find · restore · resume · routine × 5전략, writer v2, GPU만 사용($0, 15.0 GPU·h)
결정 (260914, 사용자): InternVL3.5-8B 는 본표에서 제외하고 부록으로만 보관한다. 다른 모델은 이미지 전처리 기본값인데 InternVL 만 기본값(이미지당 3,328 토큰)이 컨텍스트 40,960 을 넘어 1칸(256 토큰)으로 줄여 돌렸기 때문 — §6.

TL;DR

7
본표 모델 (routine 6)
$0
15.0 GPU·h (2모델)
.236→.425
restore 오라클 8B→32B
.22 vs .66
재작성 시 보존 32B vs flash
3,328
InternVL 기본 토큰/장 (컨텍스트 초과)

1배경 / 목적

기존 오픈 3종(qwen3vl-8b · cosmos-r2-8b · molmo2-8b)은 4가족 모두에서 rf-v3 가 blind 수준이고 최고 비오라클이 API 의 1/2~1/3 이었다. 이것이 크기 한계인지 가르기 위해 Qwen3-VL-32B-Instruct(같은 계열·4배 크기), 같은 규모의 다른 비전 인코더 비교로 InternVL3.5-8B(LLM 백본은 Qwen3-8B)를 사용자가 골랐다.

2작업 내용

3결과 — 4가족 본표 (7모델, routine 6)

tagmem 열은 다른 세션에서 진행 중이라 이 리포트에서 뺐다.

find — hidden 제외 526행 (loc/place)

굵게 = 모델별 최고 비오라클 loc. ★ = 이번 추가 모델.

전략flash-3.7sonnet-5lunaqwen3vl-8bcosmos-r2-8bmolmo2-8bqwen3vl-32b ★
blind0.242/0.1550.185/0.1110.258/0.1450.284/0.1300.387/0.1320.319/0.1510.284/0.122
textlog (oracle)0.479/0.4410.466/0.4200.490/0.4410.410/0.3840.416/0.3820.458/0.4010.460/0.422
frames-uniform0.571/0.4200.368/0.2190.405/0.2420.351/0.1870.393/0.1950.365/0.1850.324/0.198
rf-v3 (MEM-style)0.490/0.3630.397/0.2540.376/0.2540.137/0.0520.174/0.0820.153/0.0800.160/0.086
vis-pure (MemER-style)0.613/0.4960.382/0.2440.437/0.2610.286/0.1640.328/0.1620.365/0.1910.328/0.210

restore — 575행 (loc/place)

원천 final_results/restore_v1.1_609076c0/tables/grid_all_rows_with_cells.md

전략flash-3.7sonnet-5lunaqwen3vl-8bcosmos-r2-8bmolmo2-8bqwen3vl-32b ★
blind0.040/0.0040.005/0.0020.025/0.0020.028/0.0040.067/0.0090.033/0.0020.046/0.012
textlog (oracle)0.533/0.4360.518/0.4380.531/0.4310.236/0.1760.211/0.1600.327/0.2760.425/0.383
frames-uniform0.223/0.0930.128/0.0280.142/0.0330.063/0.0180.091/0.0110.070/0.0110.112/0.035
rf-v3 (MEM-style)0.246/0.1090.121/0.0210.121/0.0210.023/0.0090.056/0.0070.023/0.0040.035/0.004
vis-pure (MemER-style)0.329/0.1530.120/0.0330.137/0.0390.093/0.0190.079/0.0110.058/0.0070.079/0.018

resume — 161행 (resume_ok/slot_ok_frac)

ᵛ¹ = sonnet 의 v1 writer 칸(비용 보류). writer 없는 전략의 배치 표시는 제거.

전략flash-3.7sonnet-5lunaqwen3vl-8bcosmos-r2-8bmolmo2-8bqwen3vl-32b ★
blind0.056/0.0900.068/0.1270.037/0.0750.050/0.1150.068/0.0990.037/0.0620.050/0.102
textlog (oracle)0.789/0.8110.708/0.7980.677/0.7580.441/0.6090.248/0.3880.149/0.2800.522/0.658
frames-uniform0.161/0.2730.112/0.2140.099/0.1580.087/0.1740.087/0.1490.031/0.0840.093/0.183
rf-v3 (MEM-style)0.143/0.2800.025/0.112 ᵛ¹0.012/0.0870.075/0.1340.081/0.1210.037/0.0500.043/0.090
vis-pure (MemER-style)0.242/0.3850.112/0.211 ᵛ¹0.124/0.1830.093/0.2020.099/0.1650.087/0.1270.137/0.236

routine — dc1c8144 314행, 누출 제외 (loc/place)

sonnet 미측정. textlog 는 observed 규칙에 정의상 답이 없음(액션 로그 N/A).

전략flash-3.7lunaqwen3vl-8bcosmos-r2-8bmolmo2-8bqwen3vl-32b ★
blind0.155/0.0710.161/0.0030.142/0.0030.197/0.0030.152/0.0030.158/0.003
textlog (oracle)0.565/0.5650.577/0.5580.506/0.4870.319/0.2710.284/0.2390.568/0.539
frames-uniform0.432/0.4260.355/0.3230.290/0.2130.258/0.1550.177/0.0650.290/0.226
rf-v3 (MEM-style)0.442/0.4390.335/0.3100.161/0.0190.197/0.0610.148/0.0350.194/0.061
vis-pure (MemER-style)0.381/0.2650.235/0.0260.174/0.0130.119/0.0030.184/0.0030.245/0.016

4결과 — rf-v3 는 모델마다 다르게 실패한다

재작성 = 무변화도 덧붙이기(cur.startswith(prev))도 아닌 전이. 리셋 전이 = 재작성 ∧ 길이 < 0.6×이전. 보존 = 재작성 전이에서 이전 문장(앞 60자)이 남은 비율(의역 압축에는 하한).

모델find 재작성find 리셋 전이find 재작성 시 보존find 최종 중앙(자)resume 재작성resume 리셋resume 보존resume 최종 중앙(자)
flash-3.798.3%0.0%.6695798.4%0.1%.61763
luna95.4%2.6%.48100296.4%1.7%.46990
qwen3vl-8b41.8%6.7%.5571935.7%4.3%.45979
qwen3vl-32b ★65.6%12.0%.2271548.1%10.1%.34957
internvl3.5-8b (부록·1칸)10.5% (덧붙이기 83.7%)1.1%.74171110.7% (덧붙이기 84.8%)1.2%.751679
cosmos-r2-8b8.4%1.7%.578614.6%0.9%.601239
molmo2-8b11.7%0.4%.881818513.1%0.2%.9217777
정정: 재작성 비율만 보면 32B(65.6%)가 8B(41.8%)보다 계약을 잘 지키는 것처럼 보이지만, 보존율 .22 는 모든 모델 중 최저다. 32B 는 메모리를 "현재 청크 묘사"로 갈아끼운다. 결과 표를 처음 보고할 때 이 비율을 개선처럼 적었는데, 보존율로 확인하고 고쳤다.

5실물 예시 · 실패 케이스 — Qwen3-VL-32B

① rf-v3 리셋으로 앞에서 본 물체를 잊고 기권

find · train_1299__2 · 질의 Navigate to the vase · GT = living room dresser. 32B 기권 ∧ flash 정답 = 175행.

32B 최종 메모리 (334자, 24청크 길이 562→856→1170→1333→487→…→334): "I am in a bathroom with beige tiled walls and an orange floor, standing near a white toilet. On the toilet tank, there is a green bottle and a candle in a gold holder. I am holding a red pen, which I place on top of the toilet lid. ..." 32B 답: "There is no vase visible in the current view or mentioned in the memory. Since the memory does not indicate the presence or location of a vase anywhere in the house, the location cannot be determined." → abstain
flash-3.7 최종 메모리 (1156자, 180→288→…→1156 단조 증가 후 압축): "I started in the dining room by the dining table (holding a house plant, vase, cups, ...). I picked up the irish potato and placed it onto the living room dresser (holding a vase, credit card, and watch; ...). In the bedroom ..." flash 답: "A vase was observed on the dresser in the living room." → 정답

원인: "이전 메모리 + 새 청크 → 갱신 메모리" 계약을 "새 청크 묘사로 교체"로 수행. 교훈: 쓰기 계약 이행은 재작성 비율이 아니라 보존과 함께 봐야 한다.

② 오라클은 따라 읽는다 (같은 질의에서 InternVL 과 대비)

routine textlog · Put the tomato on the countertop away. · GT = living room side table.

Qwen3-VL-32B: "The user instructed me to put food items (egg, potato, apple) from the countertop onto the side table in the living room. The tomato is a food item, similar to the apple, egg, and potato. Based on the pattern of behavior, I should place the tomato on the side table in the living room" → living room / side table

의미: 32B 는 행동 기록에서 규칙(음식 → 거실 side table)을 끌어내 적용한다 — 기록을 주면 읽는 능력은 크기와 함께 오른다.

6InternVL3.5-8B 를 본표에서 뺀 이유 (부록)

모든 모델의 입력은 같다(640×480 JPEG q85, 같은 프롬프트, 이미지 8장 제한). 모델 간에 다른 것은 이미지 → 토큰 전처리이고, 본표 원칙은 각 모델 기본값이다.

모델전처리640×480 한 장 → 토큰max_model_len
qwen3vl-8b · qwen3vl-32b · cosmos-r2-8b기본 (Qwen3-VL 처리기, 원본 해상도)30065,536
molmo2-8b기본 (max_crops 8 → 2×2 크롭 + 전역)≈76232,768
flash · sonnet · luna같은 JPEG 전송, 토큰화는 제공사 내부조절 불가—
internvl3.5-8b비기본: max_dynamic_patch=1 → 448×448 1칸256 (기본이면 13칸 3,328)40,960

InternVL 기본값이면 vis-pure 쓰기 호출 12장(보관 8 + 새 청크 4) = 39,936 토큰으로 텍스트·출력 4k 를 더하면 40,960 을 넘는다. 당시엔 요청당 이미지를 서버 상한 24장으로 잡아 1칸까지 내렸는데, 실제 최대 12장이면 7칸(1,792 토큰/장)도 들어갔다 — 과잉 축소였다. 어느 쪽이든 기본값은 아니므로 사용자 결정으로 본표 제외.

부록 기록 (1칸 조건, 본문 인용 금지)

기권 ≈0 · find blind .380 이 모든 메모리 전략보다 높음 · routine 오라클에서 self-direct 174행 중 111행을 "kitchen countertop" · rf-v3 덧붙이기 84%. 예:

InternVL3.5-8B: "The user previously placed food items on the side table in the living room. However, the query asks to put the tomato away, which implies storing it in a more appropriate place. Given the context, the countertop in the kitchen is a suitable place for food items." → kitchen / countertop
InternVL3.5-8B 최종 메모리 (같은 편, 1932자, 174→286→…→1932 단조 증가): "I approached the dining table and placed a cup on it. I then moved to the other side of the table and placed a spoon on it. I adjusted the position of the plant on the table. I then moved to the living room area and adjusted the position of a small white box on the floor near the sofa. ... I then moved to a different area and placed a brown object into a box on a table. ..."

7Takeaway / Next

논문 한 줄: 32B 로 키워도 비-API 모델의 쓰기 병목은 남는다 — 기록을 주면 읽지만(restore 오라클 1.8×) 스스로 기록을 만들지 못한다.