Перейти до вмісту
Ця стаття була перекладена з японської мови за допомогою ШІ
Читати японською
Ця стаття знаходиться в суспільному надбанні (CC0). Ви можете вільно використовувати її. CC0 1.0 Universal

Автоматична генерація відеопрезентацій з дописів у блогах

https://youtu.be/vmt_WVBJMj4?si=OZlzEqfEvWjPakYV

Я розробив систему, яка використовує генеративний ШІ для автоматичного створення відеопрезентацій з дописів у блогах та завантаження їх на YouTube.

Завдяки деякій винахідливості генеративний ШІ може не тільки розробляти сюжет презентації, а й створювати презентаційні матеріали.

Крім того, дозволивши генеративному ШІ створити сценарій для презентації, а потім давши ШІ для перетворення тексту в мовлення прочитати цей сценарій вголос, також можна генерувати аудіодані.

Поєднання презентаційних матеріалів та аудіоданих потім створює відео.

Завдяки автоматизації цієї серії завдань мені вдалося автоматично генерувати відеопрезентації одним кліком.

Механізм

Найважливішою частиною процесу є генерація презентаційних матеріалів.

Генеративний ШІ чудово створює зображення, але це зазвичай обмежується фотографіями або малюнками. Створення документів, орієнтованих на текст та фігури, таких як презентаційні матеріали, є складним завданням для ШІ, що генерує зображення.

Тому я генерую текстові та фігуроцентричні матеріали у текстовому форматі, подібному до мови програмування.

Для створення таких матеріалів можна використовувати кілька форматів.

Спочатку я спробував Marp, формат, спеціально призначений для створення презентацій, але його можливості були обмежені. Тому я вирішив використовувати більш загальний формат SVG, який призначений для векторної графіки.

За допомогою текстового формату, такого як SVG, стандартний чат-орієнтований генеративний ШІ може створити матеріали, якщо йому надати запит на кшталт: «Будь ласка, створіть презентаційні матеріали у форматі SVG, що представляють вміст цієї статті блогу».

Проблема переповнення тексту

Проблема полягає в тому, що текст часто виходить за межі зовнішньої рамки документа або рамок фігур всередині документа.

Людина відразу помітить переповнення тексту при перегляді готового документа. Однак виявити переповнення тексту на етапі SVG-тексту, а не шляхом візуального огляду готового документа, складно.

Як наслідок, чат-орієнтований генеративний ШІ часто створює документи з частим переповненням тексту.

Звісно, ШІ генерує більшу частину вмісту добре, і я міг би просто вручну виправити переповнення тексту. Однак це призвело б до ручного кроку кожного разу.

Тому виникла необхідність впровадити заходи для запобігання переповненню тексту при генерації SVG-документів та розробити механізм для автоматичного виявлення будь-якого переповнення тексту в згенерованому SVG.

Щоб запобігти переповненню тексту, я застосував підхід, який полягає в наданні генеративному ШІ базових правил, операційних процедур та застережень при інструктуванні його щодо створення презентаційних матеріалів.

Як правила, я наказав йому не використовувати складні фігури та фіксувати розмір шрифту тексту.

Крім того, я наказав йому дотримуватися процедури підрахунку кількості символів у реченні в документі, множення цього на розмір шрифту для оцінки ширини та висоти, а потім попереднього підтвердження, що текст не виходить за межі рамки або фігур.

Під час цього процесу я наказав ШІ записувати перевірений процес та результати як коментарі попередньої перевірки у файл SVG.

Додавання цих інструкцій принесло деяке покращення, але початкова точність не була задовільною. Тому я неодноразово генерував кілька варіантів, додавав загальні помилки як застереження до інструкцій та неодноразово підкреслював правила та інструкції в текстовому запиті, якщо їх не дотримувалися.

Ітеруючи ці покращення запитів шляхом спроб і помилок, переповнення тексту можна певною мірою придушити.

Однак, навіть з усіма цими зусиллями, досконалості досягти неможливо, тому я вирішив реалізувати перевірку на пізнішому етапі.

Для цієї перевірки після генерації я спробував використати генеративний ШІ, здатний візуально перевіряти зображення, але він не міг ефективно виявити переповнення тексту, тому я відмовився від цього підходу.

Далі я спробував інший метод: ввести SVG-текст назад у чат-орієнтований генеративний ШІ для перевірки.

Цей метод краще виявляв переповнення тексту, ніж ШІ для візуального огляду, але його точність виявлення все ще не була дуже високою. Тут знову ж таки, шляхом ітеративного покращення інструкцій для виявлення переповнення, я міг досягти певного рівня точності, але не ідеального.

Тому я вирішив створити програму для більш ретельного виявлення переповнення тексту. Ця програма перевіряє, чи виходить текст за межі рамки документа або внутрішніх фігур, розраховуючи ширину та висоту за довжиною речень та розміром шрифту в презентаційних матеріалах, як це було доручено генеративному ШІ.

Створення цієї програми було трудомістким, але зрештою вона стала здатною до точного виявлення.

Крім переповнення тексту, були також випадки, коли ШІ намагався створити складні діаграми та створював спотворені вихідні дані. Для таких аспектів я зберіг підхід, за якого чат-орієнтований генеративний ШІ виконує перевірку на порушення правил.

Ця перевірка визначає, чи ШІ створив фігури, складніші за визначені в правилах, позначаючи їх як неприйнятні.

За допомогою цієї програми для перевірки переповнення та генеративного ШІ для перевірки порушення правил тепер можна значною мірою виявляти проблеми.

Подальша обробка

Якщо під час цих перевірок виявляється відхилення, згенерований матеріал у форматі SVG відкидається та генерується заново. Це тому, що вказівка та виправлення проблемних областей часто призводить до інших проблем, що в кінцевому підсумку займає більше часу.

Після того, як презентаційний матеріал без переповнення тексту готовий, наступним кроком є введення цього матеріалу та оригінальної статті з блогу в генеративний ШІ для створення сценарію розповіді. Тут не знадобилося особливої винахідливості.

Потім сценарій розповіді перетворюється на аудіодані за допомогою генеративного ШІ для перетворення тексту в мовлення. Знову ж таки, для цього не потрібні були спеціальні методи.

Нарешті, презентаційний матеріал у форматі SVG перетворюється на зображення PNG, а потім, використовуючи інструмент під назвою ffmpeg, конвертується у відеоформат mp4 зі звуком. На цьому процес завершується.

Серію процесів після створення слайдів у форматі SVG можна легко автоматизувати, написавши програми під час консультацій з генеративним ШІ.

Висновок

Успішно створивши та вдосконаливши цю систему автоматичної генерації відеопрезентацій, я почав публікувати відео на YouTube минулого тижня.

Однак невдовзі після завершення цієї системи, Google NotebookLM, інструмент ШІ, також отримав подібну функцію для автоматичної генерації відео для пояснення текстових документів.

Тому очікується, що в майбутньому компанії, що пропонують послуги ШІ, випускатимуть подібні сервіси, усуваючи необхідність для окремих осіб створювати такі системи з нуля.

Проте розробка практичної програми, що використовує генеративний ШІ таким серйозним чином, стала значним досягненням, дозволивши мені зрозуміти ключові принципи ефективного використання генеративного ШІ.