Login
Back to Blog
한국어Comparison

Claude Fable 5 vs GPT-5.5: max_tokens 오판이 모델 비교 결론을 바꾼 사례

Crazyrouter OpenAI-compatible API로 claude-fable-5와 gpt-5.5를 수학 추론, 물리 추론, Canvas 애니메이션 장문 코드 과제로 비교했다. 핵심은 max_tokens, finish_reason=length, completion_tokens, 브라우저 검증이 모델 평가 결론을 어떻게 바꾸는지다.

C
Crazyrouter Team
July 6, 2026 / 89 views
Share:
Claude Fable 5 vs GPT-5.5: max_tokens 오판이 모델 비교 결론을 바꾼 사례

Claude Fable 5 vs GPT-5.5: max_tokens 오판이 모델 비교 결론을 바꾼 사례#

먼저 결론부터 말하면, 이번 테스트는 “Claude Fable 5가 애니메이션을 못 만든다”는 사례가 아니었다. 원인은 원래 테스트에서 설정한 max_tokens가 너무 낮았기 때문에 생긴 오판이었다.

첫 번째 동일 조건 테스트에서 gpt-5.5는 완전한 HTML을 한 번에 출력했고 브라우저 실행 검증도 통과했다. 반면 claude-fable-5의 애니메이션 코드는 중간에서 잘렸고, 처음에는 장문 코드 생성 능력이 부족한 것처럼 보였다. 하지만 응답 메타데이터는 원인을 분명히 보여줬다.

text
finish_reason = length
completion_tokens = 3200
max_tokens = 3200

이는 출력 예산을 모두 사용했기 때문에 서버가 길이 제한으로 응답을 종료했다는 뜻이다. 이후 claude-fable-5max_tokens를 3200에서 8000으로 올려 재테스트하자, 완전한 HTML을 출력했고 finish_reason=stop으로 자연 종료되었으며 브라우저 검증도 통과했다.

이 글은 테스트 설계, 세 가지 문제, 첫 번째 오판, Claude Fable 5 재테스트 결과, 그리고 앞으로 장문 코드 모델 비교에서 반드시 기록해야 할 항목을 정리한다.

GPT-5.5 animation result

Last updated: 2026-07-06.

빠른 결론#

이번 결과는 단순한 승패표로 정리하기 어렵다.

영역결론
수학 추론claude-fable-5gpt-5.5 모두 정답
물리 종합 문제둘 다 정답, Claude는 에너지 손실 설명이 더 강했다
장문 애니메이션 코드, max_tokens=3200gpt-5.5는 완성, Claude는 잘림
Claude 재테스트, max_tokens=8000Claude도 완성했고 브라우저 검증 통과

정확한 결론은 다음과 같다.

text
낮은 출력 예산에서는 GPT-5.5가 더 안정적이었다.
Claude Fable 5는 능력 실패가 아니라 장문 코드 과제에 더 큰 출력 예산이 필요했다.

짧은 추론, 수학 풀이, 물리 설명에서는 이번 테스트만으로 두 모델의 정확성 차이를 크게 보기 어렵다. 그러나 완전한 페이지, 애니메이션, 도구, 긴 코드 파일을 한 번에 생성해야 한다면 max_tokens, completion_tokens, finish_reason, 실제 실행 검증을 함께 봐야 한다.

Crazyrouter에서 같은 방식의 OpenAI-compatible 요청을 재현할 수 있다.

text
https://crazyrouter.com/register?utm_source=crazyrouter_blog&utm_medium=article&utm_campaign=model_compare_series_20260706&utm_content=claude-fable-5-vs-gpt-55-max-tokens-animation-test-2026-ko__quick_answer

테스트 환경#

이번 테스트는 Crazyrouter의 OpenAI-compatible API로 진행했다.

text
Base URL: https://cn.crazyrouter.com/v1
Endpoint: POST /v1/chat/completions
Test date: 2026-07-06
Models:
- claude-fable-5
- gpt-5.5
temperature: 0.2

