IT1004

AI API 비용이 매출을 넘지 않게 하는 설계

개발 실무 IT1004

AI를 쓰는 서비스는 사용량에 비례해 원가가 늘어납니다. 정액제로 팔면서 설계를 안 하면 잘될수록 손해가 납니다.

원가를 먼저 계산하세요

기능 하나가 요청당 얼마인지 계산해 두어야 합니다. 그리고 사용자당 월 몇 회를 쓸지 추정해 곱합니다.

이 숫자가 월 요금의 30%를 넘으면 위험 신호입니다.

항목예시 계산
요청당 원가0.02달러
사용자당 월 사용300회
사용자당 월 원가6달러
월 요금10달러 → 원가율 60%. 위험

줄이는 방법 네 가지

  1. 모델을 나눕니다 — 분류·요약은 저렴한 모델, 정확도가 필요한 것만 상위 모델
  2. 캐시합니다 — 같은 입력은 다시 부르지 않습니다
  3. 미리 거릅니다 — 빈 입력, 중복, 너무 짧은 것은 호출 전에 차단
  4. 묶습니다 — 여러 건을 한 요청으로

한도를 걸어두세요

버그나 악용으로 하루에 수백만 원이 나갈 수 있습니다. 계정 단위·사용자 단위 한도를 반드시 걸어야 합니다.

그리고 일일 사용량 알림을 설정해 두면 이상을 빨리 발견합니다.

무료 플랜에 AI 기능을 무제한으로 열어두면 자동화 봇의 표적이 됩니다. 무료는 반드시 제한이 필요합니다.

출력 길이도 비용입니다

입력만 신경 쓰고 출력을 방치하는 경우가 많습니다. 최대 출력 길이를 제한하면 비용과 응답 속도가 함께 개선됩니다.

원가 계산을 먼저 표로 만드세요

감으로 판단하면 반드시 틀립니다. 기능별로 계산해야 어디를 줄일지 보입니다.

기능1회 원가월 사용(1인)월 원가
요약약 10원200회2,000원
분류약 3원500회1,500원
긴 문서 분석약 150원20회3,000원
합계--6,500원

월 요금이 9,900원이라면 원가율이 66%입니다. 여기에 서버비와 결제 수수료를 더하면 남는 것이 거의 없습니다.

모델을 나누는 것이 가장 효과가 큽니다

대부분의 요청은 어려운 작업이 아닙니다. 분류·추출·짧은 요약은 저렴한 모델로 충분한 경우가 많습니다.

정확도가 중요한 것만 상위 모델로 보내면 원가가 몇 분의 일로 줄어듭니다.

  1. 먼저 저렴한 모델로 처리합니다
  2. 결과의 확신도가 낮으면 상위 모델로 재시도
  3. 금액·계약처럼 틀리면 안 되는 것만 처음부터 상위 모델
  4. 비율을 기록해 두고 조정합니다

캐시가 두 번째로 효과가 큽니다

캐시 대상효과
동일 입력완전 재사용
유사 입력임베딩 기반 매칭
공통 지시문프롬프트 캐싱 지원 시 큰 절감
중간 결과재계산 방지

같은 문서를 여러 번 분석하는 서비스라면 결과를 저장하는 것만으로 절반 이상이 줄어듭니다.

호출 전에 걸러내기

호출하기 전에 막는 것이 가장 싼 최적화입니다. 코드 몇 줄로 상당한 비율이 걸러집니다.

한도와 알림은 필수입니다

  1. 계정 단위 월 한도 — 제공사 설정
  2. 사용자 단위 일/월 한도 — 애플리케이션에서
  3. 일일 사용량 알림 — 평소의 3배 등
  4. 무료 플랜 별도 한도 — 가장 악용되기 쉬움
  5. 비정상 패턴 차단 — 초당 요청 수
무한 루프나 악용으로 하루에 수백만원이 나가는 사고가 실제로 발생합니다. 다음을 반드시 설정하세요.

출력 길이도 비용입니다

입력만 신경 쓰고 출력을 방치하는 경우가 많은데, 대부분의 모델은 출력 토큰이 더 비쌉니다.

최대 출력 길이를 제한하고, 필요한 형식만 요구하면 비용과 응답 속도가 함께 개선됩니다. JSON 형식으로 필요한 필드만 받는 방식이 효과적입니다.

자주 묻는 질문

자체 모델을 돌리는 게 싼가요?
규모에 따라 다릅니다. GPU 비용과 운영 부담을 넣으면 소규모에서는 API가 저렴한 경우가 많습니다.
사용량 기반으로 요금을 받으면 되지 않나요?
원가 연동이라 안전하지만, 고객이 예측하기 어려워 이탈 요인이 됩니다. 정액 + 초과분 과금 구조가 절충안입니다.
스트리밍을 쓰면 비용이 줄어드나요?
비용은 같습니다. 다만 체감 속도가 개선되고, 중간에 취소하면 남은 토큰을 아낄 수 있습니다.

같이 보면 좋은 글

개발 실무 전체 글

개발 실무 목록 보기 →