Уникальный качественный контент: связка YouTube + ИИ + ZennoPoster (кейс)

Botin

Client
Регистрация
16.02.2014
Сообщения
425
Благодарностей
965
Баллы
93
content1.jpeg

Качественный уникальный контент является важнейшим компонентом для сайтостроения. Чем больше такого контента получится производить, тем шире открываются горизонты. Не важно, развиваете вы один большой проект, или несколько более мелких, без уникального контента далеко не заехать.

В эру развития искусственного интеллекта грех не воспользоваться его помощью. Но не стандартным способом генерации контента по заданному промпту (поисковые системы тоже не стоят на месте и научились распознавать сгенерированный контент), а чуток более сложным: используя источник в качестве видео, транскрибируя его и трансформируя в текстовую публикацию.

Подбор донора

video.png

К подбору видео, которое будет использоваться в качестве донора, стоит отнестись внимательно. Площадка, где можно найти ролик практически любой («белой») тематики – это Ютуб. Но брать первый попавшийся ролик по ключевому запросу не стоит, нужно, чтоб видео соответствовало нескольким критериям.

Прежде всего, стоит отбирать только те видео, на которых присутствует спикер (автор канала). Желательно, чтоб канал был более-менее развит и имел не менее 10 тысяч подписчиков (но тут немало зависит и от тематики канала, например, в нишах, связанных с финансами, этот порог можно опустить до 5 тысяч). Стоит понимать, что если видео без лица, то вероятность того, что скрипт видео создан человеком, а не сгенерирован ИИ – на порядок выше. Оптимальный вариант – обработать одно видео на канале, проверить полученный текст на «человечность» и уже после этого решать, использовать видео с данного канала в качестве донора, или нет.

Далее стоит обратить внимание на длину видео. Оптимальный вариант 10-15 минут. Этого хватит для создания статьи примерно на 10 тысяч символов. Лучше придерживаться этой золотой средины: короткие видео дадут мало текста на выходе, а слишком длинные могут создать проблемы со вскармливанием их транскрипта в ChatGPT.

При анализе видео стоит обратить внимание на обратную связь: количество просмотров, лайков, комментарии. По ним будет видно, насколько актуален данный контент для аудитории канала. Также можно использовать дополнительные инструменты аналитики в YouTube – например, плагин Vidiq (бесплатной версии вполне хватит).

Получение транскрипта

stt.png

Есть два варианта получения транскрипта видео. Первый вариант – более простой в реализации, поэтому и выглядит предпочтительнее. Каждое видео на YouTube, которое содержит речь, имеет субтитры. Даже если автор не добавлял их вручную, они создаются автоматически. Вытащить эти субтитры можно как с помощью сторонних сервисов, так и дополнительных утилит на подобие YT-DLP.

Второй способ – более сложный, но он позволяет брать в качестве донора видео не только с Ютуба, но и других площадок, а также любые видео-файлы (таким образом, можно транскрибировать, например, видео-курс, скачанный с интернета). Он заключается в расшифровке аудио-потока с помощью ИИ.

