
안녕하세요, 미니지식공간입니다.
Sakana Fugu API에 2026년 9월 11일 fugu-max와 fugu-ultra(Fugu Ultra v2.0) 두 슬러그가 추가됐다. OpenAI 호환 엔드포인트라 붙이는 건 어렵지 않은데, 실제로 손이 가는 지점은 따로 있다 — 오케스트레이션 토큰 과금, 추론 강도 지원 범위, 그리고 긴 작업의 타임아웃이다.
base_url="https://api.sakana.ai/v1" + 모델 슬러그 교체만으로 호출된다. Responses / Chat Completions / Anthropic Messages 세 API를 모두 지원한다.fugu-max-v1.0은 $2 / $6, fugu-ultra-v2.0은 $5 / $30. 272K 초과 프롬프트는 Ultra만 $10 / $45로 할증된다.usage.input_tokens_details.orchestration_input_tokens 등 오케스트레이션 토큰은 표시만 분리될 뿐 일반 단가로 과금된다. 비용 추정 로직에 반드시 포함해야 한다.공식 Get Started 문서의 Python 예제다. 바꾸는 건 base_url, api_key, model 세 가지다.
from openai import OpenAI
api_key = "YOUR_API_KEY"
client = OpenAI(
base_url="https://api.sakana.ai/v1",
api_key=api_key
)
response = client.responses.create(
model="fugu-ultra",
input="Write a concise explanation of how TLS works",
timeout=120.0,
)
print(response.output_text)
키가 살아 있는지만 빠르게 볼 거라면 curl 쪽이 간단하다. 역시 공식 문서 원문이다.
export SAKANA_API_KEY={your api key}
curl -X POST https://api.sakana.ai/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $SAKANA_API_KEY" \
-d '{"model":"fugu","messages":[{"role":"user","content":"How many r in word strawberry"}]}'
예제가 timeout=120.0을 들고 있는 건 장식이 아니다. 공식 문서는 복잡한 작업, 특히 fugu-ultra와 fugu-cyber에서 클라이언트 타임아웃을 늘려야 할 수 있다고 별도 주석으로 경고한다.
reasoning.effort 지원 범위가 슬러그마다 다르다. 이걸 모르면 max를 넣고 최고 강도로 돌고 있다고 착각하기 쉽다.
| 슬러그 | 표시명 | 지원 effort | 컨텍스트 |
|---|---|---|---|
fugu-max | Fugu Max | high, xhigh | 1,000,000 |
fugu-ultra | Fugu Ultra v2.0 | high, xhigh | 1,000,000 |
fugu | Fugu | high, xhigh | 1,000,000 |
fugu-ultra-v1.1 | Fugu Ultra v1.1 | high, xhigh, max | 1,000,000 |
fugu-ultra-v1.0 | Fugu Ultra v1.0 | high, xhigh | 1,000,000 |
fugu-cyber | Fugu Cyber | high, xhigh | 1,000,000 |
공식 문서 원문은 이렇게 정리한다. fugu-ultra-v1.1만 high / xhigh / max 세 단계를 진짜로 갖고, 나머지 슬러그는 max를 받긴 하지만 호환을 위해 xhigh로 매핑한다. 그 외 값은 거부된다. 컨텍스트 윈도우는 모델 카탈로그 기준 100만 토큰이고, OpenRouter 모델 페이지는 최대 출력 128,000 토큰으로 표기한다.
Fugu는 단일 모델이 아니라 작업을 여러 오픈·특화 모델 풀로 라우팅하는 학습된 오케스트레이터다. 그래서 응답의 usage에 일반 LLM API에 없는 필드가 붙는다. 아래는 공식 Pricing 문서에 실린 응답 형태다.
{
"usage": {
"input_tokens": 120,
"output_tokens": 80,
"total_tokens": 200,
"input_tokens_details": {
"cached_tokens": 0,
"orchestration_input_tokens": 0,
"orchestration_input_cached_tokens": 0
},
"output_tokens_details": {
"orchestration_output_tokens": 0
}
}
}

