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 토큰까지 처리 가능)
'인공지능' 카테고리의 다른 글
| 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 |