Skip to content

Latest commit

 

History

History
297 lines (193 loc) · 17.6 KB

File metadata and controls

297 lines (193 loc) · 17.6 KB
KrillinAI

Herramienta de Traducción y Doblaje de Video para Humanos / AI Agents (con Colección de Skills)

KrillinAI%2FKrillinAI | Trendshift

English简体中文日本語한국어Tiếng ViệtFrançaisDeutschEspañolPortuguêsРусскийاللغة العربية

Twitter QQ 群 Bilibili Ask DeepWiki

Inicio Rápido

KrillinAI es una solución versátil de localización y mejora de audio y video desarrollada por el equipo de Krillin AI, diseñada tanto para usuarios humanos como para AI Agents. La herramienta cubre el pipeline completo que incluye descarga de video, transcripción de voz, traducción de subtítulos, doblaje TTS, conversión vertical y generación de portadas, soportando formatos apaisados y verticales para asegurar una presentación perfecta en todas las plataformas principales (Bilibili, Xiaohongshu, Douyin, WeChat Video, Kuaishou, YouTube, TikTok, etc.). Los usuarios humanos pueden completar la localización de contenido de extremo a extremo con un clic a través del cliente; cada capacidad también se puede invocar de forma independiente a través de CLI, y los AI Agents pueden orquestar una o varias etapas según sea necesario para componer flujos de trabajo automatizados flexibles.

Nuevas Características

🤖 Soporte CLI: Proporciona una interfaz de línea de comandos por fases, donde cada etapa se ejecuta de forma independiente y produce resultados estructurados, con soporte para reutilización de artefactos entre etapas.

🧩 Colección de Skills: El directorio skills/ proporciona Skills por etapa para que los AI Agents las invoquen directamente bajo un contrato estable, sin necesidad de analizar la documentación de CLI.

🔗 Orquestación de Pipeline: Encadena múltiples etapas en un solo comando, permitiendo la automatización completa desde la descarga hasta el renderizado.

🖼️ Generación de Portada: Genera automáticamente imágenes de portada de plataforma a partir de la miniatura del video original y una plantilla de prompt.

Características y Funciones Clave:

📥 Adquisición de Video: Soporta descargas de yt-dlp o cargas de archivos locales

📜 Reconocimiento Preciso: Reconocimiento de voz de alta precisión basado en Whisper

🧠 Segmentación Inteligente: Segmentación y alineación de subtítulos utilizando LLM

🔄 Reemplazo de Terminología: Reemplazo de vocabulario profesional con un clic

🌍 Traducción Profesional: Traducción LLM con contexto para mantener la semántica natural

🎙️ Clonación de Voz: Ofrece tonos de voz seleccionados de CosyVoice o clonación de voz personalizada

🎬 Composición de Video: Procesa automáticamente videos apaisados y verticales y el diseño de subtítulos

💻 Multiplataforma: Soporta Windows, Linux, macOS, proporcionando versiones de escritorio, servidor y CLI

Demostración de Efecto

La imagen a continuación muestra el efecto del archivo de subtítulos generado después de importar un video local de 46 minutos y ejecutarlo con un clic, sin ajustes manuales. No hay omisiones ni superposiciones, la segmentación es natural y la calidad de la traducción es muy alta. Efecto de Alineación

Traducción de Subtítulos


subtitle_translation.mp4

Doblaje


tts.mp4

Modo Vertical


agi.mp4

🔍 Servicios de Reconocimiento de Voz Soportados

Todos los modelos locales en la tabla a continuación soportan la instalación automática de archivos ejecutables + archivos de modelo; solo necesitas elegir, y Klic preparará todo por ti.

Fuente del Servicio Plataformas Soportadas Opciones de Modelo Local/Nube Observaciones
OpenAI Whisper Todas las Plataformas - Nube Velocidad rápida y buen efecto
FasterWhisper Windows/Linux tiny/medium/large-v2 (recomendado medium+) Local Velocidad más rápida, sin costo de servicio en la nube
WhisperKit macOS (solo M-series) large-v2 Local Optimización nativa para chips de Apple
WhisperCpp Todas las Plataformas large-v2 Local Soporta todas las plataformas
Alibaba Cloud ASR Todas las Plataformas - Nube Evita problemas de red en China continental

🚀 Soporte para Modelos de Lenguaje Grande

✅ Compatible con todos los servicios de modelos de lenguaje grande en la nube/local que cumplen con las especificaciones de la API de OpenAI, incluyendo pero no limitado a:

  • OpenAI
  • Gemini
  • DeepSeek
  • Tongyi Qianwen
  • Modelos de código abierto desplegados localmente
  • Otros servicios de API compatibles con el formato de OpenAI

🎤 Soporte TTS Texto a Voz

  • Servicio de Voz de Alibaba Cloud
  • OpenAI TTS

Soporte de Idiomas

Idiomas de entrada soportados: Chino, Inglés, Japonés, Alemán, Turco, Coreano, Ruso, Malayo (en continuo aumento)