Производить такую расшифровку можно как локально (например, с помощью этого движка - https://github.com/openai/whisper – понадобится мощное железо), так и онлайн, например, через этот инструмент - https://github.com/xenova/whisper-web/tree/experimental-webgpu (у него имеется демо-версия, которую можно использовать, ничего не устанавливая на свой компьютер). Работу с обеими инструментами легко автоматизировать, в первом случае - работа идет через командную строку, во втором - через веб веб-интерфейс.

Обработка текста с помощью ChatGPT

ai.png

Полученный транскрипт необходимо обработать, чтоб превратить его в полноценную статью. Для этой цели отлично подходит ChatGPT (также можно использовать аналоги). Мы отправляем промпт с инструкциями и в конце добавляем наш транскрипт. Вот так выглядит пример промпта, который использовался мной и показал неплохой результат:

Код:
You are an experienced copywriter who creates quality articles for websites. Make an article in {-Variable.lang-} language from the proposed text. The input text is a transcript of the video, you need to remove the mention of the video so that the article you create looks like an original article, not a remake of the video. Don't shorten the text, keep the same length and meaning. Your task is to create a complete article from the text, which consists of sentences and paragraphs. There should be nothing but the article in your answer (explanations and conclusions should be excluded).
Text:
"{-Variable.allSubs-}"
Автоматизация процесса

Самый важный момент – это автоматизация. Ведь на реализацию всей этой схемы вручную – уйдет много времени и сил, а о масштабировании вообще придется забыть. К данной статье прикрепляю шаблон VContent, где реализованы все основные моменты схемы получения уникального контента (только этап отбора видео стоит проводить вручную, чтоб отобрать исключительно качественные доноры). Обзор к шаблону VContent вы также можете посмотреть ниже.

Стоит понимать, что шаблон VContent – это только один из вариантов реализации. Его можно править, совершенствовать, например, добавив еще генерацию изображений к полученным статьям и постинг всего этого уже на свой сайт. Ну, а поможет в этом, конечно же, ZennoPoster!

 

Вложения

Последнее редактирование:

Koordinator

Новичок
Регистрация
15.01.2016
Сообщения
12
Благодарностей
1
Баллы
3
Подскажите, под какую версию Заеннопостер разработан данный шаблон?
 

Alex.A

Client
Регистрация
14.11.2020
Сообщения
425
Благодарностей
197
Баллы
43
Проголосовал. Спасибо за шаблон.
 
  • Спасибо
Реакции: Botin

Botin

Client
Регистрация
16.02.2014
Сообщения
425
Благодарностей
965
Баллы
93
Подскажите, под какую версию Заеннопостер разработан данный шаблон?
работать будет на любой версии от Лайт и выше (так как есть работа с прокси, если вырезать работу с прокси, то можно и на демке запускать)
билд минимальный 7.3.1.0 (ниже не опустить)
 
  • Спасибо
Реакции: Koordinator

theinova

Client
Регистрация
07.09.2016
Сообщения
121
Благодарностей
83
Баллы
28
Тоже баловался с whisper, лучше всего через колаб (если нет видюхи). https://github.com/theinova/faster-whisper-google-colab
Схема такая, качаем видео(а точнее mp3) в папку на ПК, C:\videos ставим программу от гугла google drive, видео заливается в папку в облако потом, даем коллабу доступ к нашему драйву, оттуда уже выдает текста и сохраняет так же в облако - ну и настраиваем отдельно синхронизацию для текстов C:\texts. Ну а там дело техники передать гптшке. Качал видео через 4kdowloader в mp3, если yt-dl может в mp3 то можно и его. Заморочка с mp3 связана исключительно с размером файла, mp4 тяжелые.
 
Последнее редактирование:

Gfoblin

Client
Регистрация
30.05.2013
Сообщения
4 605
Благодарностей
1 015
Баллы
113
Тоже баловался с whisper, лучше всего через колаб (если нет видюхи). https://github.com/theinova/faster-whisper-google-colab
Схема такая, качаем видео(а точнее mp3) в папку на ПК, C:\videos ставим программу от гугла google drive, видео заливается в папку в облако потом, даем коллабу доступ к нашему драйву, оттуда уже выдает текста и сохраняет так же в облако - ну и настраиваем отдельно синхронизацию для текстов C:\texts. Ну а там дело техники передать гптшке. Качал видео через 4kdowloader в mp3, если yt-dl может в mp3 то можно и его. Заморочка с mp3 связана исключительно с размером файла, mp4 тяжелые.
А есть которые субтитры потом сделает что бы обратно наложить на видео с таймингом?
 

theinova

Client
Регистрация
07.09.2016
Сообщения
121
Благодарностей
83
Баллы
28
А есть которые субтитры потом сделает что бы обратно наложить на видео с таймингом?
я кажется что-то подобное пытался сделать. но это типа караоке получается. чатгпт подсказывал делать через ffmpeg +srt, но до реализации дело не дошло.
ffmpeg -i input.mp4 -vf "subtitles=subtitles.srt" -codec:a copy output.mp4
 
  • Спасибо
Реакции: Gfoblin

Gfoblin

Client
Регистрация
30.05.2013
Сообщения
4 605
Благодарностей
1 015
Баллы
113
я кажется что-то подобное пытался сделать. но это типа караоке получается. чатгпт подсказывал делать через ffmpeg +srt, но до реализации дело не дошло.
ну эт я тож видел пока попробовать руки не дошли )
 

volzahar

Client
Регистрация
09.05.2024
Сообщения
2
Благодарностей
1
Баллы
3
Проголосовал. Большое спасибо!
 
  • Спасибо
Реакции: Botin

aswix

Client
Регистрация
13.12.2020
Сообщения
49
Благодарностей
12
Баллы
8
Здравствуйте подскажите при открытии такая ошибка. Скрин прикрепил
 

Вложения

Botin

Client
Регистрация
16.02.2014
Сообщения
425
Благодарностей
965
Баллы
93
Здравствуйте подскажите при открытии такая ошибка. Скрин прикрепил
при правке в проджект мейкере надо поменять браузер на хромиум, по умолчанию там стоит хром (для увеличения кликнуть на картинку)

browser.png
 

aswix

Client
Регистрация
13.12.2020
Сообщения
49
Благодарностей
12
Баллы
8
при правке в проджект мейкере надо поменять браузер на хромиум, по умолчанию там стоит хром (для увеличения кликнуть на картинку)

Посмотреть вложение 126311
У меня при нажатии на шетсеренку эту в логе вылетает та ошибка выше на скрине, видиом из за версии 7.4
 

Botin

