본문으로 건너뛰기
실습하기

GPT의 토큰화(Tokenization) 방식 이해하기

GPT와 같은 언어 모델은 텍스트를 직접 처리하지 않고, 먼저 텍스트를 작은 단위로 나눈 후 계산에 사용합니다.

이러한 과정을 토큰화(Tokenization)라고 합니다.

이번 수업에서는 토큰화가 무엇인지, 그리고 GPT에서는 토큰을 어떻게 사용하는지 알아보겠습니다.


토큰화(Tokenization)란?

토큰(Token)은 문장을 단어, 구두점, 숫자 등으로 나눈 작은 단위를 의미합니다.

AI가 프롬프트 "고양이는 나무 위에 올라갔다."를 입력받으면, AI는 이 문장을 토큰으로 나눕니다.

토큰화된 문장 예시
고양이 / 는 / 나무 / 위 / 에 / 올라갔다 / .

영문 토큰화는 주로 공백이나 구두점(punctuation, 마침표와 같이 문장에 사용하는 기호)을 기준으로 단어를 분리합니다.

예를 들어 "The quick brown fox jumps over the lazy dog."라는 문장은 다음과 같이 토큰화됩니다.

영문 토큰화 예시
['The', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog', '.']

하나의 단어도 접두사, 패턴, 접미사에 따라 여러 토큰으로 분리될 수 있습니다.

예를 들어 "unconcious"라는 단어는 un(반대를 나타내는 접두사), conc(영어 단어에 자주 나타나는 패턴), ious(영어 단어에 자주 나타나는 접미사)라는 하위 요소로 분리되어 3개의 토큰으로 인식될 수 있습니다.


토큰을 처리하는 방식은 AI 모델에 따라, 처리하는 글자의 종류에 따라 다릅니다. 챗GPT는 일반적으로 1-4개 알파벳 당 1개의 토큰을 할당하고, 한글은 형태소 단위로 토큰화합니다.

참고: 챗GPT와 같은 대부분의 텍스트 생성 AI는 입력 및 출력된 토큰 수를 바탕으로 비용을 청구합니다. 따라서 불필요한 토큰을 줄이는 것이 중요합니다.


AI 모델은 이러한 토큰들 사이의 관계를 확률 통계적으로 이해하고, 입력 프롬프트를 바탕으로 새로운 텍스트를 생성합니다.


다음 수업에서는 생성형 AI의 대표적인 이슈 중 하나인 환각(Hallucination) 현상에 대해 알아보겠습니다.

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!