API endpoint에는 UTM 파라미터를 붙이면 안 된다. UTM은 회원가입 링크 같은 사람이 클릭하는 링크에만 사용한다.

최소 요청 예시는 다음과 같다.

bash
curl https://cn.crazyrouter.com/v1/chat/completions \
  -H "Authorization: Bearer $CRAZYROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-fable-5",
    "messages": [
      {
        "role": "user",
        "content": "Toss a fair coin until HH appears for the first time. Compute the expected number of tosses and show the derivation."
      }
    ],
    "temperature": 0.2,
    "max_tokens": 3200
  }'

modelgpt-5.5로 바꾸면 같은 조건으로 비교할 수 있다.

왜 객관식만 묻지 않았나#

모델 비교를 객관식이나 짧은 문답으로만 하면 “둘 다 맞음”이라는 결과가 쉽게 나온다. API가 동작하는지 확인하는 데는 좋지만, 실제 업무에서 생기는 문제를 드러내기에는 약하다.

이번에는 세 가지 유형의 문제를 사용했다.

문제 ID유형검증 대상
MATH-003기대값 문제잘못된 확률 직관 대신 상태 방정식을 세우는지
PHYS-003물리 추론충돌 순간의 운동량 보존과 충돌 후 에너지 관계를 구분하는지
CODE-003-ANIM프론트엔드 애니메이션완전하고 실행 가능한 인터랙티브 장문 코드 산출물을 만들 수 있는지

앞의 두 문제는 추론 정확성을 본다. 세 번째 문제는 출력 길이, 구조 유지, 코드 완성도, 실제 실행 여부를 본다.

실제 운영에서 흔한 문제는 모델이 완전히 모른다는 것이 아니다. 더 자주 보이는 문제는 다음과 같다.

text
출력이 중간에서 잘림
이벤트 바인딩이 빠짐
closing tag가 빠짐
코드는 그럴듯하지만 브라우저에서 오류 발생
정적 검사는 통과하지만 Canvas가 움직이지 않음

문제 1: HH가 처음 나올 때까지 동전 던지기#

문제:

text
공정한 동전을 계속 던져 처음으로 연속 두 번 앞면 HH가 나올 때까지 기다린다.
1. 멈출 때까지 필요한 던지기 횟수의 기대값을 구하라.
2. 상태 방정식 또는 재귀식으로 유도하라.
3. 왜 답이 4가 아닌지 한 문장으로 설명하라.

표준 풀이는 두 상태를 정의한다.

text
E0: 현재 H 접두사가 없는 상태
E1: 직전 결과가 H이고 다음 H를 기다리는 상태

E0 = 1 + 1/2 E1 + 1/2 E0
E1 = 1 + 1/2 * 0 + 1/2 E0

풀면 E0 = 6

결과:

모델결과관찰
claude-fable-5정답상태 정의가 명확했고 실패 시 진행 상태가 초기화된다는 점을 잘 설명
gpt-5.5정답유도 과정이 더 자세했고 왜 4가 아닌지 설명이 더 완전

이 문제에서는 차이가 거의 없었다. 두 모델 모두 1 / (1/4) = 4라는 직관적 오류를 피했다.

문제 2: 총알, 나무토막, 용수철, 마찰#

문제 요약:

text
질량 m = 0.02 kg인 총알이 v = 300 m/s로 정지한 나무토막에 박힌다.
나무토막 질량 M = 1.98 kg, 용수철 상수 k = 800 N/m.
탁자의 운동 마찰 계수 μ = 0.10, g = 9.8 m/s^2.

구할 것:
1. 충돌 직후 공동 속도.
2. 용수철의 최대 압축량.
3. 어디서 운동량 보존을 쓰고, 어디서 에너지 관계를 쓰는지, 왜 전체 과정에 기계적 에너지 보존을 적용할 수 없는지 설명.

표준 계산:

text
충돌 순간:
mv = (M + m)V
V = 0.02 * 300 / 2.00 = 3.0 m/s

충돌 후 압축 단계:
1/2(M + m)V^2 = 1/2kx^2 + μ(M + m)gx
9 = 400x^2 + 1.96x
x ≈ 0.148 m

결과:

모델결과관찰
claude-fable-5정답충돌 전 운동에너지 900J, 충돌 후 9J라는 비교를 추가해 에너지 손실을 직관적으로 설명
gpt-5.5정답단계가 깔끔하고 운동량/에너지 사용 구간을 안정적으로 분리

이 문제도 두 모델 모두 정답이었다. 충돌 순간에는 운동량 보존을, 충돌 후 용수철 압축 구간에는 마찰 일을 포함한 에너지 관계를 사용했다.

문제 3: Canvas 애니메이션 생성#

이번 라운드에서 가장 중요한 정보는 세 번째 문제에서 나왔다.

요구사항은 단순한 JavaScript 조각이 아니라 완전한 단일 HTML 파일이었다.

text
800x500 canvas
중앙 별
최소 5개의 궤도 입자
requestAnimationFrame
반투명 궤적
일시정지/재개 버튼
리셋 버튼
속도 슬라이더
FPS와 속도 HUD
init / update / draw / animate 함수 포함
외부 라이브러리, 이미지, 네트워크 리소스 사용 금지

이 과제는 네 가지를 동시에 확인한다.

능력확인 내용
장문 출력 완성도HTML, CSS, JS가 완전히 닫혔는지
제약 준수컨트롤, 함수명, Canvas 크기가 있는지
실행 가능성브라우저 콘솔 오류가 없는지
실제 애니메이션시간이 지난 뒤 Canvas 픽셀이 변하는지

첫 번째 결과: GPT-5.5는 완성, Claude는 잘림#

원래 동일 조건 테스트에서 두 모델 모두 max_tokens=3200을 사용했다.

gpt-5.5는 완전한 HTML을 출력했다.

text
finish_reason = stop
<!DOCTYPE html> 포함
</html> 포함
requestAnimationFrame 포함
init / update / draw / animate 포함
일시정지, 리셋, 속도 슬라이더 포함
canvas = 800x500

브라우저 검증:

text
콘솔 오류: 없음
canvas 크기: 800x500
컨트롤: 존재
700ms 후 changedPixels = 37512
hasAnimation = true

즉 정적인 그림이 아니라 실제로 움직이는 애니메이션이었다.

claude-fable-5도 방향은 맞았다. 800x500 canvas, 입자 설정, 궤도, 중앙 별, HUD, 컨트롤 스타일, init, update, draw 일부를 작성했다. 그러나 파일이 중간에서 멈췄다.

핵심 메타데이터:

text
max_tokens = 3200
finish_reason = length
completion_tokens = 3200
HTML was truncated
완전한 </script> 없음
</body> 없음
</html> 없음

“실행 가능한 HTML 애니메이션”을 요구한 과제에서는 이 결과를 완료로 볼 수 없다.

왜 첫 해석이 틀렸나#

출력 파일만 보면 다음과 같은 잘못된 결론을 내리기 쉽다.

text
GPT-5.5는 애니메이션을 만들 수 있고 Claude Fable 5는 만들 수 없다.

하지만 finish_reason=length가 해석을 바꾼다.

Chat Completions에서 finish_reason=length는 보통 설정된 길이 제한에 도달했다는 뜻이다. 여기에 다음 값이 함께 있었다.

text
completion_tokens = 3200
max_tokens = 3200

이 경우 응답이 자연스럽게 끝난 것이 아니라 출력 예산을 모두 사용한 것으로 보는 것이 합리적이다.

따라서 첫 실패 결과를 곧바로 “모델 능력 부족”으로 해석하면 안 된다. 더 적절한 가설은 해당 HTML이 3200 output tokens보다 길었다는 것이다.

