토큰
Token
AI가 글을 세는 단위. 요금과 사용량이 전부 토큰으로 계산된다.
쉽게 말하면
AI는 글을 글자 단위가 아니라 「토큰」 단위로 읽고 씁니다. 토큰은 자주 쓰이는 말 조각입니다 — 영어 단어 하나가 12토큰, 한국어는 대체로 한 글자가 12토큰쯤 됩니다. 대략 「토큰 1개 ≒ 짧은 음절 몇 개」로 감 잡으면 됩니다.
이 단위가 중요한 이유는 돈과 한계가 전부 토큰으로 계산되기 때문입니다. AI 회사의 요금표는 「100만 토큰당 몇 달러」로 적혀 있고, 무료 사용량 제한도, 한 번에 읽을 수 있는 분량(컨텍스트 윈도우)도 전부 토큰이 단위입니다.
수도 요금이 「리터」로 계산되듯 AI 사용료는 「토큰」으로 계산된다 — 이렇게 기억하면 요금 관련 기사가 바로 읽힙니다.
기사에서 이렇게 나와요
「새 모델의 API 가격은 입력 100만 토큰당 3달러」 — A4 수백 장 분량을 처리하는 데 몇천 원쯤 든다는 이야기입니다. 입력(내가 넣는 글)과 출력(AI가 쓰는 글)의 단가가 다른 것도 특징입니다.
직접 해보기
깊이 알아보기
AI는 문장을 그대로 읽지 않고, 계산할 수 있는 조각으로 바꿔 읽습니다.
토큰은 모델이 텍스트를 처리하기 위해 나눈 단위입니다. 단어 전체일 수도, 단어의 일부나 문장부호일 수도 있으며, 그 수는 모델의 토크나이저에 따라 달라집니다. 토큰을 알면 비용, 속도, 입력과 출력의 한계를 더 정확히 이해할 수 있습니다.
3분 요약
- 토큰은 글자나 단어와 완전히 같은 단위가 아닙니다. 서브워드 토크나이저는 자주 등장하는 문자열은 큰 조각으로, 드문 표현은 더 작은 조각으로 나누어 제한된 어휘로 다양한 문장을 표현합니다.
- 같은 뜻의 한국어와 영어 문장도 토큰 수가 다를 수 있습니다. 학습 데이터의 언어 구성, 문자 체계, 공백 방식, 토크나이저가 학습한 어휘가 서로 다르기 때문이며 한국어가 언제나 일정한 비율로 더 많이 잘리는 것은 아닙니다.
- API 비용과 컨텍스트 창은 보통 토큰으로 계산됩니다. 입력에는 지시문, 대화 기록, 첨부한 자료가 들어가고 출력에는 모델이 생성한 답이 들어가므로 두 예산을 함께 관리해야 합니다.
왜 지금 알아야 하나
모델 사용료가 토큰으로 표시된다
생성형 AI API는 입력 토큰과 출력 토큰에 서로 다른 단가를 적용하는 경우가 많습니다. 같은 요청이라도 긴 참고 자료를 반복해서 보내거나 답변 길이를 크게 잡으면 처리량과 비용이 함께 늘어납니다.
긴 컨텍스트에도 물리적인 한계가 있다
모델이 한 번에 처리할 수 있는 입력과 출력의 총량에는 한도가 있습니다. 대화 기록과 문서가 입력 예산을 많이 차지하면 답변에 쓸 공간이 줄거나 오래된 내용을 잘라 내야 할 수 있습니다.
언어와 모델에 따라 효율이 달라진다
토크나이저의 어휘는 학습된 데이터에서 자주 나타난 문자열을 반영합니다. 같은 정보를 담아도 언어, 표기법, 코드, 숫자 형식에 따라 필요한 토큰 수가 달라지므로 글자 수만으로 비용과 한계를 계산하면 오차가 생깁니다.
어떻게 작동하나
1. 텍스트를 정규화하고 경계를 살핀다
토크나이저는 입력 문자열의 공백, 문자, 문장부호를 정해진 규칙으로 다룹니다. 어떤 방식은 공백을 다음 단어와 묶고, 어떤 방식은 유니코드 문자를 바이트 수준까지 나눌 수 있어 겉보기 글자 수와 처리 단위가 일치하지 않습니다.
2. 문자열을 서브워드 토큰으로 나눈다
자주 쓰이는 단어나 문자열은 하나의 토큰이 될 수 있고, 드문 단어와 합성어는 여러 조각으로 분해될 수 있습니다. 이렇게 하면 모든 단어를 어휘에 미리 넣지 않아도 익숙한 조각을 조합해 새로운 표현을 다룰 수 있습니다.
3. 각 토큰을 숫자 ID로 바꾼다
토크나이저의 어휘표에는 각 토큰에 대응하는 정수 ID가 있습니다. 모델은 원문 문자를 직접 계산하는 대신 이 ID를 벡터 표현으로 바꾸어 문맥 속 관계를 처리합니다. 같은 문자열도 토크나이저가 다르면 조각과 ID가 달라집니다.
4. 모델이 다음 토큰을 예측해 출력을 만든다
언어 모델은 지금까지의 토큰을 바탕으로 다음 토큰의 확률을 계산하고 하나를 선택하는 과정을 반복합니다. 생성된 토큰 ID는 토크나이저를 거꾸로 통과해 사람이 읽는 문자열로 합쳐지며, 종료 조건이나 출력 한도에서 생성이 멈춥니다.
흐름 한눈에 보기
텍스트 입력 → 토크나이저가 서브워드 토큰으로 분할 → 토큰을 숫자 ID로 변환 → 모델이 ID의 문맥을 처리하고 다음 토큰 예측 → 출력 토큰 ID 생성 → 토크나이저가 텍스트 출력으로 복원
도입 전과 후
겉보기: 한 단어는 한 토큰이다
영어의 흔한 단어는 하나의 토큰처럼 보일 때가 있지만, 활용형, 고유명사, 오타는 여러 조각이 될 수 있습니다. 문장부호와 앞 공백이 토큰에 포함되기도 하므로 단어 수와 토큰 수는 일치하지 않습니다.
실제: 자주 쓰이는 문자열 조각을 조합한다
서브워드 토큰화는 자주 함께 나타나는 문자열을 어휘에 두고 드문 표현을 더 작은 단위로 분해합니다. 그 결과 같은 글자 수도 익숙한 표현인지, 어떤 언어인지에 따라 서로 다른 수의 토큰이 됩니다.
운영: 입력과 출력을 별도 예산으로 본다
요청문만 세는 대신 시스템 지시, 대화 기록, 검색 문서, 도구 결과를 입력 토큰에 포함하고 예상 답변은 출력 토큰으로 잡습니다. 사용하는 모델의 공식 토크나이저로 실제 값을 측정해야 비용과 컨텍스트 여유를 제대로 계산할 수 있습니다.
예시로 이해하기
영어 예시: 익숙한 단어와 낯선 단어
영어 문장 The model summarizes reports.를 넣으면 흔한 단어와 공백이 비교적 큰 조각으로 묶일 수 있습니다. 반면 새 제품명이나 철자가 긴 전문 용어를 넣으면 어근과 접사 또는 더 작은 문자열로 나뉘어 단어 하나가 여러 토큰을 차지할 수 있습니다. 정확한 분할은 선택한 모델의 토크나이저에서 확인해야 합니다.
한국어 예시: 조사와 결합된 표현
한국어 문장 모델이 보고서를 요약합니다.에는 어간, 조사, 어미가 결합되어 있습니다. 어떤 토크나이저는 모델, 이, 보고서, 를에 가까운 조각을 활용하고, 다른 토크나이저는 일부 음절이나 바이트를 더 잘게 나눌 수 있습니다. 같은 뜻의 영어 번역보다 많거나 적은 토큰이 나올 수 있으며 고정된 환산 비율은 없습니다.
직접 해보기
1. 비교할 짧은 문장을 준비한다
같은 뜻을 담은 한국어 문장과 영어 문장을 하나씩 적습니다. 숫자, 문장부호, 고유명사의 조건이 달라지지 않도록 가능한 한 단순하게 맞춥니다.
2. 실제 모델의 토크나이저로 측정한다
사용할 모델이 안내하는 공식 토크나이저에 두 문장을 넣고 토큰 경계와 총수를 기록합니다. 다른 모델용 토크나이저에서도 실행해 같은 문장의 분할 결과가 달라지는지 비교합니다.
3. 긴 요청의 구성 요소를 따로 센다
시스템 지시, 사용자 질문, 대화 기록, 첨부 문서를 각각 측정한 뒤 합칩니다. 화면에 보이지 않는 메시지나 도구 정의도 API 입력에 포함될 수 있으므로 실제 요청 사용량과 대조합니다.
4. 출력 예산과 비용을 계산한다
예상 입력 토큰과 최대 출력 토큰에 각각의 단가를 적용합니다. 짧은 답과 긴 답을 생성해 실제 사용량, 응답 시간, 잘림 여부를 비교하고 목적에 맞는 출력 한도를 정합니다.
한계와 주의점
토큰 수는 모델 사이에서 그대로 옮길 수 없다
모델마다 토크나이저와 어휘가 다를 수 있어 한 도구에서 센 값이 다른 모델의 값과 일치한다고 보장할 수 없습니다. 비용을 추정할 때는 실제 호출할 모델에 대응하는 인코딩과 공식 사용량 기록을 사용해야 합니다.
토큰 수만으로 처리 품질을 알 수 없다
컨텍스트 한도 안에 들어간다는 사실은 모델이 긴 자료의 모든 정보를 똑같이 잘 활용한다는 뜻이 아닙니다. 중요한 근거의 위치, 중복, 충돌, 지시의 명확성도 결과에 영향을 줍니다.
언어별 차이를 하나의 비율로 일반화할 수 없다
한국어가 특정 영어 문장보다 더 많은 토큰을 쓸 수 있지만 문장 내용, 표기, 모델 세대에 따라 차이는 달라집니다. 한 토큰을 몇 글자 또는 몇 단어로 고정 환산하는 값은 거친 추정에만 써야 합니다.
자주 묻는 질문
토큰 하나는 단어 하나인가요?
아닙니다. 토큰은 단어 전체, 단어 일부, 공백과 문장부호의 결합, 문자 또는 바이트 조각일 수 있습니다. 흔한 단어가 하나로 묶이기도 하고 낯선 단어 하나가 여러 토큰으로 나뉘기도 합니다.
왜 같은 뜻의 한국어와 영어 문장은 토큰 수가 다른가요?
두 언어의 문자 체계와 단어 형성 방식이 다르고, 토크나이저가 학습한 데이터에서 자주 본 문자열도 다르기 때문입니다. 다만 어느 언어가 항상 몇 배 더 많다고 정할 수는 없으며 모델별 토크나이저로 직접 측정해야 합니다.
컨텍스트 한도에는 답변 토큰도 포함되나요?
모델과 API의 규칙에 따라 표시 방식은 다르지만, 일반적으로 요청을 설계할 때는 입력과 생성할 출력이 모두 모델이 처리할 수 있는 범위에 들어가도록 예산을 잡아야 합니다. 정확한 입력 한도와 최대 출력 한도는 사용하는 모델의 공식 문서를 확인해야 합니다.
토큰과 파라미터, 뭐가 다른가
오가는 글의 양이냐, 모델 안에 든 숫자의 개수냐
둘 다 숫자로 크기를 재는 말이라, 기사에서 「700억」 같은 수를 보면 어느 쪽인지 헷갈립니다. 하나는 내가 넣고 받는 글의 분량이고, 하나는 모델이 얼마나 큰지입니다. 내가 쓰는 만큼 늘어나면 앞쪽, 모델을 만들 때 정해져 안 변하면 뒤쪽입니다.
| 구분 | 토큰 | 파라미터 |
|---|---|---|
| 무엇을 세나 | 주고받은 글을 잘라 센 단위 | 모델 안의 조절 나사 개수 |
| 변하나 | 쓸 때마다 늘어난다 | 모델이 만들어질 때 정해지고 안 변한다 |
| 돈과의 관계 | 요금이 이걸로 매겨진다 | 클수록 돌리는 값이 비싸진다 |
| 기사에서 | 「100만 토큰 컨텍스트」 「토큰당 단가」 | 「70B 모델」의 B가 이것이다 |
| 비유 | 통화한 분수 | 그 사람 머릿속 뇌세포 수 |
가를 때는내가 쓴 만큼 늘어나면 토큰, 모델을 만들 때 정해져 안 변하면 파라미터입니다.
함께 볼 용어
이 용어가 나온 기사
아직 이 용어를 다룬 기사가 없습니다. 새 기사가 나오면 여기 자동으로 붙습니다.