Back to Krillinai

Инструмент перевода и дубляжа видео для людей / AI-агентов (с коллекцией Skills)

docs/rus/README.md

2.0.224.1 KB
Original Source
<div align="center">

Инструмент перевода и дубляжа видео для людей / AI-агентов (с коллекцией Skills)

<a href="https://trendshift.io/repositories/13360" target="_blank"></a>

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

</div>

Введение в проект (v2.0 с поддержкой Agent — уже доступно)

Быстрый старт

KrillinAI — это универсальное решение для локализации и улучшения аудио и видео, разработанное командой Krillin AI и предназначенное как для пользователей-людей, так и для AI-агентов. Инструмент охватывает полный конвейер, включая загрузку видео, транскрипцию речи, перевод субтитров, TTS-дубляж, конвертацию в вертикальный формат и генерацию обложек, поддерживая как горизонтальный, так и вертикальный форматы для обеспечения идеальной презентации на всех основных платформах (Bilibili, Xiaohongshu, Douyin, WeChat Video, Kuaishou, YouTube, TikTok и др.). Пользователи-люди могут завершить сквозную локализацию контента одним кликом через клиент; каждая возможность также может быть вызвана независимо через CLI, и AI-агенты могут оркестрировать один или несколько этапов по мере необходимости для создания гибких автоматизированных рабочих процессов.

Новые Функции

🤖 Поддержка CLI: Предоставляет поэтапный интерфейс командной строки, где каждый этап выполняется независимо и выводит структурированные результаты с поддержкой повторного использования артефактов между этапами.

🧩 Коллекция Skills: Директория skills/ предоставляет Skills для каждого этапа, которые AI-агенты могут вызывать напрямую по стабильному контракту, без необходимости самостоятельно разбирать документацию CLI.

🔗 Оркестрация Pipeline: Объедините несколько этапов в одну команду, обеспечивая полную автоматизацию от загрузки до рендеринга.

🖼️ Генерация обложки: Автоматически создавайте обложки для платформ из миниатюры оригинального видео и шаблона подсказки.

Ключевые особенности и функции:

📥 Получение видео: Поддерживает загрузку через yt-dlp или загрузку локальных файлов

📜 Точная распознаваемость: Высокоточное распознавание речи на основе Whisper

🧠 Интеллектуальная сегментация: Сегментация и выравнивание субтитров с использованием LLM

🔄 Замена терминологии: Замена профессиональной лексики в один клик

🌍 Профессиональный перевод: Перевод LLM с учетом контекста для сохранения естественной семантики

🎙️ Клонирование голоса: Предлагает выбранные голосовые тона от CosyVoice или индивидуальное клонирование голоса

🎬 Компоновка видео: Автоматическая обработка горизонтальных и вертикальных видео и компоновка субтитров

💻 Кроссплатформенность: Поддерживает Windows, Linux, macOS, предоставляя настольную, серверную версии и CLI

Демонстрация эффекта

На изображении ниже показан эффект файла субтитров, сгенерированного после импорта 46-минутного локального видео и его выполнения в один клик, без каких-либо ручных настроек. Нет пропусков или наложений, сегментация естественная, а качество перевода очень высокое.

<table> <tr> <td width="33%">

Перевод субтитров


https://github.com/user-attachments/assets/bba1ac0a-fe6b-4947-b58d-ba99306d0339

</td> <td width="33%">

Дубляж


https://github.com/user-attachments/assets/0b32fad3-c3ad-4b6a-abf0-0865f0dd2385

</td> <td width="33%">

Вертикальный режим


https://github.com/user-attachments/assets/c2c7b528-0ef8-4ba9-b8ac-f9f92f6d4e71

</td> </tr> </table>

🔍 Поддерживаемые службы распознавания речи

Все локальные модели в таблице ниже поддерживают автоматическую установку исполняемых файлов + файлов моделей; вам просто нужно выбрать, и Klic подготовит все для вас.

Источник службыПоддерживаемые платформыОпции моделиЛокально/ОблачноПримечания
OpenAI WhisperВсе платформы-ОблачноБыстрая скорость и хороший эффект
FasterWhisperWindows/Linuxtiny/medium/large-v2 (рекомендуется medium+)ЛокальноБыстрая скорость, без затрат на облачные услуги
WhisperKitmacOS (только M-серии)large-v2ЛокальноНативная оптимизация для чипов Apple
WhisperCppВсе платформыlarge-v2ЛокальноПоддерживает все платформы
Alibaba Cloud ASRВсе платформы-ОблачноИзбегает сетевых проблем в материковом Китае

🚀 Поддержка больших языковых моделей

