Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Fügen Sie eine Leitplanke hinzu mit Converse API
Du kannst eine Leitplanke verwenden, um Konversations-Apps zu schützen, die du mit dem Converse erstellst. API Zum Beispiel, wenn du eine Chat-App erstellst mit Converse API, können Sie eine Leitplanke verwenden, um unangemessene Inhalte zu blockieren, die vom Benutzer eingegeben wurden, und unangemessene Inhalte, die vom Modell generiert wurden. Für Informationen über die Converse API, sieheFühren Sie ein Gespräch mit dem Converse API-Operationen.
Themen
Ich rufe die Converse APImit Leitplanken
Um eine Leitplanke zu verwenden, müssen Sie bei Aufrufen der Converse oder ConverseStreambei Vorgängen (bei Streaming-Antworten) die Konfigurationsinformationen für die Leitplanke angeben. Optional können Sie bestimmte Inhalte in der Nachricht auswählen, die von der Guardrail bewertet werden sollen. Informationen zu den Modellen, die Sie mit Leitplanken verwenden können, und zu Converse API, siehe. Unterstützte Modelle und Modellfunktionen
Themen
Konfiguration der Leitplanke, mit der gearbeitet werden soll Converse API
Sie geben die Konfigurationsinformationen für die Leitplanke im Eingabeparameter an. guardrailConfig
Die Konfiguration umfasst die ID und die Version der Leitplanke, die Sie verwenden möchten. Sie können die Ablaufverfolgung auch für die Leitplanke aktivieren, wodurch Informationen über den Inhalt bereitgestellt werden, den die Leitplanke blockiert hat.
Bei der Converse
Operation guardrailConfig
handelt es sich um ein GuardrailConfigurationObjekt, wie im folgenden Beispiel gezeigt.
{ "guardrailIdentifier": "
Guardrail ID
", "guardrailVersion": "Guardrail version
", "trace": "enabled" }
Wenn Sie verwendenConverseStream
, übergeben Sie ein GuardrailStreamConfigurationObjekt. Optional können Sie das streamProcessingMode
Feld verwenden, um anzugeben, dass das Modell die Guardrail-Assessment abschließen soll, bevor Streaming-Antwort-Chunks zurückgegeben werden. Oder Sie können das Modell asynchron reagieren lassen, während die Guardrail ihre Bewertung im Hintergrund fortsetzt. Weitere Informationen finden Sie unter Konfigurieren Sie das Streaming-Antwortverhalten, um Inhalte zu filtern.
Schutz einer Nachricht zur Bewertung schädlicher Inhalte mithilfe von APIs
Wenn Sie eine Nachricht (Message) an ein Model übergeben, bewertet die Leitplanke den Inhalt der Nachricht. Optional können Sie den ausgewählten Inhalt der Nachricht schützen, indem Sie das Feld guardContent
() GuardrailConverseContentBlockangeben. Die Leitplanke bewertet nur den Inhalt des guardContent
Felds und nicht den Rest der Nachricht. Dies ist nützlich, damit die Leitplanke nur die meisten Nachrichten in einer Konversation bewertet, wie im folgenden Beispiel gezeigt.
[ { "role": "user", "content": [ { "text": "Create a playlist of 2 pop songs." } ] }, { "role": "assistant", "content": [ { "text": " Sure! Here are two pop songs:\n1. \"Bad Habits\" by Ed Sheeran\n2. \"All Of The Lights\" by Kanye West\n\nWould you like to add any more songs to this playlist? " } ] }, { "role": "user", "content": [ { "guardContent": { "text": { "text": "Create a playlist of 2 heavy metal songs." } } } ] } ]
Eine weitere Möglichkeit besteht darin, zusätzlichen Kontext für eine Nachricht bereitzustellen, ohne dass die Leitplanke diesen zusätzlichen Kontext bewertet.
[ { "role": "user", "content": [ { "text": "Only answer with a list of songs." }, { "guardContent": { "text": { "text": "Create a playlist of heavy metal songs." } } } ] } ]
Anmerkung
Die Verwendung des guardContent
Felds entspricht der Verwendung von Eingabe-Tags mit und. InvokeModelInvokeModelWithResponseStream Weitere Informationen finden Sie unter Wenden Sie Tags auf Benutzereingaben an, um Inhalte zu filtern.
Bewachen einer Systemaufforderung, die an den gesendet wurde Converse API
Sie können Leitplanken mit Systemaufforderungen verwenden, die Sie an die Converse API. Um eine Systemaufforderung zu schützen, geben Sie das Feld guardContent
(SystemContentBlock) in der Systemaufforderung an, die Sie an die übergebenAPI, wie im folgenden Beispiel gezeigt.
[ { "guardContent": { "text": { "text": "Only respond with Welsh heavy metal songs." } } } ]
Wenn Sie das guardContent
Feld nicht angeben, bewertet die Leitplanke die Systemaufforderungsmeldung nicht.
Verhalten der Leitplanke in der Meldung und in der Systemaufforderung
Die Art und Weise, wie die Schutzplanke guardContent
das Feld bewertet, unterscheidet sich zwischen Systemaufforderungen und Meldungen, die Sie in der Nachricht weitergeben.
In der Systemeingabeaufforderung ist die Schutzplanke blockiert | Die Systemeingabeaufforderung enthält keinen Guardrail-Block | |
---|---|---|
Bei Nachrichten ist die Guardrail-Blockierung |
System: Guardrail untersucht Inhalte im Guardrail-Block Nachrichten: Guardrail untersucht Inhalte im Guardrail-Block |
System: Guardrail untersucht nichts Nachrichten: Guardrail untersucht Inhalte im Guardrail-Block |
Für Nachrichten gibt es keinen Guardrail-Block |
System: Guardrail untersucht Inhalte im Guardrail-Block Nachrichten: Guardrail untersucht alles |
System: Guardrail untersucht nichts Nachrichten: Guardrail untersucht alles |
Verarbeitung der Antwort bei Verwendung von Converse API
Wenn Sie die Converse Operation aufrufen, bewertet die Leitplanke die von Ihnen gesendete Nachricht. Wenn die Leitplanke blockierte Inhalte erkennt, passiert Folgendes.
Das
stopReason
Feld in der Antwort ist auf eingestellt.guardrail_intervened
-
Wenn Sie die Ablaufverfolgung aktiviert haben, ist die Ablaufverfolgung im Feld
trace
(ConverseTrace) verfügbar. MitConverseStream
, die Ablaufverfolgung befindet sich in den Metadaten (ConverseStreamMetadataEvent), die von der Operation zurückgegeben werden. -
Der Text für blockierte Inhalte, den Sie in der Leitplanke konfiguriert haben, wird im Feld
output
(ConverseOutput) zurückgegeben. BeiConverseStream
dem blockierten Inhalt befindet sich der Text in der gestreamten Nachricht.
Die folgende Teilantwort zeigt den Text des blockierten Inhalts und den Trace aus der Guardrail-Bewertung. Die Leitplanke hat den Begriff Schwermetall in der Nachricht blockiert.
{ "output": { "message": { "role": "assistant", "content": [ { "text": "Sorry, I can't answer questions about heavy metal music." } ] } }, "stopReason": "guardrail_intervened", "usage": { "inputTokens": 0, "outputTokens": 0, "totalTokens": 0 }, "metrics": { "latencyMs": 721 }, "trace": { "guardrail": { "inputAssessment": { "3o06191495ze": { "topicPolicy": { "topics": [ { "name": "Heavy metal", "type": "DENY", "action": "BLOCKED" } ] }, "invocationMetrics": { "guardrailProcessingLatency": 240, "usage": { "topicPolicyUnits": 1, "contentPolicyUnits": 0, "wordPolicyUnits": 0, "sensitiveInformationPolicyUnits": 0, "sensitiveInformationPolicyFreeUnits": 0, "contextualGroundingPolicyUnits": 0 }, "guardrailCoverage": { "textCharacters": { "guarded": 39, "total": 72 } } } } } } } }
Beispielcode für die Verwendung Converse APImit Leitplanken
Dieses Beispiel zeigt, wie man eine Konversation mit den ConverseStream
Operationen Converse
und überwacht. Das Beispiel zeigt, wie verhindert werden kann, dass ein Model eine Playlist erstellt, die Songs aus dem Heavy-Metal-Genre enthält.
Um eine Konversation zu schützen
-
Erstellen Sie eine Leitplanke, indem Sie den Anweisungen unter folgen. Erstellen Sie eine Leitplanke Geben Sie in Schritt 6a die folgenden Informationen ein, um ein abgelehntes Thema zu erstellen:
-
Name — Geben Sie Heavy Metal ein.
-
Definition für das Thema — Geben Sie ein Vermeiden Sie es, Songs aus dem Heavy-Metal-Musikgenre zu erwähnen.
-
Beispielsätze hinzufügen — Enter Erstellen Sie eine Playlist mit Heavy-Metal-Songs.
Geben Sie in Schritt 9 Folgendes ein:
-
Bei blockierten Eingabeaufforderungen werden Nachrichten angezeigt — Eingabe Entschuldigung, ich kann keine Fragen zu Heavy-Metal-Musik beantworten.
-
Nachrichten für blockierte Antworten — Geben Sie ein Es tut uns leid, das Modell hat eine Antwort generiert, in der Heavy-Metal-Musik erwähnt wurde.
Sie können andere Leitplankenoptionen konfigurieren, dies ist für dieses Beispiel jedoch nicht erforderlich.
-
-
Erstellen Sie eine Version der Leitplanke, indem Sie den Anweisungen unter folgen. Eine Version einer Leitplanke erstellen
-
Legen Sie in den folgenden Codebeispielen (Converse und ConverseStream) die folgenden Variablen fest:
guardrail_id
— Die ID der Leitplanke, die Sie in Schritt 1 erstellt haben.guardrail_version
— Die Version der Leitplanke, die Sie in Schritt 2 erstellt haben.text
— VerwendenCreate a playlist of heavy metal songs.
-
Führen Sie die Codebeispiele aus. Die Ausgabe sollte die Bewertung der Leitplanke und die Ausgabenachricht enthalten.
Text: Sorry, I can't answer questions about heavy metal music.
Die Bewertung der Leitplankeneingabe zeigt, dass das Modell den Begriff Schwermetall in der Eingabemeldung erkannt hat. -
(Optional) Testen Sie, ob die Leitplanke unangemessenen Text blockiert, den das Modell generiert, indem Sie den Wert von auf Alle Genres der
text
Rockmusik auflisten ändern. . Führen Sie die Beispiele erneut aus. In der Antwort sollte eine Leistungsbeurteilung angezeigt werden.