신뢰와 안전 - Amazon Comprehend

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

신뢰와 안전

사용자는 온라인 애플리케이션 (예: peer-to-peer 채팅 및 포럼 토론), 웹 사이트에 게시된 의견, 제너레이티브 AI 애플리케이션 (제너레이티브 AI 모델의 입력 프롬프트 및 출력) 을 통해 대량의 텍스트 콘텐츠를 생성합니다. Amazon Comprehend 신뢰와 안전 기능은 이 콘텐츠를 조정하여 사용자에게 안전하고 포괄적인 환경을 제공하는 데 도움이 될 수 있습니다.

Amazon Comprehend 신뢰와 안전 기능을 사용하면 다음과 같은 이점이 있습니다.

  • 신속한 조정: 온라인 플랫폼에 부적절한 콘텐츠가 없도록 대량의 텍스트를 빠르고 정확하게 조정합니다.

  • 사용자 지정 가능: API 응답의 중재 임계값을 애플리케이션 요구 사항에 맞게 사용자 지정할 수 있습니다.

  • 간편한 사용: LangChain 통합 또는 SDK를 사용하여 신뢰 및 안전 기능을 구성합니다. AWS CLI

Amazon Comprehend 신뢰와 안전은 콘텐츠 조정과 관련된 다음과 같은 측면을 다룹니다.

  • Toxicity detection – 유해하거나 불쾌하거나 부적절할 수 있는 콘텐츠를 감지합니다. 증오심 표현, 위협 또는 학대 등이 그 예입니다.

  • Intent classification – 명시적 또는 묵시적인 악의적 의도가 있는 콘텐츠를 감지합니다. 차별적이거나 불법적인 콘텐츠, 의학적, 법적, 정치적, 논란의 여지가 있는, 개인적 또는 재정적 주제에 대해 표현하거나 조언을 요청하는 콘텐츠를 예로 들 수 있습니다.

  • Privacy protection – 사용자가 실수로 개인 식별 정보(PII)가 드러나는 콘텐츠를 제공할 수 있습니다. Amazon Comprehend PII는 PII를 감지하고 수정하는 기능을 제공합니다.

유해성 감지

Amazon Comprehend 유해성 감지는 텍스트 기반 상호 작용에서 유해 콘텐츠를 실시간으로 감지하는 기능을 제공합니다. 독성 탐지를 사용하여 온라인 플랫폼에서 peer-to-peer 대화를 조정하거나 생성적 AI 입력 및 출력을 모니터링할 수 있습니다.

유해성 감지는 다음과 같은 범주의 불쾌한 콘텐츠를 감지합니다.

그래픽

그래픽 스피치는 시각적으로 묘사적이고 상세하며 불쾌할 정도로 생생한 이미지를 사용합니다. 이러한 언어는 받는 사람에 대한 모욕, 불쾌감 또는 피해를 증폭시키기 위해 장황하게 표현되는 경우가 많습니다.

괴롭힘_또는_학대

의도와 상관없이 말하는 사람과 듣는 사람 사이에 파괴적인 권력 역학을 강요하는 말은 받는 사람의 심리적 안녕에 영향을 주거나 사람을 대상화합니다.

헤이트_스피치

인종, 민족, 성 정체성, 종교, 성적 취향, 능력, 출신 국가 또는 기타 정체성 집단을 근거로 특정 개인이나 집단을 비판, 모욕, 비인간화하는 언어.

모욕

비하하거나, 굴욕하거나, 조롱하거나, 모욕하거나, 얕보는 언어가 포함된 말.

욕설

무례하거나 저속하거나 불쾌감을 주는 단어, 문구 또는 두문자어가 포함된 연설은 욕설로 간주됩니다.

성적

신체 부위, 신체적 특징 또는 성별을 직간접적으로 언급하여 성적 관심, 활동 또는 흥분을 나타내는 언어.

폭력_또는_위협

