1. Contenidos
1.1 ¿Qué es la IA generativa?
La inteligencia artificial generativa es un tipo de inteligencia artificial capaz de crear contenido nuevo a partir de una petición del usuario. Puede generar texto, código, imágenes, esquemas, resúmenes, explicaciones o ejemplos.
En programación, la IA generativa se utiliza principalmente para trabajar con texto y código. Por ejemplo, puede ayudarnos a explicar una función, proponer una solución, detectar errores, crear pruebas o mejorar la documentación de un proyecto.
Idea clave: La IA no sustituye al programador. Es una herramienta de apoyo. El programador sigue siendo responsable de entender, probar y validar el código.
Una herramienta de IA generativa no trabaja como una persona. No entiende el programa como lo haría un desarrollador experto. Su funcionamiento se basa en analizar el contexto recibido y generar una respuesta probable según los patrones aprendidos durante su entrenamiento.
1.2 Modelo de lenguaje
Un modelo de lenguaje es un sistema de inteligencia artificial entrenado para procesar y generar lenguaje natural. En nuestro caso, además de texto normal, también puede trabajar con lenguajes de programación como Java, JavaScript, HTML, CSS, SQL o Python.
Cuando escribimos una pregunta, el modelo analiza el texto y genera una respuesta. Esa respuesta puede ser una explicación, una lista de pasos, un fragmento de código, una corrección o una propuesta de mejora.
Ejemplo:
Pregunta:
Explícame qué hace este método Java como si estuviera empezando a programar.
Respuesta esperada:
Una explicación sencilla, paso a paso, indicando qué datos recibe, qué proceso realiza y qué devuelve.
Importante: Un modelo de lenguaje puede dar respuestas muy convincentes aunque sean incorrectas. Por eso siempre debemos comprobar sus respuestas.
1.3 Prompt
Un prompt es la instrucción, pregunta o petición que escribimos a una herramienta de inteligencia artificial. Es la forma principal de comunicarnos con ella.
Un buen prompt debe indicar con claridad qué queremos conseguir. En programación, suele ser útil incluir:
- El lenguaje de programación que estamos utilizando.
- El objetivo de la tarea.
- El código relacionado.
- El error que aparece, si lo hay.
- Las restricciones que debe cumplir la solución.
- El formato en el que queremos la respuesta.
Prompt poco útil:
No funciona. Arréglalo.
Prompt más útil:
Estoy programando en Java. Este método debería calcular el precio total de un pedido,
pero devuelve siempre 0. Explícame dónde está el error y propón una corrección.
No cambies el nombre del método ni de las variables.
Conclusión: Cuanto mejor sea el prompt, más útil será la respuesta. La IA necesita contexto para ayudar correctamente.
1.4 Respuesta o salida generada
La respuesta generada es el contenido que devuelve la IA después de recibir nuestro prompt. Puede tener distintos formatos:
- Una explicación teórica.
- Un fragmento de código.
- Una lista de pasos.
- Una tabla comparativa.
- Una propuesta de solución.
- Una revisión de errores.
La respuesta generada no debe aceptarse automáticamente como correcta. Debemos leerla, entenderla y comprobarla. En programación, esto significa ejecutar el código, probar diferentes casos y verificar que cumple el objetivo.
Regla práctica: Si no puedes explicar el código generado por la IA, todavía no deberías entregarlo como solución propia.
1.5 Token
Un token es una unidad de texto que utiliza el modelo para procesar la información. Un token puede ser una palabra completa, parte de una palabra, un signo de puntuación o un fragmento de código.
Por ejemplo, la frase:
Calcula el precio total.
puede dividirse internamente en varios tokens. El usuario no suele ver esta división, pero es importante porque los modelos tienen límites de cantidad de texto que pueden procesar.
En programación, los tokens pueden corresponder a palabras del lenguaje, nombres de variables, símbolos, llaves, paréntesis, operadores o fragmentos de comentarios.
| Texto | Posibles unidades procesadas | Comentario |
| precioTotal | precio / Total | Un nombre de variable puede dividirse en varias partes. |
| if (edad >= 18) | if / ( / edad / >= / 18 / ) | El código también se divide en unidades. |
| Hola mundo | Hola / mundo | En textos sencillos suele coincidir con palabras. |
Idea clave: Los tokens afectan a la cantidad de información que cabe en una conversación y, en algunas herramientas, también al coste de uso.
1.6 Ventana de contexto
La ventana de contexto es la cantidad máxima de información que una herramienta de IA puede tener en cuenta en una conversación o tarea concreta.
Incluye, por ejemplo:
- El prompt actual.
- Mensajes anteriores de la conversación.
- Fragmentos de código enviados.
- Archivos que la herramienta pueda leer.
- Instrucciones del usuario.
Si la conversación es muy larga o se envía demasiado código, puede ocurrir que parte de la información quede fuera del contexto. En ese caso, la IA puede olvidar detalles importantes o responder sin tener en cuenta todo el proyecto.
Ejemplo: Si al principio de una conversación indicamos que todas las variables deben estar en español, pero después enviamos muchas preguntas y mucho código, la herramienta puede dejar de aplicar esa norma si queda fuera de su contexto útil.
Buena práctica: En tareas largas, conviene recordar las restricciones importantes: lenguaje, nombres, estructura, normas de estilo y objetivo final.
1.7 Temperatura y creatividad
La temperatura es un parámetro que controla el grado de variedad o creatividad de las respuestas de un modelo. No todas las herramientas permiten modificarla directamente, pero el concepto ayuda a entender por qué una IA puede responder de forma diferente ante preguntas parecidas.
- Temperatura baja: respuestas más directas, estables y previsibles.
- Temperatura alta: respuestas más variadas, creativas y menos predecibles.
En programación suele interesar una respuesta clara y precisa. Para tareas creativas, como proponer ideas de proyecto o nombres de aplicaciones, puede ser útil una respuesta más variada.
| Tipo de tarea | Respuesta más conveniente |
| Corregir un error de Java | Precisa y conservadora |
| Crear ideas para una app | Creativa y variada |
| Generar pruebas de una función | Ordenada y sistemática |
| Redactar documentación | Clara y coherente |
1.8 Alucinaciones
Una alucinación ocurre cuando la IA genera una respuesta incorrecta, inventada o no comprobada, pero la presenta como si fuera verdadera.
En programación, una alucinación puede aparecer de muchas formas:
- Usar métodos que no existen.
- Inventar librerías o funciones.
- Dar una explicación incorrecta de un error.
- Proponer código que compila pero no resuelve el problema.
- Confundir versiones de un lenguaje, framework o herramienta.
Ejemplo:
// La IA podría proponer un método que parece lógico,
// pero que no existe realmente en la clase utilizada.
lista.removeAllDuplicates();
Cómo reducir el riesgo: comprobar la documentación oficial, ejecutar el código, leer los errores del compilador y pedir a la IA que justifique la solución paso a paso.
1.9 ¿La IA comprende realmente el código?
Las herramientas actuales de IA pueden parecer muy inteligentes porque generan explicaciones y código con fluidez. Sin embargo, su funcionamiento no es igual al razonamiento humano.
Un modelo de lenguaje genera respuestas a partir de patrones estadísticos aprendidos. Esto no significa que tenga experiencia real, intención propia ni comprensión del contexto como una persona.
Para el programador, la consecuencia práctica es clara: la IA puede ayudar mucho, pero no debe ser tratada como una autoridad infalible.
Principio de trabajo: Usa la IA para avanzar más rápido, pero utiliza tus conocimientos para decidir si la respuesta es válida.
1.10 Conceptos relacionados: chatbot, agente y skill
Aunque se estudiarán con más detalle en sesiones posteriores, conviene conocer tres conceptos relacionados:
- Chatbot: herramienta conversacional que responde a preguntas o instrucciones del usuario.
- Agente: sistema de IA que puede realizar acciones más amplias, como leer archivos, modificar código, ejecutar comandos o trabajar sobre un proyecto.
- Skill: habilidad o capacidad específica que permite a la IA realizar una tarea concreta, por ejemplo analizar un archivo, generar una tabla, ejecutar código o trabajar con un repositorio.
En programación, estas diferencias son importantes. No es lo mismo pedir una explicación en un chat que permitir a una herramienta actuar sobre los archivos reales de un proyecto.
Advertencia: Cuanta más capacidad de acción tenga una herramienta de IA, mayor debe ser la supervisión del programador.