API Heredada

La API de Text Completions es una API heredada. Los modelos y características futuras requerirán el uso de la API de Messages, y recomendamos migrar tan pronto como sea posible.

La API de Anthropic realiza sanitización y validación básica de prompts para ayudar a asegurar que tus prompts estén bien formateados para Claude.

Al crear Text Completions, si tu prompt no está en el formato especificado, la API primero intentará sanitizarlo ligeramente (por ejemplo, eliminando espacios finales). Este comportamiento exacto está sujeto a cambios, y recomendamos encarecidamente que formatees tus prompts con los turnos alternados recomendados de \n\nHuman: y \n\nAssistant:.

Luego, la API validará tu prompt bajo las siguientes condiciones:

  • El primer turno conversacional en el prompt debe ser un turno \n\nHuman:
  • El último turno conversacional en el prompt debe ser un turno \n\nAssistant:
  • El prompt debe tener menos de 100,000 - 1 tokens de longitud.

Ejemplos

Los siguientes prompts resultarán en errores de API:

Python
# Faltan turnos "\n\nHuman:" y "\n\nAssistant:"
prompt = "Hello, world"

# Falta turno "\n\nHuman:"
prompt = "Hello, world\n\nAssistant:"

# Falta turno "\n\nAssistant:"
prompt = "\n\nHuman: Hello, Claude"

# El turno "\n\nHuman:" no es el primero
prompt = "\n\nAssistant: Hello, world\n\nHuman: Hello, Claude\n\nAssistant:"

# El turno "\n\nAssistant:" no es el último
prompt = "\n\nHuman: Hello, Claude\n\nAssistant: Hello, world\n\nHuman: How many toes do dogs have?"

# "\n\nAssistant:" solo tiene un "\n"
prompt = "\n\nHuman: Hello, Claude \nAssistant:"

Los siguientes son actualmente aceptados y sanitizados automáticamente por la API, pero no deberías depender de este comportamiento, ya que puede cambiar en el futuro:

Python
# Sin "\n\n" inicial para "\n\nHuman:"
prompt = "Human: Hello, Claude\n\nAssistant:"

# Espacio final después de "\n\nAssistant:"
prompt = "\n\nHuman: Hello, Claude:\n\nAssistant: "