기술 차별점현재
챗봇을 넘어, 구조화된 정량 기록
펫에토의 AI는 챗봇 응답이 아닙니다. 정량 기록 · 구조화 택소노미 · 다중모델 폴백 · 안전 게이팅 — 4중 파이프라인이 코드 레벨에 강제됩니다.
현재
1. 관찰 값의 정량 기록
사진 분석이 줄글 소견으로 끝나지 않습니다. 전체 우려도를 0~10 정수로 남기고, 이상 소견이 보인 자리를 사진 위 좌표로 표시합니다. 진단이 아니라 관찰을 돕는 참고 지표이고, 같은 아이라도 각도·조명에 따라 값이 흔들리기 때문에 그 한계를 화면에도 함께 적습니다.
구현 위치: api/analyze-image/route.ts · lib/symptomTaxonomy.ts · types/index.ts- severity_score (0~10 전체 우려도)
- score_summary (영역별 1~5 구조화 점수)
- bboxes (이미지 부위 마킹)
- 재현성 한계를 화면에 함께 고지
현재
2. 구조화 증상 택소노미
강아지·고양이 별 40+ 증상을 카테고리(피부·귀·발·눈·치아) × 4단계 심각도(normal/mild/moderate/urgent) × 한·영 임상 설명으로 분류. 자유 텍스트가 아닌 enum 기반 강제 구조.
구현 위치: lib/symptomTaxonomy.ts- 40+ 증상 × 4단계 심각도
- 한·영 임상 설명
- 카테고리: skin · ear · paw · eye · dental · digestive · behavior
- 각 증상에 응급 신호어 매핑
현재
3. 다중모델 폴백
Gemini Vision 메인 + 백업 모델 자동 폴백. 단일 LLM 장애·쿼터 초과 시 2.5 Flash에서 2.5 Flash-Lite로 자동 강등해 응답이 끊기지 않게 합니다.
구현 위치: app/api/analyze-image/route.ts- Gemini 2.5 Flash 메인
- 장애·쿼터 초과 시 Flash-Lite 자동 강등
- 응답 상한 60초 (모델 호출 50초 초과 시 중단)
- 심각도 정규식 추출 (부정문 오매칭 방지)
현재
4. 보수적 안전 게이팅
AI가 '정상'이라고 해도 그대로 내보내지 않습니다. 결론 문장에 응급 신호어(호흡·침흘림·무기력 등)가 섞여 있거나, 보호자가 전문가를 요청했거나, 전문가 답변이 달린 글은 자동으로 한 단계 올립니다. 놓치는 쪽보다 한 번 더 보는 쪽입니다.
구현 위치: lib/analysisSafety.ts- 응급 신호어 13종 감지 시 자동 상향
- 전문가 요청·답변 글은 관찰 필요로 상향
- 긴 본문 대신 결론 문장만 검사 (부정문 오탐 차단)
- 의료 면책 + 응급 시 병원 안내
품질 관리 4중 장치
현재
구조화 택소노미 + 4단계 게이팅
자유 텍스트 대신 enum 강제
현재
다중 모델 폴백
단일 LLM 장애·쿼터 초과 방어
현재
보수적 안전 가드
응급 신호어·전문가 개입 시 자동 상향
현재
전문가 검증 레이어
request_expert → 답변 → expert_status
목표
수의사 감수 표본 QA
월 N건 무작위 검수, 정확도 리포트
목표
자체 라벨 검증셋 + 전용 모델
상업적 이용이 허용된 데이터로 정확도 측정
목표
분석↔실제 진단 일치율 추적
피드백 루프로 모델 개선
락인 — 펫 평생 건강 타임라인
쓸수록 떠나기 어려워지는 한 축을 깊게 팝니다. AI 분석할 때마다 health_records에 자동 누적 → 우리 펫의 건강 이력이 쌓입니다. 경쟁 앱으로 옮기면 이 타임라인을 잃습니다.
- 현재분석 결과 자동 누적 (health_records)
- 목표개체 baseline 정밀화 (변화 감지 정확도↑)
- 목표수의사 검증 답변이 펫별로 축적
- 목표단골 시터 관계 (부가)