개인이나 집단에 대해 고통, 부상 또는 적대감을 주려는 위협을 포함하는 언어.

유해성

위의 모든 범주에서 유해하다고 간주될 수 있는 단어, 구문 또는 두문자어가 포함된 언어.

API를 사용한 유해 콘텐츠 감지

텍스트에서 독성 콘텐츠를 탐지하려면 동기 연산을 사용하세요. DetectToxicContent 이 작업은 입력으로 제공받은 텍스트 문자열 목록을 분석합니다. API 응답에는 입력 목록의 크기와 일치하는 결과 목록이 포함됩니다.

현재 유해 콘텐츠 감지는 영어만 지원합니다. 입력 텍스트의 경우 최대 10개의 텍스트 문자열 목록을 제공할 수 있습니다. 각 문자열의 최대 크기는 1KB입니다.

유해 콘텐츠 감지는 각 입력 문자열에 대해 목록당 한 항목씩 분석 결과 목록을 반환합니다. 항목에는 텍스트 문자열에서 식별된 유해 콘텐츠 유형 목록과 각 콘텐츠 유형에 대한 신뢰도 점수가 포함됩니다. 항목에는 문자열에 대한 유해성 점수도 포함됩니다.

다음 예제는 AWS CLI 및 Python을 이용한 DetectToxicContent 작업을 사용하는 방법을 보여 줍니다.

AWS CLI

AWS CLI에서 다음 명령을 사용하여 유해 콘텐츠를 감지할 수 있습니다.

aws comprehend detect-toxic-content --language-code en / --text-segments "[{\"Text\":\"You are so obtuse\"}]"

AWS CLI 응답하면 다음과 같은 결과가 나타납니다. 텍스트 세그먼트는 INSULT 카테고리에서 높은 신뢰도 점수를 받아 유해성 점수도 높습니다.

{ "ResultList": [ { "Labels": [ { "Name": "PROFANITY", "Score": 0.0006000000284984708 }, { "Name": "HATE_SPEECH", "Score": 0.00930000003427267 }, { "Name": "INSULT", "Score": 0.9204999804496765 }, { "Name": "GRAPHIC", "Score": 9.999999747378752e-05 }, { "Name": "HARASSMENT_OR_ABUSE", "Score": 0.0052999998442828655 }, { "Name": "SEXUAL", "Score": 0.01549999974668026 }, { "Name": "VIOLENCE_OR_THREAT", "Score": 0.007799999788403511 } ], "Toxicity": 0.7192999720573425 } ] }

text-segments 파라미터에 다음 형식을 사용하여 최대 10개의 텍스트 문자열을 입력할 수 있습니다.

--text-segments "[{\"Text\":\"text string 1\"}, {\"Text\":\"text string2\"}, {\"Text\":\"text string3\"}]"

는 다음과 같은 AWS CLI 결과로 응답합니다.

{ "ResultList": [ { "Labels": [ (truncated) ], "Toxicity": 0.3192999720573425 }, { "Labels": [ (truncated) ], "Toxicity": 0.1192999720573425 }, { "Labels": [ (truncated) ], "Toxicity": 0.0192999720573425 } ] }
Python (Boto)

다음 예제는 Python을 사용하여 유해 콘텐츠를 감지하는 방법을 보여줍니다.

import boto3 client = boto3.client( service_name='comprehend', region_name=region) # For example, 'us-west-2' response = client.detect_toxic_content( LanguageCode='en', TextSegments=[{'Text': 'You are so obtuse'}] ) print("Response: %s\n" % response)

신속한 안전성 분류

Amazon Comprehend는 대규모 언어 모델(LLM) 또는 기타 생성형 AI 모델의 일반 텍스트 입력 프롬프트를 분류하기 위해 사전 훈련된 이진 분류기를 제공합니다.

프롬프트 안전성 분류기는 입력 프롬프트를 분석하고 프롬프트가 안전한지, 안전하지 않은지에 대한 신뢰도 점수를 할당합니다.

