4.1.1 LLM(Large Language Model)의 다음 토큰 예측 메커니즘과 무작위성
현대 소프트웨어 아키텍처에서 거대 언어 모델(LLM)을 다룰 때, 엔지니어가 겪는 가장 큰 좌절은 모델이 함수(Function)처럼 동작하지 않는다는 사실이다. f(x)=y라는 결정론적 공식 대신, LLM은 본질적으로 P(x_{t} \vert x_{1}, x_{2}, \dots, x_{t-1})의 확률 함수를 따른다. 이 근본적인 차이를 이해하지 못하면, 우리는 결코 오라클(Oracle)이 검증할 수 있는 통제된 시스템을 구축할 수 없다.
본 절에서는 LLM이 지닌 ’다음 토큰 예측(Next Token Prediction)’의 기계적 메커니즘을 해부하고, 왜 동일한 프롬프트가 매번 무작위의 결과를 낳게 되는지 증명한다.
1. 차원 축소와 확률 분포(Probability Distribution)의 생성
인간은 문장을 ’의미의 덩어리’로 이해하지만, LLM은 텍스트를 고차원 벡터 공간의 점(Token)들로 치환하여 연산한다. 모델 내부의 트랜스포머(Transformer) 어텐션 레이어(Attention Layer)는 입력된 프롬프트의 컨텍스트를 분석한 뒤, 어휘 사전(Vocabulary)에 존재하는 수십만 개의 전체 토큰들을 대상으로 “다음에 올 토큰이 무엇인가?“에 대한 수학적 확률 분포(Logit)를 출력한다.
예를 들어, “소프트웨어 테스트의 핵심은 결정론적“이라는 입력이 주어졌을 때, 마지막 출력계층(Output Layer)은 다음과 같은 Softmax 확률 분포를 계산한다.
오라클이다(45%)정답지다(35%)검증이다(15%)버그다(5%)
이 지점이 전통적인 소프트웨어와 확률론적 AI가 완벽하게 갈라서는 분기점이다. 기존의 결정론적 알고리즘이라면 max() 함수를 통해 언제나 45%의 확률을 얻은 오라클이다를 반환했겠지만, 인간의 ’창의적인 대화’를 모사하도록 설계된 LLM은 이 확률 분포 위에서 **샘플링(Sampling)**을 수행한다.
2. 샘플링(Sampling)과 하이퍼파라미터에 의한 무작위성 주입
가장 가능성 높은 토큰만 선택하는 탐욕적 탐색(Greedy Search)을 무시하고, 언어 모델은 다형성(Diversity)을 확보하기 위해 확률론적 주사위를 굴린다. 이 과정에서 우리는 통제 불능의 ’무작위성(Randomness)’과 마주하게 된다.
- 온도(Temperature)의 개입: 샘플링 과정에서 가장 치명적인 변수는
Temperature이다. 모델은 Softmax 함수를 통과하기 전 로짓(Logit) 값을 온도로 나눈다(\frac{z_i}{T}). 온도가 1.0일 때는 자연스러운 확률에 따라 주사위를 굴리지만, 온도가 높아질수록 확률 분포가 융기(평탄화)되어버그다와 같이 희박한 토큰이 선택될 꼬리(Tail) 확률이 기형적으로 높아진다. - Top-p (Nucleus)와 Top-k 샘플링: 주사위를 굴릴 후보군의 크기를 자르는 방식이다. 누적 확률합이 P에 도달할 때까지만 토큰 후보를 남기거나(
Top-p), 확률이 가장 높은 K개의 토큰 안에서만 샘플링(Top-k)한다.
3. 오라클 시스템을 붕괴시키는 연쇄 작용(Cascade Effect)
다음 토큰을 결정하는 단 한 번의 무작위 샘플링은 단일 문장의 어색함으로 끝나지 않는다. 언어 모델의 본질은 **자기 회귀적(Auto-regressive)**이기 때문이다. 즉, 방금 확률론적 주사위에 의해 선택된 토큰 x_t가 다음 스텝에서 또다시 입력값(Input)으로 주입되어 x_{t+1}을 예측한다.
단 첫 번째 토큰이 “오라클이다” 대신 “정답지다“로 미세하게 엇갈려 반환되는 순간, 그 이후로 펼쳐지는 벡터 공간의 궤적(Trajectory)은 완전히 달라진다. 나비 효과(Butterfly Effect)처럼, 초기의 미세한 토큰 샘플링 차이가 문장 전체, 나아가 JSON 스키마의 구조까지 붕괴시키는 연쇄 작용을 일으킨다.
따라서 AI 응답을 대상으로 테스트 오라클을 구축하려는 소프트웨어 엔지니어의 첫 번째 임무는 이 “확률적 주사위를 박살 내는 것“이다. 파이프라인 안배 단계에서 샘플링 메커니즘을 억압하고 모델의 생성 궤적을 하나의 폭 좁은 터널로 강제 밀어 넣지 않는 한, 그 어떤 훌륭한 정규표현식이나 심판 시스템을 도입하더라도 결코 신뢰 가능한 테스트 환경을 구축할 수 없다.