
하드코딩된 레시피가 AI를 이기는 이유: 실제 시장 데이터를 활용한 필리핀 식단 비용 계산 엔진 구축
요약
필리핀의 실제 시장 가격 데이터를 활용하여 최적의 식단 비용을 계산하는 웹 앱 구축 사례를 소개합니다. AI의 수치 계산 오류를 극복하기 위해 정밀한 하드코딩된 레시피 데이터베이스와 수학적 엔진을 결합한 접근 방식을 다룹니다.
핵심 포인트
- AI의 자연어 추론 능력과 정밀 수치 계산 능력의 한계 구분
- PDF 데이터 추출에는 AI를 활용하되 계산은 수학 엔진 사용
- 도메인 특화 데이터(레시피, 수량)는 하드코딩된 DB가 더 정확함
- 실제 시장 가격 데이터를 활용한 실용적인 문제 해결 방식

"Ma, ano ulam?" (엄마, 저녁 메뉴가 뭐예요?)
이 질문은 너무나 보편적이어서 거의 국가적인 유행어라고 할 수 있습니다. 그리고 이제 제가 직접 요리를 하고 재래시장(palengke)에서 장을 보는 입장이 되니, 매일같이 제 머릿속에서도 이 질문이 들려옵니다.
문제는 요리 자체가 아닙니다. 식재료 가격이 매일 변하고 예산을 아껴 써야 하는 상황에서 _무엇을 요리할지 결정하는 것_이 문제입니다.
그래서 저는 추측 대신 수학을 통해 이 질문에 답할 수 있는 웹 앱을 만들었습니다.
라이브 데모: ma-anoulam.vercel.app
GitHub: chanrylejay/ano-ulam
문제 (The Problem)
이곳 필리핀에서는 농업부가 Bantay Presyo라고 불리는 일일 가격 게시물을 발행합니다. 이는 메트로 마닐라(Metro Manila) 지역의 시장과 슈퍼마켓 전역의 원자재 가격(채소, 육류, 생선, 쌀, 식용유)을 추적합니다. 이 데이터는 웹사이트에 PDF 형식으로 공개되어 있습니다.
데이터는 존재합니다. 하지만 일반 사람들이 무엇을 요리할지 결정하는 데 이 데이터를 사용하는 사람은 아무도 없습니다.
저는 다음과 같은 기능을 가진 무언가를 만들고 싶었습니다:
- 매일 실제 시장 가격을 자동으로 가져오기
- 현재 가장 저렴하게 요리할 수 있는 식단이 무엇인지 계산하기
- 정확히 얼마를 쓰고 있는지 알 수 있도록 재료별 비용 내역 보여주기
- 수동 작업 없이 스스로 작동하기
V1: AI 접근 방식 (그리고 실패한 이유)
저의 첫 번째 본능은 AI가 모든 것을 처리하게 하는 것이었습니다. 저는 가격 데이터를 DeepSeek에 보내고, 비용 추정치가 포함된 필리핀 레시피 제안을 생성해 달라고 요청했습니다.
결과는... 좋지 않았습니다.
정확도: 10점 만점에 6-7점.
무엇이 잘못되었는지 알려드리겠습니다:
- 잘못된 재료 (Wrong ingredients):
AI는 여전히 시스템 내에 존재하지만, 오직 자연어 추론 (Natural language reasoning) 용도로만 사용됩니다. 비용 엔진이 가장 저렴한 식단 8개를 선택하면
AI는 다음 작업에 매우 뛰어납니다:
- 자연어 추론 (Natural language reasoning) 및 설명
- 지저분한 PDF로부터의 텍스트 추출 (Text extraction)
- 대화형 응답 (Conversational responses)
- 번역 및 요약 (Translation and summarization)
AI가 어려움을 겪는 작업은 다음과 같습니다:
- 도메인 특화 구조화 데이터 (필리핀 레시피, 팔렝케(palengke) 수량)
- 정밀한 수치 계산 (재료당 비용)
- 문화적 정확성 (실제 시니강(sinigang)에 들어가는 재료 vs ChatGPT가 시니강에 들어간다고 생각하는 재료)
구조화된 도메인 특화 데이터의 경우: 하드코딩된 데이터베이스 + 수학 엔진 (math engines)이 매번 AI 생성보다 뛰어난 성능을 발휘할 것입니다. AI는 추론과 언어처럼 실제로 잘하는 일에 사용하고, 결정론적 시스템 (deterministic systems)이 데이터를 처리하도록 하세요.
구축 기술 (Built With)
- Next.js 14 (App Router) + TypeScript + Tailwind CSS
- 가격, 레시피, 제안을 위한 Neon PostgreSQL (싱가포르 리전)
- PDF 추출 및 추론을 위한 DeepSeek API (deepseek-chat)
- 일일 자동화를 위한 Vercel 호스팅 + Vercel Cron Jobs
- PDF 텍스트 추출을 위한 pdf-parse v2
- AI 보조 개발 (AI-assisted development): 초기 스캐폴딩(scaffold)을 위한 Bolt.new, 그 외 모든 작업을 위한 VS Code
저는 전통적인 소프트웨어 엔지니어는 아닙니다. 4년 이상의 운영 및 콘텐츠 모더레이션 (content moderation) 경험을 가지고 있습니다. 저는 AI 보조 개발 도구를 사용하여 프로덕션 시스템을 구축합니다. 이 프로젝트는 Bolt.new에서 스캐폴딩되었고, VS Code에서 확장 및 디버깅되었으며, GitHub을 통해 버전 관리되었고, Vercel에 배포되었습니다.
체험하기 (Try It)
🔗 라이브 데모: ma-anoulam.vercel.app
💻 GitHub: github.com/chanrylejay/ano-ulam (MIT License)
집에서 요리하고 팔렝케(palengke)에서 장을 보신다면 — 혹은 그런 분을 알고 계신다면 — 한 번 사용해 보세요. 레시피 제안과 피드백은 언제나 환영합니다.
그리고 만약 AI가 구조화된 데이터를 생성하도록 유혹을 느끼는 무언가를 구축하고 있다면: 먼저 하드코딩을 시도해 보세요. 그 차이에 놀라게 될지도 모릅니다.
제작: Chanryle Jay Cagara · 필리핀 마닐라
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기