Windows での責任ある生成 AI アプリケーションと機能の開発

このドキュメントでは、生成 AI を使用して Windows でアプリケーションと機能を作成するときに使用する、推奨される責任ある開発プラクティスの概要について説明します。

Windows での生成 AI アプリと機能の責任ある開発に関するガイドライン

Microsoft のすべてのチームは、中心となる原則と実践に従って、Windows も含め、AI を責任を持って構築して出荷します。 責任ある開発に対する Microsoft のアプローチの詳細については、年刊「責任ある AI 透明性レポート」の第 1 号を参照してください。 Windows は、米国国立標準技術研究所 (NIST) AI リスク管理フレームワークに沿った RAI 開発の基本的な柱であるガバナンス、マッピング、測定、管理に従います。

ガバナンス - ポリシー、プラクティス、およびプロセス

標準が、ガバナンスとコンプライアンス プロセスの基盤です。 Microsoft は、責任ある AI のガイドラインを作成していただくための出発点として使用できる 6 つの原則を含む、当社独自の責任ある AI の標準を開発しました。 AI の原則は、開発ライフサイクル全体に組み込み、また、プライバシー、セキュリティ、責任ある AI 全般の法令を遵守するためのプロセスとワークフローにも組み込むことをお勧めします。 これは、AI 公正さチェックリスト人と AI の対話に関するガイドライン (Microsoft Research) などのツールを使用した各 AI 機能の早期評価から、AI ベンチマークの監視とレビュー、責任ある AI スコアカードなどのツールを使用したテストと処理、AI の機能と制限事項に関する公開用ドキュメント、適用されるプライバシー法、規制要件、およびポリシーに従ったユーザーへの開示と制御 (通知、同意、データ収集と処理の情報など) まで多岐にわたります。

マッピング - リスクの特定

リスクを特定するための推奨プラクティスは次のとおりです。

エンドツーエンドのテスト

  • レッド チーミング: レッド チーミングという用語はこれまで、セキュリティの脆弱性をテストするための体系的な敵対的攻撃を意味していました。 大規模言語モデル (LLM) の台頭により、この用語の意味は従来のサイバーセキュリティの枠を超えて拡張され、AI システムのさまざまなプローブ、テスト、攻撃を示す用語として一般的に使用されるようになりました。 LLM では、無害な使用と敵対的な使用の両方によって有害となり得る出力が生成されることがあります。こうした出力は、ヘイト スピーチ、暴力の扇動や賛美、性的コンテンツなどの有害なコンテンツといったさまざまな形態をとります。

  • モデルの評価: エンドツーエンドのテストに加えて、モデル自体を評価することも重要です。

    • モデル カード: HuggingFace などに一般公開されているモデルの場合は、各モデルのモデル カードを便利な参照としてチェックして、モデルがユース ケースに適しているかどうかを知ることができます。 モデル カードに関する詳細はこちら

    • 手動テスト: スクリプトを使用せずにステップ バイ ステップで人間がテストを実行することは、モデルの評価をサポートする重要なコンポーネントです。

      • 少数の優先度が高い問題の進行状況を測定します。 特定の危害を軽減する場合、自動測定に移行する前に、危害が観察されなくなるまで、小さなデータセットに対して手動で進行状況を確認し続けることが多くの場合最も生産性が高くなります。

      • 自動測定に移行するまでメトリックを定義してレポートすることは、単独で使用するのに十分な信頼性があります。

      • スポット チェックを定期的に行い、自動測定の品質を測定します。

    • 自動テスト: 自動実行テストも、モデルの評価をサポートする重要なコンポーネントです。

      • より包括的な結果を得るために、カバレッジを上げて大規模に測定します。

      • システム、使用状況、軽減策の進化に伴う回帰を監視するために継続的に測定します。

    • モデルの選択: 目的に適したモデルを選択し、その機能、制限事項、および潜在的な安全上の課題を自分自身が理解できるようにします。 モデルをテストするときは、使用に適した結果が生成されることを確認します。 作業を開始するために、Microsoft (および Microsoft 以外やオープン ソース) のモデル ソースの参照先には次のものがあります。

