Motor de búsqueda de video AI (AVSE)
Un motor de búsqueda de video alimentado por las últimas herramientas en AI
¿Por qué?
Con el aumento del contenido de forma corta con Tiktok y YouTube. Mucho más conocimiento está en videos que nunca. Encontrar respuestas específicas dentro de millones de videos puede ser difícil para cualquier persona. Entonces, la pregunta es si hay Google que indexa el texto en el sitio web que hace que sea más fácil encontrar en función del contexto de su pregunta, ¿por qué no hay Google que indexe el contenido de video que facilita que los usuarios encuentren respuestas dentro de ellos?
Así que construí esto para mostrar que es muy posible con la tecnología y la infraestructura que está fácilmente disponible.
Pila de tecnología
- Supbase (PostgreSQL, PG_Vector, Auth)
- Hasura (capa Graphql, permisos)
- Fly (alojamiento de Hasura)
- Jigsawstack (resumen ai, chat ai)
- VERCE (alojamiento NextJS, funciones sin servidor)
¿Cómo funciona?
Almacenamiento de videos
- La transcripción de video se extrae del video de YouTube
- Transcriptions se ajusta junto con la marca de tiempo basada en https://huggingface.co/supabase/gte-small dimension size
- Almacenado en Postgres DB con el uso de la extensión e indexación PG_Vector
Búsqueda
- Búsqueda de coseno de vector en todo el DB basado en la pregunta para devolver los resultados del relavador
- Cada video en el resultado realizará una segunda búsqueda para encontrar trozos de video relacionados con la pregunta
- Los trozos se asignarán a la transcripción de marca de tiempo para reproducir el clip de relavos del video
Resumen y chat
- La transcripción del video se enviará a la API de Jigsawstack para su resumen tanto en forma como en texto
- Las sesiones de chat serán creadas y administradas por la API Jigsawstack, los trozos relacionados del video se enviarán a la sesión de chat en función de las preguntas
Cosas a tener en cuenta para organizarlo usted mismo
- Necesitará una cuenta de Supabase y Fly.io pagada si planea indexar miles a millones de videos
-
admin/config/fly.toml consiste en configuraciones necesarias para implementar a Hasura para volar - Volumen de migración
admin/migration que puede usar para recrear el esquema a través de Hascuura CLI -
hasura init migration --endpoint <hasuraurl.fly.app> --admin-secret <admin_secret> para actualizar la carpeta de migración en admin -
admin/indexChannelVideos.ts script para indexar una gran cantidad de videos localmente con los canales de YouTube -
.env.example que se necesitan para ejecutarse para proyectar
Preguntas frecuentes
¿No hace YouTube esto?
- En realidad no, YouTube no busca el audio transcrito del video, sino que se basa en el contenido escrito del cargador, como el título, la descripción, las etiquetas. Mientras que todo el contenido de audio no se indica.
¿Cómo va a manejar esta pila millones de videos?
- Puede manejar millones pero tal vez no miles de millones/billones con esta configuración actual. Que requiere más réplicas, instancias y especialmente $
¿Qué sigue?
- Agregar tiktok como fuente de video
- Agregue https://replicate.com/vaibhavs10/incrediblemente- Fast-whisper para transcribir audio
- Mejorar el rendimiento de la consulta significativamente
- Página para ver todos los chats activos