1. 개발 범위

구분범위
프론트엔드홈 · 카메라 · 상담 · 알약사전 · 약 상세 · 오늘의 약속 · 내 정보 · 내 기록 · 증상 등 13개 화면
APIPOST /api/pill/identify, GET /api/pill/dictionary, GET /api/pill/dictionary/{item_seq}, 상담 대화방·메시지
데이터낱알식별 v03 · e약은요 적재 스크립트
제외진단·처방, 결제·약 구매, 회원 로그인(스캐폴드만), DUR, 푸시 알림

2. 알약 인식

  • Gemini Vision이 사진에서 모양·색·각인·분할선·제형을 추출한다.
  • DB 후보를 속성별 가중치로 점수 매겨 정렬한다. 각인이 가장 무겁다(5.0).
  • 최고 점수가 2.0 미만이면 needs_retry로 재촬영을 요청한다.
  • 제품명이 읽히면(약 상자) 속성 매칭 대신 이름 검색으로 분기한다.
  • 촬영 이미지는 서버에 저장하지 않는다.

3. 복약 상담

  • 시스템 프롬프트에 건강정보, 스캔 결과, 공식 효능·용법·주의(pill_context), 현재 시각을 넣는다.
  • 호칭은 나이·성별로 정한다. 사용자를 특정 연령대로 단정하지 않는다.
  • 대화는 conversations · messages에 남는다. 멀티턴 기억은 아직 없다.

4. 개인정보 · 안전

  • 건강정보(yaksok:health), 내 기록(yaksok:cabinet), 복약 목록은 localStorage에만 저장한다.
  • Gemini 키가 없으면 fake 어댑터로 자동 전환해 개발·테스트가 막히지 않게 한다.
  • 증상 추천은 일반의약품(OTC)으로만 한정한다.