토큰
글자 수로 계산될 거라 생각하기 쉽습니다. 토큰은 단어보다 작고 글자보다 큰 조각인데, 언어마다 효율이 다릅니다. 한국어는 영어보다 같은 내용에 토큰이 더 많이 듭니다. 비용을 예측하려면 이 단위를 알아야 합니다.
한 문장으로
토큰은 모델이 글을 다루는 단위이고, AI 비용은 대개 글자 수가 아니라 이 토큰 수로 매겨집니다.
하는 일
- 입력과 출력이 따로 계산됩니다 — 대개 출력이 더 비쌉니다
- 대화가 길어질수록 매 요청의 입력이 커집니다 — 이전 대화를 다시 보내기 때문입니다
- 문서를 넣으면 그만큼 토큰이 늘어납니다
- 언어별 차이 — 한국어는 영어보다 토큰을 더 씁니다
- 반복되는 앞부분은 캐시로 아낄 수 있습니다
- 한 번에 넣을 수 있는 상한이 있습니다
하지 않는 일
- 응답 속도 — 토큰이 많으면 느려지지만 별개 주제입니다
- 정확도 — 많이 넣는다고 좋아지지 않습니다
- 모델 선택 — 성능과 비용의 맞바꿈은 따로 봅니다
이웃 개념과 헷갈리는 지점
- 컨텍스트 창한 번에 넣을 수 있는 최대 분량
- 상한이고, 토큰은 그 안에서 실제로 쓴 양입니다. 창이 크다고 다 채워 넣으면 비싸지고 답도 흐려집니다.
- RAG필요한 문서만 골라 넣는 방식
- 전부 넣는 대신 골라 넣어 토큰을 줄입니다. 비용 관점에서도 이유가 있는 방식입니다.
- 캐싱반복되는 앞부분을 재사용하는 것
- 같은 지시문을 매번 보낼 때 아낄 수 있습니다. 대화가 길어지는 서비스에서 차이가 큽니다.
- 요금제정액과 종량
- 사람이 쓰는 도구는 정액이 흔하고, 시스템에 붙이면 종량입니다. 사용량이 들쭉날쭉하면 종량이 유리한 경우가 많습니다.
언제 필요한가
이럴 때 필요합니다
- 월 비용을 미리 잡아야 할 때
- 긴 문서를 넣어야 할 때
- 대화가 길어지면서 비용이나 속도가 나빠질 때
- 여러 모델 중에서 고를 때
아직 아니어도 됩니다
- 사용량이 적고 정액 도구로 충분하다면 따질 필요가 적습니다
- 무엇을 만들지 아직 안 정해졌다면 계산할 근거가 없습니다
- 이미 사용량을 보고 있고 예상 범위 안이라면 손댈 것이 없습니다
여기서부터는 갈립니다
요금은 자주 바뀌고 모델마다 다릅니다. 그래서 지금 계산한 값이 몇 달 뒤에는 맞지 않을 수 있습니다. 변하지 않는 쪽은 구조입니다. 입력과 출력이 따로 계산되고, 대화가 길어질수록 매 요청의 입력이 커지고, 한국어가 더 든다는 것이요. 실제 비용은 예상 질문으로 며칠 돌려 보고 재는 편이 정확합니다. 계산으로 미리 잡으면 대개 실제와 벌어집니다.
자주 묻는 질문
질문 수와 한 번에 주고받는 양으로 정해집니다. 문서를 많이 넣는 서비스는 질문 하나가 비싸고, 짧은 대화는 쌉니다. 예상 질문 몇십 개로 시험 삼아 돌려 보면 대략 잡힙니다.
같은 내용이라면 대체로 그렇습니다. 토큰을 나누는 방식이 영어에 맞춰져 있어서 한국어는 조각이 더 많이 나옵니다. 다만 모델마다 차이가 있고 예전보다는 나아지고 있습니다.
모델은 이전 대화를 기억하지 못해서, 매번 앞의 내용을 다시 보냅니다. 대화가 길수록 매 요청의 입력이 커지고 비용도 같이 올라갑니다. 오래된 부분을 요약해서 줄이는 방법을 씁니다.
필요한 자료만 골라 넣기, 반복되는 지시문 캐싱, 오래된 대화 요약이 기본입니다. 그리고 모든 질문에 가장 좋은 모델을 쓸 필요는 없습니다. 간단한 것은 가벼운 모델로 보내면 차이가 큽니다.
사람이 직접 쓰는 도구라면 정액이 예측 가능해 편합니다. 시스템에 붙여 사용량이 들쭉날쭉하면 종량이 유리한 경우가 많습니다. 다만 종량은 갑자기 늘 수 있으니 상한을 걸어 두는 편이 안전합니다.
범위가 애매해도 괜찮습니다
지금 상황만 알려 주시면 필요한 범위와 대략의 규모를 짚어 드립니다.