AI 피부 리포트가 만들어지는 흐름
사진, OX 응답, 추천 데이터, 사용자 프로필을 모아 Tangly의 AI 피부 코치 리포트를 생성하는 과정을 정리했습니다.
Code notes
코드에서 확인한 구현 포인트
배포 기준 2026.03.07
관련 파일
apps/web/lib/ai-report.tsapps/web/app/api/reports/[sessionId]/route.tsapps/web/lib/recommendations.tsapps/web/lib/ox-storage.tsapps/web/lib/profile-details.ts구현 메모
ensureAiReport는 먼저 ai_reports 캐시를 확인하고, 필요한 경우에만 AI 리포트 생성을 요청한다.
프롬프트 입력은 추천 payload, 사진 reference, OX 응답, 셀프 체크 고민, 프로필, 장기 메모리로 구조화된다.
AI 응답은 JSON 객체로 제한하고 sanitizeAiPayload를 거쳐 화면에서 기대하는 필드로 정규화한다.
AI는 결과를 예쁘게 말하는 장치가 아니다
Tangly에서 AI는 단순히 분석 결과를 그럴듯한 문장으로 바꾸는 도구가 아니다. 사용자의 사진 기반 분석, OX 응답, 셀프 체크 고민, 프로필 정보, 추천 후보를 함께 읽고 다음 행동을 제안하는 피부 코치 역할을 맡는다.
그래서 AI 리포트 생성은 한 번의 프롬프트 호출이라기보다 여러 제품 신호를 정리해 하나의 안전한 응답으로 만드는 과정에 가깝다.
입력 데이터를 먼저 구조화하기
AI에게 모든 것을 자유롭게 맡기면 결과가 흔들리기 쉽다. 그래서 먼저 추천 payload, 사진 reference, OX 응답, 셀프 체크 고민, 프로필 상세, 장기 메모리를 구조화해서 전달한다.
사진도 단순 URL 목록이 아니라 shot type, focus area, captured time 같은 맥락과 함께 reference로 묶는다. 이렇게 해야 AI가 어떤 이미지를 어떤 맥락으로 봐야 하는지 이해하기 쉽다.
응답은 JSON으로 제한한다
리포트 화면은 oneLiner, resultBadge, keyFindings, focus, actions, warnings 같은 정해진 구조를 기대한다. 그래서 AI 응답도 자유 텍스트가 아니라 JSON 객체로 받는다.
이 방식은 화면과 서버가 같은 계약을 바라보게 만든다. AI가 문장을 생성하더라도 제품은 필요한 필드만 안정적으로 꺼내 쓸 수 있다.
의료적 단정은 피한다
피부 분석은 민감한 영역이다. 그래서 시스템 프롬프트에서는 진단, 겁주기, 과장, 수치 단정을 피하도록 제한한다.
사용자에게 필요한 것은 공포가 아니라 다음에 할 수 있는 작은 행동이다. Tangly의 AI 문장은 따뜻하고 현실적인 피부 관리 코치 톤을 유지해야 한다.
Keep reading
다른 글 이어서 보기
AI
2026.04.08
8 min read
해외 시장을 위한 AI 모델 전략
한국 중심의 AI 피부 분석을 글로벌 사용자에게 확장하기 위해 언어, 지역, 모델 등급, 비용 정책을 어떻게 나눠갈지 정리했습니다.
AI
2026.03.18
7 min read
AI 개인화를 위해 사용자 기억을 쌓기
한 번의 분석 결과를 넘어서 최근 리포트 흐름, 주의 태그, 관심 포커스를 기억해 더 개인적인 피부 관리 문장을 만드는 과정입니다.
AI
2026.03.12
8 min read
AI 비용을 줄이기 위한 캐시와 모델 정책
AI 분석 품질을 유지하면서도 호출 비용을 줄이기 위해 리포트 캐시, 모델 등급, 지역별 정책을 나눠 적용한 기록입니다.