Amazon Bedrock Guardrails를 사용한 유해 콘텐츠 감지 및 필터링

발행: (2026년 1월 8일 오후 11:12 GMT+9)
12 분 소요
원문: Dev.to

Source: Dev.to

기술 개요

Amazon Bedrock Guardrails는 애플리케이션과 응답을 생성하는 데 사용되는 기본 모델(FM) 사이에 위치하는 중앙 집중식 제어 레이어를 제공합니다. Guardrails를 사용하면 적용되는 모델에 관계없이 일관되게 적용되는 강제 안전, 프라이버시 및 규정 준수 규칙을 정의할 수 있습니다.

아키텍처 관점에서 Guardrails는 인바운드 프롬프트와 아웃바운드 응답 모두에 대해 평가되어, 모델이나 최종 사용자에게 도달하기 전에 위험한 콘텐츠가 차단되거나 변환되도록 보장합니다.

고수준 아키텍처 흐름

  1. 사용자 요청이 애플리케이션에 들어옴

    • 사용자가 애플리케이션과 상호작용합니다(예: 챗봇, 은행 포털, 콜센터 시스템 등).
    • 요청은 API 또는 UI 레이어를 통해 애플리케이션 백엔드로 전달됩니다.
  2. Bedrock 가드레일을 통한 프롬프트 평가

    • 요청이 기본 모델에 전송되기 전에, 애플리케이션은 연관된 가드레일 구성과 함께 Amazon Bedrock을 호출합니다.
    • 가드레일은 사용자 프롬프트를 다음 항목에 대해 검사합니다:
      • 해롭거나 독성 있는 언어
      • 금지된 주제(예: 금융 또는 법률 조언)
      • 민감한 데이터 패턴(PII, 구성에 따라)
    • 프롬프트가 정의된 정책을 위반하면, Bedrock은:
      • 요청 차단
      • 사전 정의된 안전 응답 반환
      • 감사 및 모니터링을 위해 이벤트 기록
  3. 모델 호출 (프롬프트가 허용된 경우)

    • 가드레일 평가를 통과한 프롬프트만 선택된 기본 모델(예: Claude, Titan 또는 기타 Bedrock‑지원 모델)로 전달됩니다.
    • 이는 안전 로직을 모델 자체와 분리하고, 모델을 교체하거나 업그레이드해도 일관된 동작을 보장합니다.
  4. 가드레일을 통한 응답 평가

    • 기본 모델이 응답을 생성한 후, 가드레일이 다시 적용됩니다—이번에는 모델 출력에 대해 적용됩니다.
    • 가드레일은 다음을 수행할 수 있습니다:
      • 독성 또는 위험한 응답을 감지하고 차단
      • 금지된 조언이나 정책 위반 방지
      • 개인 식별 정보(PII)를 삭제하거나 마스킹
  5. 최종 응답이 사용자에게 반환됨

    • 가드레일 규칙을 준수하는 응답만 애플리케이션에 반환되어 사용자에게 표시됩니다.
    • 응답이 정책을 위반하면 대신 제어된 대체 메시지가 반환됩니다.

예시 아키텍처 사용 사례

사용 사례가드레일 역할
챗봇 아키텍처추론 전 사용자 입력을 검증하고 추론 후 모델 출력을 스캔하여 남용되거나 유해한 콘텐츠가 사용자에게 표시되지 않도록 합니다.
금융 서비스 아키텍처투자 조언과 관련된 프롬프트나 응답을 차단하는 정책 집행 레이어 역할을 수행하여 규제 위험을 감소시키면서도 일반 금융 정보를 허용합니다.
컨택 센터 요약 파이프라인대화 기록은 Bedrock을 통해 전송되며, 가드레일이 PII를 감지하고 삭제하도록 구성되어 요약본이 S3, OpenSearch, CRM 플랫폼과 같은 하위 시스템에 저장되기 전에 처리됩니다.

왜 이 아키텍처가 중요한가

안전 제어를 애플리케이션 로직 및 모델 선택과 분리함으로써 Amazon Bedrock Guardrails는 다음을 가능하게 합니다:

  • 다중 AI 워크로드에 걸친 중앙 집중식 거버넌스
  • 모델에 구애받지 않는 안전 적용
  • 코드 변경 없이도 감사, 규정 준수 및 정책 업데이트를 용이하게

이 접근 방식은 팀이 생성 AI 애플리케이션을 확장하면서도 환경 전반에 걸쳐 예측 가능하고 제어된, 규정을 준수하는 동작을 유지하도록 합니다.

Amazon Bedrock Guardrails 정책 및 적용 기능

Amazon Bedrock Guardrails는 프롬프트 처리 및 모델 추론 중에 평가되는 일련의 구성 가능한 보호 장치(정책)를 제공합니다. 각 정책 유형은 독립적으로 활성화할 수 있으며 애플리케이션별 위험 허용도에 맞게 조정할 수 있습니다.

