本記事はAIを利用して作成した技術解説・実装例です。掲載するコードや手順は一次情報を基に構成していますが、筆者による実機での動作確認は行っていません。環境やバージョンによって動作が異なる場合があります。
発表・テーマ概要
Azure OpenAIにおけるプロンプトエンジニアリングの基本概念や構造化手法について、一次情報に記載されている内容を基に解説します。プロンプトはモデルに対してタスクを完了させるための指示や文脈を与える手段であり、モデルは確率的に次に続く最適なテキストを生成するという基本動作に基づいて応答します。
なぜ面白いのか
生成AIモデルの挙動は一見すると質問に対して回答しているように見えますが、内部ではトレーニングデータに基づき「次に続く確率が最も高い言葉」を出力しています。この仕組みを理解し、プロンプトの構成要素を適切に使い分けることで、意図した出力を得やすくなる点が興味深い特徴です。
WindowsやOfficeでの使い道
【Windows環境で確認予定】 業務においてWindows上のアプリケーションやMicrosoft OfficeとAzure OpenAIを組み合わせる際、構造化されたプロンプトを適用することが想定されます。例えば、定型的な文章作成やデータの要約において、指示や補助コンテンツを整理したプロンプトを用いることで、出力のブレを抑える活用方法が期待される結果として挙げられます。
今回試すこと
一次情報に示されているプロンプトの基本概念と構成要素の考え方を整理し、指示(Instructions)をはじめとする各要素の役割や組み合わせ方法について考察します。また、推論モデル(gpt-5やoシリーズなど)では推奨されない場合がある点についても言及します。
実験手順
一次情報に基づき、プロンプトの基本動作を確認する。
プロンプトの構成要素(Instructionsなど)の概念を整理する。
実際のAPI利用におけるChat Completion API(system、user、assistantの役割)とCompletion APIの違いを比較項目としてまとめる準備をする。
【実機確認前】として、提示された構造要素別の比較表の概念を確認する。
コードとコマンド
一次情報に記載されているプロンプトの例として、有名な文章の冒頭を入力した際の補完動作の傾向を把握するための概念を示します。
Prompt: Four score and seven years ago our Completion: fathers brought forth on this continent, a new nation, conceived in Liberty...
また、Chat Completion APIでは次のように役割(role)ごとに配列として送信される概念が示されています。
[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "プロンプトの構成要素について説明してください。"}
]
確認する結果
一次情報に記載されていますが、モデルはトレーニングデータとターゲットに基づいて、最も確率が高いと判定された応答を出力します。質問に対して専用のQ&Aコードパスを通っているわけではなく、回答が出力として続くことが最も自然であるため、結果として回答しているように見える点が確認できます。
分かったこと
本記事で取り上げた内容はすべて実機未確認です。一次情報から確認できた範囲として、プロンプトはユーザーとGPTモデルが対話するためのテキストであり、Completion APIとChat Completion APIでは入力の構造(辞書の配列や役割の定義など)に違いがあることが分かりました。また、プロンプトの構築はアートの側面があり、モデルごとに挙動が異なるため学習が必要であることも一次情報に記載されています。
実用上の注意
本記事の内容は実機での動作確認を行っていません。
推論モデル(gpt-5やoシリーズなど)では、ここで紹介するテクニックが推奨されない場合があります。
モデルごとに動作が異なるため、実際の環境やバージョンに合わせて検証を行う必要があります。実際に確認してください。
参考情報
source_title: Azure OpenAI prompt engineering concepts
source_url: https://learn.microsoft.com/en-us/azure/foundry/openai/concepts/prompt-engineering

コメント