guardrail_blocked로 응답합니다. 이 페이지는 그 하나의
오류에 대한 랜딩 레퍼런스입니다: 본문이 어떻게 보이는지, 왜 그런 방식으로
동작하는지, 그리고 클라이언트 코드에서 어떻게 처리하는지. 그 뒤의 정책
엔진은 Guardrails 개요와
전체 레퍼런스를 참조하세요.
1. guardrail_blocked를 볼 때
guardrail은 게이트웨이가 요청 입력과 모델 출력에 대해 실행하는 순서가 있는 규칙 목록입니다. 액션이 block인 규칙이 발동하면, 호출은 거부됩니다 — 업스트림 모델이 결코 호출되지 않거나(입력 스테이지) 그 답변이 보류됩니다(출력 스테이지). 클라이언트는guardrail_blocked를 운반하는 400을 받습니다.
다른 어떤 액션도 이 오류를 발생시키지 않습니다. mask는 매치를
마스킹하고 정화된 텍스트를 통과시키고, flag는 트래픽을 변경하지 않고
매치를 기록하며, 프롬프트 형성 액션(annotate, spotlight)은 메모를
추가하거나 신뢰할 수 없는 텍스트를 감싸면서 호출을 진행시킵니다. 다섯
가지 액션 중 block만 거부합니다.
액션을 참조하세요.
guardrail_blocked는 콘텐츠 거부입니다(텍스트 입력, 텍스트 출력).
동반자인 툴 정책 거부는
Agent Firewall의 firewall_blocked입니다 —
다른 형태를 가진 다른 오류입니다.
guardrails vs. firewall을
참조하세요.2. 응답 본문
차단은 게이트웨이의 표준 OpenAI 형태 오류 봉투로 반환됩니다. OpenAI 스타일 엔드포인트(/v1/chat/completions, /v1/responses)에서:
code — guardrail_blocked
code — guardrail_blocked
안정적인 기계 식별자. 메시지 문자열이 아니라 이것으로 분기하세요. 모든
엔드포인트에서 동일한 값이며 결코 현지화되지 않습니다.
message — guardrail과 규칙을 명시
message — guardrail과 규칙을 명시
사람이 읽을 수 있음. 형식은
request blocked by guardrail "<name>": <detail>이며, 여기서 <detail>은 발동한 규칙 타입을
<type>(<rule-detail>)로 요약합니다 — 예: pii(pii: ssn) 또는
keyword(matched 1 keyword(s)). 출력 스테이지 차단은 response blocked by guardrail "<name>": <detail>로 읽히므로, 동사가 어느
스테이지가 호출을 거부했는지 알려줍니다. 메시지는 게이트웨이를 떠나기
전에 민감 정보 마스킹을 거치므로, 여기서 원시 매치된 부분 문자열을
기대하지 마세요.type — orcarouter_api_error
type — orcarouter_api_error
OpenAI 스타일 엔드포인트의 일반 게이트웨이 오류 타입. 구별 신호는
type이 아니라 code입니다./v1/messages)에서 봉투는 Claude
형태입니다 — {"error": {"type": ..., "message": ...}} — 그리고
guardrail_blocked는 type 필드에 나타나므로, 네이티브 Claude
SDK는 정책 거부를 일반 게이트웨이 실패와 구별할 수 있습니다.
3. guardrail_blocked가 쿼터를 소모하지 않는 이유
차단된 요청은 무료입니다 — 당신의 크레딧 잔액에서 결코 차감하지 않습니다.| 스테이지 | 차단이 발동하는 시점 | 쿼터 효과 |
|---|---|---|
input | 업스트림 호출 전, 계량에 앞서 | 아무것도 계량되지 않음 |
output | 모델이 응답한 후, 답변이 반환되기 전 | 사전 소모된 쿼터가 환불됨 |
4. guardrail_blocked가 재시도를 건너뛰는 이유
오류는 skip-retry로 태그됩니다. 게이트웨이 자체 라우팅은 이 요청을 다른 채널로 페일오버하지 않습니다. 차단이 당신의 콘텐츠와 정책의 속성이기 때문입니다 — 동일한 프롬프트를 다시 실행하면 다음 채널에서 그저 다시 차단되어 시도를 낭비할 뿐입니다.5. 클라이언트 코드에서 처리하기
재시도하는 대신code 필드로 분기하고 최종 사용자에게 유용한 메시지를
노출하세요.
sk-orca-... 키는 릴레이 키입니다 — /v1/* 트래픽만
운반합니다. 그것으로 guardrail을 결코 편집하지 않습니다; 정책 작성과
연결은 당신의 세션에 대한 콘솔 / 관리 API 액션이며, guardrail을
생성하거나 편집하려면 Developer+ 역할이 필요합니다.
6. 차단 확인 및 튜닝
발동하는 모든 규칙은 — 차단 포함 — 그 타입, 액션, 스테이지, 그리고 상세 문자열과 함께 워크스페이스 Matches 피드에 안착합니다. 거기가 주어진 호출을 어느 규칙이 거부했는지 확인하고 거짓 양성을 분류하는 곳입니다.Matches 피드
모든 block, mask, flag를 타입, 액션, 스테이지와 함께 봅니다. 매치된
부분 문자열은 Log raw content가 켜져 있을 때만 나타납니다.
로깅 및 프라이버시
원시 콘텐츠는 기본적으로 꺼져 있습니다 — 프라이버시 보수적 자세.
분류를 위해 부분 문자열이 필요할 때 guardrail별로 켜세요.
거짓 양성 튜닝
거짓 양성은 튜닝 신호이지 규칙을 비활성화할 이유가 아닙니다. 그것을
표시하고 패턴을 좁히세요.
버전 관리
정책을 변경했는데 되돌리고 싶나요? 임의의 두 버전을 diff하고 새
버전으로 되돌립니다 — 히스토리는 절대 변경되지 않습니다.
7. 관련
정책 이해하기
정책 이해하기
Guardrails 개요 ·
액션 ·
입력 스테이지 ·
출력 스테이지 ·
전체 엔진 레퍼런스.
라이브 트래픽에서 보기
라이브 트래픽에서 보기
Matches 피드 ·
로깅 및 프라이버시 ·
거짓 양성 튜닝 ·
테스트 및 평가.
개념과 위협에 매핑하기
개념과 위협에 매핑하기
