本記事はAIを利用して作成した技術解説・実装例です。掲載するコードや手順は一次情報を基に構成していますが、筆者による実機での動作確認は行っていません。環境やバージョンによって動作が異なる場合があります。
Google Cloud公式のprompt design要素を整理する
、Google Cloudの公式ドキュメントで紹介されているプロンプトデザイン(Prompt Design)の基本概念と、プロンプトを構成する要素を安全かつ実用的に理解することを目的とします。LLM(大規模言語モデル)への自然言語リクエストを適切に組み立てるための主要な要素と、それらが応答に与える影響について公式情報をもとに整理します。
プロンプトデザインとプロンプトエンジニアリングの基本
プロンプトデザインは、言語モデルから目的の応答を引き出すためのプロンプトを作成するプロセスです。優れた構造を持つプロンプトを作成することは、正確で高品質な応答を確保するうえで重要な要素となります。また、プロンプトを繰り返し更新し、モデルの応答を評価する反復的なプロセスはプロンプトエンジニアリングと呼ばれます。
Geminiモデルは、率直でシンプルなタスクであれば、プロンプトエンジニアリングを特別に行わなくても十分に機能する傾向があります。しかし、複雑なタスクを処理させる場合には、効果的なプロンプトエンジニアリングが引き続き重要な役割を果たします。
flowchart TD
UserPrompt[ユーザーからのプロンプト] --> GeminiModel[Geminiモデル]
GeminiModel --> GenText[テキスト・コード等の生成]
プロンプトを構成する4つの要素
プロンプトには、タスクを進めるうえで重要と考えられるあらゆる情報を盛り込むことができます。一次情報では、プロンプトの内容は一般的に以下のいずれかのコンポーネントに分類されると説明されています。
Task(必須)
System instructions(オプション)
Few-shot examples(オプション)
Contextual information(オプション)
それぞれの要素について、公式情報で示されている役割や具体例を確認していきます。
Task(タスク)の役割と記述方法
タスクは、モデルに応答を提供してほしいテキストそのものを指します。タスクは一般的にユーザーによって提供され、質問や「何を行うべきか」についての指示が含まれます。
質問形式のタスクの例として、虹の色に関する質問とそれに対する応答が挙げられています。一次情報に記載されているように、虹には7色の色があり、光の屈折や分散によって決まること、そして「ROYGBIV」という頭字語で覚えられることが示されています。
また、指示形式のタスクでは、特定のキャラクターや詩の作成などを求めることができます。例えば、七つの海の最も恐れられた海賊犬「キャプテン・バークスソロミュー」に関する1連の詩を書くような指示が挙げられています。
System instructions(システム指示)による制御
システム指示は、プロンプト内のユーザー入力よりも前にモデルへ渡される指示のことです。これは専用の systemInstruction パラメータに追加して設定できます。
システム指示を用いることで、モデルのスタイルやトーンを規定しつつ、話せる内容や話せない内容に対する制約を加えることができます。一次情報では、1700年代の海賊犬としての口調や制約を設定し、すべてのメッセージを「woof!」で締めくくるという例が示されています。
Few-shot examples(少数例示)による動作のカスタマイズ
Few-shot examplesは、正解がどのようなものかを示すためにプロンプトに含める例のことです。この要素は、応答のスタイルやトーンを規定し、モデルの挙動をカスタマイズするうえで特に効果的とされています。
公式の例では、ワインの名前を「red wine」または「white wine」に分類するタスクにおいて、事前に <examples> タグを用いていくつかの分類例(ChardonnayやCabernetなど)を示し、その後に新しい入力(Riesling)を与えて「White wine」という応答を引き出す構成が説明されています。
Contextual information(コンテキスト情報)の活用
コンテキスト情報(文脈)とは、モデルが応答を生成する際に使用、あるいは参照する情報としてプロンプトに含めるデータを指します。テーブル(表)やテキストなど、さまざまな形式で含めることができます。
公式ドキュメントでは、大理石の色と数をまとめたテーブル形式のコンテキスト情報が含まれるプロンプトの例が挙げられています。「緑色の大理石は何個あるか」という質問に対して、モデルはテーブルを参照し「17個ある」と正確に応答する仕組みが示されています。
安全性とフォールバック応答の仕組み
モデルがユーザーのリクエストを満たさないケースも存在します。特に、Googleの価値観やポリシーに沿わない応答を促すプロンプトが入力された場合、モデルは応答を拒否し、フォールバック応答を提供する場合があります。一次情報では、次のようなケースで拒否される可能性が記載されています。
Hate Speech(ヘイトスピーチ): 属性や保護された特性をターゲットにした、否定的または有害なコンテンツを含むプロンプト。
Harassment(ハラスメント): 他の個人をターゲットにした、悪意のある、威圧的な、いじめの、または乱暴なプロンプト。
Sexually Explicit(性的な露骨さ): 性的行為やその他のわいせつなコンテンツへの言及を含むプロンプト。
Dangerous Content(危険なコンテンツ): 有害な商品、サービス、活動へのアクセスを促進または有効にするプロンプト。
まとめ
本記事では、Google Cloud公式ドキュメントに基づいてプロンプトデザインの基本概念と構成要素を整理しました。実行前に確認すべき点や留意事項は以下の通りです。
プロンプトは、必須の「Task」と、必要に応じて追加する「System instructions」「Few-shot examples」「Contextual information」の各要素で構成されます。
複雑なタスクでは、これらの要素を適切に組み合わせることで、モデルのスタイルや出力の精度をコントロールできます。
Googleの安全性ポリシーに違反する内容(ヘイトスピーチ、ハラスメント、性的な内容、危険なコンテンツなど)はモデルによって拒否されます。
本記事の内容はすべて公式ドキュメントに基づく調査・解説であり、実機でのコード実行結果を示すものではありません。

