토큰이란 무엇인가 — LLM의 언어 단위 이해하기
…
한줄 요약
LLM은 글자를 읽지 않는다. 토큰이라는 조각으로 쪼개서 숫자로 바꾼 뒤 처리한다.
본문
토큰은 단어가 아니다
우리가 “가정의학과 전문의”라고 쓰면 사람은 두 단어로 인식한다. 하지만 LLM은 이걸 더 잘게 쪼갠다.
"가정의학과 전문의"
→ ["가정", "의학", "과", " 전문", "의"]
→ [12847, 28903, 1024, 8291, 903]
이 쪼개는 과정을 토크나이징(Tokenizing) 이라 하고, 쪼개는 도구를 토크나이저(Tokenizer) 라고 부른다.
핵심은 이것이다: LLM은 숫자만 처리한다. 텍스트를 받으면 토큰으로 쪼개고, 각 토큰을 숫자(벡터)로 변환한 뒤 연산을 수행한다.
언어마다 토큰 효율이 다르다
같은 의미를 전달해도 언어에 따라 토큰 수가 크게 달라진다.
| 문장 | 영어 토큰 | 한국어 토큰 |
|---|---|---|
| ”나는 의사입니다” | 4 (“I am a doctor”) | 6~8 |
| ”혈압이 높습니다” | 4 (“Blood pressure is high”) | 7~10 |
| A4 1장 | ~400 |
한국어는 영어보다 1.5~2배 더 많은 토큰을 소비한다. 이게 왜 중요하냐면:
- 비용: API 사용료가 토큰 단위로 책정됨
- 속도: 토큰이 많으면 응답 생성이 느려짐
- 컨텍스트: 같은 윈도우에서 한국어는 영어보다 적은 내용을 담을 수 있음
토큰 수를 줄이는 실전 팁
진료 현장에서 AI를 쓸 때, 토큰을 아끼면 비용도 줄고 품질도 올라간다.
나쁜 예 (토큰 낭비):
안녕하세요. 저는 가정의학과 전문의입니다.
오늘 환자분의 상태에 대해서 여쭤보고 싶은 것이 있는데요.
혈압이 지속적으로 높은 환자의 약물 치료 방침에 대해서
의견을 부탁드리겠습니다.
좋은 예 (토큰 절약):
[가정의학과 전문의]
- 상황: 고혈압 환자, 약물 치료 방침 문의
- 현재: BP 160/95, ACEi 복용 중, 2주째 조절 안됨
- 질문: 약물 변경 vs 추가 병합 중 권장 방법?
불필요한 인사와 존칭을 줄이고, 핵심 정보를 bullet으로 정리하면 토큰을 50% 이상 절약할 수 있다.
토크나이저를 직접 확인하는 법
OpenAI의 Tokenizer 도구에 접속하면 텍스트가 어떻게 토큰으로 쪼개지는지 직접 볼 수 있다.
한국어 의학 용어를 넣어보면 재미있는 패턴이 보인다:
- “고혈압” → 2~3토큰
- “Hypertension” → 1~2토큰
- “가정의학과” → 3~4토큰
- “Family Medicine” → 2토큰
영어 의학 용어가 토큰 효율이 훨씬 높다. 그래서 임상 AI 도구에 영어로 질의하면 비용이 절반 이하로 줄 수 있다.
핵심 정리
- 토큰 = LLM이 텍스트를 처리하는 최소 단위 (단어 ≠ 토큰)
- 한국어는 영어보다 1.5~2배 많은 토큰을 소비 → 비용·속도·컨텍스트에 영향
- 프롬프트를 구조화(bullet, 약어)하면 토큰 절약 + 품질 향상
임상 적용
| 상황 | 권장 |
|---|---|
| API 비용 절감 | 영어 의학 용어 사용, 불필요한 존칭 제거 |
| 긴 차트 요약 | SOAP 형식으로 구조화 후 입력 |
| 토큰 확인 | OpenAI Tokenizer에서 사전 테스트 |
관련 글
- [[llm-context-window-explained|LLM의 컨텍스트 윈도우, 의사처럼 이해하기]]
- 프롬프트 엔지니어링 기초 — 의사를 위한 실전 가이드
- RAG란 무엇인가 — 외부 지식을 LLM에 연결하는 법
© S-Reborn clinic | s-reborn-blog.pages.dev