Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

Prompt engineering para programación, Unidad 3 — Prompts para generar código, 3.2 — Contexto de programación ·

Entorno y dependencias

Entorno y dependencias

Introducción

En la era de la inteligencia artificial asistida, un aspecto crucial para que los LLMs (Modelos de Lenguaje de Gran Escala) se comporten correctamente es entender el contexto en el que se encuentra nuestro código. El entorno y las dependencias son fundamentales para proporcionar a estos modelos una comprensión precisa del escenario en el que se está trabajando. En esta unidad, exploraremos cómo especificar correctamente el entorno y las dependencias en nuestros prompts de programación, con ejemplos prácticos e ilustraciones de errores comunes.

Explicación principal con ejemplos

Entorno de desarrollo

El entorno de desarrollo es donde se ejecuta nuestro código. Es importante indicar al LLM si estamos trabajando en un entorno local, una máquina virtual, o incluso en la nube. Esto es especialmente relevante cuando se trabaja con dependencias externas como bases de datos, servicios web o APIs.

Ejemplo:

# Prompt para un LLM
Entorno:
- Sistema operativo: Ubuntu 20.04
- IDE: VSCode
- Lenguaje: Python 3.8

Dependencias:
- pandas
- numpy
- requests

Dependencias

Las dependencias son librerías o módulos que nuestro código necesita para funcionar correctamente. Es fundamental especificarlas claramente en los prompts para que el LLM comprenda cuáles son las herramientas disponibles.

Ejemplo:

# Prompt para un LLM con dependencias específicas
Dependencias:
- numpy >= 1.20.0
- pandas >= 1.3.0
- matplotlib

Errores típicos / trampas

  1. Omitir las dependencias: No especificar correctamente las dependencias puede resultar en errores durante la ejecución del código, ya que el LLM no tendrá información sobre cuáles son las herramientas disponibles.
  1. Dependencias innecesarias: Incluir librerías innecesarias puede hacer que el código sea más complejo de entender y mantener. Es importante identificar solo las dependencias esenciales para evitar sobrecarga y posibles conflictos.
  1. Versiones incorrectas: Especificar versiones específicas de las dependencias asegura consistencia y previsibilidad en la ejecución del código, evitando problemas asociados a cambios inesperados en futuras actualizaciones de las librerías.

Checklist accionable

  1. Identifica el entorno de desarrollo: Comprueba si estás trabajando en un sistema operativo local o en una nube.
  2. Lista todas las dependencias necesarias: Asegúrate de incluir solo las herramientas que tu código necesita para funcionar.
  3. Especifica versiones específicas: Si es posible, especifica versiones concretas de las librerías para evitar problemas de incompatibilidad.
  4. Verifica la consistencia del entorno: Comprueba si el LLM tiene acceso a todas las dependencias que has indicado en tu prompt.
  5. Prueba manualmente: Realiza pruebas manuales para asegurarte de que el código funciona como esperas antes de depender completamente del LLM.

Cierre

Siguientes pasos

  • Implementa un sistema de verificación automática: Utiliza herramientas de análisis estático o integra pruebas unitarias en tu flujo de trabajo.
  • Mantén tus prompts actualizados: Asegúrate de actualizar tus prompts cada vez que cambien las dependencias del proyecto.
  • Documenta el entorno y dependencias: Mantén un registro claro y actualizado del entorno de desarrollo y las dependencias para facilitar la colaboración e integración en equipos.

Aprovecha al máximo los LLMs en tu proceso de programación asistida, asegurándote de proporcionarles un contexto preciso a través de prompts bien diseñados.

Contacto

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