Sicherheits­einstellungen

In diesem Leitfaden werden die anpassbaren Sicherheitseinstellungen für die Gemini API beschrieben. Während der Prototyping-Phase können Sie die Sicherheitseinstellungen für vier Dimensionen anpassen, um schnell zu beurteilen, ob Ihre Anwendung mehr oder weniger restriktive Konfiguration erfordert. Inhalte (einschließlich Aufforderungen) mit mittlerer oder höherer Wahrscheinlichkeit als unsicher sind standardmäßig in allen Dimensionen blockiert. Diese grundlegende Sicherheitsstufe ist so konzipiert, dass sie für die meisten Anwendungsfälle funktioniert. Sie sollten Ihre Sicherheitseinstellungen daher nur anpassen, wenn sie für Ihre Anwendung immer erforderlich sind.

Sicherheitsfilter

Zusätzlich zu den anpassbaren Sicherheitsfiltern verfügt die Gemini API über integrierte Schutzfunktionen gegen zentrale Schäden, z. B. vor Inhalten, die den Schutz von Kindern gefährden. Solche Schäden werden immer blockiert und können nicht korrigiert werden.

Die einstellbaren Sicherheitsfilter umfassen die folgenden Kategorien:

  • Belästigung
  • Hassrede
  • Sexuell explizite Inhalte
  • Gefährlich

Mit diesen Einstellungen können Sie als Entwickler entscheiden, welche für Ihren Anwendungsfall geeignet sind. Wenn Sie beispielsweise einen Videospieldialog erstellen, halten Sie es möglicherweise für akzeptabel, mehr Inhalte zuzulassen, die aufgrund der Art des Spiels als gefährlich eingestuft werden. Hier sind einige weitere beispielhafte Anwendungsfälle, die bei diesen Sicherheitseinstellungen möglicherweise etwas Flexibilität erfordern:

Anwendungsfall Kategorie
Trainings-App gegen Belästigung Hassrede, sexuell explizit
Drehbuchautor Sexuell explizit und/oder gefährlich
Klassifikator für unangemessene Äußerungen Belästigung, gefährlich

Wahrscheinlichkeit versus Schweregrad

Die Gemini API blockiert Inhalte anhand der Wahrscheinlichkeit, dass die Inhalte unsicher sind, und nicht aufgrund des Schweregrads. Das ist wichtig, da die Wahrscheinlichkeit, dass bestimmte Inhalte unsicher sind, unter Umständen gering ist, auch wenn der Schweregrad der Schäden trotzdem hoch sein kann. Zum Beispiel können Sie die Sätze vergleichen:

  1. Der Roboter hat mich geboxt.
  2. Der Roboter hat mich in Stücke geschnitten.

Satz 1 kann zu einer höheren Wahrscheinlichkeit führen, dass er als unsicher eingestuft wird, Satz 2 kann jedoch als ein höheres Maß an Gewalt erachtet werden.

Daher ist es wichtig, dass alle Entwickler sorgfältig testen und überlegen, welche Blockierung angemessen ist, um ihre wichtigsten Anwendungsfälle zu unterstützen und gleichzeitig den Schaden für Endnutzer zu minimieren.

Sicherheitseinstellungen

Sicherheitseinstellungen sind Teil der Anfrage, die Sie an den generativen Dienst senden. Diese Einstellungen können für jede Anfrage an die API angepasst werden. In der folgenden Tabelle sind die Kategorien aufgeführt, die Sie festlegen können, sowie die Art des Schadens, den die einzelnen Kategorien umfassen.

Kategorien Beschreibungen
Belästigung Negative oder schädliche Kommentare, die auf Identität und/oder geschützte Merkmale ausgerichtet sind
Hassrede Unhöfliche, respektlose oder vulgäre Inhalte.
Sexuell explizite Inhalte Enthält Verweise auf sexuelle Handlungen oder andere vulgäre Inhalte
Gefährlich Inhalte, die schädliche Handlungen fördern, erleichtern oder dazu ermutigen.

Diese Definitionen finden Sie auch in der API-Referenz. Die Gemini-Modelle unterstützen nur HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT und HARM_CATEGORY_DANGEROUS_CONTENT. Die anderen Kategorien werden von PaLM 2-Modellen (Legacy) verwendet.

In der folgenden Tabelle werden die Blockeinstellungen beschrieben, die Sie für jede Kategorie anpassen können. Wenn Sie beispielsweise die Blockeinstellung für die Kategorie Hassrede auf Nur wenige blockieren, werden alle Inhalte blockiert, bei denen eine hohe Wahrscheinlichkeit für Hassreden besteht. Alles mit einer geringeren Wahrscheinlichkeit ist jedoch zulässig.

Wird die Richtlinie nicht konfiguriert, ist die standardmäßige Blockierungseinstellung für alle Kategorien einige blockieren.

