자동 추론 정책 테스트 - Amazon Bedrock

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

자동 추론 정책 테스트

검증을 위해 자연어 문 또는 QnAs를 전송하여 정책을 테스트한 다음 자동 추론 검사 피드백을 검사하여 올바른 변수를 사용하여 입력 텍스트를 변환하고 검증 중인 규칙이 올바른지 확인합니다.

수동으로 question-and-answer(QnA) 페어를 정의하거나 테스트 시나리오를 자동으로 생성하는 두 가지 방법으로 테스트를 생성할 수 있습니다. QnAs는 특정 사용 사례를 테스트하기 위해 작성하는 해당 모델 응답이 포함된 특정 사용자 질문이지만, 테스트 시나리오는 정책 규칙에서 자동으로 생성되는 논리적 상황으로, 애플리케이션 컨텍스트에서 현실적이거나 현실적이지 않을 수 있습니다.

참고

자습서 비디오: 자동 추론 정책 테스트에 대한 step-by-step 연습을 보려면 다음 자습서를 시청하세요.

자습서 데모 2 - 자동 추론 정책 테스트

테스트는 애플리케이션의 사용자가 묻는 질문과 파운데이션 모델에서 얻을 수 있는 응답을 모방해야 합니다. 자동 추론은 자동 추론 정책의 규칙과 관련하여 프롬프트 및 응답 정확도를 평가합니다. 자동 추론은 다음 단계에서이 검증을 수행합니다.

작은 정보

모범 사례: 유효한 시나리오와 잘못된 시나리오를 모두 포함하는 테스트를 생성합니다. 예를 들어 정책에 "직원은 육아 휴가에 1년 근무가 필요합니다"라고 명시되어 있는 경우이 규칙을 올바르게 설명하는 응답에 대한 테스트를 생성하고 다른 요구 사항을 잘못 설명하는 응답에 대한 테스트를 생성합니다.

  1. 테스트의 질문과 답변을 정책의 변수 및 설명과 함께 사용하여 자연어 입력을 공식 로직으로 변환합니다.

  2. 사운드 수학 기법을 사용하여 변환된 로직을 정책에 대해 검증합니다.

참고

자동 추론은 완벽한 정확도를 보장할 수 없는 AI 기술을 사용하여 자연어를 로직으로 변환합니다. 그러나 좋은 테스트는 자동 추론 정책에서 가능한 부정확성을 감지하고 수정하는 데 도움이 됩니다.

콘솔에서 수동으로 테스트 생성

  1. 테스트하려는 자동 추론 정책(예: MyHrPolicy)으로 이동합니다.

  2. 테스트 보기를 선택한 다음 추가를 선택합니다.

  3. 테스트 추가 대화 상자에서 다음을 수행합니다.

    1. 입력(선택 사항) 및 출력을 포함합니다. 이는 사용자가 질문할 수 있는 질문과 파운데이션 모델이 제공할 수 있는 응답을 나타내며, 함께 정책이 실제 사용자 상호 작용을 검증하는 방법을 테스트하는 QnA 페어를 형성합니다.

    2. 테스트에서 예상되는 결과(예: 유효 또는 유효하지 않음)를 선택합니다.

    3. 로직 검증을 위한 최소 신뢰도 수준인 신뢰도 임계값을 선택합니다.

  4. 저장을 선택하여 테스트를 생성합니다.

참고

테스트를 생성할 때 신뢰도 임계값은 선택 사항입니다.

  • 자동 추론 검사는 여러 대규모 언어 모델(LLMs)을 사용하여 자연어 테스트를 조사 결과로 변환합니다. LLM 번역의 상당 부분이 지원하는 “신뢰할 수 있는” 조사 결과만 반환합니다. 신뢰도 임계값은 번역이 유효성 결과가 있는 결과가 되는 데 필요한 최소 지원 비율을 정의합니다.

  • 충분한 비율의 LLM 번역에서 지원되지 않는 번역된 조사 결과가 하나 이상 있는 경우 자동 추론 검사에서 추가 "TRANSLATION_AMBIGUOUS" 조사 결과가 표시됩니다. 이 결과에는 일치하지 않는 LLM 번역 간의 차이를 강조하는 정보가 포함됩니다.

콘솔에서 자동으로 테스트 생성

  1. 테스트하려는 자동 추론 정책(예: MyHrPolicy)으로 이동합니다.

  2. 테스트 보기를 선택한 다음 생성을 선택합니다.

  3. 시나리오 생성 대화 상자에서 생성된 시나리오 및 관련 규칙을 검토합니다. 그런 다음, 다음 중 하나를 수행하세요.

    • 시나리오가 발생할 수 있다고 생각되면(만족스러운 시나리오라고도 함) 썸업(예)을 선택합니다.

    • 그렇지 않은 경우 썸다운(아니요)을 선택합니다. 시나리오가 불가능하다고 생각하는 이유를 설명하는 주석을 제공할 수도 있습니다. 이는 문서에 주석을 남기는 것과 유사합니다.

    • 다른 시나리오를 테스트하려면 시나리오 재생성을 선택합니다.

    작은 정보

    시나리오의 공식 로직 버전을 검사하려면 SMT-LIB 표시를 활성화합니다.

  4. 저장 후 닫기를 선택하여 테스트를 저장하거나 저장 후 다른 테스트를 추가합니다.

  5. 테스트에 주석을 제공한 경우 주석 적용을 선택합니다. 자동 추론은 피드백을 기반으로 정책을 변경합니다.

  6. 정책 변경 사항 검토 화면에서 정책의 규칙, 변수 및 변수 유형에 대한 변경 사항을 검토합니다. 그런 다음 변경 사항 수락을 선택합니다.

