기술

AI API 비용 절감, 싼 모델 찾기 전에 Batch와 Prompt Cache부터 나눠야 합니다

AI API 비용을 줄이려면 먼저 “즉시 답해야 하는 요청”과 “나중에 처리해도 되는 요청”, 그리고 “반복되는 긴 프롬프트”를 분리해야 합니다.

7분 읽기
11 조회
#AI
#비용·인프라·데이터
#업무자동화

AI API 비용을 줄이려면 먼저 “즉시 답해야 하는 요청”과 “나중에 처리해도 되는 요청”, 그리고 “반복되는 긴 프롬프트”를 분리해야 합니다.

들어가며 — 독자가 지금 이 문제를 검색하는 이유

AI API 비용이 늘어나기 시작하면 가장 먼저 떠오르는 질문은 보통 이것입니다.

“더 싼 모델로 바꾸면 되지 않을까?”

물론 모델 선택은 중요합니다. 하지만 실무에서는 모델을 바꾸기 전에 먼저 봐야 할 비용 절감 지점이 있습니다. 바로 호출의 성격입니다.

모든 요청이 실시간일 필요는 없습니다. 모든 프롬프트를 매번 처음부터 다시 보낼 필요도 없습니다. OpenAI와 Anthropic은 각각 Batch API, Message Batches, Prompt Caching을 공식 문서로 제공하고 있습니다. 이 기능들은 단순히 “가격이 낮은 모델”을 찾는 방식이 아닙니다. 작업을 어떻게 나누고, 반복되는 컨텍스트를 어떻게 설계하느냐에 따라 비용 구조 자체를 바꾸는 방식에 가깝습니다.

이번 글에서 다룰 질문은 이것입니다.

“AI API 비용을 줄이기 위해 모델을 바꾸기 전에, 어떤 호출을 배치로 보내고 어떤 프롬프트를 캐시 대상으로 고정해야 할까?”

1. 먼저 실시간 작업과 비동기 작업을 나눠야 합니다

AI API 호출은 크게 두 종류로 나눌 수 있습니다.

첫째, 사용자가 화면 앞에서 기다리는 작업입니다.

채팅 응답, 검색 질의 응답, 실시간 문서 작성 보조처럼 응답 지연이 사용자 경험에 바로 영향을 주는 작업입니다. 이런 호출은 대체로 즉시 응답이 중요합니다.

둘째, 사용자가 지금 당장 기다리지 않아도 되는 작업입니다.

대량 문서 분류, 기존 데이터셋 라벨링, 로그 요약, 야간 보고서 생성, 고객 문의 이력 일괄 분석 같은 작업이 여기에 들어갑니다. 이런 작업은 “바로 응답”보다 “정해진 시간 안에 대량 처리”가 더 중요합니다.

OpenAI는 Batch API를 비동기 작업 처리 방식으로 문서화하고 있습니다. Anthropic도 Message Batches를 통해 대량 요청을 비동기로 처리하는 방식을 안내합니다.

여기서 중요한 점은 “배치 기능이 있으니 모두 배치로 보내자”가 아닙니다.

핵심은 호출을 다음처럼 분류하는 것입니다.

작업 유형

예시

우선 검토 방식

사용자가 기다리는 작업

챗봇 응답, 실시간 검색 답변, 작성 보조

실시간 API 호출

나중에 처리해도 되는 작업

대량 문서 분류, 야간 요약, 데이터 라벨링

Batch API 또는 Message Batches

반복 컨텍스트가 긴 작업

긴 시스템 지침, 고정 문서 기반 분석, 동일 정책문 반복 사용

Prompt Caching

비용 절감은 “싼 모델 찾기”보다 “실시간으로 처리할 필요가 없는 일을 실시간 호출에서 빼내는 것”에서 시작됩니다.

2. 반복되는 긴 프롬프트는 캐시 가능한 구조로 고정해야 합니다

두 번째로 봐야 할 지점은 프롬프트 구조입니다.

많은 팀이 AI API를 붙일 때 매 요청마다 긴 시스템 프롬프트, 정책 문서, 출력 형식, 예시, 내부 지침을 함께 보냅니다. 이 내용이 자주 바뀌지 않는다면, 매번 같은 내용을 다시 입력 토큰으로 처리하는 구조가 됩니다.

