본문으로 건너뛰기
yutils
예시

입력

모델: GPT-4o · 텍스트: "안녕하세요, 반갑습니다."

출력

토큰 12 · 글자 13 · 컨텍스트 128K 대비 0.01% · 예상 입력 비용 표시

참고

같은 문장이라도 모델마다 어휘 사전이 달라 토큰 수가 달라집니다. GPT 계열은 tiktoken 이 공개되어 API 와 같은 값이지만, Claude · Gemini 는 토크나이저가 비공개라 추정치입니다.

사용법 / 자주 묻는 질문

이런 경우 사용하세요

  • 프롬프트가 모델 컨텍스트 한도에 들어가는지 보내기 전에 확인
  • 긴 문서를 청크로 나눌 때 청크 크기를 토큰 기준으로 잡기
  • API 호출 비용을 대략 계산해 예산 잡기
  • 같은 내용을 한국어 · 영어로 썼을 때 토큰 수 차이 비교
  • RAG 파이프라인에서 컨텍스트에 넣을 문서 개수 정하기

자주 묻는 질문

Q.왜 모델마다 토큰 수가 다른가요?
A.토크나이저마다 어휘 사전이 다르기 때문입니다. 같은 OpenAI 안에서도 GPT-4 는 cl100k_base, GPT-4o 는 o200k_base 를 쓰고, 어휘가 커질수록 같은 문장이 더 적은 토큰으로 쪼개집니다.
Q.'정확' 과 '추정' 은 무슨 차이인가요?
A.OpenAI 는 tiktoken 을 공개해 두어 브라우저에서 API 와 동일한 값을 계산할 수 있습니다. Claude · Gemini 는 토크나이저가 비공개라 GPT 토큰 수에 보정 배수를 적용한 근사치를 보여 줍니다 — 정확한 값이 필요하면 각사의 토큰 카운트 API 를 쓰세요.
Q.표시된 토큰 수가 실제 청구와 다릅니다.
A.여기 표시되는 값은 입력한 raw 텍스트 기준입니다. 실제 API 호출에는 메시지 포맷(role · system 프롬프트 · 도구 정의)의 오버헤드가 더해지고 출력 토큰도 별도로 과금되므로, 실사용량은 이보다 큽니다.
Q.한국어가 영어보다 토큰을 많이 쓰나요?
A.일반적으로 그렇습니다. 주요 토크나이저의 어휘 사전이 영어 텍스트에 맞춰 학습돼 영어는 단어 하나가 토큰 하나로 떨어지는 경우가 많지만, 한국어는 한 단어가 여러 조각으로 쪼개지기 쉽습니다. 같은 내용을 담아도 비용과 컨텍스트 소모가 커지는 이유입니다.
재미있는 사실
  • 오늘날 LLM 토크나이저의 기반인 BPE(Byte Pair Encoding)는 원래 1994년에 나온 데이터 압축 알고리즘이었습니다. 2016년 Sennrich 등이 기계번역의 미등록 단어 문제를 풀려고 이 압축 기법을 가져다 쓰면서 자연어 처리의 표준이 됐습니다.

    arXiv — Neural Machine Translation of Rare Words with Subword Units
  • 같은 내용을 써도 언어에 따라 토큰 수가 크게 차이 납니다. 2023년 연구는 주요 상용 토크나이저에서 언어별 토큰 수가 최대 15배까지 벌어질 수 있음을 보였는데, 토큰 단위로 과금하는 API 에서는 이 차이가 그대로 비용 차이가 됩니다.

    arXiv — Language Model Tokenizers Introduce Unfairness Between Languages
  • OpenAI 의 tiktoken 은 모델별로 다른 어휘 사전을 씁니다 — GPT-3.5/4 는 약 10만 개의 cl100k_base, GPT-4o 이후는 약 20만 개의 o200k_base 입니다. 어휘가 커지면 같은 문장이 더 적은 토큰으로 쪼개지므로, 모델을 바꾸면 프롬프트 길이 계산도 다시 해야 합니다.

    GitHub — openai/tiktoken