대규모 언어모델(LLM)이 텍스트를 생성하는 과정에서 어떤 이전 토큰(단어)에 '집중'하는지 시각적으로 보여주는 새로운 도구가 등장했습니다. 이 도구는 사용자가 생성된 토큰을 클릭하거나 마우스를 올리면, 해당 토큰이 생성될 때 참조했던 이전 토큰들을 불투명도(opacity)로 강조하여 표시합니다. 이는 LLM의 핵심 메커니즘인 어텐션(attention)의 작동 방식을 일반 사용자도 직관적으로 이해할 수 있도록 돕는 시도입니다.
이 시각화 도구는 어텐션 가중치(attention weight)에 값 벡터(value vector)의 크기를 반영하고, 모든 어텐션 헤드(head)와 레이어(layer)의 정보를 합산하여 각 이전 토큰에 대한 단일 수치로 보여줍니다. 예를 들어, 주소나 날짜를 그대로 복사하는 경우 해당 원본 데이터가 두드러지게 강조되며, 서로 다른 문구의 정보를 결합하여 새로운 문장을 만드는 과정도 관찰할 수 있습니다. 6억 개의 매개변수를 가진 비교적 작은 모델이 의도된 수정 부분을 제외한 자바스크립트(JavaScript) 함수를 그대로 재현하는 사례도 포착되어, LLM의 복사 및 정보 결합 능력을 엿볼 수 있습니다. 이 도구는 리액트(React)와 트랜스포머스.js(Transformers.js)로 구현되었으며, 브라우저에서 직접 구동됩니다.
다만 개발자는 이 시각화가 고도로 단순화된 정보임을 강조합니다. 모든 헤드와 레이어의 정보를 단일 수치로 압축하는 과정에서 많은 정보가 손실되므로, 표시된 값을 LLM 생성에 미친 정확한 '영향'과 동일시하기에는 한계가 있습니다. 그럼에도 불구하고 이 도구는 LLM이 어떻게 이전 정보를 활용하여 다음 토큰을 예측하는지에 대한 흥미로운 패턴과 직관을 제공합니다. 특히 어텐션 메커니즘을 학습하거나 설명해야 하는 교육자 및 개발자에게 유용한 자료가 될 수 있으며, LLM의 '블랙박스'를 조금이나마 들여다볼 수 있는 창을 제공한다는 점에서 의미가 있습니다.