Idiomas de traducción soportados: Inglés, Chino, Ruso, Español, Francés y 101 otros idiomas

Vista Previa de la Interfaz

Vista Previa de la Interfaz Vista Previa de la Interfaz

🚀 Inicio Rápido

Puedes hacer preguntas en el Deepwiki de KrillinAI. Indexa los archivos en el repositorio, por lo que puedes encontrar respuestas rápidamente.

Pasos Básicos

Primero, descarga el archivo ejecutable que coincida con el sistema de tu dispositivo desde el Release, luego sigue el tutorial a continuación para elegir entre la versión de escritorio o la versión no de escritorio. Coloca la descarga del software en una carpeta vacía, ya que ejecutarlo generará algunos directorios, y mantenerlo en una carpeta vacía facilitará la gestión.

【Si es la versión de escritorio, es decir, el archivo de lanzamiento con "desktop," consulta aquí】 La versión de escritorio se ha lanzado recientemente para abordar los problemas de los nuevos usuarios que luchan por editar correctamente los archivos de configuración, y hay algunos errores que se están actualizando continuamente.

  1. Haz doble clic en el archivo para comenzar a usarlo (la versión de escritorio también requiere configuración dentro del software)

【Si es la versión no de escritorio, es decir, el archivo de lanzamiento sin "desktop," consulta aquí】 La versión no de escritorio es la versión inicial, que tiene una configuración más compleja pero es estable en funcionalidad y adecuada para el despliegue en servidores, ya que proporciona una interfaz de usuario en formato web.

  1. Crea una carpeta config dentro de la carpeta, luego crea un archivo config.toml en la carpeta config. Copia el contenido del archivo config-example.toml del directorio config del código fuente en config.toml, y completa tu información de configuración según los comentarios.
  2. Haz doble clic o ejecuta el archivo ejecutable en la terminal para iniciar el servicio
  3. Abre tu navegador e ingresa http://127.0.0.1:8888 para comenzar a usarlo (reemplaza 8888 con el puerto que especificaste en el archivo de configuración)

Para: Usuarios de macOS

【Si es la versión de escritorio, es decir, el archivo de lanzamiento con "desktop," consulta aquí】 Debido a problemas de firma, la versión de escritorio actualmente no se puede ejecutar con doble clic ni instalar a través de dmg; necesitas confiar manualmente en la aplicación. El método es el siguiente:

  1. Abre la terminal en el directorio donde se encuentra el archivo ejecutable (suponiendo que el nombre del archivo es KrillinAI_1.0.0_desktop_macOS_arm64)
  2. Ejecuta los siguientes comandos en orden:
sudo xattr -cr ./KrillinAI_1.0.0_desktop_macOS_arm64
sudo chmod +x ./KrillinAI_1.0.0_desktop_macOS_arm64
./KrillinAI_1.0.0_desktop_macOS_arm64

【Si es la versión no de escritorio, es decir, el archivo de lanzamiento sin "desktop," consulta aquí】 Este software no está firmado, por lo que al ejecutarlo en macOS, después de completar la configuración del archivo en los "Pasos Básicos," también necesitas confiar manualmente en la aplicación. El método es el siguiente:

  1. Abre la terminal en el directorio donde se encuentra el archivo ejecutable (suponiendo que el nombre del archivo es KrillinAI_1.0.0_macOS_arm64)

  2. Ejecuta los siguientes comandos en orden:

    sudo xattr -rd com.apple.quarantine ./KrillinAI_1.0.0_macOS_arm64
    sudo chmod +x ./KrillinAI_1.0.0_macOS_arm64
    ./KrillinAI_1.0.0_macOS_arm64
    

    Esto iniciará el servicio

Despliegue en Docker

Este proyecto soporta el despliegue en Docker; por favor consulta las Instrucciones de Despliegue en Docker

Uso de CLI

KrillinAI ahora ofrece una CLI por etapas, adecuada para scripts, pipelines de automatización y agentes de IA. La CLI se ejecuta de forma síncrona por defecto, imprime una línea JSON en stdout al finalizar y escribe krillinai_manifest.json en el directorio de trabajo para que las etapas posteriores puedan reutilizar los artefactos existentes.

Compilar la CLI desde el código fuente:

go build -o build/krillinai-cli ./cmd/cli

Resumen de comandos:

Comando Uso Artefactos comunes
subtitle Genera subtítulos desde enlaces de YouTube / Bilibili o videos locales; primero intenta usar subtítulos de la plataforma y, si falla, recurre a Whisper origin_language_srt.srt, target_language_srt.srt, bilingual_srt.srt, short_origin_mixed_srt.srt
tts Genera doblaje en el idioma destino a partir de los subtítulos destino tts_final_audio.wav, video_with_tts.mp4
render-horizontal Genera video horizontal: video original + subtítulos bilingües, o video doblado + subtítulos en el idioma destino horizontal_bilingual.mp4
render-vertical Genera video vertical: video original convertido a vertical + subtítulos cortos, o video doblado + subtítulos en el idioma destino transferred_vertical_video.mp4, vertical_bilingual.mp4
pipeline Encadena varias etapas según outputs Depende de las etapas seleccionadas
cover Genera una portada a partir de la portada original del video y una plantilla de prompt generated_cover.png

