提示工程
控制輸出格式(JSON 模式)
指定所需的格式
控制 Claude 輸出的最簡單方法之一是直接說明您想要的格式。Claude 可以理解並遵循與格式相關的指示,並生成以下格式的輸出:
- JSON
- XML
- HTML
- Markdown
- CSV
- 自定義格式
例如,如果您希望 Claude 以 JSON 格式生成一首俳句,可以使用如下提示:
角色 | 內容 |
---|---|
用戶 | 請以 JSON 格式寫一首關於貓的俳句,使用 “first_line”、“second_line” 和 “third_line” 作為鍵。 |
Assistant (Claude 的回應) | { “first_line”: “柔軟毛茸茸”, “second_line”: “在溫暖陽光下小憩”, “third_line”: “心滿意足地呼嚕” } |
預填充 Claude 的回應
控制 Claude 輸出格式的另一種有效方法是預填充 Assistant
字段,填入所需格式的開頭部分。在處理 JSON 或 HTML 等結構化格式時,這種技術特別有用。
例如,要以 JSON 格式生成一個食譜:
角色 | 內容 |
---|---|
用戶 | 請以 JSON 格式生成一個巧克力曲奇的食譜。 |
Assistant (預填充) | { |
Assistant (Claude 的回應) | “title”: “巧克力曲奇”, “ingredients”: [ “2 1/4 杯中筋麵粉”, “1 茶匙小蘇打”, “1 茶匙鹽”, “1 杯無鹽奶油,室溫軟化”, “3/4 杯細砂糖”, “3/4 杯紅糖”, “1 茶匙香草精”, “2 個大雞蛋”, “2 杯半甜巧克力豆” ], “instructions”: [ “將烤箱預熱至 375°F (190°C),並在烤盤上鋪一層烘焙紙。“, “在一個中等大小的碗中,混合麵粉、小蘇打和鹽。放在一旁備用。“, “在一個大碗中,用電動攪拌器將奶油和糖打發至蓬鬆,約 2-3 分鐘。“, “逐一加入香草精和雞蛋,攪拌至完全混合。“, “逐漸將麵粉混合物加入奶油混合物中,攪拌至剛好混合。“, “拌入巧克力豆。“, “用湯匙將麵糰舀到準備好的烤盤上,每個間隔約 2 英寸。“, “烘烤 9-11 分鐘,直到邊緣呈金黃色。“, “讓曲奇在烤盤上冷卻 5 分鐘,然後轉移到鐵絲架上完全冷卻。” ], “yield”: “約 3 打曲奇” } |
通過預填充 JSON 的左大括號作為回應的開頭,您為 Claude 提供了一個明確的起點,讓它以所需的格式生成食譜。這也是另一種讓 Claude 跳過其友好前言文本的技巧。
提供示例
除了明確的指示外,提供所需輸出格式的示例也有助於 Claude 更好地理解您的要求。在包含示例時,請明確說明 Claude 應遵循所提供示例的格式(否則 Claude 可能會從提供的示例中提取其他細節,如內容或寫作風格)。
以下是一個展示此技巧的示例提示:
角色 | 內容 |
---|---|
用戶 | 你的任務是寫一首詩。以下是詩歌理想格式的一些示例: <poem> Title: “秋葉” Verse 1: 秋葉翩翩舞 在涼爽的微風中 繽紛的景象 Verse 2: 紅橙金三色 在冬日來臨前 為世界描繪美景 </poem> <poem> Title: “月夜” Verse 1: 月光投射影 穿過寧靜的花園 一處安詳所在 Verse 2: 星星在上閃爍 蟋蟀吟唱夜曲 大自然的搖籃曲 </poem> 現在,請按照上述示例的格式寫一首關於日落的詩。 |
Assistant (預填充) | <poem> |
Assistant (Claude 的回應) | Title: “日落交響曲” Verse 1: 火紅的太陽西沉 用奇妙的色彩繪天 一幅傑作誕生 Verse 2: 粉紅、紫羅蘭、赤紅 和諧地交融 白晝向夜晚問好 </poem> |
更好地控制輸出的提示
- 在指示中盡可能具體
- 在提示中使用清晰一致的格式
- 盡可能提供多個示例以強化所需的格式
- 嘗試不同的技巧組合,找出最適合您使用情況的方法
其他資源
- 提示工程技巧:探索其他優化提示和提升 Claude 性能的策略。
- Anthropic Cookbook:瀏覽一系列 Jupyter 筆記本,其中包含可複製的代碼片段,展示了使用 Claude 的高效和高級技術、集成和實現。
- 提示庫:從精選的各種任務和使用案例的提示中獲得靈感。