Model Armor 템플릿 만들기 및 관리

이 페이지에서는 모델 아머 템플릿을 만들고, 보고, 업데이트하고, 삭제하는 방법을 설명합니다.

Model Armor 템플릿 만들기

콘솔

  1. Google Cloud 콘솔에서 Model Armor 페이지로 이동합니다.

    Model Armor로 이동

  2. 표시된 프로젝트가 모델 아머를 활성화한 프로젝트인지 확인합니다.

  3. 모델 갑옷 페이지에서 템플릿 만들기를 클릭합니다. 템플릿 만들기 페이지가 표시됩니다.

  4. 템플릿 ID를 지정합니다. 템플릿 ID에는 영문자, 숫자, 하이픈을 사용할 수 있습니다. 63자(영문 기준) 이하여야 하며 공백을 포함하거나 하이픈으로 시작할 수 없습니다.

  5. Model Armor 템플릿을 실행할 리전을 선택합니다. 나중에 리전을 변경할 수 없습니다.

  6. 선택사항: 라벨을 추가합니다. 라벨은 관련 템플릿을 그룹화하는 데 사용할 수 있는 키-값 쌍입니다.

  7. 감지 섹션에서 다음 감지 설정을 구성합니다.

    • 악성 URL 감지: 사용자 또는 시스템에 피해를 주도록 설계된 웹 주소 (URL)를 식별합니다. 이러한 URL은 피싱 사이트, 멀웨어 다운로드 또는 기타 사이버 공격으로 연결될 수 있습니다. 자세한 내용은 악성 URL 감지를 참고하세요.

    • 프롬프트 인젝션 및 탈옥 감지: 프롬프트에서 악성 콘텐츠 및 탈옥 시도를 감지합니다. 더 엄격하게 적용하려면 신뢰도 수준을 낮음 이상** 으로 설정하여 프롬프트 인젝션 및 탈옥 시도일 가능성이 있는 대부분의 콘텐츠를 감지하세요. 자세한 내용은 프롬프트 삽입 및 탈옥 감지를 참고하세요.

    • 민감한 정보 보호: 민감한 정보를 감지하고, 실수로 노출되지 않도록 방지하며, 프롬프트 삽입과 같은 공격을 통해 AI 모델에서 데이터를 추출하려는 시도를 차단합니다. 자세한 내용은 민감한 정보 보호를 참고하세요.

      기본 또는 고급 Sensitive Data Protection을 설정할 수 있습니다.

      • 기본 - 사전 정의된 infoType을 사용하여 민감한 정보 유형을 감지합니다. 사전 정의된 infoType에 관한 자세한 내용은 기본 민감한 정보 보호 구성을 참고하세요.

      • 고급 - 민감한 정보 보호 서비스에 정의된 검사 템플릿을 민감한 정보 infoType의 단일 소스로 사용합니다.

        고급 민감한 정보 보호를 선택하는 경우 다음 매개변수를 지정해야 합니다.

        • 검사 템플릿: 사용할 사전 정의 또는 커스텀 감지기를 포함한 검사 스캔 작업의 구성 정보를 저장하는 템플릿 템플릿 이름을 다음 형식으로 입력합니다. projects/projectName/locations/locationID/inspectTemplates/templateName

        • 선택사항: 익명화 템플릿: infoType 및 구조화된 데이터 세트 변환을 포함한 익명화 작업의 구성 정보를 저장하는 템플릿 익명화 템플릿의 식별자를 다음 형식으로 입력합니다. projects/projectName/locations/locationID/deidentifyTemplates/templateName

  8. Responsible AI 섹션에서 각 콘텐츠 필터의 신뢰도 수준을 설정할 수 있습니다. 신뢰도 수준은 발견 항목이 콘텐츠 필터 유형과 일치할 가능성을 나타냅니다. 가능한 값은 다음과 같습니다.

    • 없음: 콘텐츠 유형을 감지하지 않습니다.
    • 낮음 이상: 신뢰도 수준이 낮음, 중간 또는 높음인 콘텐츠를 감지합니다.
    • 중간 이상: 신뢰도 수준이 중간 또는 높음인 콘텐츠를 감지합니다.
    • 높음: 신뢰도 수준이 높은 콘텐츠를 감지합니다.

    더 엄격하게 적용하려면 신뢰도 수준을 낮음 이상으로 설정하여 콘텐츠 필터 유형에 해당하는 대부분의 콘텐츠를 감지하세요. 모든 콘텐츠 유형의 신뢰도 수준을 한 번에 선택할 수도 있습니다.

  9. 만들기를 클릭합니다.

