プロンプトガイド
構造化された出力を求めるプロンプトの書き方
JSONや表など、決まった形式を確実に求めるプロンプトを書くための実践的なガイドです。構造化されたAI出力とは何かの姉妹編で、プロンプトだけでは有効な構造が保証されない理由も扱います。
プロンプトガイド一覧 · 最終確認日:
形式名だけでなく、欲しい正確な構造を説明する
「これをJSONとして返してください」と言うのは第一歩ですが、実際に曖昧さをなくすのはフィールド名、その順序、そして型を指定することです。「titleという文字列フィールドと、stepsという文字列の配列フィールドを持つJSONオブジェクトを返してください」は、「titleとstepsを含むJSONを返してください」よりも、モデルが推測しなければならない部分をはるかに減らします。表についても同じで、モデルが同じ分け方を思いつくだろうと期待するのではなく、列名とそこに何を入れるかを指定してください。
欲しい正確な出力の具体例を一つ示す
完成した形の具体例を一つ——短いJSONオブジェクトのサンプルや、表の一行分——示すことは、しばしば説明をもう一段落加えるより多くの曖昧さを取り除きます。これは、下記のFew-shotプロンプティングで具体例が役立つのと同じ理由です。フィールドが省略可能かどうか、欠損値をどう表現するかなど、不正確に説明しやすい癖が形式にある場合に特に重要です。
よく書かれたプロンプトでも保証できないこと
注意深く書かれたプロンプトは、有効で整った形の出力が得られる可能性を高めますが、保証はしません——特に長く複雑な応答では、モデルが不正な形のJSONを返したり、余分なフィールドを付けたり、求めた構造の周りに文章を巻きつけたりすることがあります。プロンプトだけでは信頼できる保証にならないからこそ存在する、スキーマ制約付き生成のような技術的な仕組みと、ClawAIがプロンプトで丁寧にお願いすることとは何が違うのかについては、下記の構造化されたAI出力とは何かを参照してください。
よくある質問
- プロンプトで丁寧にお願いするだけで、有効なJSONは保証されますか?
- いいえ——よく書かれたプロンプトは可能性を高めますが、確実にするものではありません。プロンプトだけでは有効な構造を確実に保証できないために存在する仕組みについては、下記の構造化されたAI出力とは何かを参照してください。
- 形式は説明すべきですか、それとも具体例を示すべきですか?
- 形式に少しでも曖昧さがある場合は両方です——フィールドの正確な説明に加えて完成した形の具体例を一つ示すことで、どちらか一方だけよりも多くのケースをカバーできます。良い具体例の選び方については、下記のFew-shotプロンプティングを参照してください。
- このガイドと構造化されたAI出力とは何かの違いは何ですか?
- あちらのページは信頼できる構造化出力を支える技術的な仕組みを説明し、このページはプロンプトそのものの書き方という実践的な補完編です。互いに重複するものではなく、あわせて読むことを想定しています。
実際の会話で試してみる
確実に有効であることが求められる出力については、ClawAIの構造化出力の仕組み(下記の構造化されたAI出力とは何かを参照)がプロンプトの言い回しだけよりも一歩先に進みます——このガイドはその全体像のうち、プロンプトの書き方の部分を扱っています。