✅ Совместимо со всеми облачными/локальными службами больших языковых моделей, соответствующими спецификациям API OpenAI, включая, но не ограничиваясь:

  • OpenAI
  • Gemini
  • DeepSeek
  • Tongyi Qianwen
  • Локально развернутые модели с открытым исходным кодом
  • Другие API-сервисы, совместимые с форматом OpenAI

🎤 Поддержка TTS (текст в речь)

  • Alibaba Cloud Voice Service
  • OpenAI TTS

Поддержка языков

Поддерживаемые языки ввода: китайский, английский, японский, немецкий, турецкий, корейский, русский, малайский (постоянно увеличивается)

Поддерживаемые языки перевода: английский, китайский, русский, испанский, французский и 101 другой язык

Предварительный просмотр интерфейса

🚀 Быстрый старт

Вы можете задать вопросы на Deepwiki KrillinAI. Он индексирует файлы в репозитории, так что вы можете быстро найти ответы.

Основные шаги

Сначала загрузите исполняемый файл, соответствующий вашей системе, из раздела Release, затем следуйте приведенному ниже руководству, чтобы выбрать между настольной версией или версией без интерфейса. Поместите загруженное программное обеспечение в пустую папку, так как его запуск создаст некоторые директории, и хранение в пустой папке упростит управление.

【Если это настольная версия, т.е. файл релиза с "desktop", смотрите здесь】 Настольная версия была недавно выпущена, чтобы решить проблемы новых пользователей с правильным редактированием конфигурационных файлов, и в ней есть некоторые ошибки, которые постоянно обновляются.

  1. Дважды щелкните файл, чтобы начать его использование (настольная версия также требует настройки внутри программы)

【Если это версия без интерфейса, т.е. файл релиза без "desktop", смотрите здесь】 Версия без интерфейса — это начальная версия, которая имеет более сложную конфигурацию, но стабильна по функциональности и подходит для серверного развертывания, так как предоставляет интерфейс в веб-формате.

  1. Создайте папку config внутри папки, затем создайте файл config.toml в папке config. Скопируйте содержимое файла config-example.toml из директории config исходного кода в config.toml и заполните свою конфигурационную информацию в соответствии с комментариями.
  2. Дважды щелкните или выполните исполняемый файл в терминале, чтобы запустить службу
  3. Откройте браузер и введите http://127.0.0.1:8888, чтобы начать его использование (замените 8888 на порт, указанный в конфигурационном файле)

Для пользователей macOS

【Если это настольная версия, т.е. файл релиза с "desktop", смотрите здесь】 Из-за проблем с подписью настольная версия в настоящее время не может быть запущена двойным щелчком или установлена через dmg; вам нужно вручную доверять приложению. Метод следующий:

  1. Откройте терминал в директории, где находится исполняемый файл (предполагая, что имя файла KrillinAI_1.0.0_desktop_macOS_arm64)
  2. Выполните следующие команды по порядку:
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

【Если это версия без интерфейса, т.е. файл релиза без "desktop", смотрите здесь】 Это программное обеспечение не подписано, поэтому при запуске на macOS, после завершения настройки файла в "Основных шагах", вам также нужно вручную доверять приложению. Метод следующий:

  1. Откройте терминал в директории, где находится исполняемый файл (предполагая, что имя файла KrillinAI_1.0.0_macOS_arm64)

  2. Выполните следующие команды по порядку:

    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
    

    Это запустит службу

Развертывание с помощью Docker

Этот проект поддерживает развертывание с помощью Docker; пожалуйста, обратитесь к Инструкциям по развертыванию Docker

Использование CLI

KrillinAI теперь предоставляет поэтапный CLI, удобный для скриптов, автоматизированных пайплайнов и AI Agent. По умолчанию CLI выполняется синхронно, после завершения выводит одну строку JSON в stdout и записывает krillinai_manifest.json в рабочий каталог, чтобы последующие этапы могли переиспользовать уже созданные артефакты.

Сборка CLI из исходного кода:

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

Обзор команд:

КомандаНазначениеОсновные артефакты
subtitleСоздает субтитры из ссылок YouTube / Bilibili или локального видео; сначала пытается скачать субтитры платформы, а при неудаче переходит к транскрибации Whisperorigin_language_srt.srt, target_language_srt.srt, bilingual_srt.srt, short_origin_mixed_srt.srt
ttsСоздает озвучку на целевом языке по целевым субтитрамtts_final_audio.wav, video_with_tts.mp4
render-horizontalСоздает горизонтальное видео: оригинальное видео + двуязычные субтитры или видео с озвучкой + субтитры на целевом языкеhorizontal_bilingual.mp4
render-verticalСоздает вертикальное видео: оригинальное видео, преобразованное в вертикальный формат + короткие субтитры, или видео с озвучкой + субтитры на целевом языкеtransferred_vertical_video.mp4, vertical_bilingual.mp4
pipelineСвязывает несколько этапов согласно outputsЗависит от выбранных этапов
coverСоздает обложку на основе исходной обложки видео и шаблона promptgenerated_cover.png

