Blokklista használata az Azure OpenAI-ban
A konfigurálható tartalomszűrők elegendőek a legtöbb con sátormód ration-igényhez. Előfordulhat azonban, hogy a használati esetre jellemző kifejezéseket kell szűrnie.
Előfeltételek
- Azure-előfizetés. Hozzon létre egyet ingyen.
- Miután megkapta az Azure-előfizetését, hozzon létre egy Azure OpenAI-erőforrást az Azure Portalon a jogkivonat, a kulcs és a végpont lekéréséhez. Adja meg az erőforrás egyedi nevét, válassza ki az alkalmazásűrlapon megadott előfizetést, válasszon egy erőforráscsoportot, egy támogatott régiót és egy támogatott tarifacsomagot. Válassza a Létrehozás parancsot.
- Az erőforrás üzembe helyezése néhány percet vesz igénybe. A befejezés után válassza az Erőforrás megnyitása lehetőséget. A bal oldali panel Erőforrás-kezelés területén válassza az Előfizetési kulcsot és a Végpontot. A végpont és a kulcsok bármelyike az API-k meghívására szolgál.
- Telepített Azure CLI
- telepített cURL
Blokklisták használata
Az Azure OpenAI API-val blokklistákat hozhat létre. Az alábbi lépések segítenek az első lépésekben.
A jogkivonat lekérése
Először le kell szereznie egy jogkivonatot a blokklisták létrehozásához, szerkesztéséhez és törléséhez szükséges API-k eléréséhez. Ezt a jogkivonatot a következő Azure CLI-paranccsal szerezheti be:
az account get-access-token
Blokklista létrehozása vagy módosítása
Másolja az alábbi cURL parancsot egy szövegszerkesztőbe, és végezze el a következő módosításokat:
- Cserélje le a(z) {subscriptionId} elemet az előfizetés-azonosítóra.
- Cserélje le a(z) {resourceGroupName} nevet az erőforráscsoport nevére.
- Cserélje le a(z) {accountName} nevet az erőforrás nevére.
- Cserélje le a(z) {raiBlocklistName} elemet (az URL-címben) a lista egyéni nevére. Engedélyezett karakterek:
0-9, A-Z, a-z, - . _ ~
. - Cserélje le a(z) {token} elemet a fenti "A jogkivonat lekérése" lépésben kapott jogkivonatra.
- Igény szerint cserélje le a "leírás" mező értékét egy egyéni leírásra.
curl --location --request PUT 'https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/raiBlocklists/{raiBlocklistName}?api-version=2024-03-01-preview' \
--header 'Authorization: Bearer {token}' \
--header 'Content-Type: application/json' \
--data-raw '{
"properties": {
"description": "This is a prompt blocklist"
}
}'
A válaszkódnak létre kell hoznia 201
egy új listát, vagy 200
(egy meglévő listát kell frissítenie).
Tiltólista alkalmazása tartalomszűrőre
Ha még nem hozott létre tartalomszűrőt, ezt a bal oldali Tartalomszűrők lap Studio lapján teheti meg. A tiltólista használatához győződjön meg arról, hogy ez a tartalomszűrő egy Azure OpenAI-üzemelő példányra van alkalmazva. Ezt a bal oldali Üzembe helyezések lapon teheti meg.
Ha befejezési blokklistát szeretne alkalmazni egy tartalomszűrőre, használja a következő cURL-parancsot:
- Cserélje le a(z) {subscriptionId} elemet az alazonosítóra.
- Cserélje le a(z) {resourceGroupName} nevet az erőforráscsoport nevére.
- Cserélje le a(z) {accountName} nevet az erőforrás nevére.
- Cserélje le a(z) {raiPolicyName} elemet a tartalomszűrő nevére
- Cserélje le a(z) {token} elemet a fenti "A jogkivonat lekérése" lépésben kapott jogkivonatra.
- Cserélje le a törzs "raiBlocklistName" elemét a lista egyéni nevére. Engedélyezett karakterek:
0-9, A-Z, a-z, - . _ ~
.
curl --location --request PUT 'https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/raiPolicies/{raiPolicyName}?api-version=2024-03-01-preview' \
--header 'Authorization: Bearer {token}' \
--header 'Content-Type: application/json' \
--data-raw '{
"properties": {
"basePolicyName": "Microsoft.Default",
"completionBlocklists": [{
"blocklistName": "raiBlocklistName",
"blocking": true
}],
"contentFilters": [ ]
}
}'
BlockItems hozzáadása a listához
Feljegyzés
Egy listában legfeljebb 10 000 kifejezés engedélyezett.
Másolja az alábbi cURL parancsot egy szövegszerkesztőbe, és végezze el a következő módosításokat:
- Cserélje le a(z) {subscriptionId} elemet az alazonosítóra.
- Cserélje le a(z) {resourceGroupName} nevet az erőforráscsoport nevére.
- Cserélje le a(z) {accountName} nevet az erőforrás nevére.
- Cserélje le a(z) {raiBlocklistName} elemet (az URL-címben) a lista egyéni nevére. Engedélyezett karakterek:
0-9, A-Z, a-z, - . _ ~
. - Cserélje le a(z) {raiBlocklistItemName} elemet a listaelem egyéni nevére.
- Cserélje le a(z) {token} elemet a fenti "A jogkivonat lekérése" lépésben kapott jogkivonatra.
- Cserélje le a
"blocking pattern"
mező értékét a blokklistához hozzáadni kívánt elemre. A blokkelem maximális hossza 1000 karakter. Azt is megadhatja, hogy a minta regex vagy pontos egyezés-e.
curl --location --request PUT 'https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/raiBlocklists/{raiBlocklistName}/raiBlocklistItems/{raiBlocklistItemName}?api-version=2024-03-01-preview' \
--header 'Authorization: Bearer {token}' \
--header 'Content-Type: application/json' \
--data-raw '{
"properties": {
"pattern": "blocking pattern",
"isRegex": false
}
}'
Feljegyzés
Egy új kifejezés hozzáadása a blokklistához körülbelül 5 percet vehet igénybe. Kérjük, 5 perc után tesztelje.
A válaszkódnak a következőnek kell lennie 200
: .
{
"name": "raiBlocklistItemName",
"id": "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.CognitiveServices/accounts/accountName/raiBlocklists/raiBlocklistName/raiBlocklistItems/raiBlocklistItemName",
"properties": {
"pattern": "blocking pattern",
"isRegex": false
}
}
Szöveg elemzése blokklistával
Most tesztelheti a blokklistát tartalmazó üzembe helyezést. Ennek legegyszerűbb módja az Azure OpenAI Studio. Ha a tartalom le lett tiltva az üzenetben vagy a befejezésben, hibaüzenet jelenik meg arról, hogy a tartalomszűrési rendszer aktiválódott.
Az Azure OpenAI-végpontok meghívására vonatkozó utasításokért tekintse meg a rövid útmutatót.
Az alábbi példában egy GPT-35-Turbo telepítés blokklistával blokkolja a kérést. A válasz hibát 400
ad vissza.
{
"error": {
"message": "The response was filtered due to the prompt triggering Azure OpenAI’s content management policy. Please modify your prompt and retry. To learn more about our content filtering policies please read our documentation: https://go.microsoft.com/fwlink/?linkid=2198766",
"type": null,
"param": "prompt",
"code": "content_filter",
"status": 400,
"innererror": {
"code": "ResponsibleAIPolicyViolation",
"content_filter_result": {
"custom_blocklists": [
{
"filtered": true,
"id": "raiBlocklistName"
}
],
"hate": {
"filtered": false,
"severity": "safe"
},
"self_harm": {
"filtered": false,
"severity": "safe"
},
"sexual": {
"filtered": false,
"severity": "safe"
},
"violence": {
"filtered": false,
"severity": "safe"
}
}
}
}
}
Ha maga a befejezés le van tiltva, a válasz visszatér 200
, mivel a befejezés csak akkor fejeződik be, ha a tiltólista tartalma megfelel. A széljegyzetek azt mutatják, hogy a tiltólista megfelelt.
{
"id": "chatcmpl-85NkyY0AkeBMunOjyxivQSiTaxGAl",
"object": "chat.completion",
"created": 1696293652,
"model": "gpt-35-turbo",
"prompt_filter_results": [
{
"prompt_index": 0,
"content_filter_results": {
"hate": {
"filtered": false,
"severity": "safe"
},
"self_harm": {
"filtered": false,
"severity": "safe"
},
"sexual": {
"filtered": false,
"severity": "safe"
},
"violence": {
"filtered": false,
"severity": "safe"
}
}
}
],
"choices": [
{
"index": 0,
"finish_reason": "content_filter",
"message": {
"role": "assistant"
},
"content_filter_results": {
"custom_blocklists": [
{
"filtered": true,
"id": "myBlocklistName"
}
],
"hate": {
"filtered": false,
"severity": "safe"
},
"self_harm": {
"filtered": false,
"severity": "safe"
},
"sexual": {
"filtered": false,
"severity": "safe"
},
"violence": {
"filtered": false,
"severity": "safe"
}
}
}
],
"usage": {
"completion_tokens": 75,
"prompt_tokens": 27,
"total_tokens": 102
}
}
Blokklisták használata az Azure OpenAI Studióban
A tartalomszűrési konfigurációk (nyilvános előzetes verzió) részeként egyéni tiltólistákat is létrehozhat az Azure OpenAI Studióban. Az egyéni tartalomszűrők létrehozásáról itt talál útmutatást. Az alábbi lépések bemutatják, hogyan hozhat létre egyéni tiltólistákat a tartalomszűrők részeként az Azure OpenAI Studióval.
- Válassza a Tartalomszűrők lap melletti Tiltólisták lapot.
- Válassza a Tiltólista létrehozása lehetőséget
- Hozzon létre egy nevet a tiltólistának, adjon hozzá egy leírást, és válassza a Létrehozás lehetőséget.
- A létrehozás után válassza ki az egyéni tiltólistát, majd válassza a Kifejezés hozzáadása lehetőséget.
- Adjon hozzá egy szűrni kívánt kifejezést, és válassza a Létrehozás lehetőséget. Regexet is létrehozhat.
- A tiltólista minden kifejezését szerkesztheti és törölheti.
- Miután elkészült a tiltólista, lépjen a Tartalomszűrők (előzetes verzió) szakaszra, és hozzon létre egy új, testreszabott tartalomszűrő-konfigurációt. Ezzel megnyit egy varázslót, amely több AI-tartalombiztonsági összetevőt tartalmaz. A fő szűrők és választható modellek konfigurálásáról itt talál további információt. Lépjen a Blokklista hozzáadása elemre (nem kötelező).
- Ekkor megjelenik az összes elérhető tiltólista. Kétféle blokklista létezik : a létrehozott blokklisták és a Microsoft által előre összeállított blokklisták, ebben az esetben a Profanity blocklist (angol)
- Most már eldöntheti, hogy melyik elérhető tiltólistát szeretné belefoglalni a tartalomszűrési konfigurációba, és kiválaszthatja, hogy az vonatkozzon-e, és szűrje-e a kéréseket, kiegészítéseket vagy mindkettőt. Az alábbi példában az imént létrehozott CustomBlocklist1-et alkalmazzuk a kérésekre és a befejezésekre, a Profanity blokklistát pedig csak a befejezésekre. Az utolsó lépés a tartalomszűrési konfiguráció áttekintése és befejezése a Tovább gombra kattintva.
- Bármikor visszatérhet, és szerkesztheti a konfigurációt. Ha elkészült, válassza a Tartalomszűrő létrehozása lehetőséget. A blokklistákat tartalmazó új konfiguráció mostantól alkalmazható egy központi telepítésre. Részletes útmutatást itt talál.
Következő lépések
További információ az Azure OpenAI felelős AI-eljárásairól: Az Azure OpenAI-modellek felelős AI-eljárásainak áttekintése.
További információ a tartalomszűrési kategóriákról és súlyossági szintekről az Azure OpenAI Szolgáltatással.
További információ a vörös összevonásról a következő cikkünkből: Bevezetés a vörös összevonási nagy nyelvi modellek (LLM-ek) című cikkünkből.