Claude Fable 5 재테스트: max_tokens를 8000으로 상향#

이를 확인하기 위해 같은 애니메이션 과제로 claude-fable-5를 재테스트했다.

테스트max_tokensfinish_reasoncompletion_tokensHTML 닫힘
동일 예산 재테스트3200length3200아니오
출력 예산 상향8000stop3975

핵심은 다음과 같다.

text
max_tokens=3200에서는 Claude가 다시 출력 예산을 모두 사용하고 잘렸다.
max_tokens=8000에서는 3975 completion tokens에서 자연 종료했다.

즉 이 애니메이션 과제는 3200 output tokens보다 조금 더 필요했지만, 8000에 가까운 수준은 아니었다. 원래 설정이 너무 빡빡했다.

Claude Fable 5의 8000 버전도 브라우저 검증을 통과했다.

text
콘솔 오류: 없음
canvas 크기: 800x500
일시정지 버튼: 존재
리셋 버튼: 존재
속도 슬라이더: 존재
700ms 후 changedPixels = 15795
hasAnimation = true

수정된 결론은 다음과 같다.

text
Claude Fable 5가 애니메이션 과제를 능력적으로 실패한 것이 아니다.
max_tokens=3200 안에 전체 답변을 담지 못했으며, max_tokens=8000에서는 완성하고 실행됐다.

Claude Fable 5 animation result

전체 결과표#

지표결과
테스트 모델claude-fable-5, gpt-5.5
EndpointPOST /v1/chat/completions
원래 테스트 요청 수6
HTTP 2006/6
returned_modelrequested_model 일치6/6
원래 테스트에서 finish_reason=stop5/6
원래 테스트의 잘림claude-fable-5 애니메이션 과제
Claude 재테스트max_tokens=8000에서 완성

응답 시간:

과제claude-fable-5gpt-5.5
MATH-00317.87s28.18s
PHYS-00323.21s43.05s
CODE-003-ANIM40.84s79.22s

이번 실행에서는 Claude가 더 빨랐다. 하지만 장문 코드 과제에서는 속도만 보면 안 된다. 빠르게 잘린 응답은 완성된 산출물이 아니다.

수동 점수#

과제claude-fable-5gpt-5.5설명
MATH-0035/55/5둘 다 기대값 6을 정확히 도출
PHYS-0035/55/5둘 다 운동량과 에너지 관계를 올바르게 사용
CODE-003-ANIM, 원래 max_tokens=32002/55/5Claude는 잘림, GPT는 완성 및 브라우저 검증 통과
CODE-003-ANIM, Claude max_tokens=8000 재테스트5/5-Claude도 완성 및 브라우저 검증 통과

이 점수표는 두 질문을 분리한다.

text
같은 호출 제약에서 모델은 어떻게 동작했는가?
충분한 출력 예산을 주면 모델은 무엇을 할 수 있는가?

첫 번째 질문에서는 max_tokens=3200 조건에서 GPT-5.5가 더 안정적이었다. 두 번째 질문에서는 Claude Fable 5가 애니메이션 능력에서 실패한 것이 아니었다.

실제 모델 선택에 주는 시사점#

다음과 같은 작업에서는 이번 테스트만으로 큰 정확성 차이를 보기 어렵다.

text
수학 유도
물리 설명
짧은 코드
구조화된 설명
짧은 JSON

반면 다음 작업에서는 눈에 보이는 답변만 비교하면 안 된다.

text
완전한 HTML 생성
긴 JavaScript 파일
인터랙티브 프론트엔드 데모
도구 페이지 전체 생성
긴 설정 파일 또는 테스트 코드

다음 항목을 함께 기록해야 한다.

필드중요한 이유
max_tokens이번 요청에서 허용한 최대 출력량
completion_tokens출력이 제한에 가까웠는지 확인
finish_reason자연 종료인지 잘림인지 판단
content_chars출력 분량을 대략적으로 파악
정적 검사함수, 컨트롤, 태그, 필수 필드 존재 여부
실행 검증브라우저, 콘솔, 픽셀 변화 등 실제 실행 여부

