본문 바로가기
C.W.K.
Stream
Lesson 03 of 05 · published

Output과 Reasoning Token도 비용이야

~24 min · output, reasoning, limits

Level 0Window Watcher
0 XP0/50 lessons0/13 achievements
0/100 XP to next level100 XP to go0% complete

Input은 청구서의 절반일 뿐

context window는 네가 보낸 것만 담는 게 아니라 모형이 답을 쓸 자리까지 담아야 해. reasoning model은 겉으로 안 보이는 reasoning token까지 같은 요청 예산에서 깎아 쓰고. window가 터지도록 자료를 채워놓고 30페이지를 새로 써달라고 하면, 그건 실패를 미리 짜놓은 거야.

Reasoning model이 셈을 바꾼다

OpenAI o-series나 Claude extended thinking 계열은 답하기 전에 눈에 안 보이는 reasoning token을 수천 개씩 쏟아낼 수 있어. 그걸 청구하는 provider도 있고 안 하는 데도 있지. 다만 요청당 token 한도에서는 어디든 깎여. 그래서 "들어가겠는데" 싶던 요청이 reasoning이 여유를 다 먹어버리는 바람에 중간에 엎어질 수 있어.

Output은 먼저 떼어놔

긴 작업이면 output 예산부터 정해. 그다음에 자료를 얼마나 넣을지 결정하고. 순서가 거꾸로인 것 같지? 모형이 제일 중요한 대목 바로 앞에서 답을 뚝 자르는 걸 한 번 보고 나면 바로 납득돼.

잘림 방지 원칙: output 자리를 안 남기고 input을 길게 넣는 건 신중한 게 아니야. 성공한 요청인 척하는, 시한부 잘림 버그야.

Code

불러오기 전에 먼저 떼어놓기·python
WINDOW = 400_000
RESERVE_OUTPUT     = 40_000
RESERVE_REASONING  = 30_000   # extended-thinking budget
SAFETY_MARGIN      = 40_000

USABLE_INPUT = WINDOW - RESERVE_OUTPUT - RESERVE_REASONING - SAFETY_MARGIN
print(USABLE_INPUT)  # 290_000
예산 템플릿 두 개·yaml
budgets:
  small_window_128k:
    input:     80_000
    output:    20_000
    reasoning: 12_000
    margin:    16_000
  long_window_400k:
    input:     260_000
    output:    50_000
    reasoning: 40_000
    margin:    50_000

External links

Exercise

128K 모형이랑 400K 모형에 각각 예산을 짜봐. input보다 먼저 output, reasoning, 안전마진을 떼어놓고. 둘의 실제 쓸 수 있는 input 비율을 비교해봐.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.