이득:
- 토큰의 개념, 입/출력 토큰 구별 및 토큰화를 설명합니다.
- 토큰 수와 단가를 통해 요청 비용과 월별 작업량을 계산할 수 있습니다.
- 모델 선택과 프롬프트 길이가 비용에 미치는 영향을 비교할 수 있습니다.
LLM API의 경제성을 이해하지 않고는 대규모 솔루션을 구축할 수 없습니다. 데모는 한 번만 실행됩니다. 가장 중요한 것은 한 달에 수천 건의 전화가 이루어질 때 청구서가 얼마인지 예측할 수 있다는 것입니다. 이 단원에서는 토큰이 무엇인지, 입력과 출력의 가격이 다르게 책정되는 이유, 요청 비용 계산 방법, 월별 작업 부하 예산 책정 방법 등 금전적인 측면을 설정합니다. 이 정보를 사용하면 후속 단위에서 최적화 기술(캐싱, 모델 선택, 배치)의 반환을 측정할 수 있습니다.
토큰이란 무엇입니까?
토큰은 모델이 텍스트를 처리하는 가장 작은 단위입니다. 단어가 항상 토큰은 아닙니다. 토큰은 일반적으로 단어의 일부입니다. 대략적으로 말하면 영어로 1 토큰은 ≒ 4자 ≒ 0.75 단어입니다. 터키어와 코드에서는 비율이 다양합니다. 터키어 단어는 접미사 구조와 알파벳으로 인해 영어보다 더 많은 토큰으로 구분되는 경우가 많습니다. 따라서 눈으로 추측하기보다는 공급자의 토큰 계산 도구를 사용하여 토큰 수를 측정하는 것이 필요합니다.
토큰화(텍스트를 토큰으로 분할하는 프로세스)는 모델마다 다를 수 있습니다. 이는 두 가지 실질적인 결과를 가져옵니다. (1) 동일한 텍스트가 다른 모델에서 다른 수의 토큰을 생성할 수 있습니다. (2) 다른 제공업체(예: OpenAI의 tiktoken 라이브러리)의 토크나이저를 사용하여 수행된 예측은 Claude에게는 부정확합니다. 사용 중인 모델에 대한 토큰 계산 팁을 사용하세요.
힌트: "토큰은 몇 개 정도인가요?" 맹목적으로 질문에 대답하지 마십시오. 토큰 계산 API를 통해 대표 텍스트를 전달합니다. 측정을 바탕으로 예산 결정을 내립니다.
입력 및 출력 토큰
송장은 두 가지 항목으로 구성됩니다.
- 입력 토큰: 시스템 프롬프트, 지난 투어, 사용자 메시지, 문서 등 모델에 보내는 모든 것. 모두 한번에 처리됩니다.
- 출력 토큰: 모델에서 생성된 응답입니다. 각 출력 토큰에 대해 모델은 단계별로 계산을 수행합니다.
대부분의 공급자에서는 출력이 입력보다 몇 배 더 비쌉니다. 이유는 간단합니다. 입력을 한 번에 읽는 것이 토큰별로 출력을 생성하는 것보다 저렴하기 때문입니다. 이러한 비대칭성을 알면 "간결한 답변 필요"와 같은 최적화가 왜 그렇게 효과적인지 설명됩니다.
샘플 가격(100만 토큰당, USD)
아래 표는 참고용입니다. 가격은 시간이 지남에 따라 변경될 수 있습니다. 해당 제공업체의 현재 목록을 확인하세요.
모델 클래스
샘플 모델
입력($/100만)
생산량($/1M)
일반적인 사용법
빠르다/저렴하다
하이쿠 4.5
1.00
5.00
분류, 라벨링, 단순 요약
균형 잡힌
소네트 5
3.00
15.00
범용, 코딩, 에이전트 업무
강한
오퍼스 4.8
5.00
25.00
복잡한 추론, 장거리 작업
각 클래스에서 출력은 입력의 5배입니다. 게다가 강력한 모델의 입력조차도 저렴한 모델의 입력의 5배입니다. 이 두 축(입력-출력 및 모델 클래스)은 비용 결정의 프레임워크를 형성합니다.
비용을 계산하는 방법?
공식은 간단합니다.
비용 = (입력_토큰 / 1,000,000) × 입력_가격 + (출력_토큰 / 1,000,000) × 출력_가격
샘플 계정. Sonnet 5를 사용한 요청: 입력 토큰 1,500개, 출력 토큰 400개.
입력 = 1,500 / 1,000,000 × 3.00 = $0.0045 출력 = 400 / 1,000,000 × 15.00 = $0.0060 총 = $0.0105(약 1센트)
한 번의 통화가 저렴 해 보입니다. 그러나 통화량을 곱하면 하루 20,000건 → 하루 $210, 월 ~$6,300입니다. 이것이 규모가 작용하는 곳입니다.
월예산 템플릿
워크로드의 월별 비용을 추출하려면 다음 템플릿을 사용하세요.
1) 요청당 평균 입력 토큰: ......2) 요청당 평균 출력 토큰: ......3) 일일 요청 수: ......4) 월별 작업 일수: ......5) 요청당 비용 = (1)/1M×input_price + (2)/1M×output_price6) 월별 비용 = (5) × (3) × (4)
이 패턴을 스프레드시트에 붓고 모델을 변경할 때 합계가 어떻게 나타나는지 확인하면 모델 선택(유닛 5) 및 캐시(유닛 6) 결정이 구현됩니다.
복사 가능한 템플릿으로 프롬프트 단축
대부분의 비용은 불필요하게 긴 프롬프트와 낭비되는 출력에서 발생합니다. 아래 템플릿은 직접적인 비용 절감을 제공합니다.
# 출력 길이를 제한합니다. 최대 3개 항목까지 응답해 주십시오. 근거나 소개 문장을 추가합니다.
# 요청된 필드만 반환 다음 JSON만 반환하고 다른 텍스트는 추가하지 마세요:{"category": "...", "urgency": "low|medium|high"}
# 불필요한 context 제거다음 텍스트에서 날짜와 금액만 제거합니다. 전체 텍스트를 반복하지 마세요.텍스트: """{{text}}"""
# 긴 연설을 요약합니다(입력 저장) 이 연설을 5개 항목으로 요약합니다. 다음 라운드에서는 전체 과거 대신 이 요약을 사용하겠습니다. 음성: """{{과거}}"""
약한 프롬프트 / 강한 프롬프트(비용 측면)
# WEAK(출력 릴리스, 비용이 많이 소요됨)이 지원 요청을 분석하고 종합적인 리뷰를 작성해 주세요.
# STRONG(출력 제한, 저렴하고 예측 가능) 이 지원 요청을 분류합니다. 다음 JSON을 반환하면 됩니다.{"category":"invoice|technical|refund|other","urgency":"low|medium|high"}설명을 작성하지 마세요.
약한 버전은 500개의 출력 토큰을 생성합니다. 강력한 버전 ~15. 출력은 비용이 많이 들기 때문에 호출당 큰 차이가 나고 볼륨이 증가합니다.
미니 케이스 3개
사례 1 — 긴 프롬프트의 숨겨진 비용. 회계 자동화가 각 송장을 정렬하면서 각 요청에 대한 입력으로 40페이지 분량의 "규칙집"을 추가했습니다(요청당 최대 12,000개의 입력 토큰). Sonnet 5 12,000/1M×3 = $0.036이 방금 입력되었습니다. 하루 5,000개 → 하루 $180. 규칙서(단원 6)를 캐싱함으로써 입력 비용이 ~90% 감소했습니다.
사례 2 — 모델 축소의 대가. 한 팀은 Opus 4.8(입력 300개 + 출력 토큰 10개)을 사용하여 간단한 "긍정적/부정적" 감정 태그를 지정하고 있었습니다. Opus 비용은 300/1M×5 + 10/1M×25 = $0.00175입니다. Haiku로 전환하면 300/1M×1 + 10/1M×5 = $0.00035 — 5배 저렴하며 정확도 차이는 측정할 수 없습니다. 월 300만 통화의 경우 차이는 $5,250 → $1,050입니다.
사례 3 — 출력 해제. 마케팅 팀은 제품 설명을 작성할 때 출력에 제한을 두지 않았습니다. 모델에서는 때때로 1,500개의 토큰이라고 말했습니다. "최대 60단어" 명령을 추가했을 때 평균 출력이 900개에서 90개 토큰으로 떨어졌습니다. 인쇄 비용이 많이 들기 때문에 월 청구서는 3분의 1로 줄어들었고, 텍스트는 더욱 유용해졌습니다.
일반적인 실수
- 눈으로 토큰 추측하기: 특히 터키어와 코드에서는 틀릴 수 있습니다. 측정하다.
- 입력과 출력이 동일하다고 가정: 출력은 일반적으로 훨씬 더 비쌉니다. 대부분의 최적화는 출력을 줄이는 데서 비롯됩니다.
- 전화 한 번이 저렴하다고 해서 속지 마십시오. 결정은 통화량에 따라 이루어집니다. 0.01달러 × 백만 달러 = 10,000달러.
- 다른 공급자의 토크나이저를 사용한 예측: 잘못된 결과를 제공합니다. 모델의 토큰 계산 도구를 사용하세요.
- 대화 기록 무제한 확대: 각 라운드가 항목에 추가됩니다. 긴 대화로 요약하세요.
- 'max_tokens'를 불필요하게 높게 유지: 예산 계획과 삭감 위험을 숨깁니다. 현실적인 가치를 부여하세요.
심층: 컨텍스트 창 및 긴 입력 비용
"요청당"뿐만 아니라 "대화 전반에 걸쳐" 가격이 어떻게 쌓이는지 확인하는 것이 중요합니다. 모델이 처리할 수 있는 텍스트의 총량을 컨텍스트 창이라고 합니다. 입력과 출력의 합이 이 창에 맞아야 합니다. 최신 모델은 매우 큰 창(수십만, 심지어 수백만 개의 토큰)을 제공하지만 이것이 "무한히 채울" 수 있다는 의미는 아닙니다. 창에 입력하는 것은 무엇이든 입력으로 청구됩니다.
긴 대화의 함정은 다음과 같습니다. 각각의 새로운 라운드마다 전체 기록을 다시 보냅니다(단위 1의 무국적). 20라운드 대화에서 20번째 요청은 처음 19라운드 전체를 입력으로 전달합니다. 따라서 대화가 길어질수록 요청당 비용은 선형이 아닌 누적적으로 증가합니다. 상담원 보조원과의 50라운드 대화는 첫 번째 라운드보다 수십 배의 입력 비용을 발생시킬 수 있습니다.
이를 관리하는 방법에는 두 가지가 있습니다. 첫 번째는 요약입니다. 오래된 라운드를 단일 요약 블록으로 압축하고 마지막 몇 라운드만 그대로 유지합니다. 두 번째는 프롬프트 캐싱(유닛 6)입니다. 전체 가격으로 반복적으로 처리하는 대신 가격의 10분의 1로 고정 컨텍스트를 읽습니다. 이를 통해 시간이 오래 걸리고 컨텍스트 집약적인 워크로드에 대한 비용이 크게 절감됩니다. 따라서 토큰 경제는 단일 요청이 아닌 전체 세션의 설계에 관한 것입니다.
요약하면
토큰은 텍스트를 처리하는 가장 작은 단위입니다. 입력과 출력은 별도로 가격이 책정되며 출력은 종종 훨씬 더 비쌉니다. 비용은 토큰 개수에 단가를 곱한 값이며 실제 결정은 수량에 따라 이루어집니다. 프롬프트를 줄이고 출력을 제한하며 작업을 수행하는 가장 가벼운 모델을 선택하는 것은 비용을 몇 배로 줄이는 가장 직접적인 수단입니다.
응용과제
자신만의 작업을 선택하세요. (1) 대표 프롬프트에 대한 입력 및 예상 출력 토큰 수를 결정합니다(가능한 경우 토큰 계산 도구로 측정). (2) 세 가지 모델 클래스에 대한 요청당 비용을 계산합니다. (3) 일일 요청 수를 추정하고 세 가지 모델에 대한 월 예산을 도출합니다. (4) 출력을 단축하고 예상 절감액을 기록하는 명령을 추가합니다.
체크리스트
- [ ] 토큰의 개념과 모델에 따라 토큰화가 다르다는 점을 설명할 수 있습니다.
- [ ] 입력 토큰과 출력 토큰의 가격이 다른 이유를 알고 있습니다.
- [ ] 공식을 사용하여 요청 비용을 계산할 수 있습니다.
- [ ] 템플릿을 사용하여 워크로드에 대한 월별 예산을 생성할 수 있습니다.
- [ ] 출력 단축과 모델 축소의 이점을 예를 들어 보여줄 수 있습니다.