콘텐츠 필터

  • 사용자 프롬프트와 모델 응답에서 유해한 텍스트 또는 이미지 콘텐츠를 감지하고 차단합니다.
  • 카테고리: 증오, 모욕, 성적, 폭력, 부정행위, 프롬프트 공격(탈옥 시도)
  • 카테고리별로 허용 수준(예: 관대 vs. 엄격)을 설정할 수 있습니다.
  • ClassicStandard 티어 모두 이 카테고리를 지원합니다.
  • Standard 티어는 코드 수준 요소(주석, 변수/함수 이름, 문자열 리터럴)까지 감지를 확장합니다. 이는 개발자 도구, 코드 어시스턴트, AI 생성 스크립트에 특히 중요합니다.

금지 주제

  • 범위 밖이거나 허용되지 않는 주제를 명시적으로 정의합니다.
  • 금지된 주제가 사용자 질의 또는 모델 응답에 나타날 경우, 요청을 차단하거나 안전한 대체 응답으로 교체할 수 있습니다.
  • Standard 티어에서는 코드 요소(주석, 변수, 함수 이름, 문자열) 내부에서도 감지를 적용해 숨겨진 정책 위반을 방지합니다.
  • 규제 환경(예: 의료·투자 조언 차단)에서 흔히 사용됩니다.

단어 필터

  • 특정 단어, 구문, 혹은 욕설을 정확히 일치시켜 차단합니다.
  • 다음과 같은 비즈니스별 제한을 적용하는 데 유용합니다:
    • 공격적인 언어
    • 경쟁사 이름
    • 브랜드 오용

민감 정보 필터

  • 프롬프트와 응답 모두에서 개인 식별 정보(PII)를 감지하고 차단하거나 마스킹합니다.
  • 감지는 확률적이며 다음과 같은 표준 형식의 엔터티를 지원합니다:
    • 사회보장번호
    • 생년월일
    • 주소
  • 기본 제공 PII 감지 외에도 필요에 따라 사용자 정의 정규식 패턴이나 엔터티 유형으로 필터를 확장할 수 있습니다.

위의 모든 정책은 조직 고유의 컴플라이언스 및 안전 요구 사항을 충족하도록 결합, 우선순위 지정 및 맞춤 설정이 가능합니다.

조직별 식별자를 위한 사용자 정의 정규식

조직 고유의 식별자(예: 고객 ID 또는 내부 참조 번호)를 식별하기 위해 사용자 정의 정규식을 구성할 수 있습니다.

이 정책은 S3, OpenSearch, CRM, 또는 분석 플랫폼과 같은 하위 시스템에 출력물을 저장하는 애플리케이션에 필수적입니다.

정책 위반 처리

정책을 정의하는 것 외에도, 다음 상황에서 반환되는 사용자 맞춤형 메시지를 구성할 수 있습니다:

  • 사용자 입력이 정책을 위반할 경우, 또는
  • 모델 응답이 가드레일 평가에 실패할 경우

이를 통해 애플리케이션은 일반적인 오류나 무응답 대신 안전하고 일관되게 실패하도록 할 수 있습니다.

Source:

아키텍처의 통합 옵션

Guardrails는 두 가지 주요 방식으로 사용할 수 있습니다.

  1. 모델 추론 중

    • Guardrails는 Bedrock 추론 API 호출 시 guardrail ID와 버전을 지정하여 적용됩니다.
    • 이 모드에서는 Guardrails가 다음을 모두 평가합니다:
      • 입력 프롬프트
      • 모델 출력
  2. 독립형 Guardrail 평가

    • ApplyGuardrail API를 사용하면 기반 모델을 호출하지 않고도 Guardrails를 적용할 수 있습니다.
    • 다음과 같은 경우에 유용합니다:
      • 사용자 입력 사전 검증
      • 외부 시스템에서 나온 출력 후처리
      • 추론 전에 RAG 파이프라인에서 정책 적용

RAG 및 대화형 애플리케이션용

RAG 또는 다중 턴 대화 아키텍처에서는 다음을 제외하고 사용자의 현재 입력만 평가하고자 할 수 있습니다:

  • 시스템 지시문
  • 검색된 결과
  • 대화 기록
  • Few‑shot 예시

이러한 접근 방식은 가드레일이 내부 컨텍스트나 시스템이 생성한 콘텐츠를 잘못 표시하는 것이 아니라 사용자 의도에 집중하도록 보장합니다.

Back to Blog

관련 글

더 보기 »

안녕, 뉴비 여기요.

안녕! 나는 다시 S.T.E.M. 분야로 돌아가고 있어. 에너지 시스템, 과학, 기술, 공학, 그리고 수학을 배우는 것을 즐겨. 내가 진행하고 있는 프로젝트 중 하나는...