이 필드가 없으면 장문 코드 비교는 쉽게 왜곡된다.

권장 기록 형식#

장문 코드 모델 비교에서는 다음과 같은 메타데이터를 저장하는 것이 좋다.

json
{
  "task_id": "CODE-003-ANIM",
  "model": "claude-fable-5",
  "endpoint": "/v1/chat/completions",
  "max_tokens": 8000,
  "temperature": 0.2,
  "http_status": 200,
  "requested_model": "claude-fable-5",
  "returned_model": "claude-fable-5",
  "finish_reason": "stop",
  "completion_tokens": 3975,
  "validation": {
    "console_errors": 0,
    "canvas": "800x500",
    "changed_pixels_after_700ms": 15795,
    "has_animation": true
  }
}

결론은 모델 출력 텍스트만이 아니라 이러한 메타데이터와 실행 증거를 함께 봐야 한다.

Crazyrouter OpenAI-compatible API로 유사한 테스트를 실행할 수 있다.

text
https://crazyrouter.com/register?utm_source=crazyrouter_blog&utm_medium=article&utm_campaign=model_compare_series_20260706&utm_content=claude-fable-5-vs-gpt-55-max-tokens-animation-test-2026-ko__api_example

관련 비교 글#

이 글은 모델 비교 시리즈의 방법론 보정에 가깝다.

관련 Crazyrouter 글:

공통 원칙은 단순하다. 모델 비교는 홍보 문구나 HTTP 200만 보고 판단하면 안 된다. 실제 payload, 실제 응답, 실패 메타데이터, 실행 검증을 함께 봐야 한다.

FAQ#

이번 결과가 GPT-5.5가 항상 Claude Fable 5보다 강하다는 뜻인가?#

아니다. 이번 결과는 원래 애니메이션 과제의 max_tokens=3200 조건에서 GPT-5.5가 더 안정적이었다는 뜻이다. Claude Fable 5는 출력 예산을 늘리자 같은 과제를 완성했다.

finish_reason=length가 왜 중요한가?#

응답이 자연 종료된 것이 아니라 길이 제한에 걸렸다는 신호이기 때문이다. 장문 코드에서는 closing tag, 이벤트 바인딩, 함수 끝부분이 빠질 수 있다.

completion_tokens만 보면 안 되는 이유는?#

completion_tokens=3200만으로는 부족하다. max_tokens=3200과 같을 때 출력 예산을 모두 사용했다는 의미가 된다.

왜 브라우저 검증이 필요한가?#

코드 생성 과제는 텍스트 검사만으로 부족하다. 브라우저 검증은 콘솔 오류, Canvas 크기, 컨트롤 존재 여부, 실제 픽셀 변화까지 확인한다.

장문 코드에서 max_tokens는 얼마나 커야 하나?#

고정 답은 없다. 다만 HTML, CSS, JavaScript를 모두 포함한 페이지는 너무 낮은 출력 예산을 쓰면 위험하다. finish_reason=length가 보이면 먼저 예산을 올려 재테스트해야 한다.

이 테스트로 production routing을 결정할 수 있나?#

참고는 가능하지만 단독 기준으로는 부족하다. 비용, 지연 시간, 컨텍스트 길이, 구조화 출력 안정성, 실패율, 재시도 전략, 업무 유형을 함께 봐야 한다.

최종 결론#

이번 비교의 핵심은 한 모델이 영구적으로 다른 모델을 이겼다는 것이 아니다. 핵심은 첫 결론이 너무 빠른 판단이었다는 점이다.

원래 테스트:

text
GPT-5.5: max_tokens=3200, 완전한 HTML, 브라우저 검증 통과.
Claude Fable 5: max_tokens=3200, finish_reason=length, completion_tokens=3200, 출력 잘림.

