プロンプトのテンプレート化
変数を特定して抽出することでプロンプトをテンプレート化する
プロンプトツールAPIは非公開の研究プレビュー段階にあります。非公開研究プレビューへの参加をリクエストする。
始める前に
プロンプトツールは、プロンプトを生成および改善するためのAPI群です。他のAPIとは異なり、これは実験的なAPIです:アクセスをリクエストする必要があり、他のAPIと同レベルの長期的なサポートは保証されていません。
これらのAPIはAnthropic Workbenchで利用可能なものと同様で、他のプロンプトエンジニアリングプラットフォームやプレイグラウンドでの使用を想定しています。
プロンプト改善ツールを使い始める
プロンプト生成APIを使用するには、以下が必要です:
- プロンプトツールAPIの非公開研究プレビューに参加していること
- SDKではなく、APIを直接使用すること
- ベータヘッダー
prompt-tools-2025-04-02
を追加すること
このAPIはSDKでは利用できません
プロンプトのテンプレート化
Headers
Optional header to specify the beta version(s) you want to use.
To use multiple betas, use a comma separated list like beta1,beta2
or specify the header multiple times for each beta.
Body
The prompt to templatize, structured as a list of message
objects.
Each message in the messages
array must:
- Contain only text-only content blocks
- Not include tool calls, images, or prompt caching blocks
Example of a simple text prompt:
[
{
"role": "user",
"content": [
{
"type": "text",
"text": "Translate hello to German"
}
]
}
]
Note that only contiguous user messages with text content are allowed. Assistant prefill is permitted, but other content types will cause validation errors.
The existing system prompt to templatize.
{
"system": "You are a professional English to German translator",
[...]
}
Note that this differs from the Messages API; it is strictly a string.
Response
The templatized prompt with variable placeholders.
The response includes the input messages with specific values replaced by variable placeholders. These messages maintain the original message structure but contain uppercase variable names in place of concrete values.
For example, an input message content like "Translate hello to German"
would be transformed to "Translate {{WORD_TO_TRANSLATE}} to {{TARGET_LANGUAGE}}"
.
{
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Translate {{WORD_TO_TRANSLATE}} to {{TARGET_LANGUAGE}}"
}
]
}
]
}
The input system prompt with variables identified and replaced.
If no system prompt was provided in the original request, this field will be an empty string.
Usage information
A mapping of template variable names to their original values, as extracted from the input prompt during templatization. Each key represents a variable name identified in the templatized prompt, and each value contains the corresponding content from the original prompt that was replaced by that variable.
Example:
"variable_values": {
"WORD_TO_TRANSLATE": "hello",
"TARGET_LANGUAGE": "German"
}
In this example response, the original prompt – Translate hello to German
– was templatized to Translate WORD_TO_TRANSLATE to TARGET_LANGUAGE
, with the variable values extracted as shown.
Was this page helpful?