문서의 경고가 분명하다. OpenAI와 달리 이 token_details 값들은 표시용 상세가 아니라 입력·출력 토큰 바깥에 존재하는 실제 사용량이며, 최종 요금에 포함되고 단가는 표준 입력·출력과 동일하다. total_tokens는 오케스트레이션을 포함한 총량으로 반환된다.
실무 함의는 단순하다. 비용 추적 코드가 input_tokens와 output_tokens만 더하고 있으면 과금액을 과소 추정한다. orchestration_* 필드를 같은 단가로 합산해야 청구서와 맞는다. 라우팅이 많이 도는 에이전트 작업일수록 격차가 커진다.
공식 Pricing 문서 기준, 100만 토큰당 USD다. 2026년 9월 12일 확인값이다.
| 모델 | 입력 | 출력 | 캐시 입력 |
|---|---|---|---|
fugu-max-v1.0 | $2 | $6 | $0.25 |
fugu-ultra-v2.0 (표준) | $5 | $30 | $0.50 |
fugu-ultra-v2.0 (272K 초과) | $10 | $45 | $1.00 |
fugu 슬러그는 고정 단가가 아니다. 문서는 에이전트가 1개면 해당 기반 모델의 표준 단가만, 여러 개면 모델 요금을 중첩하지 않고 관여한 최상위 티어 모델 기준 단일 요금으로 청구한다고 설명한다. 내장 도구인 web_search와 web_fetch는 호출당 $0.007이 별도다. 구독은 Standard $20 / Pro $100 / Max $200 월 요금이며 API 플랫폼 전용이다.
Fugu는 Codex CLI와 Claude Code에 프로바이더 설정으로 붙는다. 한 줄 설치 스크립트는 Ubuntu와 macOS를 지원한다.
curl -fsSL https://sakana.ai/fugu/install | bash
codex-fugu # Codex
claude-fugu # Claude Code
수동으로 붙일 경우 Claude Code는 런처 없이 ANTHROPIC_* 환경 변수만으로 동작한다. 공식 문서가 명시하듯 ANTHROPIC_API_KEY가 아니라 베어러 토큰인 ANTHROPIC_AUTH_TOKEN을 써야 한다.
export ANTHROPIC_BASE_URL="https://api.sakana.ai"
export ANTHROPIC_AUTH_TOKEN="fish_..." # your Sakana key
export ANTHROPIC_DEFAULT_OPUS_MODEL="fugu-max[1m]"
export ANTHROPIC_DEFAULT_SONNET_MODEL="fugu[1m]"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="fugu[1m]"
export ANTHROPIC_DEFAULT_FABLE_MODEL="fugu-ultra[1m]"
export CLAUDE_CODE_SUBAGENT_MODEL="fugu[1m]"
claude
Codex 쪽 프로바이더 블록에는 스트림 내구성 키 세 개가 추가된다. stream_idle_timeout_ms = 7200000(2시간), stream_max_retries = 5, request_max_retries = 4다. 문서는 Fugu가 stateless이므로 재시도가 멱등(idempotent)하다고 밝히고 있다. 긴 턴이 Codex 기본 5분 유휴 타임아웃에 끊기는 걸 막기 위한 설정이다. 관리형 에이전트 실행 계층을 함께 저울질하고 있다면 Agents API 퀵스타트 정리와 비교해 보면 구조 차이가 선명해진다.
아래는 전부 Sakana AI 자사 발표다. 독립 검증이 아니고, SWEFish는 Sakana가 자사 코딩 과제로 만든 내부 벤치마크라고 스스로 밝힌다.
비교 대상 모델의 점수 역시 Sakana의 평가 환경에서 측정된 값이라, 같은 벤치마크 이름의 타사 공표값과 직접 비교하기는 어렵다. 도입 판단은 자기 워크로드 샘플로 재현하는 쪽이 안전하다.
공개 가중치는 없다. 호스팅 API 전용이며 셀프 호스팅 경로가 없다. MarkTechPost 보도 기준 EU/EEA에는 서비스가 제공되지 않는다. OpenRouter는 Fugu Ultra v2의 중앙값 지연 14.64초, 처리량 약 70 tok/s를 기록하고 있는데, 오케스트레이션 구조 특성상 단일 모델보다 첫 응답까지가 길다는 점은 UX 설계에 반영해야 한다.
Q. Fugu Max와 Fugu Ultra v2 중 뭘 붙여야 하나?
비용당 결과가 기준이면 fugu-max($2/$6), 복잡한 다단계 추론·자율 리서치·풀스택 개발처럼 품질이 우선이면 fugu-ultra($5/$30)가 Sakana가 제시한 구분이다. 같은 아키텍처라 호출 코드는 동일하고 슬러그만 바뀐다.
Q. 기존 OpenAI SDK 코드를 수정해야 하나?
base_url, api_key, model 세 값 교체가 기본이다. 이미 Fugu를 쓰고 있었다면 공식 블로그는 한 줄 파라미터 변경으로 충분하고 마이그레이션은 불필요하다고 설명한다. 다만 긴 작업용 타임아웃과 오케스트레이션 토큰 합산 로직은 따로 손봐야 한다.
Q. max effort를 넣으면 최고 강도로 도나?
fugu-ultra-v1.1만 실제 max 단계를 갖는다. fugu-max, fugu-ultra, fugu, fugu-cyber에 max를 넣으면 호환 처리로 xhigh에 매핑된다. 그 외 값은 거부된다.
새 모델 두 개보다 눈여겨볼 건 과금 모델이다. 오케스트레이션 토큰이 청구에 포함된다는 사실이 문서에 명시된 만큼, 비용 계산 코드부터 맞춰 두고 소규모 파일럿으로 실제 청구서를 확인하는 순서를 권한다.
출처
본 글은 공개 자료를 바탕으로 정리했으며, 세부 내용·수치는 원 출처·공식 문서와 대조 확인을 권장합니다. 성능 수치는 별도 표기가 없는 한 Sakana AI의 자사 발표·주장입니다. 가격·정책은 변경될 수 있습니다.