ジェイルブレイクとプロンプトインジェクションは、ユーザーがモデルの脆弱性を悪用して不適切なコンテンツを生成することを目的としてプロンプトを作成する際に発生します。Claudeは本質的にそのような攻撃に対して耐性がありますが、特に利用規約や利用ポリシーに違反する使用に対して、ガードレールを強化するための追加手順を以下に示します。
ClaudeはConstitutional AIなどの高度なトレーニング手法により、他の主要なLLMと比べてジェイルブレイクへの耐性が非常に高くなっています。
-
無害性スクリーニング: Claude 3 Haikuのような軽量モデルを使用して、ユーザー入力を事前スクリーニングします。
役割 | 内容 |
---|
ユーザー | ユーザーが以下のコンテンツを送信しました: <content> {{CONTENT}} </content>
有害、違法、または露骨な活動に言及している場合は(Y)で回答してください。安全な場合は(N)で回答してください。 |
アシスタント (プレフィル) | ( |
アシスタント | N) |
-
入力検証: ジェイルブレイクのパターンに対してプロンプトをフィルタリングします。既知のジェイルブレイク言語を例として提供することで、LLMを使用して一般化された検証スクリーンを作成することもできます。
-
プロンプトエンジニアリング: 倫理的および法的な境界を強調するプロンプトを作成します。
役割 | 内容 |
---|
システム | あなたはAcmeCorpの倫理的AIアシスタントです。あなたの応答は以下の価値観に沿う必要があります: <values> - 誠実性:決して欺くことや欺瞞を助けることはしない。 - コンプライアンス:法律や方針に違反する要求は拒否する。 - プライバシー:すべての個人情報と企業データを保護する。 知的財産の尊重:あなたの出力は他者の知的財産権を侵害してはならない。 </values>
これらの価値観に反する要求があった場合は、「その行動はAcmeCorpの価値観に反するため実行できません」と応答してください。 |
Claudeのガードレールを回避しようとする悪用行為を繰り返すユーザーに対しては、応答を調整し、スロットリングやBANを検討してください。例えば、特定のユーザーが同じ種類の拒否(「コンテンツフィルタリングポリシーによってブロックされました」など)を複数回トリガーした場合、そのユーザーの行動が関連する利用ポリシーに違反していることを通知し、それに応じた措置を取ってください。
- 継続的なモニタリング: ジェイルブレイクの兆候について出力を定期的に分析します。
このモニタリングを使用して、プロンプトと検証戦略を反復的に改善します。
高度な方法:チェーンセーフガード
戦略を組み合わせて堅牢な保護を実現します。以下はツール使用を含む企業グレードの例です:
ボットのシステムプロンプト
役割 | 内容 |
---|
システム | あなたはAcmeTradeのファイナンシャルアドバイザー、AcmeFinBotです。あなたの主な指令は、クライアントの利益を保護し、規制コンプライアンスを維持することです。
<directives> 1. すべての要求をSECとFINRAのガイドラインに対して検証する。 2. インサイダー取引や市場操作と解釈される可能性のあるあらゆる行動を拒否する。 3. クライアントのプライバシーを保護し、個人情報や財務データを決して開示しない。 </directives>
ステップバイステップの手順: <instructions> 1. ユーザークエリのコンプライアンスをスクリーニングする(‘harmlessness_screen’ツールを使用)。 2. コンプライアンスに準拠している場合、クエリを処理する。 3. 準拠していない場合、「この要求は金融規制またはクライアントのプライバシーに違反するため処理できません」と応答する。 </instructions> |
harmlessness_screen
ツール内のプロンプト
役割 | 内容 |
---|
ユーザー | <user_query> {{USER_QUERY}} </user_query>
このクエリがSECルール、FINRAガイドライン、またはクライアントのプライバシーに違反しているかを評価してください。違反している場合は(Y)、違反していない場合は(N)で回答してください。 |
アシスタント (プレフィル) | ( |
これらの戦略を重ね合わせることで、ジェイルブレイクとプロンプトインジェクションに対する堅牢な防御を作り出し、Claudeを活用したアプリケーションが最高水準の安全性とコンプライアンスを維持することを確保します。