최근 공개된 오픈소스 프로젝트 GigaToken이 대규모 언어 모델(LLM)의 핵심 전처리 과정인 텍스트 토큰화(tokenization) 속도를 획기적으로 향상시켜 주목받고 있습니다. 기존의 널리 사용되던 Tiktoken이나 HuggingFace Tokenizers 대비 최대 약 1,000배 빠른 처리량을 자랑하며, 텍스트를 초당 기가바이트(GB/s) 단위로 처리할 수 있습니다. 이는 LLM의 추론 및 학습 과정에서 발생하는 병목 현상을 크게 완화할 잠재력을 가지고 있습니다.
GigaToken은 이러한 속도 향상을 위해 여러 기술적 최적화를 적용했습니다. 가장 큰 개선점은 일반적으로 정규식 엔진이 담당하던 사전 토큰화(pre-tokenization) 과정을 SIMD(Single Instruction, Multiple Data) 기반으로 직접 고도화한 것입니다. 또한, 분기(branch)를 최소화하고 이전에 본 단어의 토큰 매핑을 효율적으로 캐싱하는 기법을 집중적으로 최적화했습니다. 파이썬(Python)과의 상호작용 및 스레드 간 통신을 줄인 것도 성능 향상에 기여했습니다. 11.9GB 규모의 OpenWebText 벤치마크에서 AMD EPYC 9565 CPU 기준 GPT-2 토큰화 처리량은 24.53GB/s를 기록, HuggingFace Tokenizers 대비 989배, Tiktoken 대비 681배 빠른 속도를 보였습니다. 애플 M4 Max에서는 8.79GB/s로 HuggingFace 대비 1,268배 빨랐습니다. GigaToken은 자체 API는 물론, HuggingFace Tokenizers와 Tiktoken 호환 모드를 제공하여 기존 코드베이스에 쉽게 통합할 수 있도록 지원합니다.
이러한 토큰화 속도 개선은 여러 면에서 중요한 의미를 가집니다. 첫째, LLM 훈련을 위한 대규모 데이터셋 준비 시간을 획기적으로 단축할 수 있습니다. 수 테라바이트(TB)에 달하는 훈련 말뭉치를 토큰화하는 데 드는 시간과 비용을 절감하고, 데이터셋 조정 반복 주기를 단축하여 연구 및 개발 효율성을 높일 수 있습니다. 둘째, LLM 추론 과정에서 첫 토큰 생성 시간(Time To First Token, TTFT)을 줄이는 데 기여합니다. 특히 초기 프롬프트(prompt) 길이가 길거나 작은 모델을 사용하는 경우, 토큰화가 전체 추론 시간에서 차지하는 비중이 커지므로 GigaToken의 속도 향상은 사용자 경험 개선에 직접적인 영향을 미칠 수 있습니다. 마지막으로, AI 플랫폼에서 요청 초기 단계에 빠르게 토큰화를 수행하여 이후의 라우팅이나 속도 제한 등을 효율적으로 결정하는 데 활용될 수 있어, 전체 시스템의 효율성을 높이는 데 기여할 것으로 보입니다.