AI VIDEO BRIEFING

LLM 캐싱 설계 정리: 프롬프트 캐시와 시맨틱 캐시의 차이, 지연과 비용 트레이드오프

빅테크 기술 면접에 실제로 나온 문제를 풀며, 같은 프롬프트를 키-값으로 캐시하는 방법과 뜻이 비슷한 질문을 벡터로 찾아내는 시맨틱 캐시를 비교하고 정확도와 지연 시간, 비용의 트레이드오프를 짚는다.

같은 질문에 매번 LLM을 부를 필요는 없다 — 빅테크 면접에 나온 캐싱 설계 영상 대표 이미지

핵심 메시지

  • 글자까지 똑같은 프롬프트는 일반 키-값 캐시로 충분하다. 첫 요청은 캐시 미스로 LLM을 호출하고 응답을 저장해 두면, 같은 질문을 던진 다음 사용자는 저장된 답을 그대로 받는다.
  • 저장된 답은 시간이 지나면 틀릴 수 있어, 유효 시간을 짧게 두거나 오래 쓰이지 않은 항목부터 밀어내는 방식으로 관리해야 한다.
  • 글자는 다르지만 뜻이 같은 질문까지 잡으려면 질문을 벡터로 바꿔 가장 가까운 것을 찾는 시맨틱 캐시가 필요하다. 유사도가 기준치를 넘으면 같은 질문으로 보고 저장된 답을 내준다.
  • 시맨틱 캐시는 항상 근사 일치이므로 실패 지점이 늘어난다. 영상은 3천 달러짜리 노트북과 1천 달러짜리 노트북을 찾는 질문의 벡터가 비슷하게 나올 수 있다는 예를 든다.
  • 지연 시간은 늘지만 비용은 줄어든다. 임베딩 모델은 가볍고 싸지만, LLM 호출은 훨씬 무거운 연산을 거치고 대개 외부 업체에 값을 치러야 하기 때문이다.

쉽게 이해하기

이 영상은 실제 빅테크 기술 면접에서 나온 문제를 6분짜리 모의 면접 형식으로 풀어 보인다. 질문은 단순하다. 서비스에 같은 프롬프트가 반복해서 들어올 때 캐시를 어떻게 넣겠는가. 답하는 쪽이 가장 먼저 한 일은 조건을 되묻는 것이었다. 들어오는 질문이 글자까지 똑같은지, 아니면 뜻만 비슷한지에 따라 설계가 완전히 달라지기 때문이다.

글자가 같은 경우부터 보면 구조는 익숙하다. 시스템과 LLM 사이에 캐시를 두고, 처음 들어온 질문은 캐시 미스로 LLM까지 보낸 뒤 받은 답을 저장한다. 폼에서 같은 항목을 고른 다음 사용자는 저장된 답을 곧바로 받는다. 문제는 그 답이 낡을 수 있다는 점이다. 영상은 경로 중간에 통제가 생긴 상황을 예로 들며, 유효 시간을 짧게 두거나 오래 쓰이지 않은 항목부터 비우는 방식으로 낡은 답을 걷어내야 한다고 설명한다.

뜻만 같은 질문으로 넘어가면 이야기가 달라진다. 같은 출발지와 목적지를 다른 문장으로 물으면 키가 일치하지 않아 일반 캐시는 무용지물이다. 그래서 캐시의 키를 질문 자체가 아니라 질문을 수치로 옮긴 벡터로 두고, 들어온 질문의 벡터와 가장 가까운 것을 찾는다. 유사도 계산에는 코사인 유사도가 흔히 쓰이며, 값이 기준치를 넘으면 앞서 누군가 물었던 그 질문으로 보고 저장된 답을 반환한다.

면접관은 여기서 트레이드오프를 묻는다. 답은 세 가지로 정리된다. 첫째, 항상 근사 일치이므로 뜻이 미묘하게 다른 질문에 엉뚱한 답이 나갈 수 있다. 둘째, 정확 일치는 해시맵 조회에 가깝지만 벡터 검색은 근사 최근접 탐색이라 훨씬 느려 지연 시간이 늘어난다. 셋째, 그럼에도 비용은 유리하다. 임베딩 모델은 빠르고 값이 싼 반면 LLM 호출은 무거운 연산을 통째로 거치고 대개 외부 제공자에게 비용을 지불해야 하기 때문이다.

주요 인사이트

  • 면접에서 먼저 조건을 되묻는 태도 자체가 답의 일부다. 같은 '캐싱' 질문이라도 입력이 폼에서 만들어진 고정 문자열인지 자유 문장인지에 따라 완전히 다른 설계가 나온다.
  • 시맨틱 캐시의 진짜 위험은 느려지는 것이 아니라 조용히 틀린 답을 재사용하는 것이다. 임베딩 과정에서 가격이나 조건 같은 세부가 뭉개지면 유사도는 높게 나오지만 사용자가 원한 답은 아니게 된다.
  • 캐시를 넣는 이유를 지연 시간 단축으로만 생각하면 시맨틱 캐시는 손해처럼 보인다. 이 설계의 이득은 LLM 호출 자체를 줄이는 비용 절감 쪽에 있다.
  • 유사도 기준치는 그대로 품질 손잡이가 된다. 기준을 낮추면 캐시 적중률은 올라가지만 엉뚱한 답이 나갈 확률이 함께 올라간다.

자주 묻는 질문

일반 캐시와 시맨틱 캐시는 무엇이 다른가?

일반 캐시는 질문 문자열을 키로 두고 정확히 일치하는 항목만 찾는다. 시맨틱 캐시는 질문을 벡터로 바꿔 저장하고, 들어온 질문의 벡터와 가장 가까운 항목을 찾아 유사도가 기준치를 넘으면 같은 질문으로 취급한다.

저장된 답이 낡는 문제는 어떻게 처리하나?

영상은 두 가지를 든다. 응답에 짧은 유효 시간을 걸어 일정 시간이 지나면 버리는 방법과, 최근에 쓰이지 않은 항목부터 밀어내는 방식으로 캐시를 비우는 방법이다.

캐시를 거치면 비용이 정말 줄어드나?

영상의 설명으로는 그렇다. 캐시 확인에 쓰이는 임베딩 모델은 가볍고 저렴한 반면, LLM 호출은 모든 연산 블록을 통과해야 하고 대개 외부 제공자에게 요금을 내야 해 단가가 훨씬 높다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식