Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

Prompt engineering para programación, Unidad 4 — Prompts para explicar código, 4.1 — Lectura asistida ·

Explicación por bloques

Explicación por bloques

Introducción

La explicación por bloques es una técnica esencial para garantizar que el código generado por modelos de lenguaje (LLMs) sea comprensible y seguro. Esta técnica implica dividir el código en segmentos más pequeños o "bloques" antes de su ejecución. Esto permite al programador entender la funcionalidad del código a través de una serie de pasos detallados, facilitando así la depuración y el mantenimiento.

Explicación principal

La explicación por bloques es especialmente útil cuando se trabaja con modelos de lenguaje que pueden producir grandes cantidades de código en un solo intento. Dividir el código en bloques permite:

  1. Comprensión del flujo: Al dividir el código, se puede seguir fácilmente la secuencia de ejecución y cómo los distintos bloques interactúan entre sí.
  2. Identificación de errores: Los errores pueden ser más fáciles de identificar y corregir cuando están contenidos en un bloque específico del código.
  3. Mantenimiento: El mantenimiento es más sencillo si el código está dividido en bloques, ya que se puede actualizar cada bloque sin afectar al resto del programa.

Ejemplo

Consideremos la siguiente función en Python:

def calcular_total_iva(monto, iva):
    subtotal = monto * (1 + iva / 100)
    total = subtotal - monto
    return total

Explicación por bloques:

  • Bloque 1: subtotal = monto * (1 + iva / 100)
  • Calcula el subtotal que incluye el IVA.
  • Bloque 2: total = subtotal - monto
  • Calcula la cantidad total a pagar, que es el subtotal menos el monto original.

Errores típicos / trampas

  1. Erros de lógica en los bloques: A menudo, los errores pueden ocultarse dentro de un bloque, lo que dificulta su identificación.
  2. Suposiciones implícitas no documentadas: Si el código hace suposiciones sobre datos o condiciones que no están documentadas explícitamente, puede llevar a errores difíciles de diagnosticar.
  3. Bloques demasiado grandes: Los bloques grandes pueden hacer que sea difícil seguir la lógica y identificar errores. Es importante mantener los bloques lo más pequeños posible.

Checklist accionable

  1. Identifica todos los bloques del código: Divide el código en segmentos lógicos.
  2. Documenta cada bloque: Proporciona una descripción clara de lo que hace cada bloque.
  3. Verifica la lógica en cada bloque: Asegúrate de que la lógica dentro de cada bloque sea correcta y funcione como esperado.
  4. Prueba manualmente cada bloque: Realiza pruebas unitarias y de integridad para asegurarte de que cada bloque funciona correctamente.
  5. Comprueba las suposiciones implícitas: Asegúrate de que todas las suposiciones implícitas en el código estén documentadas y sean válidas.

Cierre

La explicación por bloques es una técnica invaluable para la programación asistida por IA, ya que facilita la comprensión del código generado. Al seguir los pasos descritos en este artículo, se puede reducir significativamente el tiempo de depuración y el riesgo de errores.

Siguientes pasos

  • Refactorización: Utiliza prompts para refactorizar el código en bloques más pequeños si es necesario.
  • Seguridad: Asegúrate de que los prompts incluyan validaciones y verificaciones adecuadas para evitar inyecciones o manipulación de datos.
  • Documentación: Documenta cada bloque con una descripción clara y la lógica detrás del mismo, lo cual facilitará el mantenimiento futuro.

Contacto

Indica tu objetivo (ChatGPT, RAG, agentes, automatización) y tu stack (web/backend).