Loading...
    • 빌드
    • 관리
    • 모델 및 가격
    • 클라이언트 SDK
    • API 참조
    Search...
    ⌘K
    첫 단계
    Claude 소개빠른 시작
    Claude로 빌드하기
    기능 개요Messages API 사용Claude API 스킬중지 이유 처리
    모델 기능
    Extended thinkingAdaptive thinking노력작업 예산 (베타)빠른 모드 (베타: 연구 미리보기)구조화된 출력인용메시지 스트리밍배치 처리검색 결과거부 스트리밍다국어 지원임베딩
    도구
    개요도구 사용 방식웹 검색 도구웹 가져오기 도구코드 실행 도구어드바이저 도구메모리 도구Bash 도구컴퓨터 사용 도구텍스트 편집기 도구
    도구 인프라
    도구 참조도구 검색프로그래밍 방식 도구 호출세분화된 도구 스트리밍
    컨텍스트 관리
    컨텍스트 윈도우압축컨텍스트 편집프롬프트 캐싱토큰 계산
    파일 작업
    Files APIPDF 지원이미지 및 비전
    스킬
    개요빠른 시작모범 사례엔터프라이즈용 스킬API의 스킬
    MCP
    원격 MCP 서버MCP 커넥터
    프롬프트 엔지니어링
    개요프롬프팅 모범 사례Console 프롬프팅 도구
    테스트 및 평가
    성공 정의 및 평가 구축Console에서 평가 도구 사용지연 시간 감소
    보안 강화
    환각 감소출력 일관성 증가탈옥 완화프롬프트 유출 감소
    리소스
    용어집
    릴리스 노트
    Claude Platform
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    모델 기능

    스트리밍 거부

    Claude 4 모델부터 스트리밍 응답에서 정책 위반 가능성을 처리하기 위해 스트리밍 분류기가 개입할 때 stop_reason: refusal을 반환합니다.

    Claude 4 모델부터 Claude API의 스트리밍 응답은 스트리밍 분류기가 잠재적 정책 위반을 처리하기 위해 개입할 때 **stop_reason: "refusal"**을 반환합니다. 이 새로운 안전 기능은 실시간 스트리밍 중에 콘텐츠 규정 준수를 유지하는 데 도움이 됩니다.

    Claude Sonnet 4.5의 API 안전 필터로 인해 트리거된 거부에 대해 자세히 알아보려면 Sonnet 4.5의 API 안전 필터 이해하기를 참조하세요.

    API 응답 형식

    스트리밍 분류기가 Anthropic의 정책을 위반하는 콘텐츠를 감지하면 API는 다음 응답을 반환합니다:

    {
      "role": "assistant",
      "content": [
        {
          "type": "text",
          "text": "Hello.."
        }
      ],
      "stop_reason": "refusal"
    }

    추가 거부 메시지는 포함되지 않습니다. 응답을 처리하고 적절한 사용자 대면 메시징을 제공해야 합니다.

    거부 후 컨텍스트 재설정

    **stop_reason: refusal**을 받으면 계속하기 전에 거부된 턴을 제거하거나 업데이트하여 대화 컨텍스트를 재설정해야 합니다. 재설정 없이 계속하려고 하면 계속된 거부가 발생합니다.

    사용 메트릭은 거부된 응답일 때에도 청구 목적으로 응답에 제공됩니다.

    거부될 때까지의 출력 토큰에 대해 청구됩니다.

    Claude Sonnet 4.5 또는 Opus 4.1을 사용하는 동안 refusal 중지 이유가 자주 발생하면 API 호출을 업데이트하여 Haiku 4.5(claude-haiku-4-5-20251001)를 사용해 볼 수 있습니다. 이는 다른 사용 제한이 있습니다. Sonnet 4.5의 API 안전 필터 이해하기에 대해 자세히 알아보세요.

    구현 가이드

    애플리케이션에서 스트리밍 거부를 감지하고 처리하는 방법은 다음과 같습니다:

    client = anthropic.Anthropic()
    messages = []
    
    
    def reset_conversation():
        """거부 후 대화 컨텍스트 재설정"""
        global messages
        messages = []
        print("Conversation reset due to refusal")
    
    
    try:
        with client.messages.stream(
            max_tokens=1024,
            messages=messages + [{"role": "user", "content": "Hello"}],
            model="claude-sonnet-4-6",
        ) as stream:
            for event in stream:
                # 메시지 델타에서 거부 확인
                if hasattr(event, "type") and event.type == "message_delta":
                    if event.delta.stop_reason == "refusal":
                        reset_conversation()
                        break
    except Exception as e:
        print(f"Error: {e}")

    현재 거부 유형

    API는 현재 세 가지 다른 방식으로 거부를 처리합니다:

    거부 유형응답 형식발생 시기
    스트리밍 분류기 거부stop_reason: refusal콘텐츠가 정책을 위반할 때 스트리밍 중
    API 입력 및 저작권 검증400 오류 코드입력이 검증 확인에 실패할 때
    모델 생성 거부표준 텍스트 응답모델 자체가 거부하기로 결정할 때

    향후 API 버전은 모든 유형의 거부 처리를 통합하기 위해 stop_reason: refusal 패턴을 확장할 것입니다.

    모범 사례

    • 거부 모니터링: 오류 처리에 stop_reason: refusal 확인 포함
    • 자동 재설정: 거부가 감지되면 자동 컨텍스트 재설정 구현
    • 사용자 정의 메시징 제공: 거부 발생 시 더 나은 UX를 위해 사용자 친화적 메시지 작성
    • 거부 패턴 추적: 거부 빈도를 모니터링하여 프롬프트의 잠재적 문제 식별

    마이그레이션 참고 사항

    • 향후 모델은 이 패턴을 다른 거부 유형으로 확장할 것입니다
    • 거부 응답의 향후 통합을 수용하도록 오류 처리를 계획하세요

    Was this page helpful?

    • API 응답 형식