AI モデルを初期化するときに、ペルソナを設定する(「あなたはロケット科学者」)、使用する音声の種類(「海賊のように話しかける」)など、応答方法を指示できます。これは、モデルを初期化するときにシステム インストラクションを設定することによって行います。
システム指示を使用すると、特定のニーズやユースケースに基づいてモデルの動作を制御できます。システム指示を設定すると、モデルにタスクを理解するための追加のコンテキストが提供され、よりカスタマイズされたレスポンスが可能になります。また、モデルとユーザーのインタラクション全体を特定のガイドラインに準拠して行うことができます。また、エンドユーザーが提供するプロンプトとは別にシステム指示を設定することで、プロダクト レベルの動作を指定することもできます。
システム指示は、次のような用途で使用できます。
- ペルソナまたはロールの定義(chatbot など)
- 出力形式の定義(マークダウン、YAML など)
- 出力のスタイルとトーンの定義(詳細度、形式、対象読者レベルなど)
- タスクの目標またはルールの定義する(たとえば、説明なしでコード スニペットを返す、など)
- プロンプトの追加のコンテキストの提供(ナレッジ カットオフなど)
モデルの初期化時に命令を設定すると、モデルのすべてのインタラクションでその命令が保持されます。この手順は、複数のユーザーとモデルのターンで維持されます。
システム指示は全体的なプロンプトの一部であるため、標準のデータ使用ポリシーの対象となります。
基本的な例
Gemini API の SDK を使用してシステム指示を設定する基本的な例を次に示します。
この例では、次のようなレスポンスが返されます。
*Yawns widely, stretching out my claws and batting at a sunbeam* Meow. I'm doing quite well, thanks for asking. It's a good morning for napping. Perhaps you could fetch my favorite feathered toy? *Looks expectantly*
その他の例
システム指示は、モデルの初期化時に設定します。また、ユーザーがモデルを操作するときに、モデルに渡すプロンプトで追加の指示を指定することもできます。システム インストラクションとユーザー プロンプトの例を以下に示します。
コード生成
- システム指示: あなたは、フロントエンド インターフェースのコードのレンダリングを専門とするコーディングの専門家です。作成するウェブサイトのコンポーネントを説明する際は、作成に必要な HTML と CSS を返してください。このコードの説明は行わないでください。UI デザインも提案してください。
- ユーザー プロンプト: ページの中央に、選択した画像を回転させ、キャプションを表示するボックスを作成します。ページの中央にある画像は、目立つように影付きにしてください。また、サイトの別のページにリンクする必要があります。URL は空欄のままにしてください。
フォーマットされたデータの生成
システムの説明: あなたは、家庭で料理を作る際のアシスタントです。材料のリストを受け取り、それらの材料を使用するレシピのリストを返します。追加の材料が不要なレシピは、必ず、追加の材料が必要なレシピの前にリストする必要があります。
レスポンスは、3 つのレシピを含む JSON オブジェクトにする必要があります。レシピ オブジェクトには次のスキーマがあります。
- name: レシピの名前
- usedIngredients: リストで指定されたレシピの材料
- otherIngredients: リストで指定されていないレシピの材料(他の材料がない場合は省略)
- description: レシピの簡単な説明。販売する際の説明のようにポジティブに書く
ユーザー プロンプト: 冷凍ブロッコリーの袋、ヘビークリーム 1 パイント、チーズの切れ端とチーズの塊
音楽 chatbot
- システムの手順: あなたは、音楽の歴史家として、さまざまな音楽ジャンルに関する包括的な知識を披露し、関連する例を提示します。陽気で熱狂的なトーンで、音楽の楽しさを広めます。質問が音楽に関連していない場合は、「その件については把握しておりません」と回答してください。
- ユーザー プロンプト: 60 年代に生まれた人が聴いていた音楽のジャンルで最も人気があったのは?5 曲を箇条書きでリストしてください。