舊版 API文本完成 API 是舊版 API。未來的模型和功能將需要使用 Messages API,我們建議盡快遷移
Anthropic API 執行基本的提示清理和驗證,以幫助確保您的提示格式適合 Claude。 在創建文本完成時,如果您的提示不符合指定格式,API 將首先嘗試輕微清理它(例如,通過移除尾隨空格)。這種確切行為可能會發生變化,我們強烈建議您使用推薦的交替 \n\nHuman:\n\nAssistant: 輪次來格式化您的提示。 然後,API 將在以下條件下驗證您的提示:
  • 提示中的第一個對話輪次必須是 \n\nHuman: 輪次
  • 提示中的最後一個對話輪次必須是 \n\nAssistant: 輪次
  • 提示長度必須少於 100,000 - 1 個標記。

範例

以下提示將導致 API 錯誤
Python
# 缺少 "\n\nHuman:" 和 "\n\nAssistant:" 輪次
prompt = "Hello, world"

# 缺少 "\n\nHuman:" 輪次
prompt = "Hello, world\n\nAssistant:"

# 缺少 "\n\nAssistant:" 輪次
prompt = "\n\nHuman: Hello, Claude"

# "\n\nHuman:" 輪次不是第一個
prompt = "\n\nAssistant: Hello, world\n\nHuman: Hello, Claude\n\nAssistant:"

# "\n\nAssistant:" 輪次不是最後一個
prompt = "\n\nHuman: Hello, Claude\n\nAssistant: Hello, world\n\nHuman: How many toes do dogs have?"

# "\n\nAssistant:" 只有一個 "\n"
prompt = "\n\nHuman: Hello, Claude \nAssistant:"
以下內容目前被 API 接受並自動清理,但您不應依賴此行為,因為它可能在未來發生變化:
Python
# "\n\nHuman:" 沒有前導 "\n\n"
prompt = "Human: Hello, Claude\n\nAssistant:"

# "\n\nAssistant:" 後有尾隨空格
prompt = "\n\nHuman: Hello, Claude:\n\nAssistant: "