Escribir prompts efectivos para Bob
Maximiza el output de Bob escribiendo prompts efectivos.
IBM Bob es un asistente de programación y tecnología, pero Bob no puede leer tu mente. Bob depende de tus indicaciones para ofrecer buenos resultados. Aprender los conceptos básicos de la escritura de prompts mejora tu experiencia con Bob, te ahorra tiempo y te da lo que quieres.
¿Qué es un prompt?
Un prompt es un conjunto de instrucciones que le das a Bob para obtener el output que deseas. Un prompt puede ser una pregunta, una solicitud o un comando. Puede ser tan simple como "¿Cuál es la capital de Francia?" o tan complejo como "Escribe una función de Python que tome una lista de números y devuelva el promedio."
Piensa en el principio de desarrollo de software "garbage in, garbage out". Si le das a Bob un prompt vago o incompleto, es posible que obtengas una respuesta vaga o incompleta.
Cuando escribes prompts de mayor calidad, obtienes respuestas de mayor calidad. Un buen prompt es claro, específico y proporciona suficiente contexto para que Bob entienda lo que quieres.
Componentes de un prompt
Para escribir un prompt efectivo, debes incluir los siguientes componentes:
- Instrucción: Indica a Bob qué tarea debe realizar. La instrucción se escribe como un comando claro, como "Resume esta función de Python" o "Genera un SBOM para esta API." Las instrucciones sólidas reducen la ambigüedad y llevan a resultados más relevantes.
- Rol: Asigna a Bob un rol o persona específica para que adopte al generar la respuesta. Por ejemplo, podrías decir "Eres un ingeniero de software senior con experiencia en Python." Esto ayuda a Bob a adaptar su respuesta a la perspectiva de ese rol.
- Contexto: El contexto proporciona información adicional o detalles que dan forma a la respuesta de Bob. El contexto puede incluir una descripción de la situación, el tono, la audiencia o información clave que quieres incorporar. El contexto ayuda a Bob a mantenerse alineado con la tarea.
- Ejemplo: Los ejemplos incluyen uno o más ejemplos que demuestran el patrón, formato o tono deseado. Proporcionar ejemplos es especialmente útil cuando quieres que el output siga un estilo o estructura específica. Los ejemplos ayudan a Bob a interpretar qué significa una buena respuesta.
- Pistas: Una pista es un breve fragmento de texto que introduce el tipo de respuesta que deseas. Las pistas se colocan frecuentemente al final del prompt para orientar la generación del output de Bob en la dirección correcta.
A medida que perfecciones tus habilidades de escritura de prompts, puedes guardar tus prompts en un archivo para reutilizarlos y compartirlos con tu equipo.
Buenas prácticas para prompts
Las siguientes buenas prácticas pueden ayudarte a escribir prompts efectivos para Bob.
- Sé específico: Cuanto más específico sea tu prompt, mejor puede Bob entender lo que quieres. En lugar de preguntar "¿Cómo escribo una función de Python?", pregunta "¿Cómo escribo una función de Python que tome una lista de números y devuelva el promedio?"
- Proporciona contexto: Si tu prompt trata sobre un proyecto o base de código específico, proporciona algo de contexto al respecto. Esto ayuda a Bob a generar una respuesta que sea relevante para tu situación. Usa las menciones de contexto @ de Bob para referenciar archivos específicos.
- Divide las tareas: Como lo harías al refinar una tarea en tu backlog, divide las tareas complejas en pasos más pequeños y manejables. Esto puede ayudar a Bob a generar respuestas más precisas y enfocadas.
- Incluye ejemplos: Si estás añadiendo una nueva API, indica a Bob que revise APIs bien escritas en tu base de código para usarlas como ejemplos. También puedes incluir ejemplos en tu prompt para mostrarle a Bob el formato o estilo que deseas.
Escribir un prompt
En esta sección, escribirás un prompt vago para Bob y revisarás el output. Luego refinarás tu prompt basándote en las buenas prácticas para mejorar la calidad de la respuesta.
El objetivo es que Bob genere una función de Python que imprima la fecha y hora actuales en formato UTC. La función debe estar bien documentada e incluir manejo de errores.
Si la interfaz de chat está cerrada, ábrela haciendo clic en el icono de Bob junto a la barra de navegación o usa el atajo Option + Command + B (Mac) o Ctrl + Alt + B (Windows).

