Bagikan melalui


Menggunakan daftar blokir

Perhatian

Data sampel dalam panduan ini mungkin berisi konten yang menyinggung. Kebijaksanaan pengguna disarankan.

Pengklasifikasi AI default cukup untuk sebagian besar kebutuhan kon mode tenda rasi. Namun, Anda mungkin perlu menyaring item yang khusus untuk kasus penggunaan Anda. Daftar blokir memungkinkan Anda menambahkan istilah kustom ke pengklasifikasi AI. Anda dapat menggunakan daftar blokir untuk menyaring istilah atau frasa tertentu yang ingin Anda benderai di konten Anda.

Prasyarat

  • Langganan Azure - buat langganan gratis
  • Setelah Anda memiliki langganan Azure, buat sumber daya Content Brankas ty di portal Azure untuk mendapatkan kunci dan titik akhir Anda. Masukkan nama unik untuk sumber daya Anda, pilih langganan Anda, dan pilih grup sumber daya, wilayah yang didukung (lihat Ketersediaan wilayah), dan tingkat harga yang didukung. Lalu pilih Buat.
    • Sumber daya membutuhkan waktu beberapa menit untuk disebarkan. Setelah selesai, Pilih buka sumber daya. Di panel kiri, di bawah Manajemen Sumber Daya, pilih Kunci Langganan dan Titik Akhir. Titik akhir dan salah satu kunci digunakan untuk memanggil API.
  • Salah satu hal berikut ini terinstal:
    • cURL untuk panggilan REST API.
    • Python 3.x terinstal
      • Penginstalan Python Anda harus menyertakan pip. Anda dapat memeriksa apakah pip terinstal dengan menjalankan pip --version pada baris perintah. Dapatkan pip dengan menginstal versi terbaru Python.
      • Jika Anda menggunakan Python, Anda harus menginstal pustaka klien Azure AI Content Brankas ty untuk Python. Jalankan perintah pip install azure-ai-contentsafety di direktori proyek Anda.
    • .NET Runtime terinstal.
      • .NET Core SDK terinstal.
      • Jika Anda menggunakan .NET, Anda harus menginstal pustaka klien Azure AI Content Brankas ty untuk .NET. Jalankan perintah dotnet add package Azure.AI.ContentSafety --prerelease di direktori proyek Anda.

Membuat variabel lingkungan

Dalam contoh ini, Anda akan menulis kredensial Anda ke variabel lingkungan pada komputer lokal yang menjalankan aplikasi.

Tip

Jangan sertakan kunci langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Lihat artikel keamanan layanan Azure AI untuk opsi autentikasi lainnya seperti Azure Key Vault.

Untuk mengatur variabel lingkungan untuk kunci dan titik akhir Anda, buka jendela konsol dan ikuti instruksi untuk sistem operasi dan lingkungan pengembangan Anda.

  1. Untuk mengatur CONTENT_SAFETY_KEY variabel lingkungan, ganti YOUR_CONTENT_SAFETY_KEY dengan salah satu kunci untuk sumber daya Anda.
  2. Untuk mengatur CONTENT_SAFETY_ENDPOINT variabel lingkungan, ganti YOUR_CONTENT_SAFETY_ENDPOINT dengan titik akhir untuk sumber daya Anda.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Setelah menambahkan variabel lingkungan, Anda mungkin perlu memulai ulang program yang sedang berjalan yang akan membaca variabel lingkungan, termasuk jendela konsol.

Menganalisis teks dengan daftar blokir

Anda dapat membuat daftar blokir untuk digunakan dengan Text API. Langkah-langkah berikut membantu Anda memulai.

Membuat atau mengubah daftar blokir

Salin perintah cURL di bawah ini ke editor teks dan buat perubahan berikut:

  1. Ganti <endpoint> dengan URL titik akhir Anda.
  2. Ganti <enter_your_key_here> dengan kunci Anda.
  3. Ganti <your_list_name> (di URL) dengan nama kustom untuk daftar Anda. Ganti juga istilah terakhir URL REST dengan nama yang sama. Karakter yang diizinkan: 0-9, A-Z, a-z, - . _ ~.
  4. Secara opsional ganti nilai "description" bidang dengan deskripsi kustom.
curl --location --request PATCH '<endpoint>/contentsafety/text/blocklists/<your_list_name>?api-version=2023-10-01' \
--header 'Ocp-Apim-Subscription-Key: <enter_your_key_here>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "description": "This is a violence list"
}'

Kode respons harus 201(membuat daftar baru) atau 200(memperbarui daftar yang sudah ada).

Menambahkan blocklistItems ke daftar

Catatan

Ada batas maksimum total 10.000 istilah di semua daftar. Anda dapat menambahkan paling banyak 100 blocklistItem dalam satu permintaan.

