Claude Fable 5 API 사용 방법 (Python)
실제 동작하는 Claude Fable 5 API 가이드 — 첫 호출, 이전 모델처럼 코딩하면 400이 나는 5가지 파라미터, 거부 처리, 그리고 비용.

TL;DR
- Anthropic Messages API에서 모델 ID
claude-fable-5로 Claude Fable 5를 호출합니다 —anthropicSDK를 설치하고,ANTHROPIC_API_KEY를 설정한 뒤messages.create요청을 보냅니다 - 함정: 이전 Claude(또는 GPT) 모델용으로 작성한 코드는 Fable 5에서 깨집니다.
temperature,top_p,top_k,budget_tokens,thinking: {type:"disabled"}, assistant prefill은 모두 400을 반환합니다 - Thinking은 항상 켜져 있습니다 — 토큰 예산이 아니라
output_config.effort(low→max)로 깊이를 제어하세요.refusalstop reason을 처리하고 fallback을 켜 두세요 - Fable 5는 30일 데이터 보존이 필요합니다(ZDR 조직은 모든 요청에서 400을 받음). 비용은 입력/출력 토큰 100만 개당 $10 / $50 — Opus 4.8의 약 2배입니다
- Anthropic 계정, 티어, 보존 설정을 건너뛰고 싶나요? [Velokey](/model/claude-fable-5)의 OpenAI 호환 엔드포인트로
claude-fable-5를 한 개의 키로 호출하세요 — 같은 $10/$50 가격, 아래 파라미터 함정은 없습니다
대부분의 "API 호출 방법" 가이드는 세 줄짜리 hello-world만 보여주고 끝납니다. 습관적으로 temperature를 넘겨 Fable 5가 첫 실제 요청에서 400을 반환하거나, 코드가 response.content[0]을 읽어 거부 시 크래시 나기 전까지는 그걸로 충분합니다. Fable 5는 Anthropic의 가장 강력한 모델이지만, 이전 어떤 모델보다 요청 표면이 엄격합니다. 동작하는 호출부터 시작하고, 실제로 연동을 깨뜨리는 다섯 가지를 이어서 다룹니다.