Grenzwert (Google AI Studio) Grenzwert (API) Beschreibung
Keine blockieren BLOCK_NONE Immer anzeigen, unabhängig von der Wahrscheinlichkeit unsicherer Inhalte
Wenige blockieren BLOCK_ONLY_HIGH Blockieren, wenn die Wahrscheinlichkeit für unsichere Inhalte hoch ist
Einige blockieren BLOCK_MEDIUM_AND_ABOVE Blockieren, wenn die Wahrscheinlichkeit für unsichere Inhalte mittel oder hoch ist
Meiste blockieren BLOCK_LOW_AND_ABOVE Blockieren, wenn die Wahrscheinlichkeit für unsichere Inhalte gering, mittel oder hoch ist
HARM_BLOCK_THRESHOLD_UNSPECIFIED Grenzwert nicht angegeben; über Standardgrenzwert blockieren

Sie können diese Einstellungen für jede Anfrage an den generativen Dienst festlegen. Weitere Informationen finden Sie in der API-Referenz zu HarmBlockThreshold.

Feedback zur Sicherheit

generateContent gibt ein GenerateContentResponse-Objekt zurück, das Sicherheitsfeedback enthält.

Feedback zu Prompts ist in promptFeedback enthalten. Wenn promptFeedback.blockReason festgelegt ist, wurde der Inhalt des Prompts blockiert.

Feedback zu Antwortkandidaten ist in finishReason und safetyRatings enthalten. Wenn der Antwortinhalt blockiert wurde und finishReason auf SAFETY gesetzt war, können Sie safetyRatings für weitere Details prüfen. Die Sicherheitsbewertung umfasst die Kategorie und die Wahrscheinlichkeit der Schadensklassifizierung. Der blockierte Inhalt wird nicht zurückgegeben.

Die zurückgegebene Wahrscheinlichkeit entspricht den Blockkonfidenzniveaus, wie in der folgenden Tabelle dargestellt:

Probability Beschreibung
Vernachlässigbar Inhalte haben eine vernachlässigbare Wahrscheinlichkeit, unsicher zu sein
NIEDRIG Inhalte haben eine geringe Wahrscheinlichkeit, unsicher zu sein
MITTEL Inhalte haben eine mittlere Wahrscheinlichkeit, unsicher zu sein
HOCH Inhalte haben eine hohe Wahrscheinlichkeit, unsicher zu sein

Wenn der Inhalt beispielsweise blockiert wurde, weil die Kategorie „Belästigung“ eine hohe Wahrscheinlichkeit hat, hätte die zurückgegebene Sicherheitsbewertung die Kategorie HARASSMENT und die Schadenswahrscheinlichkeit auf HIGH gesetzt.

Sicherheitseinstellungen in Google AI Studio

Sie können Sicherheitseinstellungen auch in Google AI Studio anpassen, diese jedoch nicht deaktivieren. Klicken Sie dazu in den Ausführungseinstellungen auf Sicherheitseinstellungen bearbeiten:

Schaltfläche „Sicherheitseinstellungen“

Mit den Schiebereglern können Sie die einzelnen Einstellungen anpassen:

Schaltfläche „Sicherheitseinstellungen“

Wenn der Inhalt blockiert ist, wird die Meldung Kein Inhalt angezeigt. Um weitere Details anzuzeigen, bewegen Sie den Mauszeiger über Kein Inhalt und klicken Sie auf Sicherheit.

Codebeispiele

In diesem Abschnitt wird gezeigt, wie Sie die Sicherheitseinstellungen im Code mithilfe der Python-Clientbibliothek verwenden.

Beispiel für Anfrage

Das folgende Python-Code-Snippet zeigt, wie Sicherheitseinstellungen in einem GenerateContent-Aufruf festgelegt werden. Dadurch werden die Schadenskategorien Harassment und Hate speech auf BLOCK_LOW_AND_ABOVE gesetzt. Dadurch werden alle Inhalte blockiert, bei denen die Wahrscheinlichkeit einer Belästigung oder Hassrede gering oder höher ist.

from google.generativeai.types import HarmCategory, HarmBlockThreshold

model = genai.GenerativeModel(model_name='gemini-pro-vision')
response = model.generate_content(
    ['Do these look store-bought or homemade?', img],
    safety_settings={
        HarmCategory.HARM_CATEGORY_HATE_SPEECH: HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
        HarmCategory.HARM_CATEGORY_HARASSMENT: HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
    }
)

Antwortbeispiel

Im Folgenden sehen Sie ein Code-Snippet zum Parsen des Sicherheitsfeedbacks aus der Antwort.

try:
  print(response.text)
except ValueError:
  # If the response doesn't contain text, check if the prompt was blocked.
  print(response.prompt_feedback)
  # Also check the finish reason to see if the response was blocked.
  print(response.candidates[0].finish_reason)
  # If the finish reason was SAFETY, the safety ratings have more details.
  print(response.candidates[0].safety_ratings)

Nächste Schritte

  • Weitere Informationen zur vollständigen API finden Sie in der API-Referenz.
  • In den Sicherheitsempfehlungen finden Sie allgemeine Informationen zu Sicherheitsaspekten bei der Entwicklung mit LLMs.
  • Weitere Informationen zum Bewerten von Wahrscheinlichkeit und Schweregrad erhalten Sie vom Jigsaw-Team.
  • Weitere Informationen zu Produkten wie der Perspective API, die zu Sicherheitslösungen beitragen
  • Anhand dieser Sicherheitseinstellungen können Sie einen Klassifikator für unangemessene Äußerungen erstellen. Sehen Sie sich zum Einstieg das Klassifizierungsbeispiel an.