AI/2026.03.12/8 min read

AI 비용을 줄이기 위한 캐시와 모델 정책

AI 분석 품질을 유지하면서도 호출 비용을 줄이기 위해 리포트 캐시, 모델 등급, 지역별 정책을 나눠 적용한 기록입니다.

AI CostCacheModel Policy

Code notes

코드에서 확인한 구현 포인트

배포 기준 2026.03.12

관련 파일

apps/web/lib/ai-report.tsapps/web/lib/ai-model.tsapps/web/lib/region-ai-policy.tsapps/web/app/api/reports/weekly/route.ts

구현 메모

같은 세션의 AI 리포트가 이미 있으면 저장된 payload를 재사용해 중복 호출을 막는다.

resolveOpenAiModelForSession은 이전 분석 횟수를 기준으로 premium 모델과 standard 모델을 나눈다.

region-ai-policy는 지역별 무료 분석 제한, 모델 등급, 이미지 해상도, 주간 리포트 활성 여부를 정책으로 분리한다.

AI 비용은 제품 구조로 관리해야 한다

AI 기능은 만들 때보다 운영할 때 더 현실적인 문제가 생긴다. 사용자가 늘수록 호출 수가 늘고, 이미지와 긴 프롬프트를 다루면 비용도 빠르게 커질 수 있다.

그래서 Tangly는 비용을 단순히 ‘싼 모델을 쓰자’로 해결하지 않고, 언제 AI를 다시 부를지, 어떤 모델을 쓸지, 지역별로 어떤 정책을 적용할지를 제품 구조 안에 넣었다.

이미 만든 리포트는 다시 쓰기

같은 세션의 AI 리포트가 이미 생성되어 있다면 다시 호출하지 않는다. 서버는 먼저 ai_reports 테이블에서 캐시된 payload를 확인하고, 새로 만들 필요가 없으면 저장된 결과를 정리해서 반환한다.

이 방식은 비용뿐 아니라 사용자 경험에도 좋다. 같은 리포트를 다시 열 때 매번 기다릴 필요가 없고, 같은 분석 결과가 갑자기 다른 문장으로 바뀌는 일도 줄어든다.

처음 몇 번은 더 좋은 모델을 쓰는 이유

초기 사용자 경험은 중요하다. Tangly는 사용자의 첫 분석 경험에서 더 좋은 품질을 보여주고, 이후 반복 분석에서는 기본 모델을 쓰는 구조를 둘 수 있게 만들었다.

코드에서는 이전 분석 횟수를 세어 premium 모델을 쓸지 standard 모델을 쓸지 결정한다. 이렇게 하면 첫 인상과 장기 운영 비용 사이의 균형을 잡을 수 있다.

지역별 AI 정책

시장마다 비용, 사용 패턴, 정책이 다를 수 있다. 그래서 지역별 무료 분석 제한, 이미지 해상도, 모델 등급, 주간 리포트 활성 여부 같은 값을 정책으로 분리했다.

이 구조는 글로벌 확장에서도 중요하다. 모든 지역에 같은 비용 구조를 강제하기보다, 시장 상황에 맞게 조정할 수 있는 여지를 남겼다.

Keep reading

다른 글 이어서 보기

전체 글 보기