Seguramente muchos de nosotros hemos tenido la oportunidad de interactuar con alguna herramienta de inteligencia artificial, pero ¿sabemos cómo funciona y cuál es la mejor forma de interactuar con ella? En este artículo te daremos las pautas más relevantes para mejorar la claridad de las respuestas que se obtienen, así como su precisión, eficiencia y compatibilidad con las limitaciones de los diferentes modelos de IA.
Debemos tener en cuenta que OpenAI es una empresa independiente que desarrolla y ofrece servicios de inteligencia artificial, como el modelo GPT-4. OpenAI establece sus propios términos y condiciones para el uso de sus modelos y servicios. Los usuarios de OpenAI pagan directamente a la empresa por el uso de sus servicios, que generalmente se basan en el consumo de tokens y el nivel de acceso. Además, OpenAI almacena la información suministrada en los prompts y puede hacer uso de ella para otros fines.
A diferencia de OpenAI, con Azure OpenAI no se paga mediante el uso de los datos suministrados, por lo que es esencial considerar cómo afectan las consultas al servicio. En la actualidad, Azure OpenAI opera bajo un modelo de consumo, donde los usuarios pagan por tokens utilizados. Cada modelo tiene un costo específico tanto para las preguntas como para las respuestas generadas. Por ejemplo, el modelo GPT-3.5-Turbo tiene un precio de 0.0014€ por cada 1000 tokens enviados al servicio y un costo de 0.0019€ por cada 1000 tokens de respuesta generados por el modelo.
Si deseas saber más sobre los precios aproximados por token de cada modelo lo puedes ver en la página oficial de Microsoft.
¿Qué son los tokens?
Los modelos de inteligencia artificial no usan el lenguaje natural de manera directa, las palabras se traducen en tokens por un medio llamado tokenizar. Esta técnica se refiere al proceso de convertir una palabra o frase en unidades más pequeñas para facilitar el análisis y procesamiento en lenguaje natural. Los tokens son las unidades individuales en las que se puede descomponer un texto para su análisis o procesamiento. En el procesamiento del lenguaje natural, tokenizar es el proceso de dividir el texto en piezas significativas, que pueden ser palabras, números, símbolos, dependiendo del enfoque utilizado.
En la página oficial de OpenAI, se proporciona un ejemplo de cómo se convierten las palabras en tokens y nos ponen a disposición una herramienta con la que podemos ver cómo se convierten nuestras palabras en tokens. Puedes explorar más sobre este proceso visitando el siguiente enlace: https://platform.openai.com/tokenizer.
Por ejemplo, usando la página mencionada anteriormente, al tokenizar la palabra “Intelequia”, se divide en 3 [“Int”, “ele”, “quia”] y esto se traduce a tokens [1090, 10274, 84722]. La capacidad de gestionar tokens varía según el modelo. Por ejemplo, en el modelo "GPT-4-32k", este podría manejar hasta 32.000 tokens. Esto implica que dicho modelo tendría la habilidad de procesar y analizar textos con un máximo de 32.000 tokens.
¿Por qué es importante controlar el número de tokens?
Para entender por qué es importante hay que saber cómo funciona. En primer lugar, en un chat tenemos 3 elementos principales: el contexto, la pregunta y la respuesta.
Normalmente en un chat para recordar el tema y el hilo del que se está hablando tenemos un contexto y este a su vez se divide en 3 partes. Estas partes son: el mensaje del sistema, el histórico de preguntas y la última pregunta. Normalmente el chat cuenta con un mensaje del sistema que se encarga de dar las pautas iniciales de cómo debe ser el estilo de la respuesta, después contiene todo el histórico de preguntas y respuestas anteriores, y por último contiene la última pregunta que le hemos hecho y de la que buscamos una respuesta. Cabe destacar que a medida que avanza la conversación los mensajes más antiguos se pueden dejar de incluir en el contexto.
Dependiendo del tipo y la envergadura de nuestro proyecto, nos puede interesar en mayor o menor medida controlar más al detalle el uso de los tokens, tanto limitando la respuesta como controlando las preguntas. Cuando son preguntas muy recurrentes y similares, al automatizar un proceso, en el momento de escribir un mensaje del sistema, nos podría interesar controlar cuantos tokens estamos usando por pregunta y así poder delimitar su uso.
Vamos a ver un ejemplo:
Tenemos estas dos preguntas, una de ellas usa 41 tokens mientras que la otra usa solo 15:
Prompt con más tokens: "Por favor, proporciona un resumen detallado de los principales beneficios y ventajas que ofrece la implementación de la inteligencia artificial en la industria de la tecnología de la información."
Prompt con menos tokens: "Enumera beneficios de la inteligencia artificial en la industria de TI"
¿Puedes adivinar cuál es el prompt que dio pie a esta respuesta?
En efecto, fue el prompt corto de 15 tokens.
Consejos para reducir el uso de tokens en las preguntas
Vamos a dar unos consejos para controlar el uso y así reducir el uso de tokens en las preguntas:
- Utiliza oraciones cortas y concisas: Evita usar palabras innecesarias o redundantes. Ve al grano y haz preguntas directas.
- Usa palabras clave: Identifica las palabras más importantes que necesitas incluir en tu pregunta para que sea clara y precisa.
- Evita detalles innecesarios: No incluyas información que no sea relevante para la pregunta que estás haciendo.
- Usa abreviaturas o siglas: Si hay términos o nombres largos que se pueden abreviar, hazlo para ahorrar tokens.
- Divide la pregunta: Evitar hacer preguntas que contengan varias subpreguntas. En su lugar, hacer preguntas individuales para cada tema.
- Revisa y edita: Antes de enviar tu pregunta, revisa si hay alguna manera de hacerla más corta sin perder el sentido.
- Fracciona la pregunta: Si es posible, divide tu pregunta en varias partes más cortas y hazlas por separado.
- Eliminar palabras de relleno: No usar palabras como "por favor", "gracias", "hola" o "buenos días", que no aportan información relevante a la pregunta.
En conclusión, podemos afirmar que reducir el número de tokens en los prompt es la práctica más recomendable por varios motivos:
- Claridad y precisión: Al simplificar y acortar una pregunta, es más fácil para la IA entender y procesar la información, lo que lleva a respuestas más precisas y relevantes.
- Eficiencia: Los modelos de IA procesan y analizan texto en unidades llamadas tokens. Menos tokens implican menos recursos computacionales y tiempo requeridos para procesar la pregunta, lo que resulta en una respuesta más rápida.
- Limitaciones del modelo: Algunos modelos de IA tienen restricciones en la cantidad de tokens que pueden manejar en una sola consulta. Al reducir el número de tokens, se evita exceder estos límites y garantizar que la pregunta se procese adecuadamente.
Al adoptar estas prácticas, no solo facilitamos la comunicación con la IA, sino que también optimizamos nuestros recursos y garantizamos una experiencia exitosa.