Client
Регистрация
16.02.2014
Сообщения
425
Благодарностей
965
Баллы
93
У меня при нажатии на шетсеренку эту в логе вылетает та ошибка выше на скрине, видиом из за версии 7.4
минимальный билд для запуска - 7.3.1

можно откатиться на билд ниже, чем у вас сейчас (в некоторых билдах есть свои "болячки")
или обратитесь в саппорт, там ответят, в чем конкретно проблема в вашем случае
 

PussyM

Client
Регистрация
08.04.2019
Сообщения
66
Благодарностей
21
Баллы
8
Спасибо тебе. Закрыл часть моего вопроса.
 

QWER-MAS

Client
Регистрация
14.05.2015
Сообщения
99
Благодарностей
10
Баллы
18
Классная статья, очень мне помогла в моем роекте. У меня есть один чат который я обучил и хочу работать только с ним. Но у меня никак не получается заставить зено постер брать последнее сообщение из чата. Твой скрипт всегда берет первый ответ чата GPT.
 

Botin

Client
Регистрация
16.02.2014
Сообщения
425
Благодарностей
965
Баллы
93
Классная статья, очень мне помогла в моем роекте. У меня есть один чат который я обучил и хочу работать только с ним. Но у меня никак не получается заставить зено постер брать последнее сообщение из чата. Твой скрипт всегда берет первый ответ чата GPT.
в шаблоне VContent предусмотрен один ответ от ChatGPT, поэтому берется совпадение под номером 1

gpt.png


если отправить в этом же чате еще свой промпт, то тогда для получения второго ответа от Chat GPT номер совпадения нужно увеличить на 2 (0 - наш первый запрос, 1 - ответ ChatGPT, 2- наш второй запрос, 3 - ответ ChatGPT и так далее...)
 

QWER-MAS

Client
Регистрация
14.05.2015
Сообщения
99
Благодарностей
10
Баллы
18
в шаблоне VContent предусмотрен один ответ от ChatGPT, поэтому берется совпадение под номером 1

Посмотреть вложение 126560


если отправить в этом же чате еще свой промпт, то тогда для получения второго ответа от Chat GPT номер совпадения нужно увеличить на 2 (0 - наш первый запрос, 1 - ответ ChatGPT, 2- наш второй запрос, 3 - ответ ChatGPT и так далее...)
Я это понял. Но я не могу придумать логику. Как брать именно это самое новое сообщение.
Так как при каждом проходе это число будет увеличиваться. И его тяжело отследить.
Возможно кто-то поможет придумать эту логику, я думаю не только мне это будет полезно.
 

Botin

Client
Регистрация
16.02.2014
Сообщения
425
Благодарностей
965
Баллы
93
Я это понял. Но я не могу придумать логику. Как брать именно это самое новое сообщение.
Так как при каждом проходе это число будет увеличиваться. И его тяжело отследить.
Возможно кто-то поможет придумать эту логику, я думаю не только мне это будет полезно.
как вариант простой реализации:

создаем счетчик и ставим на 0

для взятия последнего ответа нам нужно создать кубик с фокусировкой (как click, только focus ставим в тип действия) и в номер совпадения вывести эту переменную со счетчика

при увеличении счетчика на 1 мы каждый раз делаем фокусировку, как только фокус даст ошибку - не обнаружится ответ, то уменьшаем нашу переменную на 1 и берем ответ по ней
 
  • Спасибо
Реакции: QWER-MAS

QWER-MAS

Client
Регистрация
14.05.2015
Сообщения
99
Благодарностей
10
Баллы
18
как вариант простой реализации:

создаем счетчик и ставим на 0

для взятия последнего ответа нам нужно создать кубик с фокусировкой (как click, только focus ставим в тип действия) и в номер совпадения вывести эту переменную со счетчика

при увеличении счетчика на 1 мы каждый раз делаем фокусировку, как только фокус даст ошибку - не обнаружится ответ, то уменьшаем нашу переменную на 1 и берем ответ по ней
Впринципе работает, но задержка здесь полчается в 1 одну секунду на один «фокус».
А так как на этом этапе уже более 100 ответов, то задержка в этом месте получается более 1 мин.
 

Botin

Client
Регистрация
16.02.2014
Сообщения
425
Благодарностей
965
Баллы
93
Впринципе работает, но задержка здесь полчается в 1 одну секунду на один «фокус».
А так как на этом этапе уже более 100 ответов, то задержка в этом месте получается более 1 мин.
можно еще брать код страницы, считать, сколько там этих блоков с текстом и тогда одной такой проверки будет достаточно для получения последнего ответа
 

bpunk

Client
Регистрация
23.08.2015
Сообщения
182
Благодарностей
31
Баллы
28
note gpt хуже выдает транскрипт?
 

Botin

Client
Регистрация
16.02.2014
Сообщения
425
Благодарностей
965
Баллы
93

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)