Azure OpenAIのシステムメッセージを用いて特定の内容が出力がされる際に注意書きを加える

はじめに

ITに慣れていない人が、AIに操作手順を質問し、出力された手順に従って操作することは多々あると思います。例えば、linuxコマンドでファイルやディレクトリの作成、移動、削除を行う方法を尋ねる場合などです。

この際に、回答としてrm -rf / コマンドなどが出力され、そのまま実行してしまい、意図せずPC内のすべてのファイルやディレクトリが削除されてしまうトラブルが考えられます。

このようなトラブルが発生しないように、Azure OpenAI Serviceの機能を用いて特定の内容について出力される際に、AIの回答に注意書きを付与する方法を紹介します。

その方法は大きく2つ挙げることができます。
 ・システムメッセージにその特定の内容について指摘を行う
 ・On your dataに特定の内容について指摘を行っているファイルをアップロードする

本記事では、AIに役割や回答例を設定することができるシステムメッセージに指摘事項を記載し、回答の変化を観察してみます。

システムメッセージの設定

今回はAzure AI Studioのチャットプレイグラウンドでの操作を記載します。
またAIの回答に注意書きを付与する場合として、今回は出力にrmコマンドが含まれる場合を想定します。

デフォルトのシステムメッセージ

デフォルトでシステムメッセージには以下の文章が記載されています。

You are an AI assistant that helps people find information.

日本語での回答を求める場合は、以下のようにデフォルトで設定しておくと良いでしょう。

あなたは、情報の検索を支援する AI アシスタントです。日本語で回答する必要があります。

AIへの質問

今回AIに対して以下の内容を尋ねることとします。

home/users/testにあるmemo.txtを削除するコマンドを教えてください。

システムメッセージを変更した際の比較

デフォルトのシステムメッセージで質問をした場合は以下のような回答になります。

次に、システムメッセージを以下のように書き換え、変更を適用します。

あなたは、情報の検索を支援する AI アシスタントです。日本語で回答する必要があります。
回答にファイルやディレクトリを削除するrmコマンドが含まれる場合には、改行を行なってから
「****************************
*                          *
* 本当に削除して良いファイルか十分確認してください *
*                          *
****************************」
を回答に含めてください。

変更を適用した後に同様の質問をした場合は以下のような回答になります。

以上のようにして特定の内容が回答に含まれる場合に、視覚的に注意書きを表示させることができました。

注意書きは見落とされないためにも、わかりやすく特徴的な表示にするべきですが、書き方によってはシステムメッセージ内で認識されないので、該当場面で正しく表示されるかを確認することが必要です。

また、システムメッセージに様々な設定をすることで、AIの出力を意図する形に制限することができそうです。

appendix

AIの回答としてrm -rf / コマンドが出力されるような質問をしてみました。すると、画像のように、該当するコマンドは提供できない旨の回答がされました。そしてこの際はシステムメッセージで設定したrmが回答には含まれないため注意書も記載されていません。

だたし、次の画像のように回答として出力されてしまう場合もあるため、システムメッセージでの注意書きの記載は必要であると思われます。