Salin perintah cURL di bawah ini ke editor teks dan buat perubahan berikut:

  1. Ganti <endpoint> dengan URL titik akhir Anda.
  2. Ganti <enter_your_key_here> dengan kunci Anda.
  3. Ganti <your_list_name> (di URL) dengan nama yang Anda gunakan dalam langkah pembuatan daftar.
  4. Secara opsional ganti nilai "description" bidang dengan deskripsi kustom.
  5. Ganti nilai "text" bidang dengan item yang ingin Anda tambahkan ke daftar blokir Anda. Panjang maksimum blocklistItem adalah 128 karakter.
curl --location --request POST '<endpoint>/contentsafety/text/blocklists/<your_list_name>:addOrUpdateBlocklistItems?api-version=2023-10-01' \
--header 'Ocp-Apim-Subscription-Key: <enter_your_key_here>' \
--header 'Content-Type: application/json' \
--data-raw '"blocklistItems": [{
    "description": "string",
    "text": "bleed"
}]'

Tip

Anda dapat menambahkan beberapa blocklistItems dalam satu panggilan API. Jadikan isi permintaan sebagai array JSON grup data:

{
   "blocklistItems": [
       {
           "description": "string",
           "text": "bleed"
       },
       {
           "description": "string",
           "text": "blood"
       }
   ]
}

Kode respons harus 200.

{
"blocklistItems:"[
  {
  "blocklistItemId": "string",
  "description": "string",
  "text": "bleed"
  
   }
 ]
}

Catatan

Akan ada beberapa penundaan setelah Anda menambahkan atau mengedit blockItem sebelum berlaku pada analisis teks, biasanya tidak lebih dari lima menit.

Menganalisis teks dengan daftar blokir

Salin perintah cURL di bawah ini ke editor teks dan buat perubahan berikut:

  1. Ganti <endpoint> dengan URL titik akhir Anda.
  2. Ganti <enter_your_key_here> dengan kunci Anda.
  3. Ganti <your_list_name> dengan nama yang Anda gunakan dalam langkah pembuatan daftar. Bidang "blocklistNames" dapat berisi array dari beberapa ID daftar.
  4. Secara opsional mengubah nilai "breakByBlocklists". true menunjukkan bahwa setelah daftar blokir dicocokkan, analisis akan segera kembali tanpa output model. false akan menyebabkan model terus melakukan analisis dalam kategori default.
  5. Secara opsional ubah nilai bidang menjadi "text" teks apa pun yang ingin Anda analisis.
curl --location --request POST '<endpoint>/contentsafety/text:analyze?api-version=2023-10-01&' \
--header 'Ocp-Apim-Subscription-Key: <enter_your_key_here>' \
--header 'Content-Type: application/json' \
--data-raw '{
  "text": "I want to beat you till you bleed",
  "categories": [
    "Hate",
    "Sexual",
    "SelfHarm",
    "Violence"
  ],
  "blocklistNames":["<your_list_name>"],
  "haltOnBlocklistHit": false,
  "outputType": "FourSeverityLevels"
}'

Respons JSON akan berisi "blocklistMatchResults" yang menunjukkan kecocokan dengan daftar blokir Anda. Ini melaporkan lokasi dalam string teks tempat kecocokan ditemukan.

{
  "blocklistsMatch": [
    {
      "blocklistName": "string",
      "blocklistItemId": "string",
      "blocklistItemText": "bleed"
    }
  ],
  "categoriesAnalysis": [
    {
      "category": "Hate",
      "severity": 0
    }
  ]
}

Operasi daftar blokir lainnya

Bagian ini berisi lebih banyak operasi untuk membantu Anda mengelola dan menggunakan fitur daftar blokir.

Mencantumkan semua blocklistItems dalam daftar

Salin perintah cURL di bawah ini ke editor teks dan buat perubahan berikut:

  1. Ganti <endpoint> dengan URL titik akhir Anda.
  2. Ganti <enter_your_key_here> dengan kunci Anda.
  3. Ganti <your_list_name> (di URL permintaan) dengan nama yang Anda gunakan dalam langkah pembuatan daftar.
curl --location --request GET '<endpoint>/contentsafety/text/blocklists/<your_list_name>/blocklistItems?api-version=2023-10-01' \
--header 'Ocp-Apim-Subscription-Key: <enter_your_key_here>' \
--header 'Content-Type: application/json'

Kode status harus 200 dan isi respons akan terlihat seperti ini:

{
 "values": [
  {
   "blocklistItemId": "string",
   "description": "string",
   "text": "bleed",
  }
 ]
}

Mencantumkan semua daftar blokir

Salin perintah cURL di bawah ini ke editor teks dan buat perubahan berikut:

  1. Ganti <endpoint> dengan URL titik akhir Anda.
  2. Ganti <enter_your_key_here> dengan kunci Anda.
