한입지도

로그인은 아직 없습니다

한입지도는 로그인 없이 전부 쓸 수 있습니다. 계정은 "내가 저장한 식당" 기능을 붙일 때 함께 엽니다.

데이터 파이프라인

사진 속 가격을 데이터로

식당 가격은 웹에 구조화된 형태로 존재하지 않습니다. 메뉴판 사진 안에만 있습니다. 그래서 이 서비스의 출발점은 검색이 아니라 사진 수집입니다.

1수집명륜동·혜화 식당의 메뉴판 사진을 모아 한 저장소에 쌓습니다. 출처와 촬영일을 함께 기록합니다.
2파싱Upstage Document Parse에 ocr=force·coordinates=true로 요청해, 사진 속 레이아웃을 유지한 채 메뉴명과 가격을 뽑습니다.
3검수파싱 결과는 바로 쓰지 않습니다. 사람이 고치도록 프리필로 띄우고, 0원·10만원 초과 같은 이상치는 표시해 둡니다.
4보강주소는 지오코딩으로 좌표를 자동으로 채우고, 학식은 매일 크롤링해 당일 식단을 넣습니다.
한국 길거리 음식 노점의 밥상
학식은 이미 구조화된 HTML이라 크롤링하고, 메뉴판은 비구조 사진이라 파싱합니다 — 같은 도구를 억지로 쓰지 않습니다.

왜 학식은 파싱하지 않나

도구는 문제에 맞춰 고릅니다. 학교 식단 페이지는 이미 표로 정리된 HTML이라, 사진 파싱을 적용하면 비용만 늘고 정확도는 떨어집니다. 비구조 입력(메뉴판 사진)에만 Document Parse를 씁니다.

입력형태처리
메뉴판사진(비구조)Document Parse → 검수
학식HTML(구조화)크롤러 → 정규화
위치주소 텍스트지오코딩 → 좌표

추천 이유를 검증합니다

추천 이유는 Solar가 씁니다. 다만 생성만 하고 끝내지 않습니다. 생성과 검증을 다른 모델이 나눠 맡습니다 — 판정자가 이유 문장을 실제 데이터(메뉴·가격·도보 시간)와 대조해, 근거가 없으면 그 문장을 버리고 데이터 사실로 교체합니다.

화면에서 보이는 것

추천 카드 아래 "Solar 생성 · 근거 검증됨" 또는 "근거 미달 판정으로 데이터 팩트로 교체됨" 배지가 그 결과입니다. 환각을 막았다는 주장이 아니라, 막는 동작을 그대로 보여주는 방식입니다.

데이터가 틀리면

파싱은 완벽하지 않습니다. 그래서 모든 메뉴 행에는 출처(사진 파싱/수기)와 검수 상태가 붙어 있고, 잘못된 값은 사람이 고치면 다음 조회부터 반영됩니다. 틀릴 수 있다는 사실을 숨기지 않는 것이 이 파이프라인의 설계입니다.