Selecciona Ask del selector de modo en la interfaz de chat.
Ingresa el siguiente prompt:
Write a Python function that prints the date and time.Bob generará una respuesta, pero es posible que no cumpla todos tus requisitos.
from datetime import datetime
def print_datetime():
now = datetime.now()
print(now.strftime("%Y-%m-%d %H:%M:%S"))Bob generó una función, pero es probable que no incluya manejo de errores o no esté en formato UTC.
Inicia un nuevo chat para limpiar la ventana de contexto.
Ahora, refina tu prompt para darle a Bob un rol e incluir instrucciones, ejemplos y contexto más específicos.
-
Añade un rol: Dale a Bob un rol para ayudarle a entender la perspectiva que debe adoptar al generar la respuesta. Por ejemplo, "Eres un ingeniero de software senior con experiencia en Python."
-
Añade instrucciones específicas: Sé claro sobre lo que quieres. Por ejemplo, "Escribe una función de Python 3 que imprima la fecha y hora actuales en formato UTC."
-
Añade contexto: Proporciona cualquier información adicional que pueda ayudar a Bob a generar una mejor respuesta. Por ejemplo, "La función debe estar bien documentada e incluir manejo de errores."
-
Ejemplo: Incluye un ejemplo de cómo quieres que sea el output. Si tienes ejemplos en tu base de código, puedes referenciarlos usando las menciones de contexto @ de Bob, o enlazar a ejemplos externos como documentación o fuentes autorizadas como Real Python.
You are a senior software engineer with expertise in Python 3. Write a Python 3 function that prints the current date and time in UTC format. The function should be well documented and include error handling, modeled after https://realpython.com/ref/best-practices/exception-handling/."""
utc_datetime.py — Utility for printing the current UTC date and time.
"""
from datetime import datetime, timezone
def print_utc_datetime() -> None:
"""Print the current date and time in UTC (ISO 8601 format).
Retrieves the current moment from the system clock, attaches UTC timezone
info, formats it as an ISO 8601 string, and writes it to stdout.
Returns:
None
Raises:
OSError: If the system clock cannot be read (e.g., hardware failure or
OS-level permission restrictions).
ValueError: If datetime formatting unexpectedly fails (e.g., year out
of the supported range).
Example:
>>> print_utc_datetime()
Current UTC date and time: 2025-07-15T13:42:00.123456+00:00
"""
try:
now_utc: datetime = datetime.now(tz=timezone.utc)
except OSError as exc:
# System clock is unavailable or inaccessible.
raise OSError("Failed to read the system clock.") from exc
try:
formatted: str = now_utc.isoformat()
except ValueError as exc:
# Extremely unlikely, but guard against out-of-range datetime values.
raise ValueError(
f"Failed to format the datetime object: {now_utc!r}"
) from exc
print(f"Current UTC date and time: {formatted}")
if __name__ == "__main__":
print_utc_datetime()La respuesta de Bob ahora debería estar más alineada con tus requisitos, demostrando la importancia de escribir prompts efectivos.
IBM SkillsBuild
IBM SkillsBuild es una plataforma de aprendizaje en línea gratuita que ofrece cursos y recursos para ayudarte a desarrollar tus habilidades en varios dominios tecnológicos, incluyendo IA y aprendizaje automático. Puedes encontrar cursos sobre cómo escribir prompts efectivos para asistentes de IA como Bob, así como otros temas relacionados con el desarrollo de software y la tecnología.
Para aprender más sobre la escritura de buenos prompts, realiza el curso Craft Precise Prompts for AI Models.
Próximos pasos
En este tutorial, aprendiste los componentes de un prompt efectivo y refinaste un prompt vago en uno que produce de forma confiable el output que deseas.
Avanza a Usar una skill para convertir un prompt bien escrito en un flujo de trabajo reutilizable y repetible que Bob puede aplicar automáticamente.
Iniciar un proyecto con /init y AGENTS.md
Proporcione a Bob contexto de proyecto persistente a través de conversaciones y modos con /init, que genera automáticamente archivos AGENTS.md.
Crear y usar skills
Crea un skill reutilizable que enseña a Bob un flujo de trabajo repetible para entradas de changelog, luego invócalo explícitamente y deja que Bob lo active automáticamente.