Flujo de trabajo típico:

# 1. Generar subtítulos de origen, destino, bilingües y cortos para vertical
./build/krillinai-cli subtitle "https://www.youtube.com/watch?v=dQw4w9WgXcQ" \
  --origin-lang en \
  --target-lang zh_cn \
  --workdir tasks/demo \
  --caption-source any

# 2. Generar doblaje desde los subtítulos del idioma destino
./build/krillinai-cli tts \
  --workdir tasks/demo \
  --input-srt tasks/demo/target_language_srt.srt \
  --line-mode target-only \
  --video tasks/demo/origin_video.mp4

# 3. Generar video horizontal con subtítulos bilingües
./build/krillinai-cli render-horizontal \
  --workdir tasks/demo \
  --video tasks/demo/origin_video.mp4 \
  --subtitle tasks/demo/bilingual_srt.srt

# 4. Generar video vertical con subtítulos bilingües cortos
./build/krillinai-cli render-vertical \
  --workdir tasks/demo \
  --video tasks/demo/origin_video.mp4 \
  --subtitle tasks/demo/short_origin_mixed_srt.srt \
  --major-title "Tema de hoy" \
  --minor-title "AI Video"

Convenciones de integración para Agent:

  • Lee primero la última línea JSON de stdout y krillinai_manifest.json; no analices logs normales.
  • El campo outputs registra las rutas de los artefactos; los comandos posteriores pueden reutilizar el manifest pasando solo --workdir.
  • --dry-run valida parámetros y genera el manifest sin descargar videos ni llamar servicios externos de IA.
  • Maneja errores según error.kind: usage corrige parámetros, retryable permite reintentar, dependency requiere instalar ffmpeg / ffprobe / yt-dlp.

Para una explicación más completa de los parámetros, consulta el resumen de capacidades de la CLI.

Agent Skills

El repositorio también incluye Agent Skills listas para usar en skills/, para que los agentes puedan llamar la CLI con convenciones estables:

Basado en el archivo de configuración proporcionado, aquí está la sección actualizada "Ayuda de Configuración (Debe Leer)" para tu archivo README:

Ayuda de Configuración (Debe Leer)

El archivo de configuración se divide en varias secciones: [app], [server], [llm], [transcribe], y [tts]. Una tarea se compone de reconocimiento de voz (transcribe) + traducción de modelo grande (llm) + servicios de voz opcionales (tts). Entender esto te ayudará a comprender mejor el archivo de configuración.

Configuración Más Fácil y Rápida:

Solo para Traducción de Subtítulos:

  • En la sección [transcribe], establece provider.name en openai.
  • Luego solo necesitarás llenar tu clave API de OpenAI en el bloque [llm] para comenzar a realizar traducciones de subtítulos. app.proxy, model, y openai.base_url se pueden llenar según sea necesario.

Costo, Velocidad y Calidad Balanceados (Usando Reconocimiento de Voz Local):

  • En la sección [transcribe], establece provider.name en fasterwhisper.
  • Establece transcribe.fasterwhisper.model en large-v2.
  • Completa tu configuración de modelo de lenguaje grande en el bloque [llm].
  • El modelo local requerido se descargará e instalará automáticamente.

Configuración de Texto a Voz (TTS) (Opcional):

  • La configuración de TTS es opcional.
  • Primero, establece provider.name en la sección [tts] (por ejemplo, aliyun o openai).
  • Luego, completa el bloque de configuración correspondiente para el proveedor seleccionado. Por ejemplo, si eliges aliyun, debes llenar la sección [tts.aliyun].
  • Los códigos de voz en la interfaz de usuario deben elegirse según la documentación del proveedor seleccionado.
  • Nota: Si planeas usar la función de clonación de voz, debes seleccionar aliyun como proveedor de TTS.

Configuración de Alibaba Cloud:

  • Para detalles sobre cómo obtener el AccessKey, Bucket, y AppKey necesarios para los servicios de Alibaba Cloud, consulta las Instrucciones de Configuración de Alibaba Cloud. Los campos repetidos para AccessKey, etc., están diseñados para mantener una estructura de configuración clara.

Preguntas Frecuentes

Por favor visita Preguntas Frecuentes

Directrices de Contribución

  1. No envíes archivos inútiles, como .vscode, .idea, etc.; por favor usa .gitignore para filtrarlos.
  2. No envíes config.toml; en su lugar, envía config-example.toml.

Contáctanos

  1. Únete a nuestro grupo de QQ para preguntas: 754069680
  2. Sigue nuestras cuentas en redes sociales, Bilibili, donde compartimos contenido de calidad en el campo de la tecnología de IA todos los días.

Historial de Estrellas

Gráfico de Historial de Estrellas