Claude Fable 5 API를 호출하려면 무엇이 필요한가요?
유료 Anthropic 계정, anthropic SDK, 그리고 — 여기서 많이 막힙니다 — 조직 데이터 보존 설정이 최소 30일이어야 합니다. Fable 5는 zero data retention(ZDR)에서는 사용할 수 없습니다. ZDR 조직은 페이로드가 아무리 깨끗해도 모든 Fable 5 요청에서 400 invalid_request_error를 받습니다.
모델 ID는 claude-fable-5입니다. 1M 토큰 컨텍스트 윈도우(기본값이자 최대값)와 최대 128K 출력 토큰을 지원합니다. 설치와 인증:
pip install anthropic
export ANTHROPIC_API_KEY="sk-ant-..." # never hardcode첫 호출 전에 확인하세요:
| 요구 사항 | 중요한 이유 |
|---|---|
| 유료 계정, 충분한 티어 | Fable 5는 Opus 티어 이상 — 모델 접근 권한 확인 |
| 데이터 보존 ≥ 30일 | ZDR 조직은 모든 요청에서 400 |
anthropic SDK 설치 | OpenAI 호환 심이 아닌 공식 SDK 사용 |
모델 ID claude-fable-5 | 정확한 문자열 — 날짜 접미사 없음 |
첫 Claude Fable 5 API 호출은 어떻게 하나요?
client.messages.create()를 model="claude-fable-5"와 messages 리스트로 호출합니다. thinking 파라미터는 넘기지 마세요 — thinking은 항상 켜져 있습니다 — 대신 output_config.effort로 추론 깊이를 제어합니다.
import anthropic
client = anthropic.Anthropic() # reads ANTHROPIC_API_KEY from the environment
response = client.messages.create(
model="claude-fable-5",
max_tokens=16000,
output_config={"effort": "high"}, # low | medium | high | xhigh | max
messages=[
{"role": "user", "content": "Explain the tradeoffs of event sourcing in two paragraphs."}
],
)
# Always check stop_reason before reading content (see refusals below)
if response.stop_reason != "refusal":
for block in response.content:
if block.type == "text":
print(block.text)이게 hello-world 전부입니다. effort가 핵심 품질/지연 다이얼입니다 — high가 좋은 기본값이고, xhigh는 코딩·에이전트 작업에 최적, low/medium은 일상 작업에 충분하며 종종 이전 모델의 최고 설정보다 낫습니다. 원시 chain of thought는 반환되지 않습니다. 읽기 쉬운 추론 요약이 필요하면 thinking={"type": "adaptive", "display": "summarized"}를 넘기세요.
Velokey를 통해 Claude Fable 5를 호출하려면? (Anthropic 계정 없이)
Anthropic 계정, 사용량 티어, 30일 보존 요구 사항을 건너뛰고 싶다면 [Velokey](/model/claude-fable-5)의 OpenAI 호환 엔드포인트로 Fable 5를 호출하세요. 아무 OpenAI 클라이언트든 Velokey base URL을 가리키고, Velokey 키를 넣은 뒤 모델을 claude-fable-5로 설정하면 됩니다 — 표준 chat completion이므로 다음 절의 파라미터 함정은 적용되지 않습니다.
from openai import OpenAI
client = OpenAI(
base_url="https://api.velokey.ai/v1",
api_key="sk-velokey-...", # your Velokey key — not an Anthropic key
)
response = client.chat.completions.create(
model="claude-fable-5",
messages=[{"role": "user", "content": "Explain the tradeoffs of event sourcing in two paragraphs."}],
)
print(response.choices[0].message.content)Anthropic을 직접 호출할 때와 같은 100만 토큰당 $10 / $50 가격이며, Velokey 크레딧에서 청구되고, 사용하는 모든 모델에 하나의 키로 접근할 수 있으며 Anthropic 전용 설정도 없습니다. 동작하는 Fable 5 호출로 가는 가장 빠른 경로입니다. 이 가이드의 나머지는 직접 Anthropic 경로와 그에 따른 요청 특이점을 다루며, OpenAI 호환 엔드포인트는 이를 매끄럽게 처리합니다.
이전 모델처럼 Claude Fable 5를 호출하면 무엇이 깨지나요?
Anthropic을 직접 호출할 때, 이전 Claude나 GPT 모델에서 동작하던 다섯 가지 요청 파라미터가 Fable 5에서는 400을 반환합니다. "빠른 교체"가 오후 종일 디버깅으로 바뀌는 지점입니다(그리고 위의 Velokey 경로가 건너뛰는 마찰이기도 합니다).
Fable 5에서 400이 나는 파라미터:
| 익숙한 것 | Fable 5에서 | 해결 |
|---|---|---|
temperature, top_p, top_k | 400 | 제거 — 프롬프트로 유도 |
thinking: {type:"enabled", budget_tokens: N} | 400 | 생략하고 output_config.effort 사용 |
thinking: {type:"disabled"} | 400 | thinking 파라미터를 아예 생략 |
Assistant-turn prefill (마지막 메시지 role:"assistant") | 400 | output_config.format 사용 (structured outputs) |
| ZDR 조직에서의 모든 요청 | 400 | ≥30일 데이터 보존 활성화 |
*출처: Anthropic Claude Fable 5 API 문서, 2026.*
사고방식: Fable 5는 샘플링 노브와 고정 thinking 예산을 의도적으로 제거했습니다. 결정성을 위한 temperature=0도, budget_tokens 상한도 없습니다 — 프롬프트로 동작을 만들고 effort로 깊이를 제한합니다. 동작 중인 Opus 또는 GPT 연동을 이전 중이라면, 다른 무엇보다 먼저 그 파라미터들을 삭제하세요.
Claude Fable 5 거부는 어떻게 처리하나요?
Fable 5는 요청을 거절할 수 있는 안전 분류기를 실행합니다 — 거절은 HTTP 오류가 아닙니다. 성공적인 200과 함께 stop_reason: "refusal", 그리고 비어 있거나(또는 스트림 중 부분적인) content 배열을 반환합니다. 조건 없이 response.content[0].text를 읽는 코드는 여기서 크래시 납니다.
해야 할 일은 두 가지입니다. 첫째, content를 읽기 전에 항상 stop_reason으로 분기하세요. 둘째, 오탐 거절로 그냥 실패하지 않도록 fallback을 옵트인하세요 — 보안 도구·생명과학 분야의 정상적인 작업도 분류기를 건드릴 수 있으므로, 합법적인 앱에도 중요합니다:
response = client.beta.messages.create(
model="claude-fable-5",
max_tokens=16000,
betas=["server-side-fallback-2026-06-01"],
fallbacks=[{"model": "claude-opus-4-8"}], # re-served in the same call on a decline
output_config={"effort": "high"},
messages=[{"role": "user", "content": "..."}],
)
if response.stop_reason == "refusal":
# The whole chain (Fable 5 + fallback) declined — surface it, don't retry as-is
handle_refusal(response)
else:
print(next(b.text for b in response.content if b.type == "text"))서버 측 fallbacks 파라미터를 쓰면, 거절된 요청이 같은 호출 안에서 claude-opus-4-8로 투명하게 재실행되며, 이중 청구되지 않도록 과금이 조정됩니다. 출력 전 거절은 아예 청구되지 않습니다. 새 Fable 5 코드에서는 기본적으로 켜 두세요 — 옵트인이라 없으면 거절 시 그냥 중단됩니다.
Claude Fable 5 API 비용은 얼마인가요?
Fable 5는 입력 토큰 100만 개당 $10, 출력 토큰 100만 개당 $50 — Claude Opus 4.8($5 / $25)의 대략 2배입니다. 가장 어려운 추론과 장기 에이전트 작업용 가격이며, 대량 일상 호출용이 아닙니다.
요청 한 번의 비용:
| 모델 | 10K in + 2K out | 상대 |
|---|---|---|
claude-fable-5 | $0.20 | 2× |
claude-opus-4-8 | $0.10 | 1× |
*공개 단가 기준 토큰 계산. Fable 5: 10K×$10/1M + 2K×$50/1M = $0.20.*