curl --location --request GET '<endpoint>/contentsafety/text/blocklists?api-version=2023-10-01' \
--header 'Ocp-Apim-Subscription-Key: <enter_your_key_here>' \
--header 'Content-Type: application/json'

Kode status harus 200. Respons JSON terlihat seperti ini:

"value": [
  {
    "blocklistName": "string",
    "description": "string"
  }
]

Mendapatkan daftar blokir menurut blocklistName

Salin perintah cURL di bawah ini ke editor teks dan buat perubahan berikut:

  1. Ganti <endpoint> dengan URL titik akhir Anda.
  2. Ganti <enter_your_key_here> dengan kunci Anda.
  3. Ganti <your_list_name> (di URL permintaan) dengan nama yang Anda gunakan dalam langkah pembuatan daftar.
cURL --location '<endpoint>contentsafety/text/blocklists/<your_list_name>?api-version=2023-10-01' \
--header 'Ocp-Apim-Subscription-Key: <enter_your_key_here>' \
--data ''

Kode status harus 200. Respons JSON terlihat seperti ini:

{
  "blocklistName": "string",
  "description": "string"
}

Mendapatkan blocklistItem dengan blocklistName dan blocklistItemId

Salin perintah cURL di bawah ini ke editor teks dan buat perubahan berikut:

  1. Ganti <endpoint> dengan URL titik akhir Anda.
  2. Ganti <enter_your_key_here> dengan kunci Anda.
  3. Ganti <your_list_name> (di URL permintaan) dengan nama yang Anda gunakan dalam langkah pembuatan daftar.
  4. Ganti <your_item_id> dengan nilai ID untuk blocklistItem. Ini adalah nilai bidang dari tambahkan blocklistItem atau Dapatkan semua panggilan API blocklistItems."blocklistItemId"
cURL --location '<endpoint>contentsafety/text/blocklists/<your_list_name>/blocklistItems/<your_item_id>?api-version=2023-10-01' \
--header 'Ocp-Apim-Subscription-Key: <enter_your_key_here>' \
--data ''

Kode status harus 200. Respons JSON terlihat seperti ini:

{
  "blocklistItemId": "string",
  "description": "string",
  "text": "string"
}
  1. Ganti <your_list_name> dengan nama yang Anda gunakan dalam langkah pembuatan daftar.
  2. Ganti <your_block_item_id> dengan ID item yang ingin Anda dapatkan.
  3. Jalankan skrip.

Hapus blocklistItems dari daftar blokir.

Catatan

Akan ada beberapa penundaan setelah Anda menghapus item sebelum berlaku pada analisis teks, biasanya tidak lebih dari lima menit.

Salin perintah cURL di bawah ini ke editor teks dan buat perubahan berikut:

  1. Ganti <endpoint> dengan URL titik akhir Anda.
  2. Ganti <enter_your_key_here> dengan kunci Anda.
  3. Ganti <your_list_name> (di URL permintaan) dengan nama yang Anda gunakan dalam langkah pembuatan daftar.
  4. Ganti <item_id> dengan nilai ID untuk blocklistItem. Ini adalah nilai bidang dari tambahkan blocklistItem atau Dapatkan semua panggilan API blocklistItems."blocklistItemId"
curl --location --request DELETE '<endpoint>/contentsafety/text/blocklists/<your_list_name>:removeBlocklistItems?api-version=2023-10-01' \
--header 'Ocp-Apim-Subscription-Key: <enter_your_key_here>' \
--header 'Content-Type: application/json'
--data-raw '"blocklistItemIds":[
    "<item_id>"
]'

Tip

Anda dapat menghapus beberapa blocklistItems dalam satu panggilan API. Jadikan isi permintaan sebagai array blocklistItemId nilai.

Kode respons harus 204.

Menghapus daftar dan semua isinya

Catatan

Akan ada beberapa penundaan setelah Anda menghapus daftar sebelum berlaku pada analisis teks, biasanya tidak lebih dari lima menit.

Salin perintah cURL di bawah ini ke editor teks dan buat perubahan berikut:

  1. Ganti <endpoint> dengan URL titik akhir Anda.
  2. Ganti <enter_your_key_here> dengan kunci Anda.
  3. Ganti <your_list_name> (di URL permintaan) dengan nama yang Anda gunakan dalam langkah pembuatan daftar.
curl --location --request DELETE '<endpoint>/contentsafety/text/blocklists/<your_list_name>?api-version=2023-10-01' \
--header 'Ocp-Apim-Subscription-Key: <enter_your_key_here>' \
--header 'Content-Type: application/json' \

Kode respons harus 204.

Langkah berikutnya

Lihat dokumentasi referensi API untuk mempelajari selengkapnya tentang API yang digunakan dalam panduan ini.