Legacy API

Die Text Completions API ist eine Legacy-API. Zukünftige Modelle und Features erfordern die Verwendung der Messages API, und wir empfehlen eine Migration so bald wie möglich.

Die Anthropic API führt grundlegende Prompt-Bereinigung und -Validierung durch, um sicherzustellen, dass Ihre Prompts für Claude gut formatiert sind.

Beim Erstellen von Text Completions wird die API, falls Ihr Prompt nicht im angegebenen Format vorliegt, zunächst versuchen, ihn leicht zu bereinigen (zum Beispiel durch Entfernen von nachgestellten Leerzeichen). Dieses genaue Verhalten kann sich ändern, und wir empfehlen dringend, dass Sie Ihre Prompts mit den empfohlenen alternierenden \n\nHuman:- und \n\nAssistant:-Wendungen formatieren.

Anschließend validiert die API Ihren Prompt unter den folgenden Bedingungen:

  • Die erste Gesprächswendung im Prompt muss eine \n\nHuman:-Wendung sein
  • Die letzte Gesprächswendung im Prompt muss eine \n\nAssistant:-Wendung sein
  • Der Prompt muss weniger als 100,000 - 1 Token lang sein.

Beispiele

Die folgenden Prompts führen zu API-Fehlern:

Python
# Fehlende "\n\nHuman:"- und "\n\nAssistant:"-Wendungen
prompt = "Hello, world"

# Fehlende "\n\nHuman:"-Wendung
prompt = "Hello, world\n\nAssistant:"

# Fehlende "\n\nAssistant:"-Wendung
prompt = "\n\nHuman: Hello, Claude"

# "\n\nHuman:"-Wendung ist nicht die erste
prompt = "\n\nAssistant: Hello, world\n\nHuman: Hello, Claude\n\nAssistant:"

# "\n\nAssistant:"-Wendung ist nicht die letzte
prompt = "\n\nHuman: Hello, Claude\n\nAssistant: Hello, world\n\nHuman: How many toes do dogs have?"

# "\n\nAssistant:" hat nur ein "\n"
prompt = "\n\nHuman: Hello, Claude \nAssistant:"

Die folgenden werden derzeit akzeptiert und automatisch von der API bereinigt, aber Sie sollten sich nicht auf dieses Verhalten verlassen, da es sich in Zukunft ändern kann:

Python
# Kein führendes "\n\n" für "\n\nHuman:"
prompt = "Human: Hello, Claude\n\nAssistant:"

# Nachgestelltes Leerzeichen nach "\n\nAssistant:"
prompt = "\n\nHuman: Hello, Claude:\n\nAssistant: "