Типичный рабочий процесс:

bash
# 1. Создать исходные, целевые, двуязычные и короткие вертикальные субтитры
./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. Создать озвучку по субтитрам целевого языка
./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. Создать горизонтальное видео с двуязычными субтитрами
./build/krillinai-cli render-horizontal \
  --workdir tasks/demo \
  --video tasks/demo/origin_video.mp4 \
  --subtitle tasks/demo/bilingual_srt.srt

# 4. Создать вертикальное видео с короткими двуязычными субтитрами
./build/krillinai-cli render-vertical \
  --workdir tasks/demo \
  --video tasks/demo/origin_video.mp4 \
  --subtitle tasks/demo/short_origin_mixed_srt.srt \
  --major-title "Тема дня" \
  --minor-title "AI Video"

Правила интеграции для Agent:

  • Сначала читайте последнюю строку JSON из stdout и krillinai_manifest.json; не анализируйте обычные логи.
  • Поле outputs хранит пути к артефактам, поэтому последующие команды могут переиспользовать manifest, передав только --workdir.
  • --dry-run проверяет параметры и создает manifest без загрузки видео и без вызова внешних AI-сервисов.
  • Обрабатывайте ошибки по error.kind: usage означает исправить параметры, retryable означает повторить попытку, dependency означает установить ffmpeg / ffprobe / yt-dlp.

Более подробное описание параметров смотрите в сводке возможностей CLI.

На основе предоставленного конфигурационного файла вот обновленный раздел "Помощь по конфигурации (обязательно к прочтению)" для вашего файла README:

Помощь по конфигурации (обязательно к прочтению)

Конфигурационный файл разделен на несколько секций: [app], [server], [llm], [transcribe] и [tts]. Задача состоит из распознавания речи (transcribe) + перевода большой модели (llm) + необязательных голосовых услуг (tts). Понимание этого поможет вам лучше разобраться в конфигурационном файле.

Самая простая и быстрая конфигурация:

Только для перевода субтитров:

  • В секции [transcribe] установите provider.name на openai.
  • Вам нужно будет только заполнить свой API-ключ OpenAI в блоке [llm], чтобы начать выполнять переводы субтитров. app.proxy, model и openai.base_url можно заполнить по мере необходимости.

Сбалансированные затраты, скорость и качество (используя локальное распознавание речи):

  • В секции [transcribe] установите provider.name на fasterwhisper.
  • Установите transcribe.fasterwhisper.model на large-v2.
  • Заполните конфигурацию вашей большой языковой модели в блоке [llm].
  • Необходимая локальная модель будет автоматически загружена и установлена.

Конфигурация TTS (текст в речь) (необязательно):

  • Конфигурация TTS является необязательной.
  • Сначала установите provider.name в секции [tts] (например, aliyun или openai).
  • Затем заполните соответствующий блок конфигурации для выбранного провайдера. Например, если вы выберете aliyun, вам нужно будет заполнить секцию [tts.aliyun].
  • Код голосов в пользовательском интерфейсе следует выбирать на основе документации выбранного провайдера.
  • Примечание: Если вы планируете использовать функцию клонирования голоса, вы должны выбрать aliyun в качестве провайдера TTS.

Конфигурация Alibaba Cloud:

  • Для получения необходимых AccessKey, Bucket и AppKey для услуг Alibaba Cloud, пожалуйста, обратитесь к Инструкциям по конфигурации Alibaba Cloud. Повторяющиеся поля для AccessKey и т.д. предназначены для поддержания четкой структуры конфигурации.

Часто задаваемые вопросы

Пожалуйста, посетите Часто задаваемые вопросы

Руководство по внесению вклада

  1. Не отправляйте бесполезные файлы, такие как .vscode, .idea и т.д.; пожалуйста, используйте .gitignore, чтобы отфильтровать их.
  2. Не отправляйте config.toml; вместо этого отправьте config-example.toml.

Свяжитесь с нами

  1. Присоединяйтесь к нашей группе QQ для вопросов: 754069680
  2. Подписывайтесь на наши социальные сети, Bilibili, где мы каждый день делимся качественным контентом в области технологий ИИ.

История звезд