🤖 La herramienta definitiva de análisis de IA de YouTube: construyendo mejores videos con IA
Como programador, debería saber todo sobre algoritmos, pero el algoritmo de YouTube siempre ha sido un poco misterioso. A veces recomienda videos que creo, y otras veces simplemente los ignora. Solo este año, parece que se han creado más herramientas de IA de las que hay tipos de queso, así que quería ver si podía aprovechar el poder de la IA para descifrar el algoritmo de YouTube. Mis objetivos son tres: en primer lugar, quiero crear mejores videos. Suena un poco meta, pero siempre disfruto construyendo ideas en público. En segundo lugar, quiero diseñar las miniaturas más atractivas que pueda imaginar, aquellas que obtengan tasas de clics más altas y que tampoco sean engañosas. En tercer lugar, quiero que la IA me ayude a construir títulos interesantes, únicos y que la gente no pueda evitar hacer clic en ellos.
📝 Tabla de contenidos
- Día cero: investigación de mercado
- Día dos: construyendo el front-end y el back-end
- Día tres: construyendo el front-end
- Día cuatro: configurando una base de datos
- Día cinco: introducción a la IA
- Día seis: herramienta de resaltado de IA
- Día siete: generando títulos con IA
- Conclusión
Día cero: investigación de mercado
Antes de comenzar cualquier nuevo SAS o producto o servicio, se requiere investigación de mercado. Busqué en Google y vi que ya existían empresas como VidIQ y Chewbuddy que hacen algo similar. Se han vuelto populares recientemente con el crecimiento de YouTube y han comenzado a implementar herramientas de IA abierta en su suite existente. De hecho, me gusta su herramienta de sugerencia de títulos, pero todas las empresas bajo el sol en estos días están agregando chat GPT a su servicio. Así que, en lugar de simplemente hacer eso, quería llevarlo un paso más allá.
Lo que me gustaría es que una IA revise mis videos y luego me diga realmente qué partes son interesantes y cuáles son aburridas. Esto me ayudaría en la etapa de edición de video para crear contenido relevante sin aburrir a nadie. Mencioné que quería hacer algún tipo de prueba AB con miniaturas, algo que me ayudaría a revisar los diseños de miniaturas y tal vez incluso darme etiquetas y sugerencias de lo que funcionaría mejor. Tal vez un paso más sería si pudiera incluso hacer ajustes a la miniatura real en tiempo real, como eliminar fondos, cambiar fondos, caras y otras cosas. Idealmente, no tendría que abrir Photoshop y hacer estos cambios manualmente. En su lugar, utilizando las capacidades de la IA generativa para hacerlos por mí en tiempo real. Y lo último que quiero hacer es ver si puedo incorporar Del 3 en la revisión de mis videos. Estoy pensando en combinar algo como subtítulos con imágenes fijas de video como contenido de imagen que Del 3 puede analizar y luego ver si puede revisar los videos por mí también.
Día dos: construyendo el front-end y el back-end
Necesito un front-end y un back-end para construir esto, y noté que Next.js ha lanzado una nueva versión de su marco, la versión 14, que también es ahora del lado del servidor en términos de componentes de react. Nunca he usado Next.js antes, así que pensé que esta sería una gran oportunidad para aprender cómo funciona para este proyecto. Con una solución de pila completa, necesito una forma para que los usuarios se registren e inicien sesión. Encontré este paquete llamado NextAuth, que es una solución de autenticación para Next.js. Permite a los usuarios iniciar sesión con múltiples tipos de proveedores. Sin embargo, dado que mi idea es principalmente para YouTube, lo voy a limitar a usuarios de Google que tienen cuentas de YouTube. Esto no fue tan fácil. Requirió que configurara una configuración con la consola de desarrollador de Google y también habilitara la API de datos de YouTube y la API de análisis, pero funcionó. Ahora podía hacer que los usuarios iniciaran sesión y luego se generaría un token y se capturaría para que pudiera ver los datos de la cuenta de YouTube.
Día tres: construyendo el front-end
Creé una página de inicio rápida con un solo botón para permitirme iniciar sesión en mi cuenta. Luego, usando Next.js, creé una ruta de API simple. Para esta ruta, solo quería sacar los detalles de mi propio canal como un objeto que luego podría pasar a un componente de react. Sin embargo, me encontré con un pequeño problema. Tan pronto como pasaron unas horas, ya no pude usar el token para hacer consultas a la API de YouTube. Esto se debe a que mientras tenía un token de acceso, también tenía un token de actualización, que no estaba almacenando, y necesitaba usarlo para actualizar el token de acceso; de lo contrario, expiraría. Esto significa que necesitaba una base de datos y un lugar para almacenar toda esta información. No solo para almacenar el token de actualización y el token de acceso, sino también para almacenar los detalles que obtengo porque prefiero almacenar en caché eso en una base de datos que llamarlo desde la API de YouTube una y otra vez porque si lo hiciera, entonces podría agotar mi cuota de YouTube porque solo te dan tantas llamadas que puedes hacer. Creo que fue algo así como 10,000,000 unidades de API, y cada interacción utiliza una cantidad diferente de unidades por día, que se reinicia. Así que en su lugar, voy a almacenar esto en una base de datos. Esto me llevó al día cuatro.
Día cuatro: configurando una base de datos
Me dirigí a y creé una base de datos compartida en la nube gratuita, y luego la usé para interactuar con esos datos. Creé algunos modelos simples en mi código aquí para usuarios, videos, canales, y esto lo usaré para almacenar la información cuando un usuario inicie sesión. Después de un poco de programación, llegué a este script. Verifica si el usuario ha iniciado sesión y extrae su registro. Verifica si su perfil tiene un canal, y si no lo tiene, hace una conexión a la API de YouTube. Verifica si el token de API está actualizado, y si no lo está, genera uno nuevo. Usando esta información, luego crea una llamada a la API de datos de YouTube, extrayendo los detalles del canal para fragmentos, estadísticas y detalles de contenido. Esto luego crea una nueva entrada de base de datos para un canal, y este canal se llena con esas métricas como la cantidad de vistas de miniaturas, la cantidad de suscriptores, la cantidad de videos, etc. Una vez que se recopila toda esta información, es la