OpenAI는 Prompt Caching 문서에서 캐시된 토큰을 확인할 수 있는 항목으로 cached_tokens를 설명합니다. Anthropic도 Prompt caching을 통해 반복되는 프롬프트 컨텍스트를 캐시하는 방식을 안내합니다.

여기서 실무적으로 봐야 할 질문은 다음입니다.

“우리 프롬프트에서 매번 바뀌는 부분과 거의 바뀌지 않는 부분이 분리되어 있는가?”

예를 들어 문서 검토 AI를 만든다고 가정해보겠습니다.

매번 바뀌는 부분은 사용자가 올린 문서입니다. 반면 거의 바뀌지 않는 부분은 다음과 같습니다.

  • 검토 기준
  • 출력 형식
  • 회사 내부 문서 스타일
  • 금지해야 할 표현
  • 민감정보 처리 기준
  • 예시 답변 형식

이 고정 영역이 요청마다 조금씩 달라지면 캐시 효율을 기대하기 어렵습니다. 따라서 Prompt Caching을 활용하려면 프롬프트를 “매번 새로 조합하는 문자열”이 아니라 “고정 prefix와 가변 입력”으로 나눠 설계해야 합니다.

좋은 구조는 다음에 가깝습니다.

```markdown

[고정 영역]

  • 역할
  • 검토 기준
  • 출력 형식
  • 예시
  • 정책

[가변 영역]

  • 이번에 분석할 문서
  • 사용자의 질문
  • 요청별 조건

```

이렇게 나눠야 캐시 적용 여부를 추적할 수 있고, 어떤 부분이 비용 절감에 기여하는지도 볼 수 있습니다.

3. 비용 검증은 “총액”이 아니라 작업 유형별로 봐야 합니다

AI 비용을 줄였는지 확인할 때 월 청구액만 보면 원인을 알기 어렵습니다.

이번 달 비용이 줄었다고 해도 사용량이 줄어서인지, 모델을 바꿔서인지, 배치 처리가 늘어서인지, 캐시가 잘 적용돼서인지는 따로 봐야 합니다.

따라서 비용 검증은 최소한 다음 단위로 나눠야 합니다.

검증 항목

확인할 질문

실시간 호출 비중

꼭 즉시 응답해야 하는 요청만 실시간으로 남아 있는가?

배치 전환 대상

대량 처리·야간 처리·후처리 작업이 실시간 호출에 섞여 있지 않은가?

캐시 대상 프롬프트

반복되는 긴 지침이 고정 영역으로 분리되어 있는가?

캐시 적용 여부

OpenAI 사용 시 cached_tokens 같은 지표를 확인하고 있는가?

실패 재처리 방식

배치 작업 실패 시 전체를 다시 보내는 구조는 아닌가?

품질 영향

비용 절감 후 결과 품질 검수 기준이 유지되는가?

특히 Batch와 Prompt Caching은 서로를 대체하는 기능이 아닙니다.

Batch는 “언제 처리할 것인가”에 가깝습니다. Prompt Caching은 “반복되는 입력을 어떻게 다룰 것인가”의 문제입니다. 그래서 같은 시스템 안에서도 둘은 함께 검토할 수 있습니다.

예를 들어 대량 문서 분류 작업이 있다면 다음처럼 설계할 수 있습니다.

  • 문서 분류 기준과 출력 형식은 고정 프롬프트로 유지한다.
  • 개별 문서 내용만 가변 입력으로 넣는다.
  • 실시간 응답이 필요 없는 문서 묶음은 배치 처리로 보낸다.
  • 처리 결과는 샘플링 검수로 품질을 확인한다.
  • 비용 분석 시 실시간 호출, 배치 호출, 캐시 적용 토큰을 분리해 본다.

이 접근은 단순히 모델 가격표를 비교하는 것보다 실무에서 더 재현하기 쉽습니다.

바로 적용하는 체크리스트 또는 비교 기준

AI API 비용을 줄이기 전에 아래 기준으로 현재 호출을 먼저 분류해보면 좋습니다.

질문

적용 후보

사용자가 지금 응답을 기다리는가?

채팅, 검색 답변, 실시간 작성 보조

실시간 호출

몇 분 또는 그 이상 늦어져도 되는가?