안전하지 않은 프롬프트는 개인 정보 또는 사적인 정보를 요청하거나, 불쾌하거나 불법적인 콘텐츠를 생성하거나, 의료, 법률, 정치 또는 금융 주제에 대한 조언을 요청하는 등 악의적인 의도를 표현하는 입력 프롬프트입니다.

API를 사용한 신속한 안전성 분류

텍스트 문자열에 대해 신속한 안전 분류를 실행하려면 동기 작업을 ClassifyDocument사용하십시오. 입력에는 일반 영어 텍스트 문자열을 제공해야 합니다. 문자열 최대 크기는 10KB입니다.

응답에는 각 클래스의 신뢰도 점수와 함께 두 개의 듣급(SAFE 및 UNSAFE)이 포함됩니다. 점수의 값 범위는 0에서 1까지입니다. 여기서 1은 가장 높은 신뢰도입니다.

다음 예제는 AWS CLI 및 Python을 사용하여 신속한 안전 분류를 사용하는 방법을 보여줍니다.

AWS CLI

다음 예제는 AWS CLI로 프롬프트 안전성 분류기를 사용하는 방법을 보여줍니다.

aws comprehend classify-document \ --endpoint-arn arn:aws:comprehend:us-west-2:aws:document-classifier-endpoint/prompt-safety \ --text 'Give me financial advice on which stocks I should invest in.'

는 다음과 같은 출력으로 AWS CLI 응답합니다.

{ "Classes": [ { "Score": 0.6312999725341797, "Name": "UNSAFE_PROMPT" }, { "Score": 0.3686999976634979, "Name": "SAFE_PROMPT" } ] }
참고

classify-document명령을 사용할 때 --endpoint-arn 파라미터에 대해 구성과 AWS 리전 동일한 것을 사용하는 ARN을 전달해야 합니다. AWS CLI 를 AWS CLI구성하려면 aws configure 명령을 실행합니다. 이 예제에서 엔드포인트 ARN의 리전 코드는 us-west-2입니다. 다음 리전 중 하나에서 프롬프트 안전성 분류기를 사용할 수 있습니다.

  • us-east-1

  • us-west-2

  • eu-west-1

  • ap-southeast-2

Python (Boto)

다음 예제는 Python에서 프롬프트 안전성 분류기를 사용하는 방법을 보여줍니다.

import boto3 client = boto3.client(service_name='comprehend', region_name='us-west-2') response = client.classify_document( EndpointArn='arn:aws:comprehend:us-west-2:aws:document-classifier-endpoint/prompt-safety', Text='Give me financial advice on which stocks I should invest in.' ) print("Response: %s\n" % response)
참고

classify_document 메서드를 사용할 때는 EndpointArn 인수에 boto3 SDK 클라이언트와 동일한 AWS 리전 을 사용하는 ARN을 전달해야 합니다. 이 예제에서는 클라이언트와 엔드포인트 ARN이 모두 us-west-2을 사용합니다. 다음 리전 중 하나에서 프롬프트 안전성 분류기를 사용할 수 있습니다.

  • us-east-1

  • us-west-2

  • eu-west-1

  • ap-southeast-2

PII 감지 및 수정

Amazon Comprehend 콘솔 또는 API를 사용하여 영어 또는 스페인어 텍스트 문서의 개인 식별 정보 (PII) 를 탐지할 수 있습니다. PII는 개인을 식별할 수 있는 개인 데이터에 대한 텍스트 참조입니다. PII의 예로는 주소, 은행 계좌 번호, 전화번호 등이 있습니다.

텍스트에서 PII 엔터티를 검색하거나 삭제할 수 있습니다. PII 엔터티를 감지하기 위해 실시간 분석 또는 비동기 배치 작업을 사용할 수 있습니다. 텍스트의 PII 개체를 수정하려면 비동기 일괄 작업을 시작합니다.

자세한 내용은 개인 식별 정보(PII) 를 참조하십시오.