콘솔에서 테스트 실행

  1. 검증하려는 자동 추론 정책(예: MyHrPolicy)으로 이동합니다.

  2. 테스트 보기를 선택합니다.

  3. 다음 중 하나를 수행합니다.

    • 정책의 모든 테스트를 실행하려면 모든 테스트 검증을 선택합니다.

    • 테스트를 개별적으로 실행하려면 실행하려는 테스트 옆에 있는 작업 버튼을 선택하고 검증을 선택합니다.

API를 사용하여 수동으로 테스트 생성

CreateAutomatedReasoningPolicyTestCase API 작업을 사용하여 프로그래밍 방식으로 자동 추론 정책에 대한 테스트를 생성할 수 있습니다.

요청 파라미터

다음 파라미터는 테스트를 생성할 때 필수 또는 선택 사항입니다.

policyArn(필수)

테스트를 생성할 자동 추론 정책의 Amazon 리소스 이름(ARN)입니다.

guardContent(필수)

자동 추론 정책에 의해 검증된 출력 콘텐츠입니다. 이는 정확도를 확인할 파운데이션 모델 응답을 나타냅니다.

query (선택 사항)

콘텐츠를 생성한 입력 쿼리 또는 프롬프트입니다. 이는 검증을 위한 컨텍스트를 제공합니다.

expectedAggregatedFindingsResult (선택 사항)

테스트에 대한 예상 검증 결과입니다(예: VALID 또는 INVALID).

confidenceThreshold (선택 사항)

로직 검증을 위한 최소 신뢰도 수준입니다. 임계값을 충족하는 콘텐츠는 검증할 수 있는 신뢰도가 높은 조사 결과로 간주됩니다.

예시

다음 예제에서는를 사용하여 자동 추론 정책에 대한 테스트를 생성하는 방법을 보여줍니다 AWS CLI.

aws bedrock create-automated-reasoning-policy-test-case \ --policy-arn "arn:aws:bedrock:us-west-2:123456789012:automated-reasoning-policy/k8m9n2p4q7r5" \ --query-content "Can I take a leave of absence if I'm a part-time employee?" \ --guard-content "No, only full-time employees are eligible for leave of absence." \ --expected-aggregated-findings-result "VALID" \ --confidence-threshold 0.8

응답 예제:

{ "testCaseId": "test-12345abcde", "policyArn": "arn:aws:bedrock:us-west-2:123456789012:automated-reasoning-policy/k8m9n2p4q7r5" }

API를 사용하여 자동으로 테스트 생성

GenerateAutomatedReasoningPolicyTestScenarios API 작업을 사용하여 정책의 규칙에 따라 테스트 시나리오를 자동으로 생성할 수 있습니다.

요청 파라미터

테스트 시나리오를 생성할 때 다음 파라미터는 필수 또는 선택 사항입니다.

policyArn(필수)

테스트 시나리오를 생성할 자동 추론 정책의 Amazon 리소스 이름(ARN)입니다.

maxResults (선택 사항)

생성할 최대 테스트 시나리오 수입니다.

예시

다음 예제에서는를 사용하여 자동 추론 정책에 대한 테스트 시나리오를 생성하는 방법을 보여줍니다 AWS CLI.

aws bedrock generate-automated-reasoning-policy-test-scenarios \ --policy-arn "arn:aws:bedrock:us-west-2:123456789012:automated-reasoning-policy/k8m9n2p4q7r5" \ --max-results 3

응답에는 테스트를 생성하는 데 검토하고 사용할 수 있는 생성된 테스트 시나리오가 포함됩니다.

API를 사용하여 테스트 실행

ValidateAutomatedReasoningPolicyTest API 작업을 사용하여 자동 추론 정책에 대한 테스트를 실행하고 GetAutomatedReasoningPolicyTestResult 작업을 사용하여 결과를 검색할 수 있습니다.

요청 파라미터

테스트를 실행할 때 다음 파라미터가 필요합니다.

policyArn(필수)

자동 추론 정책의 Amazon 리소스 이름(ARN)입니다.

testCaseId(필수)

실행할 테스트의 고유 식별자입니다.

테스트 결과 가져오기

테스트 결과를 검색하려면 다음 파라미터를 사용합니다.

policyArn(필수)

자동 추론 정책의 Amazon 리소스 이름(ARN)입니다.

buildWorkflowId(필수)

빌드 워크플로 식별자입니다. 결과를 가져오려면 빌드 워크플로에 COMPLETED 상태가 표시되어야 합니다.

testCaseId(필수)

결과를 검색할 테스트의 고유 식별자입니다.

예시

다음 예제에서는를 사용하여 테스트를 실행하고 결과를 검색하는 방법을 보여줍니다 AWS CLI.

# Run the test aws bedrock validate-automated-reasoning-policy-test \ --policy-arn "arn:aws:bedrock:us-west-2:123456789012:automated-reasoning-policy/k8m9n2p4q7r5" \ --test-case-id "test-12345abcde" # Get the test results aws bedrock get-automated-reasoning-policy-test-result \ --policy-arn "arn:aws:bedrock:us-west-2:123456789012:automated-reasoning-policy/k8m9n2p4q7r5" \ --build-workflow-id "workflow-67890fghij" \ --test-case-id "test-12345abcde"

응답에는 검증 결과 및 실행 상태와 함께 자세한 테스트 결과가 포함됩니다.