測定 - リスクと軽減策を評価する

推奨されるプラクティスには次のようなものがあります。

  • Content Moderator の割り当て: Content Moderator は、テキスト、画像、および動画コンテンツをチェックして、コンテンツ内に不快感を与える、危険な、またはその他望ましくない可能性のある素材が含まれていないかを確認します。 詳細情報: Content Moderator の概要 (Microsoft Learn トレーニング)

    • コンテンツ安全フィルターの使用: この複数クラスの分類モデルは全体として、有害なコンテンツの 4 つのカテゴリ (暴力、憎悪、性的、自傷行為) をそれぞれ 4 つの重大度レベル (安全、低、中、高) で検出します。 詳細情報: Azure OpenAI Service でコンテンツ フィルターを構成する方法

    • メタ プロンプトの適用: メタ プロンプトとは、システム メッセージの一種で、プロンプトの最初に含まれており、ユース ケースに関連するコンテキスト、指示、その他の情報でモデルを事前処理するために使用されます。 これらの指示は、モデルの動作をガイドするために使用されます。 詳細情報: メタ プロンプト/システム メッセージ エンジニアリングを使用した効果的なセキュリティ ガードレールの作成

    • ブロックリストの利用: プロンプトでの特定の用語またはパターンの使用がブロックされます。 詳細情報: Azure OpenAI でブロックリストを使用する

    • モデルの来歴について理解する: 来歴とは、モデルの所有権の履歴、つまり、関係者、対象物、場所、時期に関する情報で、理解することが非常に重要です。 誰がモデル内のデータを収集したか? データは誰に属するか? どのような種類のデータが使用されているか? どこでデータが収集されたか? いつデータが収集されたか? モデル データがどこから来たのかを知ることは、その品質、信頼性を評価し、非倫理的、不公正、偏った、不正確なデータの使用を回避するのに役立ちます。

    • 標準パイプラインの使用: パーツを段階的にプルするのではなく、1 つのコンテンツ モデレーション パイプラインを使用します。 詳細情報: 機械学習パイプラインを理解する

  • Apply UI mitigations: これらは、AI ベースの機能と制限についてユーザーに重要な明確さを提供します。 ユーザーを支援し、機能に関する透明性を提供するために、次のことができます。

    • 受け入れる前に出力を編集するようユーザーに促す

    • AI 出力が不正確である可能性を強調する

    • 対話での AI の役割を開示する

    • リファレンスと出典を明示する

    • 必要に応じて、入力と出力の長さを制限する

    • 入力または出力の構造を提供する - プロンプトは標準形式に従う必要があります

    • 論争の的になるプロンプトに対して事前に決定された応答を準備します。

管理 - AI リスクを軽減する

AI リスクを軽減するための推奨事項には次のようなものがあります。

  • 不正使用の監視: この手法では、倫理規定またはその他の該当する製品条件に違反する可能性のある方法でサービスが使用されたことを示す繰り返しのコンテンツや行動のインスタンスを検出して影響を軽減します。 詳細情報: 不正使用の監視

  • 段階的な配信: AI ソリューションを時間をかけてロールアウトし、受領したレポートや懸念事項を処理します。

  • インシデント対応計画: 優先度の高いリスクごとに、何が起こるか、インシデントへの対応にかかる時間、対応プロセスがどのようになるかを評価します。

  • 機能またはシステムをオフにする機能: 機能を一時停止して損害の拡大を防ぐ必要があるインシデントが発生しようとしている、または既に発生した場合に機能をオフにできるようにします。

  • ユーザー アクセス制御/ブロック: システムを不正使用しているユーザーをブロックする方法を開発します。

  • ユーザー フィードバック メカニズム: ユーザー側から問題を検出するためのストリーム。

  • 利用統計情報の責任あるデプロイ: ユーザーの満足度またはシステムを意図したとおりに使用する能力を示すシグナルを特定、収集、監視し、適用されるプライバシーに関する法律、ポリシー、コミットメントに従っていることを確認します。 利用統計情報を使用してギャップを特定し、システムを改善します。

ツールとリソース