API Legacy

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

La API de Anthropic realiza una validación y sanitización básica del prompt para ayudar a garantizar que sus prompts estén bien formateados para Claude.

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

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

  • El primer turno de conversación en el prompt debe ser un turno \n\nHuman:
  • El último turno de conversación 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 = "Hola, mundo"

# Falta turno "\n\nHuman:"
prompt = "Hola, mundo\n\nAssistant:"

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

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

# El turno "\n\nAssistant:" no es el último
prompt = "\n\nHuman: Hola, Claude\n\nAssistant: Hola, mundo\n\nHuman: ¿Cuántos dedos tienen los perros?"

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

Los siguientes son actualmente aceptados y automáticamente sanitizados por la API, pero no debe confiar en este comportamiento, ya que puede cambiar en el futuro:

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

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