Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

Prompt engineering para programación, Unidad 2 — Cómo razona un LLM sobre código, 2.1 — Código como texto estructurado ·

Tokens y sintaxis

Tokens y sintaxis

Introducción

En la era de la inteligencia artificial asistida, comprender cómo un Lenguaje de Modelos de Modelos (LLM) razona sobre código es fundamental para generar prompts efectivos. En esta unidad, exploraremos cómo el LLM ve el código como texto estructurado, desglosándolo en tokens y analizando su sintaxis.

Explicación principal

Tokens y sintaxis: El lenguaje que un LLM entiende

Un token es la unidad básica de datos del LLM. Cada palabra, número o símbolo en el código se convierte en un token antes de ser procesado por el modelo. La sintaxis, por otro lado, es las reglas y estructuras que definen cómo estos tokens deben combinarse para formar una sentencia válida.

Ejemplo

Consideremos este simple fragmento de Python:

def suma(a: int, b: int) -> int:
    return a + b

El LLM verá esto como:

  • Tokens: def, suma, (a, int, ,, b, int), ->, int, :",, \n , return, a, +, b
  • Sintaxis: La estructura que define la función, los parámetros con sus tipos y el cuerpo de la función.

Sintaxis en detalle

La sintaxis del LLM se basa en las reglas gramaticales y semánticas definidas por el lenguaje de programación. Por ejemplo:

  • Definición de una función: def nombre(parametros) -> tipo:
  • Asignación: variable = valor;
  • Condicionales: if condicion:

Estas reglas permiten al LLM identificar y analizar las estructuras del código.

Errores típicos / trampas

Aprender a razonar sobre el código como texto estructurado es vital para evitar errores comunes. Algunas de estas trampas incluyen:

  1. Tokens erróneos: El LLM puede interpretar mal los tokens debido a la falta de contexto o a similitudes entre palabras. Por ejemplo, def vs df.
  2. Ignorancia del contexto: El LLM puede no entender el contexto en que se utiliza una palabra o símbolo. Por ejemplo, sum puede referirse al método de lista o a la función sum().
  3. Sintaxis incorrecta: La falta de comprensión de las reglas gramaticales del lenguaje puede llevar a interpretaciones erróneas. Por ejemplo, olvidar el paréntesis en una llamada a función.

Checklist accionable

Para evitar estos errores y mejorar la comunicación con el LLM:

  1. Claridad en los tokens: Asegúrate de que los nombres de variables, funciones o clases sean claros y no confundibles.
  2. Proporciona contexto: Proporciona información adicional cuando sea necesario para evitar interpretaciones erróneas del LLM.
  3. Usa sintaxis estándar: Utiliza la sintaxis oficial del lenguaje de programación, evitando acortamientos o variaciones no estándar.

Cierre: Siguientes pasos

  • Reflexiona sobre el código: Antes de enviar un prompt al LLM, reflexiona sobre los tokens y la sintaxis que estás utilizando.
  • Procura la claridad: Mantén el uso de nombres de variables y funciones descriptivos para evitar confusiones.
  • Prueba y ajusta: Comprueba la respuesta del LLM con tus conocimientos y ajusta los prompts según sea necesario.

Aprender a razonar sobre el código como texto estructurado es una habilidad crucial en la era de la inteligencia artificial asistida. Al comprender cómo un LLM ve tu código, puedes diseñar prompts más efectivos y evitar errores comunes.

Contacto

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