청구를 합리적으로 유지하는 두 가지 레버가 있습니다. 일상 작업에서는 effort를 medium 또는 low로 낮추세요 — 낮은 effort의 Fable 5가 이전 모델의 천장 설정과 맞먹는 경우가 많습니다. 그리고 반복 컨텍스트에는 [prompt caching](/blog/claude-api-pricing-2026)을 사용하세요. 캐시 읽기는 입력 단가의 대략 1/10로 청구됩니다. 운영상 한 가지 더: 어려운 작업의 단일 요청은 수 분 걸릴 수 있으므로, 큰 max_tokens가 있으면 스트리밍해 클라이언트 타임아웃을 피하세요:
with client.messages.stream(
model="claude-fable-5",
max_tokens=64000,
output_config={"effort": "xhigh"},
messages=[{"role": "user", "content": "..."}],
) as stream:
message = stream.get_final_message()Anthropic 계정과 30일 보존 설정을 직접 관리하고 싶지 않다면, [Velokey](/model/claude-fable-5) 같은 통합 게이트웨이가 다른 모델과 함께 OpenAI 호환 엔드포인트 하나로 claude-fable-5를 노출합니다 — 다른 모든 모델에 쓰는 것과 같은 키로 호출합니다. Fable 5가 다른 프론티어 모델 대비 가격에서 어떻게 위치하는지 보려면 Claude API 가격 가이드, GPT-5.6 티어 분석, GLM-5.2 vs GPT-5.5 vs Opus 4.8 비교를 참고하세요.
자주 묻는 질문
Claude Fable 5 API 모델 ID는 무엇인가요?
모델 ID는 claude-fable-5입니다 — 날짜 접미사 없는 정확한 문자열입니다. Anthropic이 널리 공개한 가장 강력한 모델이며, 1M 토큰 컨텍스트 윈도우(기본값이자 최대값)와 최대 128K 출력 토큰을 지원합니다. 공식 anthropic SDK로 Messages API(client.messages.create)를 통해 호출합니다.
Claude Fable 5 요청이 400을 반환하는 이유는?
흔한 원인은 Fable 5가 제거한 파라미터입니다: temperature, top_p, top_k, thinking: {budget_tokens}, thinking: {type:"disabled"}, 또는 assistant-turn prefill — 각각 400을 반환합니다. 별도 원인으로는 zero-data-retention 조직이 있으며, 모든 Fable 5 요청에서 400이 납니다. 샘플링/thinking 파라미터를 제거하고 ≥30일 보존을 확인하세요.
Claude Fable 5에서 thinking 깊이는 어떻게 제어하나요?
output_config.effort를 사용하세요 — low, medium, high, xhigh, 또는 max. Thinking은 항상 켜져 있으며 비활성화하거나 고정 budget_tokens를 줄 수 없습니다(둘 다 400). high가 탄탄한 기본값이고, xhigh는 코딩·에이전트 작업에 맞습니다. 추론 요약을 보려면 thinking={"type":"adaptive","display":"summarized"}를 추가하세요.
Claude Fable 5 API 비용은 얼마인가요?
입력 토큰 100만 개당 $10, 출력 토큰 100만 개당 $50 — Claude Opus 4.8의 약 2배입니다. 10K 입력/2K 출력 요청은 약 $0.20입니다. effort를 낮추고 prompt caching을 쓰는 것(캐시 읽기는 입력의 ~10%로 청구)이 대량 작업 비용을 줄이는 주요 방법입니다.
Claude Fable 5 거부는 어떻게 처리하나요?
content를 읽기 전에 response.stop_reason을 확인하세요 — 거부는 stop_reason: "refusal"과 비어 있거나 부분적인 content와 함께 HTTP 200을 반환합니다. 서버 측 fallbacks 파라미터를 활성화하세요(betas=["server-side-fallback-2026-06-01"] 포함) — 거절 시 같은 호출 안에서 claude-opus-4-8로 재제공되어 실패하지 않습니다.
Anthropic 계정 없이 Claude Fable 5 API를 사용할 수 있나요?
직접은 안 됩니다 — Fable 5는 30일 데이터 보존이 있는 유료 Anthropic 계정이 필요합니다. 업스트림 Anthropic 접근을 처리하는 통합 API 게이트웨이를 통하면, 계정·보존 설정을 직접 관리하지 않고 OpenAI 호환 엔드포인트 하나로 claude-fable-5를 호출할 수 있습니다.
Anthropic 계정을 관리하지 않고 Claude Fable 5를 쓰고 싶나요? [Velokey API 키를 받으세요](/model/claude-fable-5) — OpenAI 호환 엔드포인트 하나로 claude-fable-5를 호출합니다. 같은 키로 사용하는 다른 모든 모델과 함께 쓸 수 있습니다.
*최종 업데이트: 2026년 7월 13일. API 세부 사항은 작성 시점의 Anthropic Claude Fable 5 문서를 기준으로 합니다. 가격, 파라미터, 모델 동작은 Anthropic이 정하며 변경될 수 있습니다 — 프로덕션 배포 전 공식 문서로 확인하세요.*

