【ぷろんぷとてんぷれーと】
プロンプトテンプレート とは?
公開:
💡 AIへの指示を、差し替え欄のあるひな形に
プロンプトテンプレートは、AIへの指示の固定部分と、質問などを差し込む欄を分けたひな形。同じ形式の指示を繰り返し組み立てるために使います。
ペンギン先生、毎回「この文章を要約して」って書くのが大変だよ。
プロンプトテンプレートで「次の文章を要約してください」と差し込み欄を用意しておくと、文章だけを入れ替えて指示を組み立てられるよ。
AIが空欄を埋めるの?
テンプレートにしておけば、変な指示も防げる?
人が作ったひな形を、そのまま読み込んでいい?
使うテンプレートエンジンによるけれど、信頼できない式を実行するのは危険だよ。LangChainの公式実装でも、外部由来のJinja2テンプレートは受け入れないよう注意している。テンプレートと単なる入力データを混同しないことが大切だね。
もっと詳しく知りたい人へ
プロンプトインジェクションとテンプレートインジェクションは同じ?
異なります。前者は主にAIが入力中の悪意ある指示に影響される問題、後者はテンプレートエンジンが式などを解釈する段階の問題です。両方が関係するシステムもあるため、AIへの指示管理だけでアプリ側の式評価まで安全になったとは考えません。
まとめ:ざっくりこれだけ覚えればOK!
「プロンプトテンプレート」って出てきたら「AIへの指示を、固定部分と差し込み欄に分けたひな形」と思えばだいたいOK!
📖 おまけ:英語の意味
「Prompt Template」 = プロンプトのひな形
💬 Templateはひな形という意味。毎回同じ指示を書き直す代わりに、必要な箇所だけを差し替えるんだよ。