#1 Empecé a usar la IA.
He comenzado a usar la popular IA. Aquí comparto los puntos clave a tener en cuenta al utilizar la inteligencia artificial.
La IA está de moda en este momento. Por ahora, contraté ChatGPT, Claude Code y Gemini por unos 20 dólares al mes cada uno. Realmente no tengo la intención de usarla simplemente para conversar, sino que quería ver hasta qué punto podía construir sitios y sistemas, y mi primera impresión fue... ¡vaya, realmente funciona! Este sitio de Black Rabbit también se construyó con la ayuda de la IA. ¿Qué opinas? Se ve bastante profesional.
De todos modos, resumí la información general sobre la IA.
[Resumen breve: Importante]
Las IA actuales adoptan modelos de lenguaje de gran tamaño (LLM). Para explicar el proceso de aprendizaje de forma sencilla, se trata de la repetición de una tarea básica consistente en "predecir probabilísticamente la siguiente palabra" a partir de una cantidad masiva de información. Aunque el diseño arquitectónico de Transformer y los propios métodos de aprendizaje (preentrenamiento, ajuste fino, RLHF, etc.) se comprenden y controlan, a medida que los modelos crecen, se vuelven más parecidos a una caja negra. Por lo tanto, aunque los humanos comprenden el "mecanismo", no captan con precisión todas las relaciones causales detalladas de "por qué produce ese resultado concreto".
Lo que esto significa es que las respuestas de la IA no están construidas lógicamente, sino que se crean a partir de tendencias de datos masivos (un fingimiento muy sofisticado de conocimiento). Por tanto, existen técnicas para obtener respuestas precisas a través de los prompts (instrucciones) que se le dan a la IA.
Para ser sincero, si se trata de algo visual o directo como imágenes, diseño, vídeo o audio, está bien, pero en áreas como la programación, el funcionamiento interno se vuelve bastante sospechoso. Sí, parece que funciona en la superficie. Sin embargo, dado que está construido como una fachada, mi impresión es que escribir un código óptimo con una arquitectura avanzada sería difícil.
Entonces, ¿cuáles son las técnicas específicas?
[¿Técnicas específicas?]
- Incluir pasos de razonamiento intermedios en el prompt aumenta la capacidad de razonamiento del LLM. Por ejemplo, simplemente agregando "desglosa los pasos del procesamiento, explícalos y luego ejecútalos" al prompt permite que el LLM genere su propio proceso de razonamiento, mejorando la precisión en unos 30 puntos porcentuales (del 10 % al 40 %).
- Los LLM parecen tener dificultades para utilizar la información que se encuentra en el medio, en comparación con el principio y el final de la entrada. Citando un estudio: "En un experimento de preguntas y respuestas anterior, GPT-3.5-Turbo logró una precisión del 75.8 % al principio y del 63.2 % al final, mientras que cayó al 53.8 % en el medio. Esto es incluso inferior al 56.1 % del rendimiento 'closed-book' (sin documentos de consulta)". Es mejor que los humanos dividan las instrucciones tanto como sea posible.
- Cuando se les conceden permisos, tienden a subir código a producción por su cuenta o a manipular directamente la base de datos para cumplir las instrucciones, sin respetar las prohibiciones de sentido común del desarrollador. Por lo tanto, es necesario definir prohibiciones claras. (Sin embargo, esto tampoco está garantizado al 100 %).
- La mejor manera es limitar físicamente a la IA y utilizarla dentro de un ámbito restringido. Específicamente, no le dé credenciales de acceso a la base de datos ni permisos de escritura para que no pueda manipular la base de datos directamente.
- No lance servicios de forma local (on-premise), sino que utilice otros servicios de caja negra en la medida de lo posible para limitar el alcance de la IA y reducir el impacto de los problemas.
- Con cualquier IA, puede describir y pasar primero las condiciones previas. Lo mejor es escribir las reglas de desarrollo con el mayor detalle posible en ellas. Dado que a veces no las lee automáticamente, es muy importante obligarle explícitamente a cargarlas para que reconozca las reglas.
Además, dado que pocas personas podrían firmar contratos comerciales, aquí hay algunas precauciones.
[Precauciones para la introducción de prompts]
Si contrata el servicio para uso personal en lugar de uso comercial para ahorrar costes, los prompts introducidos se utilizarán para el entrenamiento y pueden ser vistos por terceros (con un contrato comercial, los datos se descartan, por lo que la seguridad es alta). Por lo tanto, nunca debe introducir información personal, información confidencial, nombres de cuenta o contraseñas en el prompt.
De hecho, al utilizar la IA, terminará introduciendo las mismas cosas repetidamente. Como se mencionó antes, pueden fingir escuchar pero no hacerlo realmente, repitiendo los mismos errores, por lo que tendrá que copiar y pegar texto de plantilla similar una y otra vez. Por lo tanto,
[Reducción de la reproducción de prompts y ajustes iniciales]
La repetición de instrucciones a la IA a menudo implica contenidos similares o correcciones parciales, e introducir el mismo texto repetidamente desde el teclado es ineficiente. Por lo tanto, lo mejor es utilizar archivos de definición inicial, configuraciones y herramientas como las mencionadas anteriormente.
De todos modos, ahora estoy preparado para usar la IA. Crear código con ella se siente como tener un nuevo programador con muy buena memoria que finge saberlo todo y nunca se cansa. Por tanto, es mejor usarla como asistente, y siento que la imagen que tiene el público general de que hace todo lo que le ordenas está un poco alejada de la realidad.
Además, la IA es una entidad "lista" que hará cualquier cosa, aunque sea problemática o incorrecta, solo para obtener resultados, por lo que realmente hay que tener cuidado.