재테스트:

text
Claude Fable 5: max_tokens=8000, finish_reason=stop, completion_tokens=3975, 완전한 HTML, 브라우저 검증 통과.

최종 결론:

text
낮은 출력 예산에서는 GPT-5.5가 더 안정적이었다.
충분한 출력 예산에서는 Claude Fable 5도 애니메이션 과제를 완성할 수 있었다.
장문 코드 모델 비교에는 max_tokens, completion_tokens, finish_reason, 실행 검증이 반드시 필요하다.

앞으로 모델 비교에서는 이 네 가지 항목을 필수 증거로 기록해야 한다. 그렇지 않으면 출력 예산 문제를 모델 능력 문제로 잘못 기록할 수 있다.

Implementation Guides

Topics

Comparison

Related Posts

GLM-5.2 vs Claude Fable 5 실측: 출력 예산, reasoning_tokens, 그리고 0.8 가격 계수Comparison

GLM-5.2 vs Claude Fable 5 실측: 출력 예산, reasoning_tokens, 그리고 0.8 가격 계수

Crazyrouter OpenAI 호환 API에서 glm-5.2와 claude-fable-5를 수학, 물리, Canvas 애니메이션 과제로 비교하고, glm-5.2의 현재 0.8 discount 정보를 함께 정리합니다.

Jul 6
Kimi K3와 Claude Fable 5 실측: 수학 검증, 코드 완결성, 응답 속도의 차이Comparison

Kimi K3와 Claude Fable 5 실측: 수학 검증, 코드 완결성, 응답 속도의 차이

수학, 물리, 실행 가능한 Python, 제약 추론으로 Kimi K3와 Claude Fable 5를 비교하고 finish_reason, reasoning tokens, 지연 시간을 분석합니다.

Jul 17
Kimi K3 vs GPT-5.6-SOL: 수학·물리·프로그래밍 고난도 실전 테스트Comparison

Kimi K3 vs GPT-5.6-SOL: 수학·물리·프로그래밍 고난도 실전 테스트

동일한 OpenAI-compatible API와 동일한 프롬프트 조건에서 kimi-k3와 gpt-5.6-sol을 대상으로 패턴 정지 시간, 도르래 회전 관성이 포함된 물리 문제, 의존성 클로저 프로그래밍 문제를 테스트하고, 정답 여부, 출력 잘림, 지연 시간, 로컬 코드 검증 결과를 기록합니다.

Jul 18
GPT-image-2로 AI 밈 생성기 & 컬러링북 만들기 — 재미있고 수익도 되는 프로젝트Tutorial

GPT-image-2로 AI 밈 생성기 & 컬러링북 만들기 — 재미있고 수익도 되는 프로젝트

GPT-image-2와 Crazyrouter API로 AI 밈 생성기와 컬러링북 페이지 제작기를 만듭니다. 재미있고 수익화 가능한 두 가지 프로젝트의 전체 코드를 제공합니다.

May 2
Kimi K3는 Claude Opus 4.8에 도달했을까? 7개 관점의 API 실측Comparison

Kimi K3는 Claude Opus 4.8에 도달했을까? 7개 관점의 API 실측

정밀 수학, 물리 모델링, 제약 추론, 통계적 역유도, 코드 리뷰, 엄격한 JSON, 불확실성 보정 등 7개 관점에서 Kimi K3와 Claude Opus 4.8의 정답률, 첫 가시 응답, 전체 지연 시간, reasoning Token 효율을 비교합니다.

Jul 19
2026년 개발자를 위한 최고의 AI API 게이트웨이: 9개 플랫폼 테스트Comparison

2026년 개발자를 위한 최고의 AI API 게이트웨이: 9개 플랫폼 테스트

모델 커버리지, 가격, 멀티모달 지원 및 개발자 경험을 위해 9개의 AI API 게이트웨이를 테스트했습니다.

Mar 27