Halaman ini menjelaskan cara membersihkan perintah dan respons secara mendetail. Model Armor menawarkan serangkaian filter untuk melindungi aplikasi AI Anda. Model Armor memeriksa perintah dan respons untuk tingkat keyakinan penyaringan yang dikonfigurasi.
Sebelum memulai
Buat template dengan mengikuti petunjuk di Membuat template.
Mendapatkan izin yang diperlukan
Untuk mendapatkan izin yang Anda perlukan untuk membersihkan perintah dan respons, minta administrator Anda untuk memberi Anda peran IAM berikut di Model Armor:
-
Pengguna Model Armor (
roles/modelarmor.user
) -
Penampil Model Armor (
roles/modelarmor.viewer
)
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Mengaktifkan API
Anda harus mengaktifkan Model Armor API sebelum dapat menggunakan Model Armor.
Konsol
Enable the Model Armor API.
Pilih project tempat Anda ingin mengaktifkan Model Armor.
gcloud
Sebelum memulai, ikuti langkah-langkah berikut menggunakan Google Cloud CLI dengan Model Armor API:
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Jalankan perintah berikut untuk menetapkan endpoint API untuk layanan Model Armor.
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"
Ganti
LOCATION
dengan region tempat Anda ingin menggunakan Model Armor.SDP_PROJECT_ID
: ID project tempat template Perlindungan Data Sensitif lanjutan berada.PROJECT_NUMBER
: nomor project tempat template berada.PROJECT_ID
: ID project untuk template.LOCATION
: lokasi template.TEMPLATE_ID
: ID template.PROJECT_ID
: ID project untuk template.LOCATION
: lokasi template.TEMPLATE_ID
: ID template.PROJECT_ID
: ID project tempat template berada.LOCATION
: lokasi template.TEMPLATE_ID
: ID template.FILE_TYPE
: format file input.CREDIT_CARD_NUMBER
: Nomor kartu kredit memiliki panjang 12 hingga 19 digit. Kartu ini digunakan untuk transaksi pembayaran secara global.FINANCIAL_ACCOUNT_NUMBER
: Nomor yang merujuk ke rekening keuangan tertentu, misalnya, nomor rekening bank atau nomor rekening dana pensiun.GCP_CREDENTIALS
: Google Cloud kredensial akun layanan. Kredensial yang dapat digunakan untuk melakukan autentikasi dengan {api_client_lib_name} dan akun layanan.GCP_API_KEY
: Google Cloud Kunci API. String terenkripsi yang digunakan saat memanggil Google Cloud API yang tidak perlu mengakses data pengguna pribadi.PASSWORD
: Hapus sandi teks di konfigurasi, kode, dan teks lainnya.US_SOCIAL_SECURITY_NUMBER
: Nomor Jaminan Sosial (SSN) Amerika Serikat adalah nomor 9 digit yang dikeluarkan untuk warga negara AS, penduduk tetap, dan penduduk sementara. Detektor ini tidak akan cocok dengan angka yang berisi nol dalam kelompok digit mana pun (yaitu, 000-##-####, ###-00-####, atau ###-##-0000), dengan angka yang berisi 666 pada kelompok digit pertama, atau dengan angka yang digit pertamanya adalah 9.US_INDIVIDUAL_TAXPAYER_IDENTIFICATION_NUMBER
: Nomor Identifikasi Wajib Pajak Pribadi (ITIN) Amerika Serikat adalah jenis Nomor Identifikasi Pajak (TIN) yang dikeluarkan oleh Internal Revenue Service (IRS). ITIN adalah nomor pemrosesan pajak yang hanya tersedia untuk orang asing non-penduduk dan penduduk tertentu, pasangan, dan anak-anak mereka yang tidak dapat memperoleh Nomor Jaminan Sosial (SSN).TEMPLATE_ID
: ID template.LOCATION
: lokasi template.PROJECT_ID
: ID project tempat template berada.LOCATION
: lokasi template.TEMPLATE_ID
: ID template.PROJECT_ID
: ID project tempat template berada.LOCATION
: lokasi template.TEMPLATE_ID
: ID template.TEMPLATE_ID
: ID template.LOCATION
: lokasi template.PROJECT_ID
: ID project tempat template berada.LOCATION
: lokasi template.TEMPLATE_ID
: ID template.PROJECT_ID
: ID project tempat template berada.LOCATION
: lokasi template.TEMPLATE_ID
: ID template.PROJECT_ID
: ID project tempat template berada.LOCATION
: lokasi template.TEMPLATE_ID
: ID template.Contoh ini menampilkan respons berikut:
{ "sanitizationResult": { "filterMatchState": "MATCH_FOUND", "invocationResult": "SUCCESS", "filterResults": { "rai": { "raiFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "MATCH_FOUND", "raiFilterTypeResults": { "dangerous": { "confidenceLevel": "MEDIUM_AND_ABOVE", "matchState": "MATCH_FOUND" }, "sexually_explicit": { "matchState": "NO_MATCH_FOUND" }, "hate_speech": { "matchState": "NO_MATCH_FOUND" }, "harassment": { "matchState": "NO_MATCH_FOUND" } } } }, "pi_and_jailbreak": { "piAndJailbreakFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "NO_MATCH_FOUND" } }, "csam": { "csamFilterFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "NO_MATCH_FOUND" } }, "malicious_uris": { "maliciousUriFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "NO_MATCH_FOUND" } }, } } }
PROJECT_ID
: ID project tempat template berada.LOCATION
: lokasi template.TEMPLATE_ID
: ID template.- Pelajari lebih lanjut Model Armor.
- Pelajari setelan lantai Model Armor.
- Pelajari template Model Armor.
- Memecahkan masalah Model Armor.
Jalankan perintah berikut untuk mengaktifkan Model Armor.
gcloud services enable modelarmor.googleapis.com --project=PROJECT_ID
Ganti PROJECT_ID
dengan ID project.
Di project yang berisi template Perlindungan Data Sensitif, berikan
peran Pengguna DLP (roles/dlp.user
)
dan peran Pembaca DLP (roles/dlp.reader
)
kepada agen layanan yang dibuat sebagai bagian dari langkah Perlindungan Data Sensitif Lanjutan dalam
Membuat template.
Lewati langkah ini jika template Perlindungan Data Sensitif berada di project yang sama dengan template Model Armor.
gcloud projects add-iam-policy-binding SDP_PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-modelarmor.iam.gserviceaccount.com --role=roles/dlp.user gcloud projects add-iam-policy-binding SDP_PROJECT_ID \ --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-modelarmor.iam.gserviceaccount.com --role=roles/dlp.reader
Ganti kode berikut:
Membersihkan perintah
Bersihkan perintah untuk mencegah input berbahaya dan membantu memastikan perintah yang aman dan sesuai dikirim ke LLM Anda.
Perintah teks
Model Armor membersihkan perintah teks dengan menganalisis teks dan menerapkan berbagai filter untuk mengidentifikasi dan memitigasi potensi ancaman.
REST
Gunakan perintah berikut untuk membersihkan perintah teks di Model Armor.
curl -X POST \
-d '{"userPromptData":{"text":"[UNSAFE TEXT]"}}' \
-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:sanitizeUserPrompt"
Ganti kode berikut:
Hal ini akan menghasilkan respons berikut. Perhatikan bahwa MATCH_FOUND
berada dalam kategori Berbahaya.
{ "sanitizationResult": { "filterMatchState": "MATCH_FOUND", "invocationResult": "SUCCESS", "filterResults": { "csam": { "csamFilterFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "NO_MATCH_FOUND" } }, "malicious_uris": { "maliciousUriFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "NO_MATCH_FOUND" } }, "rai": { "raiFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "MATCH_FOUND", "raiFilterTypeResults": { "sexually_explicit": { "matchState": "NO_MATCH_FOUND" }, "hate_speech": { "matchState": "NO_MATCH_FOUND" }, "harassment": { "matchState": "NO_MATCH_FOUND" }, "dangerous": { "matchState": "MATCH_FOUND" } } } }, "pi_and_jailbreak": { "piAndJailbreakFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "MATCH_FOUND" } }, "sdp": { "sdpFilterResult": { "inspectResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "NO_MATCH_FOUND" } } } } } }
Go
Java
Node.js
PHP
Python
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Python dan instal Model Armor Python SDK.
Hal ini akan menghasilkan respons berikut.
sanitization_result { filter_match_state: MATCH_FOUND filter_results { key: "rai" value { rai_filter_result { execution_state: EXECUTION_SUCCESS match_state: MATCH_FOUND rai_filter_type_results { key: "dangerous" value { confidence_level: HIGH match_state: MATCH_FOUND } } } } } filter_results { key: "pi_and_jailbreak" value { pi_and_jailbreak_filter_result { execution_state: EXECUTION_SUCCESS match_state: MATCH_FOUND confidence_level: HIGH } } } filter_results { key: "malicious_uris" value { malicious_uri_filter_result { execution_state: EXECUTION_SUCCESS match_state: NO_MATCH_FOUND } } } filter_results { key: "csam" value { csam_filter_filter_result { execution_state: EXECUTION_SUCCESS match_state: NO_MATCH_FOUND } } } invocation_result: SUCCESS }
Menyaring perintah teks dengan deteksi multibahasa diaktifkan
Aktifkan deteksi multi-bahasa berdasarkan per permintaan dengan menyetel flag
enableMultiLanguageDetection
ke true
untuk setiap permintaan.
Secara opsional, Anda dapat menentukan bahasa sumber
untuk hasil yang lebih akurat. Jika bahasa sumber tidak ditentukan, bahasa tersebut akan
dideteksi secara otomatis untuk memberikan dukungan multi-bahasa.
Gunakan perintah berikut untuk membersihkan perintah teks di Model Armor dengan deteksi multi-bahasa yang diaktifkan di tingkat permintaan.
curl -X POST \ -d '{"userPromptData":{"text":"[UNSAFE TEXT]"}, "multiLanguageDetectionMetadata": { "enableMultiLanguageDetection": true , "sourceLanguage": "jp"}}' \ -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:sanitizeUserPrompt"
Ganti kode berikut:
Perintah berbasis file
Untuk membersihkan perintah yang disimpan dalam file, berikan konten file dalam format base64. Model Armor tidak otomatis mendeteksi jenis file. Anda harus menetapkan kolom byteDataType
secara eksplisit untuk menunjukkan format
file. Jika kolom tidak ada atau tidak ditentukan, permintaan akan gagal. Nilai byteDataType
yang mungkin adalah PLAINTEXT_UTF8
, PDF
, WORD_DOCUMENT
,
EXCEL_DOCUMENT
, POWERPOINT_DOCUMENT
, TXT
, dan CSV
.
REST
curl -X POST \ -d "$(jq -n \ --arg data "$(base64 -w 0 -i sample.pdf)" \ '{userPromptData: {byteItem: {byteDataType: "FILE_TYPE", byteData: $data}}}')" \ -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:sanitizeUserPrompt"
Ganti kode berikut:
Go
Java
Node.js
PHP
Python
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Python dan instal Model Armor Python SDK.
Konfigurasi dasar Sensitive Data Protection
Model Armor terintegrasi dengan Sensitive Data Protection untuk membantu mencegah eksposur informasi pribadi yang tidak disengaja. Buat template dengan setelan Perlindungan Data Sensitif dasar yang diaktifkan. Sensitive Data Protection Dasar membantu Anda menyaring sekumpulan infoType Sensitive Data Protection tetap.
InfoType Sensitive Data Protection berikut dipindai dalam perintah untuk semua region:
InfoType Perlindungan Data Sensitif tambahan berikut dipindai dalam perintah untuk wilayah berbasis AS:
Berikut adalah contoh konfigurasi Perlindungan Data Sensitif dasar:
gcloud
gcloud model-armor templates create TEMPLATE_ID \ --location=LOCATION \ --project=PROJECT_ID \ --basic-config-filter-enforcement=enabled
Ganti kode berikut:
REST
export FILTER_CONFIG_SDP_BASIC='{ "filterConfig": { "sdpSettings": { "basicConfig": { "filterEnforcement": "ENABLED" } } } }' curl -X PATCH \ -d "$FILTER_CONFIG_SDP_BASIC" \ -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?updateMask=filterConfig.sdpSettings.basicConfig.filterEnforcement"
Ganti kode berikut:
Go
Java
Node.js
PHP
Python
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Python dan instal Model Armor Python SDK.
Gunakan template yang dibuat untuk menyaring perintah Anda. Berikut contohnya:
curl -X POST \ -d '{"userPromptData":{"text":"can you remember my ITIN : ###-##-####"}}' \ -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:sanitizeUserPrompt"
Ganti kode berikut:
Contoh ini menampilkan respons berikut:
{ "sanitizationResult": { "filterMatchState": "MATCH_FOUND", "invocationResult": "SUCCESS", "filterResults": [ { "csamFilterFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "NO_MATCH_FOUND" } }, { "sdpFilterResult": { "inspectResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "MATCH_FOUND", "findings": [ { "infoType": "US_INDIVIDUAL_TAXPAYER_IDENTIFICATION_NUMBER", "likelihood": "LIKELY", "location": { "byteRange": { "start": "26", "end": "37" }, "codepointRange": { "start": "26", "end": "37" } } } ] } } } ] } }
Konfigurasi lanjutan Sensitive Data Protection
Model Armor menyaring perintah dan respons LLM menggunakan setelan konfigurasi Perlindungan Data Sensitif tingkat lanjut. Dengan begitu, Anda dapat menggunakan kemampuan Sensitive Data Protection di luar infoType yang ditawarkan dalam setelan Sensitive Data Protection dasar.
Untuk menggunakan filter lanjutan Perlindungan Data Sensitif di Model Armor, template Perlindungan Data Sensitif harus berada di lokasi cloud yang sama dengan template Model Armor.
gcloud
gcloud model-armor templates create TEMPLATE_ID \ --location=LOCATION \ --advanced-config-inspect-template="path/to/template" \
Ganti kode berikut:
REST
export FILTER_CONFIG_SDP_ADV='{ "filterConfig": { "sdpSettings": { "advancedConfig": { "deidentifyTemplate": "projects/PROJECT_ID/locations/LOCATION/deidentifyTemplates/deidentify-ip-address", "inspectTemplate": "projects/PROJECT_ID/locations/LOCATION/inspectTemplates/inspect-ip-address" } } } }' curl -X POST \ -d "$FILTER_CONFIG_SDP_ADV" \ -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?updateMask=filterConfig.sdpSettings.advancedConfig"
Ganti kode berikut:
Contoh ini menampilkan respons berikut:
{ "name": "projects/PROJECT_ID/locations/LOCATION/templates/all-filters-test", "createTime": "2024-12-16T17:08:19.626693819Z", "updateTime": "2024-12-16T17:08:19.626693819Z", "filterConfig": { "sdpSettings": { "advancedConfig": { "deidentifyTemplate": "projects/PROJECT_ID/locations/LOCATION/deidentifyTemplates/deidentify-ip-address", "inspectTemplate": "projects/PROJECT_ID/locations/LOCATION/inspectTemplates/inspect-ip-address" } } } }
Go
Java
Node.js
PHP
Python
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Python dan instal Model Armor Python SDK.
Gunakan template yang dibuat untuk menyaring perintah Anda. Berikut contohnya:
curl -X POST \ -d '{"userPromptData":{"text":"is there anything malicious running on 1.1.1.1?"}}' \ -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:sanitizeUserPrompt"
Ganti kode berikut:
Contoh ini menampilkan respons berikut:
{ "sanitizationResult": { "filterMatchState": "MATCH_FOUND", "invocationResult": "SUCCESS", "filterResults": [ { "csamFilterFilterResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "NO_MATCH_FOUND" } }, { "sdpFilterResult": { "deidentifyResult": { "executionState": "EXECUTION_SUCCESS", "matchState": "MATCH_FOUND", "data": { "text": "is there anything malicious running on [IP_ADDRESS]?" }, "transformedBytes": "7", "infoTypes": ["IP_ADDRESS"] } } } ] } }
Membersihkan respons model
LLM terkadang dapat menghasilkan respons yang berbahaya. Untuk mengurangi risiko yang terkait dengan penggunaan LLM dalam aplikasi Anda, penting untuk membersihkan responsnya.
Berikut adalah contoh perintah untuk membersihkan respons model di Model Armor.
REST
curl -X POST \
-d '{"text":"IP address of the current network is ##.##.##.##"}' \
-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:sanitizeModelResponse"
Ganti kode berikut:
Go
Java
Node.js
PHP
Python
Untuk menjalankan kode ini, siapkan lingkungan pengembangan Python dan instal Model Armor Python SDK.
Membersihkan respons model dengan mengaktifkan deteksi multibahasa
Aktifkan deteksi multi-bahasa berdasarkan per permintaan dengan menyetel flag
enableMultiLanguageDetection
ke true
untuk setiap respons.
Secara opsional, Anda dapat menentukan
bahasa sumber
untuk mendapatkan hasil yang lebih akurat. Jika bahasa sumber tidak ditentukan, bahasa tersebut akan
dideteksi secara otomatis untuk memberikan dukungan multi-bahasa.
curl -X POST \ -d '{"userPromptData":{"text":"[UNSAFE TEXT]"}, "multiLanguageDetectionMetadata": { "enableMultiLanguageDetection": true , "sourceLanguage": "jp"}}' \ -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:sanitizeModelResponse"
Ganti kode berikut:
Langkah berikutnya
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-08-19 UTC.