GPT-4o 토크나이저가 "strawberry"를 처리하는 방식 애니메이션: 실제 토큰 ID, 작은 BPE 실행, 그리고 공백의 의미 (6분
요약
이 영상은 GPT-4o 토크나이저가 단어와 공백을 어떻게 처리하는지 애니메이션으로 설명합니다. 'strawberry'와 ' strawberry'는 서로 다른 토큰 시퀀스로 인식되며, 텍스트 분리 과정(BPE)과 공백의 의미를 다룹니다. 또한 모델별로 개수 세기 방식이나 토큰 사용량에 차이가 있음을 보여줍니다.
핵심 포인트
- 'strawberry'와 ' strawberry'는 서로 다른 토큰 시퀀스로 처리됩니다.
- BPE(Byte Pair Encoding) 실행은 단어를 st | raw | berry처럼 분리할 수 있습니다.
- 공백(whitespace) 자체도 텍스트의 일부로 간주되어 별도의 토큰을 차지합니다.
- 모델마다 개수 세기 방식이나 특정 언어에서의 토큰 사용량에 차이가 존재합니다.
저는 이 영상을 작은 채널을 위해 제작했으며, 특히 학습하는 분들께 피드백을 받고 싶습니다. 만약 잘못된 부분이 있다면 알려주세요. 이 영상은 하나의 단어만을 따라갑니다: "strawberry에 r이 몇 개 있나요?"라는 질문에는 o200k_base (GPT-4o / GPT-5 토크나이저)에서 8개의 토큰으로 처리됩니다. 반면, " strawberry"는 단일 토큰(ID 101830)이며, 따라서 세 개의 r은 하나의 ID 안에 숨겨져 있습니다. 왜 단어 조각들로 나뉘는가: 글자 단위로는 약 4배 더 긴 시퀀스를 만들지만, 전체 단어를 처리하려면 방대한 어휘력이 필요하며 새로운 단어를 다룰 수 없습니다. 임의로 만든 텍스트에 대해 작은 Byte Pair Encoding (BPE) 실행을 수행하여, 'merge' 과정을 거치면서 'strawberry'가 st | raw | berry로 분리됩니다. 공백은 단어에 속합니다: "strawberry", " strawberry", 그리고 "Strawberry"는 세 가지 다른 토큰 시퀀스입니다. 추론 모델이 글자 단위로 더 정확하게 계산하는 이유: OpenAI의 2025년 논문 "Why Language Models Hallucinate"에서, DeepSeek-R1은 개수를 세기 전에 DEEPSEEK을 글자별로 풀어쓰는 반면, DeepSeek-V3는 2개 또는 3개라고 답했습니다 (정답은 1입니다). 보너스: 동일한 힌디어 문장이 GPT-4 토크나이저에서는 21개의 토큰을 사용했지만, GPT-4o에서는 5개의 토큰만 사용했습니다. 모든 분리는 tiktoken 0.14.0 실행에서 비롯됩니다. 내레이션은 제가 작성한 스크립트를 AI 음성으로 읽어준 것입니다. 영상:
/u/Rajucg 님이 제출했습니다. [링크] [댓글]AI 자동 생성 콘텐츠
본 콘텐츠는 Reddit AI Research의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기