정의

트랜스포머에서 단일 토큰이 생성되는 과정을 1인칭 관점에서 비유적으로 설명하는 개념이다. 프롬프트가 prefill되어 KV cache 형태의 ‘기억의 궁전’이 형성된 후, 각 토큰은 hidden state(순례자)가 되어 residual stream을 따라 여러 레이어를 통과하며 attention과 MoE를 거쳐 다음 토큰을 샘플링하는 여정으로 표현된다.

핵심 속성

  • Prefill: 입력 프롬프트를 병렬로 처리하여 KV cache를 한꺼번에 구축하는 단계. 시스템 프롬프트와 유저 프롬프트가 포함된다.
  • KV cache: 생성 과정에서 점진적으로 자라나는 ‘기억의 궁전’. 각 레이어에서 attention 연산을 통해 생긴 Key와 Value 행렬이 누적된다. GQA(Group Query Attention)로 캐시 효율을 높인다.
  • Residual stream: hidden state x가 자신을 계속 덧대는 흐름. gradient 보존뿐만 아니라 원래 의미에 중력을 부여하는 역할을 한다.
  • Hidden state (순례자): 토큰이 embedding 공간으로 변환된 상태. 같은 dimension을 유지하며 레이어를 통과하고, 매 레이어에서 델타(정보)를 누적한다.
  • Attention (soft lookup): Query가 Key에 질문을 던져 Value의 가중합을 얻는 연산. Karpathy의 정의에 따르면 ‘soft lookup’으로, 하나를 고르는 것이 아니라 비율로 섞는 혼합물을 만든다. RoPE(회전 위치 인코딩)로 위치 정보를 임베딩에 감싼다.
  • MoE (Mixture of Experts): 384개의 expert 중 top-k(예: 8개)만 활성화되는 sparse routing. 각 expert는 FFN 역할을 하며, 가중합으로 결합된다. MoE 연산에서는 KV cache가 남지 않고 attention에서만 기록이 생성된다.
  • Layer Norm (RMS Norm): residual stream에 들어가기 전에 hidden state를 정규화하여 안정적인 학습과 추론을 돕는다.
  • Sampling: 마지막 layer 이후 unembedding을 거쳐 vocabulary 분포에서 확률적으로 다음 토큰을 선택. 이 한 번의 여정이 완료되면 새로운 토큰이 다시 hidden state가 되어 auto-regressive하게 반복된다.

관계

인용

“KV cache가 자라나는 기억의 궁전이고, 파라미터는 움직이지 않는 지형이다. 토큰은 그 둘 사이를 오가는 순례자다. 그 연쇄의 궤적이 우리가 의미라고 부르는 풍경을 만든다.”

출처

클리핑 · YouTube