토큰이 무엇인가

모델은 글자도 단어도 아닌 토큰 단위로 글을 읽고 쓴다. 자주 나오는 덩어리를 하나로 묶은 것이라, 영어는 대략 네 글자가 한 토큰이고 흔한 단어는 통째로 한 토큰이다. 한글은 음절 하나가 거의 한 토큰이라 같은 분량에서 토큰이 더 나온다. 요금은 이 토큰 수로 매겨진다.

입력에 무엇이 들어가는지 자주 놓친다

입력 토큰은 이번에 사용자가 친 글만이 아니다. 시스템 프롬프트, 붙여 넣은 문서, 도구 정의, 그리고 대화형이라면 이전 대화 전체가 매 턴마다 다시 들어간다. 열 번 주고받는 대화는 마지막 턴에서 첫 턴보다 훨씬 많은 입력을 보낸다. 견적이 실제보다 낮게 나오는 가장 흔한 원인이 이것이다.

위 계산기의 입력 칸에는 그 전부를 합친 값을 넣어야 한다. 대화형이라면 평균 턴 수를 곱해 어림잡는 편이 실제에 가깝다.

한글은 2.7배쯤 든다

같은 글자 수라면 한글이 영어보다 토큰을 두세 배 쓴다. 우리는 2.7배로 어림잡는다. 배수 자체는 모델을 가리지 않지만, 그래서 더 내는 금액은 모델에 따라 월 ₩148 에서 ₩154만까지 벌어진다. 한국어로 서비스를 만든다면 모델을 잘못 고르는 비용이 영어권보다 그만큼 커진다는 뜻이다.

194개 모델로 셈해 본 글 읽기

이 값에 빠져 있는 것

여기 쓰는 단가는 카탈로그가 공개한 정가다. 실제 청구서는 대개 이보다 낮다. 프롬프트 캐시를 쓰면 반복되는 앞부분이 할인되고, 배치로 보내면 절반 가까이 깎이는 곳이 있으며, 사용량이 크면 구간 요금이 따로 붙는 모델도 있다. 반대로 이미지나 음성을 함께 보내면 그쪽 토큰이 더해져 올라간다.

원화는 수집 시점의 환율로 환산한 값이다. 계약이나 청구는 달러로 이루어지므로, 예산을 잡을 때는 환율이 움직일 여지를 함께 잡아 두는 편이 낫다.

이 숫자를 어디까지 믿을까

토큰 수를 직접 넣었다면 곱셈은 정확하다. 글을 붙여넣어 추정한 경우라면 모델마다 토크나이저가 달라 25% 안팎으로 어긋날 수 있다. 정확한 값이 필요하면 벤더의 토큰 계산 API 로 한 번 세어 그 값을 위 칸에 넣는 것이 가장 낫다.