このトピックでは、大規模言語モデル (LLM) のリクエストにプロンプトを前置または追加できる AI プロンプトプラグインについて説明します。
実行属性
プラグイン実行ステージ: default stage
。プラグイン実行優先度: 450
。
構成の説明
名前 | データ型 | 必須 | デフォルト値 | 説明 |
| メッセージオブジェクトの配列 | いいえ | - | 初期入力の前に追加されるステートメント。 |
| メッセージオブジェクトの配列 | いいえ | - | 初期入力の後に追加されるステートメント。 |
次の表は、メッセージオブジェクトのパラメーターについて説明しています。
名前 | データ型 | 必須 | デフォルト値 | 説明 |
| 文字列 | はい | - | ロール。 |
| 文字列 | はい | - | メッセージ。 |
次のコードは、構成例を示しています。
prepend:
- role: system
content: "Please answer the question in English" // 英語で質問に答えてください
append:
- role: user
content: "After answering each question, try to ask a follow-up question" // 各質問に答えた後、フォローアップの質問を試みてください
上記の構成を使用してリクエストを開始します。
curl http://localhost/test \
-H "content-type: application/json" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "user",
"content": "Who are you?"
}
]
}'
次のコードは、プラグイン処理後の実際のリクエストの内容を示しています。
curl http://localhost/test \
-H "content-type: application/json" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "system",
"content": "Please answer the question in English" // 英語で質問に答えてください
},
{
"role": "user",
"content": "Who are you?"
},
{
"role": "user",
"content": "After answering each question, try to ask a follow-up question" // 各質問に答えた後、フォローアップの質問を試みてください
}
]
}'
geo-ip プラグインに基づいてユーザーの場所情報を伝えるための ai-prompt-decorator プラグインの有効化
ユーザーの場所情報を LLM リクエストに前置または追加するには、geo-ip プラグインと ai-prompt-decorator プラグインの両方をアクティブにする必要があります。同じリクエスト処理ステージでは、geo-ip プラグインは ai-prompt-decorator プラグインよりも高い優先度を持つ必要があります。 geo-ip プラグインは、まずユーザーの IP アドレスに基づいてユーザーの場所情報を計算し、リクエスト属性を使用して後続のプラグインに情報を転送します。たとえば、デフォルトステージでは、geo-ip プラグインの優先度は 1000 に設定され、ai-prompt-decorator プラグインの優先度は 500 に設定されます。
次のコードは、geo-ip プラグインの構成例を示しています。
ipProtocal: "ipv4"
次のコードは、ai-prompt-decorator プラグインの構成例を示しています。
prepend:
- role: system
content: "The current location information of the user is Country: ${geo-country}, Province: ${geo-province}, City: ${geo-city}" // ユーザーの現在の場所情報は、国: ${geo-country}、州: ${geo-province}、市: ${geo-city} です。
append:
- role: user
content: "After answering each question, try to ask a follow-up question" // 各質問に答えた後、フォローアップの質問を試みてください
上記の構成を使用してリクエストを開始します。
curl http://localhost/test \
-H "content-type: application/json" \
-H "x-forwarded-for: 87.254.207.100,4.5.6.7" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "user",
"content": "How is the weather today?"
}
]
}'
次のコードは、プラグイン処理後の実際のリクエストの内容を示しています。
curl http://localhost/test \
-H "content-type: application/json" \
-H "x-forwarded-for: 87.254.207.100,4.5.6.7" \
-d '{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "system",
"content": "The current location information of the user is Country: China, Province: Beijing, City: Beijing" // ユーザーの現在の場所情報は、国: 中国、州: 北京、市: 北京です。
},
{
"role": "user",
"content": "How is the weather today?"
},
{
"role": "user",
"content": "After answering each question, try to ask a follow-up question" // 各質問に答えた後、フォローアップの質問を試みてください
}
]
}'