AI 백과AI새로 배울 개념 1

KV 캐싱

KV Caching

트랜스포머 모델이 앞서 계산한 값을 저장해 두었다가 재사용하는 기법이에요.

어떤 개념인가요

KV 캐싱은 대규모 언어 모델이 문장을 한 토큰씩 만들어 갈 때, 이미 계산한 어텐션의 키(Key)와 값(Value)을 메모리에 보관해 두는 방법이에요. 새 토큰을 만들 때마다 앞부분을 처음부터 다시 계산하지 않아도 되어 중복된 연산이 줄어요.

이 기법이 필요해진 배경에는 문맥이 길어질수록 같은 계산이 반복되어 응답이 느려지고 비용이 커지는 문제가 있었어요. 긴 입력을 실용적으로 다루려면 이전 결과를 버리지 않고 쌓아 두는 설계가 필요해졌어요.

작동 원리

모델은 입력 토큰 각각에 대해 어텐션에 쓰이는 키와 값을 계산해요. 생성 단계에서는 이 값들을 캐시라는 저장 공간에 차곡차곡 쌓아 두고, 새 토큰이 들어오면 자신의 질의(Query)만 계산해 기존 값과 비교해요.

캐시 덕분에 한 단계당 계산량은 크게 줄지만, 문맥 길이에 비례해 저장 공간이 늘어나요. 그래서 긴 요청일수록 GPU 메모리를 많이 차지하고, 이를 줄이기 위한 압축 기법들도 함께 연구되고 있어요.

어디에 쓰이나요

챗봇이 대화를 이어 갈 때 이전 대화 내용을 매번 다시 계산하지 않도록 서버가 캐시를 유지해요. 같은 시스템 프롬프트가 반복되는 서비스에서는 공통 앞부분의 캐시를 재사용해 첫 응답 시간을 줄이기도 해요.

표 데이터 예측 모델처럼 같은 문맥에 여러 질문을 던지는 경우에도 캐시를 쓰면 반복 예측이 빨라져요. 다만 캐시를 얼마나 오래 보관할지는 메모리 비용과 응답 속도 사이에서 정해야 해요.

한계와 오해

KV 캐싱은 모델의 답을 더 똑똑하게 만드는 기술이 아니에요. 같은 입력에 대한 결과는 그대로이고, 계산을 재사용해 속도와 비용을 개선하는 최적화라고 이해하는 것이 정확해요.

캐시는 긴 문맥에서 GPU 메모리를 크게 차지해 동시에 처리할 수 있는 요청 수를 제한해요. 캐시가 커지면 오히려 지연이 생길 수 있어서, 무조건 빠르다고 생각하면 오해예요.

예를 들면

시험 문제를 풀 때 앞에서 푼 풀이 메모를 책상에 펼쳐 두고, 다음 문제에서 그 메모를 바로 참고하는 것과 비슷해요.

왜 알아둘 만한가요

반복 계산을 줄이는 원리를 알면 AI 서비스가 긴 문맥에서 메모리를 많이 쓰는 이유와 응답 속도가 결정되는 방식을 이해하는 데 도움이 돼요.

출처와 더 읽기

이렇게도 불러요KV 캐시, 키-값 캐시

LastAI에서 직접 보기

백과 문서는 AI가 쓰고, 개념이 맞는지 다시 살펴본 뒤 올렸어요. 값·순위처럼 금방 바뀌는 내용은 적지 않았어요. 틀린 곳이 있으면 알려 주세요. 틀린 곳 알리기마지막으로 고친 날

마이