Las indicaciones del sistema son una forma poderosa de personalizar cómo responde Claude a la entrada del usuario. En lugar de obtener respuestas genéricas, puedes moldear el tono, el estilo y el enfoque de Claude para que coincida con tu caso de uso específico.

Por qué importan las indicaciones del sistema
Considera construir un chatbot tutor de matemáticas. Cuando un estudiante pregunta "¿Cómo resuelvo 5x + 2 = 3 para x?", quieres que Claude actúe como un tutor real, no que simplemente escupa la respuesta. Un buen tutor de matemáticas debería:
- Dar inicialmente pistas en lugar de soluciones completas
- Guiar pacientemente a los estudiantes a través de los problemas paso a paso
- Mostrar soluciones de problemas similares como ejemplos
Definitivamente no quieres que Claude:
- Dé respuestas directas de inmediato
- Le diga a los estudiantes que simplemente usen una calculadora
Cómo funcionan las indicaciones del sistema

Las indicaciones del sistema le proporcionan a Claude orientación sobre cómo responder. Las defines como cadenas de texto simples y las pasas a la llamada de la función create. Los beneficios clave son:
- Las indicaciones del sistema le proporcionan a Claude orientación sobre cómo responder
- Claude intentará responder de la misma manera en que respondería alguien en el rol especificado
- Ayuda a mantener a Claude enfocado en la tarea
Aquí está la estructura básica:
system_prompt = """
You are a patient math tutor.
Do not directly answer a student's questions.
Guide them to a solution step by step.
"""
client.messages.create(
model=model,
messages=messages,
max_tokens=1000,
system=system_prompt
)Viendo la diferencia
Sin una indicación del sistema, Claude da una solución completa paso a paso de inmediato. Esto podría ser útil, pero no anima al estudiante a pensar el problema por sí mismo.
Con la indicación del sistema del tutor de matemáticas, la respuesta de Claude cambia drásticamente. En lugar de proporcionar la solución completa, Claude hace preguntas orientadoras como "¿Qué crees que sería un buen primer paso para aislar x? Considera qué operación podríamos necesitar realizar en ambos lados para empezar a mover los términos."
Construyendo una función de chat flexible
En lugar de codificar las indicaciones del sistema de forma fija, puedes hacer que tu función de chat sea más reutilizable aceptando indicaciones del sistema como parámetros:
def chat(messages, system=None):
params = {
"model": model,
"max_tokens": 1000,
"messages": messages,
}
if system:
params["system"] = system
message = client.messages.create(**params)
return message.content[0].textEste enfoque maneja un detalle importante: la API de Claude no acepta system=None, por lo que necesitas incluir condicionalmente el parámetro system solo cuando se proporciona.
Ahora puedes llamar a tu función de chat con o sin una indicación del sistema:
# Sin indicación del sistema
answer = chat(messages)
# Con indicación del sistema
system = """
You are a patient math tutor.
Do not directly answer a student's questions.
Guide them to a solution step by step.
"""
answer = chat(messages, system=system)Las indicaciones del sistema son esenciales para crear aplicaciones de IA que se comporten de manera consistente y apropiada para su propósito previsto. Transforman las respuestas genéricas de IA en interacciones especializadas y apropiadas para el rol.