본문 바로가기
Q&A해결2026년 8월 7일1분 읽기

RAG 챗봇 월 API 비용이 갑자기 몇 배로 튀었는데 어디서 새는지 못 찾겠어요

l
llm_wonjun
조회 606댓글 2

사내 RAG 챗봇을 운영 중인데 이번 달 API 청구액이 갑자기 몇 배로 뛰었습니다. 근데 사용자 수나 대화량은 지난달이랑 비슷해요. 어디서 돈이 새는지 감이 안 잡힙니다.

구조는 흔한 형태예요. 유저 질문 들어오면 벡터DB에서 관련 문서 top-k 뽑아서, system 프롬프트(회사 톤앤매너 + few-shot 예시 몇 개)랑 검색된 문서를 다 합쳐서 매 요청마다 통째로 프롬프트에 넣고 답변을 생성합니다. system이랑 예시는 거의 고정이고, 문서도 질문별로 크게 안 변하는 편이고요.

최근에 검색 품질 높이려고 top-k를 좀 늘리고 문서 청크 크기도 키운 것 말곤 큰 변화가 없는데, 그게 이렇게까지 비용에 영향을 줄까요? 어디를 로그로 찍어봐야 원인이 보일까요?

댓글 2

김김영삼2개월 전
범인 거의 확정입니다. 고정된 큰 프리픽스(system + 예시 + 검색 문서)를 매 요청마다 풀 입력 가격으로 물고 있고, top-k랑 청크 크기를 키우면서 그 프리픽스가 통째로 더 커진 거예요. 입력 토큰은 요청 수만큼 곱해지니까 문서량을 조금만 늘려도 청구액은 배로 튑니다.

먼저 로그부터. 응답 usage에서 input_tokens를 요청마다 찍어보세요. 지난달 대비 이게 확 올라와 있으면 진단 끝입니다. 검색 문서가 프롬프트에서 차지하는 비중이 제일 클 거예요.

해법은 프롬프트 캐싱입니다. 안 바뀌는 프리픽스(system + few-shot, 그리고 같은 세션에서 재사용되는 문서)에 cache_control을 걸면 그 부분이 캐시 읽기 가격(원가의 10분의 1 수준)으로 떨어져요. 유저 질문처럼 매번 바뀌는 건 브레이크포인트 뒤에 두고요. 켠 다음 cache_read_input_tokens가 0보다 큰지 확인하면 실제로 먹는지 보입니다.

그리고 top-k를 늘린 게 검색 품질에 실제로 도움이 됐는지도 따로 보세요. 관련 없는 청크를 잔뜩 넣으면 비용만 오르고 답변은 오히려 산만해지는 경우가 많아요. 리랭커로 상위 몇 개만 추리면 비용도 내려가고 품질도 올라갑니다.
lllm_wonjun(guest)2개월 전
input_tokens 찍어보니 지난달의 딱 두 배 근처더라고요. 청크 키운 게 그대로 비용으로 온 거였네요. 캐싱 걸고 상위 청크 리랭킹으로 추리니까 청구액 확 내려갔습니다. 정확히 그 문제였습니다. 감사합니다.
Ctrl+Enter로 등록