提示工程
預填 Claude 的回應以獲得更好的輸出控制
在使用 Claude 時,您有獨特的能力通過預填 Assistant
訊息來引導其回應。這種強大的技術允許您指導 Claude 的行動、跳過前言、強制特定格式如 JSON 或 XML,甚至幫助 Claude 在角色扮演場景中保持角色一致性。
在某些 Claude 表現不如預期的情況下,預填幾句話可以大大改善 Claude 的表現。一點點預填就能產生很大的影響!
如何預填 Claude 的回應
要預填,請在 Assistant
訊息中包含所需的初始文本(Claude 的回應將從 Assistant
訊息結束的地方繼續):
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-3-5-sonnet-20240620",
max_tokens=1024,
messages=[
{"role": "user", "content": "你最喜歡的顏色是什麼?"},
{"role": "assistant", "content": "作為一個 AI 助手,我沒有最喜歡的顏色,但如果我必須選擇的話,那會是綠色,因為"} # 在此預填
]
)
示例
示例 1:控制輸出格式並跳過前言
高級用戶提示:預填
{
強制 Claude 跳過前言並直接輸出 JSON 對象。這更乾淨、更簡潔,並且更容易被程序解析而無需額外處理。示例 2:在角色扮演場景中保持角色
角色扮演提示:預填一個方括號
[角色名稱]
可以提醒 Claude 保持角色,即使在更長和更複雜的對話中也是如此。當與 system
參數中的角色提示結合使用時,這特別有效。