$ git show --stat d6488da fix(gemini): 전 컴포넌트 -latest 별칭 → 3.5 버전 핀 고정(드리프트 근절) 벤치마크(docs/ocr-model-benchmark.md)가 선정한 실체는 3.5 세대이므로 `-latest` 별칭을 특정 버전으로 고정. 별칭 롤링으로 계약이 바뀌어 깨지는 일(OCR 400 사고)을 전 컴포넌트에서 원천 차단. 매핑: flash-lite-latest → gemini-3.5-flash-lite, flash-latest → gemini-3.5-flash - chat(config·build_alias), ner(gemini_dict), video-recipe(extract·pipeline), chat-insights(reports), compose(chat·ocr GEMINI_MODEL 기본값) - 운영 문서(ocr README/INTEGRATION, video README, reports README, 벤치마크) 갱신 - 2.5-*는 404(신규 사용자 불가·벤치 확인)라 핀 불가 → 3.5 채택 - 전 컴포넌트 thinking_budget=0은 OCR 한 곳뿐(PR 앞 커밋서 처리), 나머지 미사용 Co-Authored-By: (AI 협업 표기) deploy/app/docker-compose.yml | 4 ++-- docs/ocr-model-benchmark.md | 7 ++++++- ml/chat-insights/reports.py | 2 +- ml/ingredient-ner/gemini_dict.py | 2 +- ml/video-recipe/README.md | 6 +++--- ml/video-recipe/extract.py | 8 ++++---- ml/video-recipe/pipeline.py | 4 ++-- reports/chat/README.md | 2 +- services/chat/app/config.py | 5 ++++- services/chat/tools/build_alias.py | 2 +- services/ocr/INTEGRATION.md | 2 +- services/ocr/README.md | 2 +- 12 files changed, 27 insertions(+), 19 deletions(-)
별칭으로 부르던 외부 모델이 상위 세대로 바뀌면서 기존 파라미터가 거부돼 기능이 실패했습니다. 문제가 드러난 곳은 한 기능이었지만, 실측으로 고른 모델과 런타임이 실제로 부르는 모델이 어긋날 수 있는 지점은 여러 곳이었습니다. 그 지점을 전부 찾아 6개 컴포넌트를 특정 버전으로 고정했습니다. 벤치마크로 고른 모델이 아닌 것이 돌면 그 벤치마크 결과 자체가 무효가 되기 때문입니다.
실패를 처음 인지한 주체가 저라는 기록은 없습니다. 제가 한 것은 수정 범위를 어디까지로 할지 정한 판단이고, 변경 반영은 AI 협업으로 진행했습니다.