gcloud

다음 명령어를 실행합니다.

gcloud model-armor templates create TEMPLATE_ID --location LOCATION

다음을 바꿉니다.

  • LOCATION - 템플릿의 위치입니다.
  • TEMPLATE_ID: 템플릿의 ID입니다.

다음은 모든 필터가 포함된 예입니다.

 gcloud model-armor templates create --location LOCATION TEMPLATE_ID 
--rai-settings-filters='[{ "filterType": "HATE_SPEECH", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "HARASSMENT", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "SEXUALLY_EXPLICIT", "confidenceLevel": "MEDIUM_AND_ABOVE" }]'
--basic-config-filter-enforcement=enabled
--pi-and-jailbreak-filter-settings-enforcement=enabled
--pi-and-jailbreak-filter-settings-confidence-level=LOW_AND_ABOVE
--malicious-uri-filter-settings-enforcement=enabled
--template-metadata-custom-llm-response-safety-error-code=798
--template-metadata-custom-llm-response-safety-error-message="test template llm response evaluation failed"
--template-metadata-custom-prompt-safety-error-code=799
--template-metadata-custom-prompt-safety-error-message="test template prompt evaluation failed"
--template-metadata-ignore-partial-invocation-failures
--template-metadata-log-operations
--template-metadata-log-sanitize-operations

REST API

이 명령어를 사용하여 새 모델 Armor 템플릿을 만듭니다.

  curl -X POST 
-d "{'FILTER_CONFIG': {} }"
-H "Content-Type: application/json"
-H "Authorization: Bearer $(gcloud auth print-access-token)"
"https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates?template_id=TEMPLATE_ID"

다음을 바꿉니다.

  • FILTER_CONFIG은 템플릿의 필터 구성입니다.
  • PROJECT_ID는 템플릿이 속한 프로젝트의 ID입니다.
  • TEMPLATE_ID은 만들 템플릿의 ID입니다.
  • LOCATION은 템플릿의 위치입니다.

이 토큰을 가져오려면 이 단계를 따르세요.

다음 예에서는 모델 아머 템플릿 구성을 설명합니다.

  1. Model Armor 템플릿에서 검사할 필터와 해당하는 경우 신뢰도 수준의 구성 (이 경우 FILTER_CONFIG)을 만듭니다.
  2. 만든 구성을 사용하여 모델 아머 템플릿 (이 경우 ma-template-id-1234)을 만듭니다.

LOW_AND_ABOVE는 낮음, 중간, 높음의 가능성이 있는 모든 콘텐츠가 신고된다는 의미입니다.

  export FILTER_CONFIG='{
 "filterConfig": {
  "raiSettings": {
    "raiFilters": [{
      "filterType": "HATE_SPEECH",
      "confidenceLevel": "MEDIUM_AND_ABOVE"
    }, {
      "filterType": "HARASSMENT",
      "confidenceLevel": "HIGH"
    }, {
      "filterType": "DANGEROUS",
      "confidenceLevel": "MEDIUM_AND_ABOVE"
    },{
      "filterType": "SEXUALLY_EXPLICIT",
      "confidenceLevel": "MEDIUM_AND_ABOVE"
    }]
  },

  "piAndJailbreakFilterSettings": {
    "filterEnforcement": "ENABLED",
    "confidenceLevel": "LOW_AND_ABOVE"
  },
  "maliciousUriFilterSettings": {
    "filterEnforcement": "ENABLED"
  }
 }
}'

curl -X POST \
 -d  $FILTER_CONFIG \
 -H "Content-Type: application/json" \
 -H "Authorization: Bearer $(gcloud auth print-access-token)" \
 "https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/ templates?template_id=TEMPLATE_ID"

