1. 토크나이저란?

토크나이저는 문장을 "토큰(token)"이라는 단위로 분리하는 도구입니다.
토큰은 보통 단어, 부분 단어(subword), 문자 혹은 심볼입니다.
예시:

  • 입력: "나는 학생입니다."
  • 토큰: ["나는", "학생", "입니다", "."] (어떤 토크나이저를 쓰느냐에 따라 달라짐)

2. 토크나이저의 종류

단어 기반 (Word-level)

  • 문장을 단어 단위로 분리
  • 예: "I love AI" → ["I", "love", "AI"]
  • 단점: 신조어나 드문 단어 처리에 약함

문자 기반 (Character-level)

  • 한 글자씩 나눔
  • 예: "AI" → ["A", "I"]
  • 장점: 모든 단어를 커버 가능
  • 단점: 시퀀스 길이가 매우 길어짐

서브워드 기반 (Subword-level) – 현대 모델에서 가장 많이 사용

  • 자주 쓰이는 단어는 통째로, 나머지는 하위 단위로 분리
  • 대표 알고리즘:
    • BPE (Byte Pair Encoding) – GPT 시리즈에서 사용
    • WordPiece – BERT에서 사용
    • Unigram – SentencePiece 토크나이저

예:  "unhappiness" → ["un", "happiness"] 또는 ["un", "hap", "pi", "ness"]


3. GPT 모델의 토크나이저 예시 (BPE 기반)

GPT 계열은 Byte-Pair Encoding을 기반으로 텍스트를 토큰으로 분리합니다.
예: "ChatGPT는 좋아요!"
→ ["Chat", "G", "PT", "는", "좋", "아요", "!"]
(실제로는 byte 단위 변환도 포함되어 있음)


4. 토크나이저의 활용

  • 모델 입력값 변환: 텍스트 → 숫자 시퀀스
  • 디코딩: 숫자 시퀀스 → 다시 텍스트
  • 토큰 개수 세기: 예산, 토큰 제한 확인 (ex. GPT-4는 최대 128k 토큰까지 처리 가능)

Tokenizer - OpenAI API

 

'인공지능' 카테고리의 다른 글

Tavily - 검색기반 툴  (0) 2025.05.26
RAGAS(RAG Assessment)  (0) 2025.05.26
멀티모달 모델  (0) 2025.05.26
MCP(Model Context Protocol)란?  (0) 2025.05.26
🔍 어댑터(Adapter)란?  (0) 2025.05.26

+ Recent posts