在使用 Claude 部署基於 LLM 的應用程式時,您的 API 呼叫通常會包含兩種類型的內容:

  • 固定內容: 在多次互動中保持不變的靜態指令或上下文
  • 變數內容: 隨每個請求或對話而變化的動態元素,例如:
    • 使用者輸入
    • 用於檢索增強生成 (RAG) 的檢索內容
    • 對話上下文,如使用者帳戶歷史記錄
    • 系統生成的數據,如從其他獨立 Claude 呼叫中獲得的工具使用結果

提示詞模板將這些固定和變數部分結合在一起,為動態內容使用佔位符。在 Anthropic Console 中,這些佔位符用**{{雙括號}}**表示,使其易於識別並允許快速測試不同的值。


何時使用提示詞模板和變數

當您預期提示詞的任何部分會在另一個 Claude 呼叫中重複時(僅通過 API 或 Anthropic Consoleclaude.ai 目前不支援提示詞模板或變數),您應該始終使用提示詞模板和變數。

提示詞模板提供多項優勢:

  • 一致性: 確保多次互動中提示詞結構的一致性
  • 效率: 無需重寫整個提示詞即可輕鬆替換變數內容
  • 可測試性: 通過僅更改變數部分來快速測試不同輸入和邊界情況
  • 可擴展性: 隨著應用程式複雜度增加,簡化提示詞管理
  • 版本控制: 通過僅跟踪提示詞的核心部分(與動態輸入分開),輕鬆追踪提示詞結構的變化

Anthropic Console 大量使用提示詞模板和變數,以支援上述所有功能和工具,例如:

  • 提示詞生成器 決定您的提示詞需要哪些變數,並將它們包含在輸出的模板中
  • 提示詞改進器 接受您現有的模板(包括所有變數),並在輸出的改進模板中保留它們
  • 評估工具 通過分離提示詞模板的變數和固定部分,讓您輕鬆測試、擴展和追踪提示詞版本

提示詞模板示例

讓我們考慮一個將英文文本翻譯成西班牙文的簡單應用程式。由於您預期這段文本會在不同使用者或 Claude 呼叫之間變化,因此翻譯文本將是變數。這個翻譯文本可以從數據庫或使用者輸入中動態檢索。

因此,對於您的翻譯應用程式,您可能會使用這個簡單的提示詞模板:

Translate this text from English to Spanish: {{text}}

下一步