
Berdock에서 Claude Fable 5를 Kiro 등으로 사용할 수 있는 도구를 만들었으므로 주의사항을 정리했습니다
요약
Amazon Bedrock에서 Claude Fable 5를 활용할 수 있는 도구와 함께, 데이터 보유 모드 설정 시 주의해야 할 보안 사항을 정리했습니다. Fable 5 사용을 위해서는 데이터가 Anthropic에 공유되는 'provider_data_share' 모드 설정이 필수적입니다.
핵심 포인트
- Claude Fable 5 사용을 위해 'provider_data_share' 모드 설정 필수
- 설정 시 입력/출력 데이터가 Anthropic에 최대 30일간 공유됨
- PII, 독점 코드, 시크릿 등 민감 정보 입력 금지 권고
- Bedrock Guardrails를 활용한 데이터 필터링 권장
bedrock-fable-mcp
Amazon Bedrock에 Claude Fable 5가 출시되었기에, 평소 사용하는 모델과는 다른 계통의 "제2의 분석 역할"로 사용할 수 있도록 하는 간단한 도구를 만들었습니다.
코드 및 설계 리뷰, 결점 찾기, 난해한 부분의 디버깅, 자신의 결론에 대한 반증 도출 등에 사용할 수 있습니다.
이 기사에서는 Claude Fable 5를 사용하기 전에 반드시 주의해야 할 데이터 보유 제약 사항과 실운용에서 알게 된 몇 가지 팁을 작성했습니다. Bedrock을 통해 Fable 5(및 Mythos 5)를 사용할 때 참고하시기 바랍니다.
데이터 취급 시 주의 요망
이 리포지토리에서는 DATA_RETENTION.md라는 파일 안에 데이터 취급에 대해 상세히 적어두었습니다. 이 파일 자체는 사람과 AI 모두가 읽는 것을 상정하고 작성되었으며, 이 리포지토리를 만든 것은 거의 이 파일 때문이라고 해도 과언이 아닙니다. 우선 이 파일에 적힌 내용을 대략적으로 설명하겠습니다.
Fable 5(및 Mythos 5)는 Bedrock의 데이터 보유 모드를 provider_data_share로 설정하지 않으면 사용할 수 없습니다. 이 모드에서는 입력과 출력이 최대 30일간 보유되며, 모델 프로바이더(Model Provider)인 Anthropic에 공유됩니다 (AWS 공식 data-retention.html). 다른 Anthropic 모델과는 달리 데이터가 AWS 내에 머물지 않으므로 주의가 필요합니다.
데이터 보유 모드는 프로젝트 단위와 계정 단위의 두 곳에서 설정할 수 있으며, 추가로 모델 자체의 기본값이 있습니다 (이 세 가지를 스코프(Scope)라고 부릅니다). 모드는 default / provider_data_share / none / inherit의 4가지가 있습니다.
default: AWS가 안전 조치나 부정 방지를 위해 보유할 수는 있지만, 모델 프로바이더에게는 전달하지 않습니다. 실제로 얼마나 보유할지는 모델마다 다릅니다.
provider_data_share: 입력과 출력을 프로바이더의 요구 사항에 따라 보유 및 공유합니다. Fable 5나 Mythos 5를 호출하려면 이것이 필수입니다.
none: 보유하지 않음. AWS도 영구 스토리지에 기록하지 않으며 프로바이더와도 공유하지 않습니다. 대신, 보유를 요구하는 모델은 사용할 수 없게 됩니다.
inherit: 이 스코프에서는 값을 결정하지 않고, 한 단계 상위(프로젝트라면 계정)의 설정을 따릅니다. 새로 만든 계정이나 프로젝트는 처음에는 이 inherit 상태이며, 직접 다른 모드를 설정하기 전까지는 상위 스코프의 설정을 따르게 됩니다.
모드는 「프로젝트 → 계정 → 모델 기본값」 순으로 확인하며, 가장 먼저 inherit이 아닌 값이 채택됩니다. Fable을 호출하려면 이 실효 모드를 provider_data_share로 설정해 두어야 합니다.
이러한 이유로, 회사의 방침으로서 Anthropic에 데이터를 공유해도 좋다는 정리가 되어 있는지가 중요합니다. 이번에 공개한 도구에서는 입력해도 되는 데이터를 공개 데이터 또는 합성된 데이터로 한정하며, PII(개인 식별 정보), 독점 코드, 시크릿, 생로그(Raw Log), 계정 ID나 ARN 등은 넣지 않도록 README에 명시하고 있습니다. 이 부분은 취급하는 데이터의 요구 사항에 맞춰 조정해 주시기 바랍니다.
만약 더 철저하게 필터링을 적용하고 싶다면 Bedrock Guardrails 등의 가드레일을 활용하시는 것이 좋습니다.
사용법
AWS 계정에 대한 자격 증명(Credential)을 설정했다면, 남은 준비 사항은 두 가지입니다. 보유 모드를 provider_data_share로 설정하는 것과 리전을 지정하는 것입니다.
# Fable을 사용할 수 있는 상태로 만들기
python3 set_data_retention.py set provider_data_share
# 미설정 시 에러와 함께 중단됨
...
FABLE_AWS_REGION에 기본 리전을 설정하지 않은 이유는 데이터가 처리 및 보유되는 장소를 의도적으로 선택하기 위함입니다.
이 도구는 다음 세 가지 방법으로 이용할 수 있습니다.
CLI
export FABLE_AWS_REGION=us-west-2
python3 fable_call.py "이 알고리즘의 계산량을 분석해줘"
python3 fable_call.py --system "당신은 엄격한 리뷰어입니다" --max-tokens 6000 "..."
...
임의의 MCP 클라이언트
fable_mcp.py를 stdio 방식의 MCP 서버로 등록합니다. env를 통해 프로파일과 리전을 전달합니다.
{
"command": "python3",
"args": ["/path/to/fable_mcp.py"],
...
Kiro
Kiro의 Skills로도 이용할 수 있습니다.
cp -r . ~/.kiro/skills/fable
FABLE_AWS_REGION=us-west-2 ~/.kiro/skills/fable/install-kiro.sh
사용 후 되돌리기
사용이 끝나면 보존 모드를 되돌릴 수 있습니다.
python3 set_data_retention.py set default # 일반적인 Bedrock 보존(프로바이더 비공유)으로 되돌림
set default를 실행하면 Fable은 unavailable 상태가 되며, Anthropic으로의 공유도 중단됩니다. AWS에도 일절 보존시키고 싶지 않다면 set none(제로 보존)으로 설정할 수 있지만, AWS 상에서의 보존을 요구하는 다른 모델들도 사용할 수 없게 되므로 주의해야 합니다.
사용하며 알게 된 팁
max_tokens는 어느 정도 큰 값으로 설정할 것.
Fable 5는 추론 모델(Reasoning Model)로, 내부의 추론 과정이 출력 토큰을 소비합니다. 900과 같이 낮은 값으로 설정했을 때는 추론 도중에 끊겨서, 본문이 비어 있는 채로 stop=max_tokens로 반환되었습니다. 제 체감상으로는 6000 이상 정도로 설정해 두는 것이 적당하다는 인상을 받았습니다.
1개 요청당 1개 태스크로 구성할 것.
독립된 논점들을 한꺼번에 몰아넣으면 품질이 무너지고, 토큰 소비도 극심해져서 stop=max_tokens로 인해 본문이 비어 있는 경우가 있었습니다. 논점별로 나누어 던지는 편이 안정적입니다.
비용은 출력이 지배적이라고 생각할 것.
Bedrock 요금 체계에서는 Anthropic 모델의 출력 단가가 입력의 몇 배에 달하므로, 추론 모델인 Fable 5에서는 출력이 비용의 대부분을 차지합니다. 읽지 않을 긴 문장을 생성하지 않도록, 출력 형식과 길이를 미리 지정해 두는 것이 좋습니다. 도구는 푸터(footer)에 입력 및 출력 토큰 수를 매번 표시합니다(캐시를 사용한 호출 시에는 캐시별 수치도 표시됩니다). 이를 통해 실제 비용을 확인할 수 있습니다.
stop_reason을 확인할 것.
end_turn이면 완료, max_tokens이면 도중에 끊긴 것입니다. 프롬프트에는 "무엇을 달성하고 싶은지·제약 사항·판단 기준"을 작성하고, 해결 방법은 모델에 맡기는 것이 안정적이라는 인상을 받았습니다.
Fable 5에게 이 도구를 리뷰시켜 보았다
이 도구 자체를 이 도구를 사용하여 Fable 5에게 리뷰시켜 본 결과, 다음과 같은 버그나 바람직하지 않은 구현이 발견되었습니다. 지적은 정확했으며, 리뷰 능력이 상당히 강력해지고 있다는 인상을 받았습니다.
- Bedrock 클라이언트에 타임아웃(Timeout)을 설정하지 않아, 기본값인 60초에서 추론이 종료됨 (리뷰 중에 실제로 한 번 타임아웃이 발생했습니다)
- 비용 계산에 데드 코드(dead code)가 있음
--cache는 system 프롬프트가 없으면 작동하지 않지만, README의 예시로 작성되어 있음set_data_retention.py가 실패해도 exit 0을 반환함- 계정 전체에 영향을 미치는 설정 변경임에도 사전 검증이나 확인 절차가 없음 (이는 버그는 아니지만, 좋은 지적이었습니다)
첫걸음
공개된 코드나 문장 등을 대상으로 CLI를 통해 리뷰를 한 번 실행해 보세요. 우선은 작게 시작합니다. 출력 및 stop_reason, 그리고 토큰 푸터를 확인하며 잘 작동한다고 느껴진다면, 나머지는 평소의 워크플로우에 섞기만 하면 됩니다 (Anthropic에 공유해도 괜찮은 데이터만 넣도록 주의하는 것을 잊지 마세요).
Claude Fable 5 라이프를 즐겁게 만끽해 보시기 바랍니다.
Discussion

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기