개념 딥다이브: 샘플러
개념 딥다이브: 샘플러 (Samplers)
LLM이 추론할 때 후보 토큰들 중에서 어떻게 하나를 선택하는지, 샘플링이 무슨 역할을 하는지 살펴보는 페이지예요.
출처: 문서
본문
LLM이 예측을 할 때, 사실 단순히 토큰 하나를 고르는 것만은 아니에요. 먼저 각 토큰에 확률을 부여한 다음에 그중에서 선택해요. 문제는 수천 개의 토큰 중에서 "어떻게 고를지"인 경우가 많아요. 가장 직관적인 해결책은 항상 최선의 토큰을 고르는 것이지만, 모든 사용 사례가 그런 걸 선호하는 건 아니에요. 때로는 약간의 무작위성이 필요하거나 반복을 피하고 싶을 때가 있거든요. 이때 샘플링이 중요한 역할을 해요. 샘플링은 수천 개의 가능한 토큰 중에서 출력할 토큰을 선택하는 과정이에요.
다양한 샘플링 설정을 실험하고 시각화해 볼 수 있는 좋은 플레이그라운드: artefact2
다양한 샘플러 설정 (Different Samplers Settings)
⚠️ 샘플러는 하나씩 쌓아서(stack) 쓸 수 있어요. 예를 들어 Top K로 상위 토큰을 모은 다음에 Top P를 적용하거나, 그 반대로도 가능해요. 각 샘플러의 순서는 최종 분포(distribution)의 모양에 영향을 줘요.
더 알아보기 (Learn more)
- 원문 README (GitHub)
- 샘플링 비교 문서: Temperature / Top-K / Top-P