遗留 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: "