문서 일괄 분류, 데이터셋 처리, 야간 리포트

Batch API / Message Batches

같은 긴 지침이 반복되는가?

시스템 프롬프트, 정책, 출력 포맷, 예시

Prompt Caching

요청마다 프롬프트 앞부분이 자주 바뀌는가?

동적으로 조합되는 긴 지침

캐시 구조 재설계 필요

실패한 작업만 다시 처리할 수 있는가?

배치 일부 실패, 개별 문서 오류

재시도 단위 설계 필요

비용 절감 후 품질을 확인할 기준이 있는가?

샘플 검수, 기준 답안, 오류 유형 분류

검증 체계 필요

실무 적용 순서는 다음처럼 잡을 수 있습니다.

1. 최근 API 호출을 업무 유형별로 나눈다.

2. 실시간 응답이 꼭 필요한 호출만 남긴다.

3. 대량·반복·후처리 작업을 배치 후보로 분리한다.

4. 반복되는 긴 프롬프트를 고정 영역과 가변 영역으로 나눈다.

5. OpenAI Prompt Caching을 쓴다면 cached_tokens 같은 캐시 관련 지표를 확인한다.

6. Anthropic Prompt caching을 쓴다면 공식 문서의 캐시 동작 조건과 TTL 관련 설명을 확인한다.

7. 비용만 보지 말고 품질 검수 결과를 함께 본다.

참고할 공식 문서는 다음과 같습니다.

마무리 + 생각해볼 질문 1개

AI API 비용 절감은 모델 가격표를 비교하는 일로 끝나지 않습니다.

실시간으로 처리할 일과 나중에 처리해도 되는 일을 나누고, 반복되는 긴 프롬프트를 캐시 가능한 구조로 고정하고, 비용 지표와 품질 지표를 함께 보는 운영 설계에 가깝습니다.

모델을 바꾸는 것은 마지막 카드일 수 있습니다. 그 전에 현재 호출 구조가 모든 일을 실시간으로 처리하고 있지는 않은지, 같은 지침을 매번 새로 보내고 있지는 않은지부터 확인해야 합니다.

생각해볼 질문은 이것입니다.

“우리 서비스의 AI 호출 중 사용자가 실제로 기다리는 요청은 몇 개이고, 나머지는 배치나 캐시 구조로 분리할 수 있는가?”

이 글이 도움이 되었나요?

관련 포스트

기술

AI API 비용 절감은 모델 교체보다 호출 설계에서 시작된다

AI 비용을 줄이려면 먼저 요청을 "즉시 처리", "나중에 처리", "재사용 가능한 처리"로 나눠야 합니다.

약 1개월 전
47
기술

AI가 쇼핑몰 밖에서 결제까지 이어주는 시대: 에이전트 커머스가 바꾸는 유통 업무

상품을 찾고, 장바구니에 담고, 결제까지 이어지는 쇼핑 여정이 이제 웹사이트 안이 아니라 AI 검색·챗봇 화면에서 시작되고 있습니다.

28일 전
55
기술

사내 문서 AI 검색, RAG보다 먼저 정해야 할 3가지

회사 내부 문서 검색 AI는 모델 선택보다 “어디를 연결하고, 누가 볼 수 있으며, 어느 범위부터 시작할지”를 먼저 정해야 합니다.

28일 전
42
기술

AI 코딩 에이전트에게 맡기기 전, 테스트 가능한 코드베이스부터 만들어라

AI 코딩 에이전트의 성과는 프롬프트 실력보다 테스트·PR·리뷰·보안 게이트가 갖춰진 코드베이스에서 더 안정적으로 나온다.

17일 전
34
기술

같은 질문을 던지면 누가 출처를 가장 잘 보여줄까? ChatGPT·Claude·Gemini·Perplexity 검색 답변 비교

AI 검색 도구를 고를 때는 "답을 잘하느냐"만큼 "출처를 얼마나 확인하기 쉽게 남기느냐"를 봐야 합니다.

28일 전
34
기술

AI 검색 시대, SEO는 끝났나? Google 공식 가이드로 보는 AEO/GEO의 현실

AI 검색 최적화는 새로운 꼼수가 아니라, AI가 인용하고 요약하기 쉬운 유용한 원문을 만드는 방향으로 이해하는 편이 안전합니다.

17일 전
28