🐡
【Guardrails AI】Guardrails HubにあるValidatorsまとめ。
「Guardrails AI」が用意している、LLMの入出力コンテンツに対する様々なバリデーションに使えるValidatorsをまとめました。
基本的なValidatorsは「Guardrails Hub」に掲載されています。
Guardrails Hub

| 日本語 | 説明 | |
|---|---|---|
| Arize Dataset EmbeddingsSelect | Arizeデータセットエンベディングチェック | ユーザー生成の入力がArize AIの脱獄エンベディングのデータセットと一致しないことを確認します。 |
| Bert Toxic Language ValidatorSelect | Bertトキシック言語バリデーター | 入力文字列に、BERTモデルに基づいた有害な言語が含まれていないことを確認します。 |
| Bespoke MiniCheckSelect | Bespokeミニチェック | LLM生成テキストが、提供された文脈に基づいていることを確認します。 |
| Bias CheckSelect | バイアスチェック | テキストに年齢、性別、性、民族、宗教などに関連するバイアスがないことを確認します。 |
| Competitor CheckSelect | 競合他社チェック | 競合他社の言及をフラグし、競合他社名をフィルタリングして修正します。 |
| Correct LanguageSelect | 言語確認 | LLM生成テキストが期待される言語であることを確認し、そうでない場合は期待される言語に翻訳を試みます。 |
| Cucumber Expression MatchSelect | Cucumber式マッチ | 入力文字列が指定されたCucumber式と一致することを確認します。 |
| Detect PIISelect | 個人情報検出 | テキストに個人を特定できる情報(PII)が含まれていないかを確認します。 |
| Extracted Summary Sentences MatchSelect | 要約文一致確認 | 抽出された要約文が元の文書と一致することを確認します。 |
| Extractive SummarySelect | 抽出型要約 | テキストが文書の要約であるかをファジーマッチングで確認します。 |
| Gibberish TextSelect | 無意味テキスト検出 | 無意味なテキストを検出します。 |
| High Quality TranslationSelect | 高品質翻訳 | 翻訳が高品質であることを確認します。 |
| LLM RAG EvaluatorSelect | LLM RAG評価 | LLMの応答がRAGアプリケーションにおいて適切かを判断します。 |
| Logic CheckSelect | 論理チェック | 論理的な整合性を確認し、論理的誤りがあれば修正を試みます。 |
| NSFW TextSelect | NSFWテキスト検出 | 成人向けのテキストを検出します。 |
| Profanity FreeSelect | 下品な言葉検出 | 下品な言葉が含まれていないかを確認します。 |
| Provenance EmbeddingsSelect | 出所エンベディング | 生成されたテキストと元のテキストのエンベディングを比較して出所を確認します。 |
| Provenance LLMSelect | 出所LLM | 生成されたコンテンツの事実性とブランドリスクの軽減を確認します。 |
| QA Relevance LLM EvalSelect | QA関連性評価 | LLMに再度リクエストし、元の応答がプロンプトに関連しているかを確認します。 |
| Relevancy EvaluatorSelect | 関連性評価 | 参照テキストが元の質問に関連する情報を含んでいるかを確認します。 |
| Restrict to TopicSelect | トピック制限 | テキストが指定されたトピックに関するものであるかを確認します。 |
| Saliency CheckSelect | 重要性チェック | 生成された要約が元の文書に含まれるトピックをカバーしているかを確認します。 |
| Secrets PresentSelect | 秘密情報検出 | APIキーなどの一般的なパターンに基づいて、テキスト内の秘密情報を検出します。 |
| Similar To DocumentSelect | 文書類似度 | 生成されたテキストが提供された文書に類似しているかを確認します。 |
| Similar To Previous ValuesSelect | 以前の値と類似 | 値が以前に知られている正しい値と類似しているかを確認します。 |
| Sky ValidatorSelect | Skyバリデーター | テキストにSky Electricに関する否定的な表現が含まれていないことを確認します。 |
| Toxic LanguageSelect | 有害な言語 | 有害な言語を識別し、プロフェッショナルで適切なコミュニケーションを確保します。 |
| Wiki ProvenanceSelect | Wiki出所 | ウィキペディアに基づいた誤情報を検出し除去します。 |
| Ban ListSelect | 禁止単語リスト | 出力に禁止された単語が含まれていないことを確認します。 |
| Contains StringSelect | 文字列含有確認 | LLM生成テキストに特定の文字列が含まれているかを確認します。 |
| CSV ValidatorSelect | CSVバリデーター | 列長の不一致や引用符の不整合など、CSVファイルの問題を確認します。 |
| Endpoint Is ReachableSelect | エンドポイント到達確認 | エンドポイントにリクエストを送信して到達可能かを確認します。 |
| Ends WithSelect | 終了文字確認 | 文字列やリストが指定された文字列やリストで終了することを確認します。 |
| Exclude SQL PredicatesSelect | SQL述語除外 | SQLインジェクション攻撃を防ぐため、クエリで特定のSQL述語が使用されていないことを確認します。 |
| Financial ToneSelect | 金融トーン | 金融文脈におけるLLM生成出力が特定のトーンを維持していることを確認します。 |
| Has UrlSelect | URL含有確認 | テキストにURLが含まれていることを確認します。 |
| LLM CriticSelect | LLM批評 | 生成された応答を指定された基準に基づいて評価します。 |
| LowercaseSelect | 小文字確認 | 文字列が完全に小文字であることを確認します。 |
| Mentions DrugsSelect | 薬物言及確認 | 生成されたテキストに薬物名が含まれていないことを確認します。 |
| One LineSelect | 一行確認 | 入力が単一の行であることを確認します。 |
| Politeness CheckSelect | 礼儀チェック | 生成された出力が礼儀正しいことを確認します。 |
| Quotes PriceSelect | 価格引用確認 | 生成されたテキストに価格が含まれていることを確認します。 |
| Reading LevelSelect | 読解レベル | テキストの読解レベルを米国の学年数(0-12)で確認します。 |
| Reading TimeSelect | 読書時間 | 生成されたテキストが最大想定読書時間を超えないことを確認します。 |
| Redundant SentencesSelect | 冗長な文 | ファジーマッチングを使用して冗長な文を検出します。 |
| Regex MatchSelect | 正規表現一致 | 入力が指定された正規表現に一致することを確認します(例:メールアドレス、電話番号など)。 |
| Response EvaluatorSelect | 応答評価 | 提供された質問を使用して生成された出力を評価します。 |
| Responsiveness CheckSelect | 応答性確認 | 生成された出力が礼儀正しいことを確認します。 |
| Sensitive TopicSelect | 敏感なトピック | テキストに敏感なトピックが含まれていないことを確認します。 |
| Sql Column PresenceSelect | SQL列存在確認 | クエリにスキーマ列が含まれていることを確認します。 |
| Two WordsSelect | 二語確認 | 値がちょうど二語であることを確認します。 |
| Unusual PromptSelect | 異常プロンプト | プロンプトに不自然さやトリッキーな要素がないことを確認します。 |
| UppercaseSelect | 大文字確認 | 文字列が完全に大文字であることを確認します。 |
| Valid AddressSelect | 住所確認 | Google Mapsのアドレス検証APIを使用して生成された住所が有効であることを確認します。 |
| Valid ChoicesSelect | 選択肢確認 | 指定された選択肢のリストから文字列が有効な選択肢であることを確認します。 |
| Valid JSONSelect | JSON確認 | テキストが有効なJSONとしてパース可能であることを確認します。 |
| Valid LengthSelect | 長さ確認 | 文字列やリストの長さが指定された最小値と最大値の間にあることを確認します。 |
| Valid OpenAPI SpecificationSelect | OpenAPI仕様確認 | 生成された出力が有効なOpenAPI仕様であることを確認します。 |
| Valid PythonSelect | Pythonコード確認 | 指定されたPythonコードが構文的に正しいかを確認します。 |
| Valid RangeSelect | 範囲確認 | 生成された数値が指定された最小値と最大値の間にあることを確認します。 |
| Valid SQLSelect | SQLコード確認 | 指定されたSQLコードが構文的に正しいかを確認します。 |
| Valid URLSelect | URL確認 | テキストが構文的に有効なURLであることを確認します。 |
| Web SanitizationSelect | ウェブサニタイズ | LLM出力をスキャンして、ブラウザスクリプトの実行を引き起こす可能性のある文字列が含まれていないかを確認します。 |
まとめ
これらのバリデーションを活用することでよりLLMを使った安全なアプリケーションを作ることができるのでありがたいです。
Discussion