Freigeben über


Erzwingen von Inhaltssicherheitsprüfungen für LLM-Anforderungen

GILT FÜR: Developer | Basic | Basic v2 | Standard | Standard v2 | Premium | Premium v2

Die llm-content-safety Richtlinie erzwingt Inhaltssicherheitsprüfungen für LLM-Anforderungen (Large Language Model), indem sie an den Azure AI Content Safety-Dienst übertragen werden, bevor sie an die BACK-END-LLM-API gesendet werden. Wenn die Richtlinie aktiviert ist und Azure AI Content Safety schädliche Inhalte erkennt, blockiert die API-Verwaltung die Anforderung und gibt einen 403 Fehlercode zurück.

Hinweis

Die Begriffskategorie und -kategorien, die in der API-Verwaltung verwendet werden, sind synonym für Kategorien von Schaden und Schaden im Azure AI Content Safety-Dienst. Details finden Sie auf der Seite "Schaden" auf der Seite " Azure AI Content Safety ".

Verwenden Sie die Richtlinie in Szenarien wie den folgenden:

  • Blockieren von Anforderungen, die vordefinierte Kategorien von schädlichen Inhalten oder Hassreden enthalten
  • Anwenden benutzerdefinierter Blocklisten, um zu verhindern, dass bestimmte Inhalte gesendet werden
  • Schutz vor Eingabeaufforderungen, die angriffsmustern entsprechen

Hinweis

Legen Sie die Elemente und untergeordneten Elemente einer Richtlinie in der Reihenfolge fest, die in der Richtlinienanweisung angegeben ist. Erfahren Sie mehr darüber, wie Sie API Management-Richtlinien festlegen oder bearbeiten.

Voraussetzungen

  • Eine Azure AI Content Safety-Ressource .
  • Ein API-Verwaltungs-Back-End , das so konfiguriert ist, dass Aufrufe der Inhaltssicherheits-API weitergeleitet und beim Azure AI Content Safety-Dienst authentifiziert werden:
    • Die verwaltete Identität der API-Verwaltung muss im Azure AI Content Safety-Dienst mit der Rolle "Cognitive Services User" konfiguriert werden.
    • Die Azure AI Content Safety-Back-End-URL, auf die in der backend-id Richtlinie verwiesen llm-content-safety wird, muss sich in der Form https://<content-safety-service-name>.cognitiveservices.azure.combefindet.
    • Die Autorisierungsanmeldeinformationen des Azure AI Content Safety-Back-End müssen auf verwaltete Identität festgelegt werden, die mit einer genauen Ressourcen-ID aktiviert https://cognitiveservices.azure.comist.

Richtlinienerklärung

<llm-content-safety backend-id="name of backend entity" shield-prompt="true | false" enforce-on-completions="true | false">
    <categories output-type="FourSeverityLevels | EightSeverityLevels">
        <category name="Hate | SelfHarm | Sexual | Violence" threshold="integer" />
        <!-- If there are multiple categories, add more category elements -->
        [...]
    </categories>
    <blocklists>
        <id>blocklist-identifier</id>
        <!-- If there are multiple blocklists, add more id elements -->
        [...]
    </blocklists>
</llm-content-safety>

Attribute

Merkmal BESCHREIBUNG Erforderlich Standard
Back-End-ID Bezeichner (Name) des Azure AI Content Safety-Back-Ends zum Weiterleiten von API-Aufrufen zur Inhaltssicherheit. Richtlinienausdrücke sind zulässig. Ja Nicht verfügbar
Schildaufforderung Bei Festlegung auf true, wird der Inhalt auf Benutzerangriffe überprüft. Überspringen Sie andernfalls diese Prüfung. Richtlinienausdrücke sind zulässig. Nein false
erzwingen von Abschlussen Wenn diese Einstellung festgelegt ist true, werden sicherheitsüberprüfungen für Chats für die Antwortüberprüfung erzwungen. Überspringen Sie andernfalls diese Prüfung. Richtlinienausdrücke sind zulässig. Nein false

Elemente

Element BESCHREIBUNG Erforderlich
Kategorien Eine Liste der Elemente, die Einstellungen zum Blockieren von category Anforderungen angeben, wenn die Kategorie erkannt wird. Nein
Blocklisten Eine Liste der Blocklistenelementeid aus der Azure AI Content Safety-Instanz, für die die Erkennung bewirkt, dass die Anforderung blockiert wird. Richtlinienausdrücke sind zulässig. Nein

Kategorienattribute

Merkmal BESCHREIBUNG Erforderlich Standard
Ausgabetyp Gibt an, wie schweregrade von Azure AI Content Safety zurückgegeben werden. Das Attribut muss einen der folgenden Werte aufweisen.

- FourSeverityLevels: Ausgabeschweregrade in vier Ebenen: 0,2,4,6.
- EightSeverityLevels: Ausgabeschweregrade in acht Ebenen: 0,1,2,3,4,5,6,7.

Richtlinienausdrücke sind zulässig.
Nein FourSeverityLevels

Kategorieattribute

Merkmal BESCHREIBUNG Erforderlich Standard
Name Gibt den Namen dieser Kategorie an. Das Attribut muss einen der folgenden Werte aufweisen: Hate, , SelfHarm, Sexual. Violence Richtlinienausdrücke sind zulässig. Ja Nicht verfügbar
Schwelle Gibt den Schwellenwert für diese Kategorie an, bei der die Anforderung blockiert wird. Anforderungen mit Inhaltsschweregraden, die kleiner als der Schwellenwert sind, werden nicht blockiert. Der Wert muss zwischen 0 (am restriktivsten) und 7 (am wenigsten restriktiv) sein. Richtlinienausdrücke sind zulässig. Ja Nicht verfügbar

Verwendung

Verwendungshinweise

  • Die Richtlinie wird auf einer Verkettung aller Textinhalte in einer Abschluss- oder Chatabschlussanfrage ausgeführt.
  • Wenn die Anforderung den Zeichengrenzwert von Azure AI Content Safety überschreitet, wird ein 403 Fehler zurückgegeben.
  • Diese Richtlinie kann pro Richtliniendefinition mehrmals verwendet werden.

Beispiel

Das folgende Beispiel erzwingt Inhaltssicherheitsprüfungen für LLM-Anforderungen mithilfe des Azure AI Content Safety-Diensts. Die Richtlinie blockiert Anforderungen, die Sprache in der Hate Oder Violence Kategorie mit einem Schweregrad von 4 oder höher enthalten. Mit anderen Worten, der Filter lässt die Ebene 0-3 weiter, während die Ebenen 4-7 blockiert werden. Das Erhöhen des Schwellenwerts einer Kategorie erhöht die Toleranz und verringert möglicherweise die Anzahl der blockierten Anforderungen. Durch das Verringern des Schwellenwerts wird die Toleranz verringert und die Anzahl der blockierten Anforderungen erhöht. Das shield-prompt Attribut ist so festgelegt, dass true er auf adversariale Angriffe überprüft.

<policies>
    <inbound>
        <llm-content-safety backend-id="content-safety-backend" shield-prompt="true">
            <categories output-type="EightSeverityLevels">
                <category name="Hate" threshold="4" />
                <category name="Violence" threshold="4" />
            </categories>
        </llm-content-safety>
    </inbound>
</policies>

Weitere Informationen zum Arbeiten mit Richtlinien finden Sie hier: