Saltar al contenido principal
InicioTutorialesInteligencia Artificial (IA)

Guía de Actuación en Pasarela: Me grabé para probarlo

Aprende a utilizar Runway Act-One tanto a través de la interfaz web como de su API, y descubre cómo combinarlo con Runway Gen3-Alpha.
Actualizado 30 oct 2024  · 8 min leer

En esta entrada del blog, compartiré mi experiencia probando la nueva herramientaAct-One de Runway ML . Te explicaré cómo funciona, utilizando tanto la interfaz web como su API de Python. También hablaré de los resultados que obtuve, que no fueron tan impresionantes como esperaba.

Si sientes curiosidad por Act-One y quieres verlo en acción, ¡sigue leyendo!

¿Quieres iniciarte en la IA Generativa?

Aprende a trabajar con LLMs en Python directamente en tu navegador

Empieza Ahora

¿Qué es Runway Act-One?

Runway Act-One es una herramienta que anima imágenes fijas de personajes utilizando la entrada de vídeo. Veámoslo en acción:

Fuente: Pista

Este vídeo se creó utilizando:

  1. Un vídeo de un actor humano; y
  2. Una imagen estática del personaje animado.

A continuación, Runway Act-One anima el personaje para reflejar los movimientos y expresiones faciales del actor humano.

Entradas y salidas de Act-One.

Animar personajes es un proceso sofisticado que sólo pueden hacer desde cero profesionales altamente cualificados. Act-One intenta cambiar las reglas del juego permitiendo a cualquiera animar un personaje simplemente grabándose a sí mismo y proporcionando una imagen fija del personaje que desea animar.

Y no se limita a los personajes animados. También funciona con personajes cinematográficos y realistas. Yambién podemos crear un diálogo convincente creando varios vídeos cortos de los personajes hablando y uniéndolos:

Fuente: Pista

Me he filmado para probar Runway Act-One

Exploremos nosotros mismos el Acto-Uno de la Pasarela. Aunque existe un nivel gratuito, que ofrece 125 créditos y opciones de cola, Act-One no está incluido en este nivel y requiere una suscripción.

Primero, ve a página de inicio de sesión de Runway y conéctate o crea una cuenta. A continuación, suscríbete a uno de sus planes disponibles. Es importante tener en cuenta que, incluso con una suscripción, hay un límite en la cantidad de vídeos que podemos generar. Probé la suscripción mensual de 15 $ que me daba 625 créditos (más los 125 créditos gratuitos para un total de 750 créditos).

Cómo abrir Runway Act-One

Para generar un vídeo con Act-One, haz clic en el botón "Pruébalo ahora" del panel de control.

Cómo abrir la interfaz web de Act-One.

La interfaz de Act-One es relativamente sencilla de utilizar. En la imagen de abajo puedes verlo:

  1. En la parte superior, seleccionamos el vídeo conductor, que es el vídeo utilizado para conducir la animación.
  2. En la parte inferior, seleccionamos la imagen de referencia del personaje que queremos animar.

Interfaz Runway ML Act-One con opciones de carga de vídeo y selección de personajes.

Probar la Pasarela Act-One animándome a mí mismo

Para probarlo, me grabé poniendo cara de sorpresa y lo probé utilizando su referencia de personaje canino.

Pantalla dividida que muestra la cara de una persona sorprendida junto a la cara de un perro de dibujos animados.

El vídeo resultante me pareció aceptable. La expresión facial no es muy pronunciada, pero aún así coincide con la mía.

Hice otros experimentos con el mismo personaje, y Runway Act-One nunca me impresionó. En algunos casos, ni siquiera había expresión alguna. En el ejemplo siguiente, el perro no se movió en absoluto a pesar de mi expresión facial.

Ejemplo de salida fallida.

No soy actor, así que quizá ese sea el problema. Sin embargo, si el propósito de Act-One es capacitar a cualquiera para animar personajes, aún le queda un largo camino por recorrer antes de que sea realmente utilizable por cualquiera sin experiencia en el sector.

También me resultó imposible utilizar una imagen de personaje personalizada. Generé unos 10 personajes diferentes utilizando Dall-E 3, y Runway falló cada vez al encontrar una cara. He aquí un ejemplo:

Runway Act-One aún no reconoce las caras de los dibujos animados.

Esto me indica que los ejemplos mostrados son selectivos y que el modelo no está listo para el gran público. Sin embargo, lo probé con personajes humanos y funcionó. Por lo tanto, podría darse el caso de que el modelo aún no admita personajes animados personalizados.

He aquí un ejemplo con un personaje humano:

Ejemplo de Act-One utilizando rostros humanos.

El resultado utilizando un rostro humano fue mucho mejor, y pensé que el resultado era de mayor fidelidad. Sin embargo, este caso de uso parece menos impactante, ya que en su lugar podríamos hacer que el ser humano actuara directamente.

Nota sobre los precios

La duración del vídeo de salida coincidirá con la del vídeo de entrada, y se cargarán créditos en función de la duración del vídeo.

Combinar Act-One con Runway Gen-3 Alpha

A principios de este año, en junio, Runway ML presentó su modelo Gen-3 Alpha, que crea vídeos a partir de una imagen fija y una indicación de texto.

Como Act-One se centra en los primeros planos de rostros, estos dos modelos se complementan. Act-One puede utilizarse para crear diálogos, mientras que Gen-3 Alfa puede generar las escenas entre diálogos.

Genera un vídeo con Gen-3 Alfa

Para cambiar a Gen-3 Alfa, haz clic en el icono "T" de la izquierda (nº 1 en la imagen de abajo).

Animar imágenes con Gen-3 Alfa.

Las entradas de este modelo son una imagen (nº 2) y una indicación de texto (nº 3). Runway sugiere que la indicación de texto siga este formato:

[camera movement]: [establishing scene]. [additional details].

Por ejemplo:

Low-angle static shot: The camera is angled up at a woman wearing all orange as she stands in a tropical rainforest with colorful flora. The dramatic sky is overcast and gray.

Lo he probado para animar una foto que hice hace poco. Éstas son las entradas que utilicé:

Ejemplo de entrada para Gen-3 Alfa.

Y éste es el resultado:

Vídeo generado con Runway Gen-3 Alpha

Me gustó el resultado. La luz se ve bien cuando el barco se aleja del sol, y el movimiento del agua es suave.

Sin embargo, el resultado es bastante diferente de lo que imaginé en un principio. Éste es, sin duda, uno de los principales problemas para los creadores de vídeo: la incapacidad de controlar cada detalle de una escena, cosa que sí es posible con los métodos tradicionales de creación de películas. Si esta limitación persiste, los futuros directores que utilicen IA podrían verse limitados a escenas generadas por la IA en lugar de poder realizar su visión original.

Combinar con primeros planos de Act-One

En este caso, podemos combinar creativamente tres videoclips distintos.

En primer lugar, tenemos un vídeo de un barco moviéndose por el agua. Este clip establece el escenario y proporciona el contexto para las acciones posteriores.

A continuación, podríamos tener un primer plano de un personaje de pie en la orilla, con la mirada fija en el barco y expresando un sentimiento de añoranza.

Por último, tenemos un vídeo del barco alejándose de la orilla, visto desde el punto de vista del personaje. Este tercer clip proporciona una sensación de movimiento y progresión.

Uso de la API Runway ML con Python

Runway ML también ofrece una API para utilizar sus modelos fuera de la interfaz web. Aunque admite Gen-3 Alpha Turbo, parece que Act-One aún no está disponible. Esta guía cubrirá los aspectos básicos del uso de la API, que seguirán siendo los mismos una vez que Act-One esté disponible.

Crear la clave API

Para empezar, necesitamos crear una cuenta de desarrollador y generar una clave API.

Navega hasta la página del desarrollador y haz clic en el botón de inicio de sesión. Si no tienes una cuenta, podrás crear una allí.

Captura de pantalla de la página de desarrollador de Runway ML que muestra el botón de inicio de sesión.

Una vez creada la cuenta, ve a la página "Claves API" y haz clic en "Nueva clave API":

Captura de pantalla de la página para desarrolladores de Runway ML mostrando la sección Claves API.

Se abrirá una ventana emergente que te pedirá el nombre de la clave. Podemos dejarlo vacío y hacer clic en "Crear".

Crear la clave API.

Después, se muestra la clave y podemos copiarla. Ten en cuenta que, por motivos de seguridad, ésta es la única vez que se mostrará la clave, así que asegúrate de copiarla. Si se pierde por algún motivo, siempre podemos borrarla y crear una nueva.

Copia la clave API.

Precios

La API Runway ML no ofrece un nivel gratuito. Para experimentar con él, debemos añadir créditos a nuestra cuenta. El precio es idéntico al de la interfaz web: 0,25 $ por un vídeo de 5 segundos y 0,50 $ por uno de 10 segundos. 

Es importante tener en cuenta que los créditos de la API son distintos de los de una cuenta de suscripción, por lo que estos créditos no pueden utilizarse para generar vídeos a través de la interfaz web y viceversa. 

Configurar

Runway ML proporciona una biblioteca Python llamada runwayml que debemos instalar para interactuar con la API. Para instalarlo, utiliza el comando

pip install runwayml

Para acceder a la API, la clave API debe establecerse como una variable de entorno llamada RUNWAYML_API_SECRET. Podemos hacerlo utilizando el siguiente comando:

export RUNWAYML_API_SECRET=api_key
```Replacing api_key with the key created above.
Generating a videoRecently, I took this photo of the night sky:

Source: Instagram @fran.a.photo
I wanted to try out runwayml to see if it could generate a time-lapse video from the photo. To generate a video from an image using the API, we:
Import and initialize RunwayML client. Note that we don’t need to provide the API key as it is automatically loaded from the environment variable we set up before.Call the image_to_video.create() method from the client, providing the name of the model, the image URL, and the prompt.Store the task into a variable and print its identifier so that we can retrieve the video later. This is important as it seems that their API doesn’t have any way to list the past tasks. Without it, we’ll pay the generation credits but won’t have a way to get our video.```python
from runwayml import RunwayML
url = "https://i.ibb.co/LC7Kfrq/Z72-5415.jpg"
client = RunwayML()
task = client.image_to_video.create(
  model="gen3a_turbo",
  prompt_image=url,
  prompt_text="Camera slowly zooms out: Astrophotography time-lapse featuring shooting stars.",
)
print(task.id)

Para ver el resultado, tenemos que esperar a que se complete la tarea. Podemos acceder al estado de la tarea utilizando task.status. El estado será igual a la cadena ”SUCCEEDED” una vez que el vídeo se haya generado correctamente.

Podemos acceder a la URL del vídeo utilizando task.output. Ten en cuenta que este campo es una lista de salidas. Por defecto, se genera un único vídeo, por lo que la URL del vídeo será task.output[0].

Aquí tienes un sencillo script que imprime la URL del vídeo dado el identificador de la tarea:

from runwayml import RunwayML
task_id = "af0a95ed-b0ff-4120-aecd-2473d7a42891"
client = RunwayML()
task = client.tasks.retrieve(id=task_id)
if task.status == "SUCCEEDED":
  print(task.output[0])
else:
  print(f"Video not ready, status={task.status}")

Este es el vídeo que generamos a partir de la foto:

Vídeo generado con Runway Gen-3 Alpha

Una vez más, esperaba que el resultado fuera diferente. Me gusta cómo gira el cielo, emulando un time-lapse nocturno. Sin embargo, las estrellas fugaces son muy poco realistas. El primer plano también pierde realismo a medida que avanza el vídeo. Un bonito detalle que me pareció fueron los reflejos en el agua.

Opciones avanzadas

Repasemos algunas opciones que tenemos al generar vídeos con la API. Para más detalles, consulta la página de documentación de Runway.

Runway ML admite vídeos con una duración de 5 o 10 segundos. Por defecto, genera un vídeo de 10 segundos. Esto puede establecerse utilizando el parámetro duration, de la siguiente manera:

task = client.image_to_video.create(
  model="gen3a_turbo",
  prompt_image=url,
  prompt_text="Camera slowly zooms out: Astrophotography time-lapse featuring shooting stars.",
  duration=5,
)

Por defecto, los vídeos se generan con una relación de aspecto de 16:9. También podemos ponerlo en modo vertical especificando una relación de aspecto 9:16 mediante el parámetro ratio:

task = client.image_to_video.create(
  model="gen3a_turbo",
  prompt_image=url,
  prompt_text="Camera slowly zooms out: Astrophotography time-lapse featuring shooting stars.",
  ratio=”9:16”,
)

En cuanto al modelo, parece que, en el momento de escribir esto, el único modelo disponible en la API es gen3a_turbo.

Cargar una foto local

En el ejemplo anterior, hemos utilizado una URL de imagen para especificar la imagen que queremos utilizar. También podemos utilizar un archivo local de nuestro ordenador leyéndolo como una URI de datos.

A continuación se muestra una función de Python que utiliza los paquetes base64 y mimetypes para hacerlo. Ambos paquetes están incorporados, por lo que no es necesario instalarlos. 

def image_to_data_uri(image_path):
    mime_type, _ = mimetypes.guess_type(image_path)
    with open(image_path, "rb") as img_file:
        img_data = img_file.read()
    b64_encoded = base64.b64encode(img_data).decode("utf-8")
    data_uri = f"data:{mime_type};base64,{b64_encoded}"
    return data_uri

Aquí tienes un ejemplo de cómo construir una petición utilizando la función image_to_data_uri() para cargar la imagen:

task = client.image_to_video.create(
  model="gen3a_turbo",
  prompt_image=image_to_data_uri("nightsky.jpg"),
  prompt_text="Camera slowly zooms out: Astrophotography time-lapse featuring shooting stars.",
)

Conclusión

En esta entrada de blog, exploramos Act-One de Runway ML, una herramienta diseñada para simplificar la animación de personajes. Cubrimos su funcionalidad básica, cómo utilizarlo a través de la interfaz web y su integración con la API de Python. También profundizamos en el modelo Gen-3 Alpha de Runway para generar vídeos a partir de imágenes fijas.

Como he mencionado antes, mis experimentos personales con Act-One no estuvieron totalmente a la altura de los pulidos ejemplos proporcionados por Runway ML. Los resultados carecían de la vivacidad y expresividad que esperaba, lo que indicaba que el modelo podría estar aún en fase de desarrollo o requerir una mayor aportación profesional. Además, la imposibilidad de utilizar personajes animados personalizados era un inconveniente importante. 

A pesar de estas limitaciones, Act-One y Gen-3 Alpha de Runway ML muestran el apasionante potencial de la IA en la creación y animación de vídeo. Si quieres leer más sobre la generación de vídeo con IA, te recomiendo estas entradas de blog:


Photo of François Aubry
Author
François Aubry
LinkedIn
Enseñar siempre ha sido mi pasión. Desde mis primeros días como estudiante, busqué con entusiasmo oportunidades para dar clases particulares y ayudar a otros estudiantes. Esta pasión me llevó a realizar un doctorado, en el que también trabajé como ayudante de profesor para apoyar mis esfuerzos académicos. Durante esos años, encontré una inmensa satisfacción en el entorno tradicional del aula, fomentando las conexiones y facilitando el aprendizaje. Sin embargo, con la llegada de las plataformas de aprendizaje en línea, reconocí el potencial transformador de la educación digital. De hecho, participé activamente en el desarrollo de una plataforma de este tipo en nuestra universidad. Estoy profundamente comprometida con la integración de los principios de la enseñanza tradicional con metodologías digitales innovadoras. Mi pasión es crear cursos que no sólo sean atractivos e informativos, sino también accesibles para los alumnos en esta era digital.
Temas

Aprende IA con estos cursos

Track

AI Fundamentals

10hrs hr
Discover the fundamentals of AI, dive into models like ChatGPT, and decode generative AI secrets to navigate the dynamic AI landscape.
See DetailsRight Arrow
Start Course
Ver másRight Arrow
Relacionado

blog

Los 7 mejores generadores de vídeo de IA para 2024 con vídeos de ejemplo

Descubre los mejores generadores de vídeo de IA disponibles en la actualidad, como RunwayML, Synthesia, Colossyan, Pictory, DeepBrain AI, Invideo y el esperadísimo Sora y Veo de DeepMind.
Dr Ana Rojo-Echeburúa's photo

Dr Ana Rojo-Echeburúa

9 min

An AI juggles tasks

blog

Cinco proyectos que puedes crear con modelos de IA generativa (con ejemplos)

Aprende a utilizar modelos de IA generativa para crear un editor de imágenes, un chatbot similar a ChatGPT con pocos recursos y una aplicación clasificadora de aprobación de préstamos y a automatizar interacciones PDF y un asistente de voz con GPT.
Abid Ali Awan's photo

Abid Ali Awan

10 min

tutorial

Guía para principiantes de la API de OpenAI: Tutorial práctico y prácticas recomendadas

Este tutorial te presenta la API de OpenAI, sus casos de uso, un enfoque práctico para utilizar la API y todas las prácticas recomendadas que debes seguir.
Arunn Thevapalan's photo

Arunn Thevapalan

13 min

tutorial

Tutorial FLAN-T5: Guía y puesta a punto

Una guía completa para afinar un modelo FLAN-T5 para una tarea de respuesta a preguntas utilizando la biblioteca de transformadores, y ejecutando la inferencia optmizada en un escenario del mundo real.
Zoumana Keita 's photo

Zoumana Keita

15 min

tutorial

Tutorial de DeepChecks: Automatizar las pruebas de aprendizaje automático

Aprende a realizar la validación de datos y modelos para garantizar un sólido rendimiento del aprendizaje automático utilizando nuestra guía paso a paso para automatizar las pruebas con DeepChecks.
Abid Ali Awan's photo

Abid Ali Awan

12 min

tutorial

Ajuste fino de LLaMA 2: Guía paso a paso para personalizar el modelo de lenguaje grande

Aprende a ajustar Llama-2 en Colab utilizando nuevas técnicas para superar las limitaciones de memoria y computación y hacer más accesibles los grandes modelos lingüísticos de código abierto.
Abid Ali Awan's photo

Abid Ali Awan

12 min

See MoreSee More