Model Armor 템플릿 보기

콘솔

  1. Google Cloud 콘솔에서 Model Armor 페이지로 이동합니다.

    Model Armor로 이동

  2. 표시된 프로젝트가 모델 아머를 활성화한 프로젝트인지 확인합니다. 프로젝트에 대해 만든 템플릿이 나열된 모델 아머 페이지가 표시됩니다.

  3. 목록에서 템플릿을 클릭하여 세부정보를 확인합니다.

gcloud

다음 명령어를 실행합니다.

gcloud model-armor templates describe TEMPLATE_ID --location LOCATION

다음을 바꿉니다.

  • LOCATION - 템플릿의 위치입니다.
  • TEMPLATE_ID: 템플릿의 ID입니다.

REST API

다음 명령어를 실행합니다.

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://modelarmor.LOCATION_ID.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID"

다음을 바꿉니다.

  • PROJECT_ID는 템플릿이 속한 프로젝트의 ID입니다.
  • TEMPLATE_ID은 만들 템플릿의 ID입니다.
  • LOCATION은 템플릿의 위치입니다.

Model Armor 템플릿 업데이트

콘솔

  1. Google Cloud 콘솔에서 Model Armor 페이지로 이동합니다.

    Model Armor로 이동

  2. 표시된 프로젝트가 모델 아머를 활성화한 프로젝트인지 확인합니다. 조직에 대해 생성된 템플릿이 나열된 모델 아머 페이지가 표시됩니다.

  3. 목록에서 업데이트할 템플릿을 클릭합니다. 템플릿 세부정보 페이지가 표시됩니다.

  4. 수정을 클릭합니다.

  5. 필요한 매개변수를 업데이트하고 저장을 클릭합니다.

gcloud

다음 명령어를 실행합니다.

gcloud model-armor templates update TEMPLATE_ID --location LOCATION

다음을 바꿉니다.

  • LOCATION - 템플릿의 위치입니다.
  • TEMPLATE_ID: 템플릿의 ID입니다.

REST API

다음 명령어를 실행합니다.

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d $FILTER_CONFIG \
"https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID?update_mask=FILTER_CONFIG"

다음을 바꿉니다.

  • PROJECT_ID - 템플릿이 속한 프로젝트의 ID입니다.
  • LOCATION - 템플릿의 위치입니다.
  • TEMPLATE_ID: 템플릿의 ID입니다.
  • FILTER_CONFIG - 필터 구성의 JSON 표현입니다.

다른 모든 필드는 변경할 수 없습니다. 다른 필드를 업데이트하려고 하면 (예: 템플릿 이름 업데이트) 오류가 발생합니다.

모델 아머 템플릿 삭제

콘솔

  1. Google Cloud 콘솔에서 Model Armor 페이지로 이동합니다.

    Model Armor로 이동

  2. 표시된 프로젝트가 모델 아머를 활성화한 프로젝트인지 확인합니다. 조직에 대해 생성된 템플릿이 나열된 모델 아머 페이지가 표시됩니다.

  3. 목록에서 삭제할 템플릿을 클릭합니다. 템플릿 세부정보 페이지가 표시됩니다.

  4. 삭제를 클릭합니다. 확인 대화상자가 표시됩니다.

  5. 템플릿 이름을 입력하여 삭제를 확인하고 삭제를 클릭합니다.

gcloud

다음 명령어를 실행합니다.

gcloud model-armor templates delete TEMPLATE_ID --location LOCATION

다음을 바꿉니다.

  • LOCATION - 템플릿의 위치입니다.
  • TEMPLATE_ID: 템플릿의 ID입니다.

REST API

다음 명령어를 실행합니다.

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)"  \
"https://modelarmor.LOCATION_ID.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID"

다음을 바꿉니다.

  • PROJECT_ID - 템플릿이 속한 프로젝트의 ID입니다.
  • LOCATION - 템플릿의 위치입니다.
  • TEMPLATE_ID: 템플릿의 ID입니다.

다음 단계