AI 하드웨어·소프트웨어 스택

대규모 언어 모델의 추론에서 사용되는 KV 캐시의 역할로 올바른 것은 무엇인가?

  1. A자주 쓰이는 질문과 답을 저장해 두고 같은 질문에 바로 답한다
  2. BCPU의 캐시 메모리에 모델의 가중치를 전부 넣는다
  3. C이미 처리한 토큰의 어텐션 Key와 Value를 저장해 두고, 새 토큰이 나올 때마다 다시 계산하는 것을 피한다
정답과 해설 보기

정답: C. 이미 처리한 토큰의 어텐션 Key와 Value를 저장해 두고, 새 토큰이 나올 때마다 다시 계산하는 것을 피한다

어텐션 계산에서는 새 토큰이 그때까지의 모든 토큰의 Key와 Value를 참조합니다. 이전 토큰의 Key와 Value는 변하지 않으므로, 매번 다시 계산하지 않고 저장해 두면 새 토큰 몫만 계산하면 됩니다. 이것이 KV 캐시입니다. 계산은 크게 줄지만, 저장하는 Key와 Value의 양은 문장 길이와 배치 크기에 비례하여 늘어납니다.

  • A. 답을 저장하는 구조가 아닙니다.
  • B. CPU의 캐시와는 별개의 것입니다.
  • C. 정답입니다. 계산을 크게 줄이는 대신 메모리를 사용합니다.
이 분야 연습하기 분야로 돌아가기

AI 하드웨어·소프트웨어 스택의 다른 문제

  1. 대규모 언어 모델의 추론에서 긴 문장이나 큰 배치를 다룰 때 문제가 되기 쉬운 것은 무엇인가?
  2. FP16으로 약 14 GB의 가중치를 가진 모델을 메모리 대역폭 2 TB/s의 GPU에서 배치 크기 1로 디코드한다. 토큰 하나를 생성하는 데 걸리는 시간의 하한에 가장 가까운 것은 무엇인가?
  3. Transformer 셀프 어텐션의 계산량은 입력 시퀀스 길이 n에 대해 어떻게 늘어나는가?
  4. FlashAttention 등 고속 어텐션 구현의 주된 발상으로 올바른 것은 무엇인가?
  5. AI 계산에서 사용되는 '연산 융합(오퍼레이터 퓨전)'의 주된 목적은 무엇인가?