Este fin de semana, además de estar preparando mi agenda de la semana y del mes, he estado poniendo un poco al día mi canal de Youtube, para recoger las cosas que voy haciendo a lo largo del año en forma de conferencias y entrevistas. Y aprovecho hoy lunes para traerlas por aquí.
La conferencia de Cybercriminals with AI & Passwords/Credentials la impartí esta semana pasada en el edificio de "La Nacional", pero nuestro amigo Philipe Lardy nos ayudo a emitirla por Internet en directo, y la tenemos grabada íntegramente, con un iPhone, un micrófono Bluetooth y unos Airpods ocultos bajo mi pelo, y la pantalla de mi ordenador y la cámara de mi equipo. Todo muy organizado para que pudiera seguirse presencialmente y por Internet a la vez.
Así que, si no has visto alguno y te "provoca", pues tienes material para entretenerte un rato. Además, son sesiones que las puedes seguir en modo podcast, solo escuchando el audio mientras haces otras cosas en tu vida.
Llevo ya algún tiempo “jugando” a esto de generar vídeos e imágenes creadas con Inteligencia Artificial Generativa (a lo mejor me habéis visto en Cuarto Milenio con Iker Jiménez creando algunas criaturas del Sistema Solar). Desde que empezamos con las versiones iniciales de Dall-E o Stable Diffusion, la cosa ha cambiado en cuestión de muy poco tiempo.
Figura 1: Cómo crear un Superhéroe y un Supervillano con GenIA.
ChatGPT, MidJourney, Kling AI & SUNO
El avance es tan espectacular que ya tenemos generación de vídeo con calidad prácticamente cinematográfica, así como con imágenes reales, casi indistinguibles de la realidad.
Podría hablaros, ya que es prácticamente mi trabajo habitual, de los posibles problemas que esto puede generar o también de sus beneficios. Pero si quieres más información de cómo la ciberseguridad se fusiona con la IA, te recomiendo que comiences por este libro como punto de partida:
Pero hoy no. Hoy es domingo y toca hablar de algo más lúdico, divertido y relajado. Vamos a ver los pasos necesarios para crear un superhéroe y animar la escena.
Fase 1: ChatGPT para comenzar a crear imágnes del Superhéroe
Una vez tenemos claro los parámetros básicos de nuestro superhéroe, por ejemplo, que lleve capa, armadura, un ambiente oscuro, una ciudad de fondo, etc. Partimos de la base que mi hija de 7 años dibuja mejor que yo. Así que lo mejor es decirle a ChatGPT que prepare una imagen con la que comenzar.
Podríais pensar que lo mejor es directamente a un generador de texto a vídeo, pero no. Lo mejor es usar previamente un buen generador de imágenes y luego, el de vídeo. El motivo es la limitación del LLM que se usa en el prompt de vídeo, que no son precisamente ChatGPT.
Como para crearla voy a usar MidJourney, es una buena idea pasarle también información sobre trucos o parámetros para crear la imagen:
Figura 4: Dando más conocimiento a ChatGPT sobre MidJourney
Una vez que ChatGPT ya conoce estos parámetros, le pido que me haga un prompt para MidJourney de un superhéroe, oscuro, con un traje avanzado tecnológicamente, con una ciudad al fondo y que le añada lo que vea necesario. Este es el prompt, y será el que usemos ahora más adelante con MidJourney:
“Create a highly realistic photograph of a masked superhero wearing a spectacular, technologically advanced suit. The hero's face is concealed by a sleek, high-tech mask that adds an air of mystery. The suit is dark and aerodynamic, featuring subtle armor plating and a flowing cape. The overall design should exude strength, agility, and a vigilant presence. The setting can be a nighttime urban landscape with towering skyscrapers and dimly lit streets, emphasizing the hero's role as a guardian of the city. --no text, highly detailed, photorealistic, dramatic lighting, 8K resolution.”
Fase 2: MidJourney para crear las imágenes del Superhéroe
Ahora desde MidJourney generamos la imagen. Y estos son los resultados:
Figura 5: SuperHéroe generado con el prompt anterior.
Figura 6. SuperHéroe generado con el prompt anterior con un
"look más familiar" ;)
Genial, pero vamos ahora a ver cómo hacemos de esto un vídeo que nos quede molón, molón. Así que volvemos a ChatGPT.
Fase 3: ChatGPT ahora para crear los vídeos del Superhéroe
Repetimos lo mismo que en la fase 2, donde le decíamos a ChatGPT que creara prompt para imágenes ahora hacemos lo mismo para vídeo. En nuestro caso con Kling AI. Le pasamos un enlace para que aprenda a usar algunas técnicas, y le luego le pedimos un prompt para Kling AI pero sin complicarnos mucho, usando el contexto que ya tenemos de la generación de la imagen anterior:
Figura 7: Prompt para animación con
Kling AI partiendo de una imagen.
Aquí también le pedimos que genere un prompt negativo, para evitar que no haga lo que le pedimos, éste es el prompt negativo obtenido:
“no cartoon style, no 2D effects, no exaggerated colors, no low resolution, no flat textures, no unrealistic lighting, no visible artificial elements, no blurry details, no oversaturation, no extra objects,”
Este punto del prompt negativo es muy importante para poder obtener resultados más precisos. Pues nada, ya tenemos todo para generar el vídeo y fundir algunos créditos ;)
Fase 4: De la imagen del Superhéroe al vídeo con Kling AI
Ahora desde Kling AI, usamos la opción “image to video”, ponemos la imagen anterior generada, usamos el prompt principal y el prompt negativo, cada uno en su posición:
Figura 8: Generación de los vídeos con Kling AI.
Y finalmente, tenemos estos dos vídeos como resultado:
Figura 9: Vídeo generado a partir de la imagen de la Figura 6
Figura 10: Vídeo generado a partir de la imagen de la Figura 5
Pero aún podemos hacer que esto sea mucho más épico. Vamos a ponerle un nombre y a crear música para generar mucho más impacto con estos vídeos.
Fase 5: A todo superhéroe se le conoce con un nombre …
Pues nada, directamente con la imagen generada con MidJourney le pedimos a ChatGPT que nos diga algunos nombres originales.
Figura 11: Nombres sugeridos para este superhéroe
(lo que antes se llamaba hacer un BrainStorming)
Esta es la lista de diez nombres que me ha ofrecido traducidos - con ChatGPT - al Español. ¿Cuál te gusta más? ;)
Fantasma Nocturno
Vanguardia Sombría
Centinela Oscuro
Caballero Fantasma
Sombra de Hierro
Guardián de Medianoche
Guardián del Eclipse
Espectral
Vengador de Obsidiana
Furia Silenciosa
Fase 6: Y ya que estamos ¿le ponemos banda sonora?
Para una banda sonora acorde a nuestro superhéroe, también podemos hacer que lo haga ChatGPT, por ejemplo con este prompt y lo ponemos en SUNO AI:
“Epic, electronic instrumental orchestral track beginning with a slow, atmospheric intro featuring deep synths and subtle beats to build tension. Gradually add a driving and dark ambient”
Figura 12: Creación de la banda sonora con SUNO AI.
Aquí tienes la canción completa por si la quieres escuchar:
Y ahora ya podemos montar con el iMovie o el Premier, el vídeo, con la música completa, lo que nos da un resultado espectacular para la creación de nuestro superhéroe.
Como podéis ver, la combinación de varias herramientas de GenAI puede dar resultados espectaculares. Y esto ha sido una demo rápida, si lo pensamos, le dedicamos más tiempo a los prompts, a los parámetros, etc seguro que obtenemos resultados realmente espectaculares. Esto es sólo una pequeña muestra de lo que la IA puede hacer, no cometas el error de ignorarlo o decir que esto es una moda pasajera y que no se puede hacer nada “útil” con la IA.
Happy Hacking Hack…!!!! … espera un momento …
Bonus Track: El Súpervillano
Se me olvidaba, todo superhéroe tiene un villano ¿verdad? ;)
Figura 15: Generación del villano con MidJourney.
Le buscamos un nombre con ChatGPT.
Figura 16: Nombres propuestos por ChatGPT para el villano
Pero le puedes pedir más, aquí algunos traducidos al Español de una nueva batida de ideas.
Malikar, el Rompealmas
Noctyros
Vorlath, el Caminante del Abismo
Xyphor, Señor de la Ruina
Erebus Vorn
Zal'Korath, el Emperador del Vacío
Nyxarion
Draethor, la Forja de Sombras
Morvex el Eterno
Kael'dryn, el Rey de la Tormenta
Ahora vamos a hacerle una banda sonora acorde a su maldad en SUNO AI.
La IA está aquí, así que aprende, y sobre todo disfruta el momento tecnológico que estamos viviendo, te lo dice uno que empezó con pantallas de fósforo naranja y texto y sin Internet ;)
No soy Maligno, soy María: "¡hola!", y os he escrito este artículo para contaros cómo, con sólo "copia-pega-click", vamos a poder generar un breve podcast de audio a dos voces "flipante" sobre el tema que quieras. Es la función "Deep Dive" de NotebookLM de Google (Gemini 1.5 Pro). De momento sólo está en inglés, aunque hay otras herramientas similares en camino, como el nuevo modo conversacional de OpenAI que se está anunciando literalmente ahora mientras escribo.
Para el ejemplo del vídeo he usado este artículo de Chema Alonso llamado "Modern Times" que escribió en medio de la pandemia utilizando la mítica película de Charlot como guión, aunque como vais a ver, nos va a salir en inglés.
1. Cómo hacer tu podcast en inglés automáticamente
Lo escribo para dummies para que lo puedas usar con toda la familia y amigos :) Antes de empezar, busca la información de la que quieras que hable tu podcast. Una sola página web es suficiente. Copia la URL de la barra de direcciones: selecciónala y Ctrl+C.
Para añadir tu documento, pulsa "Website-Sitio web" abajo en el centro (si no lo ves a simple vista, baja con el scroll).
Figura 5: Añadimos un Sitio Web
Pega en la caja de texto (Ctrl+V) la dirección web que has copiado antes. Pulsa el botón "Insert-Insertar", abajo a la derecha. Espera mientras carga.
Figura 6: La URL del post
Aquí seleccionarás "español" cuando esté disponible. Dale a "Generate-Generar" en la caja de arriba a la derecha, donde dice "Deep Dive-Conversación en profundidad".
Figura 7: Dale a Generar
Espera a que se genere.
Figura 8: Podcast generado
Bang! Cuando tu podcast esté hecho, puedes escucharlo y descargártelo: pulsa los tres puntitos y "Download-Descargar".
Aquí lo tienes - en vídeo subido a Youtube - en inglés para que puedas ver el resultado conseguido con sólo estos clics a partir de la URL del post.
2. Para cuándo en Español
Yo he montando el vídeo de ejemplo en español con toneladas de IA y muchas horas de edición. Hay herramientas speech-to-speech, pero generan un resultado horrísono. Creo que pronto se podrá hacer en español automático decente, pero no creo que debas hacerlo tú manualmente como lo he hecho yo, no merece la pena. Faltan meses o semanas para poder hacerlo en un ¡chas! sin necesidad de partirte el lomo y con buen resultado.
Mientras tanto, puedes activar subtítulos automáticos para cualquier contenido que consumas en tu Google Chrome: audios, vídeos, etcétera. Muy práctico. Así puedes generar podcasts con familiares o amigos aunque no controlen mucho inglés.
¿Por qué creo que falta poco para la versión en español? Pues porque YouTube está a punto de llegar el doblaje automático con IA (dubbing). Es el proyecto Aloud de Google, y aunque no sé si aplicarán la misma tecnología a NotebookLM, que tiene pinta de ser independiente de Gemini, como primera solución nos vale: conviertes el audio a vídeo, lo subes a YouTube y le pones doblaje automático con dubbing de Aloud. ¡Tadaaa! Hecho. Yo por el contrario he tenido que utilizar estas herramientas.
Radio Maligna, hacking y ciencia ficción, luruluru-l
Yo te recomiendo que eches un vistazo a NotebookLM de vez en cuando, por si ponen "Deep Dive" en español.
Figura 12: Sintonía de Radio Maligna hecha con SUNO
Hasta entonces, actívate los subtítulos automáticos de tu navegador, cálzate los auriculares y... Rock 'n' Roll! que le hemos hecho hasta sintonía.
3. Notas finales
Si has visto el vídeo de ejemplo de Tiempos Modernos, el modelito ha sacado un 10/10 en comentario de texto. ¿A que sí? Pero ¿y si le damos información inaceptable? ¿Le seguirá pareciendo que todo es fabuloso? ¿Tendrá sesgos? ¿Alucinaciones? Confieso que ya lo he probado ¡mua-ha-ha! Y no pienso spoilearte los resultados. Búscale las cosquillas: es muuuy divertido XD
Este lunes no, pero el pasado, también estuve a las 17:00 horas, en la sección de una hora que se guarda para hacer una tertulia en el programa de Luis Herrero, que como sabéis se llama "En casa de Herrero". Así que para ser explícito lo llamo "La tertulia en casa de Herrero", que aún no tiene ningún nombre. Y por si no lo oíste, hoy te lo traigo como hice la semana pasada.
En dicha tertulia, Luis Herrero ha juntado a Luiz Enriquez, José Luis Garci y a un servidor para que hablemos de lo que vaya saliendo. Así que saldrá mucha música, cine, cómics, libros y tecnología, que son los temas que nos interesan a los que allí nos vamos a juntar los lunes.
Además hablamos de los 100 años del nacimiento de la mítica Lauren Bacal, pusimos la canción de Física y Química de Despistaos, pero en lugar de cantada por el gran Daniel Marco, poniendo a Bad Bunny. Le escribimos a Krespo a ver qué le parecía, y nos contestó. También le puse a José Luis hecha por María Gómez Prieto, que después de escuchar la anécdota del primer programa, me la envío a mi buzón de MyPublicInbox... y la pusimos en antena.
También hablamos de Platoon, de la película de Cero en Conducta y del Kompendium de los comics de los Kiss que yo tengo en mi poder y lo llevé allí. Además hablamos un poquito del cómic de BlackSad que le regalé a José Luis y que, por supuesto, se lo bebió y me mandó un mensaje vía uno de sus intermediarios para decirmelo. libre.
Si quieres contactar con cualquiera de nosotros, tanto Luis Herrero como José Luis Garci, como Luiz Enriquez - y yo por supuesto - tenemos nuestros buzones de MyPublicInbox y vamos a contestar a todos los mensajes que lleguen de la audiencia, así que siéntete libre de contactarnos. El próximo programa en el que estaré será el lunes 30 de Septiembre.
Hoy voy a escribir de este proyecto porque me ha encantado. Es muy Hacker y muy Maker, y además habla de algo que es imparable, como la es la llegada de la IA Generativa a todos los rincones del mundo, también a las calculadoras de los estudiantes.
El proyecto lo que hace es aprovecharse de los protocolos de comunicación de las famosas calculadoras de Texas-Instrumentes (una TI-84 Plus) en concreto que traen para conectar dos calculadoras por cable, y modificarlas para conectarlas a un servidor en Internet que le trae las respuestas de todos tus exámenes desde ChatGPT. Sencillo, ¿no?. Pues mola todo.
Las calculadoras TI-84 Plus o TI-82, tienen un jack de comunicación que está conectado a la MotherBoard de la calculadora para enviar y recibir mensajes por un protocolo de comunicación que hace tiempo que está "reverseado" y que es conocido.
El objetivo del Hardware Hacking de esta calculadora es conectar, en lugar de la conexión por el Jack, un chip que de conectividad WiFi, que se conecte a un Hotspot WiFi que puedas configurar en tu móvil, con lo que tendría acceso a Internet.
Estos salen por el canal que lleva al Jack de comunicaciones, pero son interceptados - cambiados de potencia - y sacados por la red WiFi que lo lleva a un servidor controlado.
Este servidor decodifica la pregunta, y se la envía a ChatGPT. Recibe la respuesta, y la envía otra de vez de vuelta encapsulada en el protocolo de la Texas Instrument para que se pueda ver en la calculadora. Muy hacker.
Para poder conectar el módulo WiFi, solucionar el problema de voltaje, y conseguir que se conecte a la MotherBoard de la tarjeta, se ha construido una placa a medida que puedes ver en la Figura 6 y acoplada en la Figura 6, que permite cerrar la calculadora y soportar cualquier inspección.
El código que lleva, además, permite tener modos protegidos con contraseña para evitar que se vea en el menú ChatGPT si no se ha desbloqueado la app. Para eso hay un código en GitHub (Figura 8) que incorpora las apps al menú de la calculadora, y envía los comandos (Figura 7) al servidor que hace de conexión con ChatGPT.
En el siguiente vídeo puedes ver cómo se hace todo el proceso, pero sobre todo el proceso de razonamiento que ha llevado el creador, que es maravilloso. No te lo pierdas.
Estos tipos de proyectos me parecen divertidísimos. Innovadores, sencillos, útiles, muy hackers y muy educativos. Hardware Hacking, GenAI, Makers, Reversing, Coding... lo tiene todo para ser educativo y aprender. Vamos a hacernos alguno en Ideas Locas, que me encanta.
Esta semana pasada se ha publicado un artículo académico que explica como utilizar la simbología matemática para saltarse la detección del Harmful Mode en los LLMs codificando un Prompt Malicioso como si de un problema matemático se tratase. A la técnica la han llamado MathPrompts Jailbreak. Así de curioso, y así de "hacker". Maravilloso.
El artículo, titulado: "Jailbreaking Large Language Models with Symbolic Mathematics" explica cómo las protecciones de detección de Prompt Maliciosos, lo que se llama el Harmful Mode en los LLM, no detectan en la mayoría de los casos que se trata de algo malicioso cuando se plantea con codificación matemática.
Si has estudiado matemática, te conocerás toda la simbología que te permite representar conjuntos, enunciar teoremas, o demostrar afirmaciones, usando todos esos símbolos que seguro que si repasas recordarás perfectamente.
Pues bien, los investigadores han demostrado que si se codifica un Prompt Malicioso como "How to rob a bank" con simbología matemática como si fuera un problema a resolver, el resultado es que se obtienen todas las respuestas que en teoría no deberían de recibirse por el bloqueo del "Harmful Mode".
Figura 4: How To Rob a Bank como MathPrompt
Para probar que la técnica funciona, lo que hicieron fue codificar 120 prompts maliciosos de los datasets más utilizados para evaluar la respuesta de los LLM, y las codificaron en un MathPrompt para probarlas contra varias versiones de GPT-4, Claude 3 y Claude 3.5, Gemini 1.5 y Llama 3.1. Los resultados, siguiendo la metodología de HarmBench publicada este año, y que define como hacer un Benchmark de una técnica de Jailbreak, fueron los siguientes.
Figura 5: Una media de 73.6%. GPT-4o un 85% de éxito
En este caso, la complejidad de entender el MathPrompt dificulta el éxito, así modelos con menos capacidades dan menos éxito en el ataque no porque detecten el Prompt Malicioso, sino porque no resuelven bien el problema.
Como curiosidad, este es un ejemplo para codificar el Prompt Malicioso de "How to hide a corpse" (Cómo ocultar un cadaver), para que veáis la dificultad de la codificación en MathPrompt. Una línea contra una descripción completa y determinista de un problema matemático.
Si te gusta el hacking, la investigación, y seguir disfrutando de la búsqueda de vulnerabilidades, ya puedes ver como lo que aprendiste de matemáticas en el Instituto y en la Universidad se puede utilizar de forma muy correcta para tu pasión. Yo también las usaba para hacer ataques SQL Injection, en este caso con el "Arithmetical SQL Injeciton".