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

Botin

Client
Joined
Feb 16, 2014
Messages
430
Reaction score
989
Points
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 (также можно использовать аналоги). Мы отправляем промпт с инструкциями и в конце добавляем наш транскрипт. Вот так выглядит пример промпта, который использовался мной и показал неплохой результат:

Code:
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!

 

Attachments

Last edited:

Koordinator

Новичок
Joined
Jan 15, 2016
Messages
12
Reaction score
1
Points
3
Подскажите, под какую версию Заеннопостер разработан данный шаблон?
 

Alex.A

Client
Joined
Nov 14, 2020
Messages
555
Reaction score
312
Points
63
Проголосовал. Спасибо за шаблон.
 
  • Thank you
Reactions: Botin

Botin

Client
Joined
Feb 16, 2014
Messages
430
Reaction score
989
Points
93
Подскажите, под какую версию Заеннопостер разработан данный шаблон?
работать будет на любой версии от Лайт и выше (так как есть работа с прокси, если вырезать работу с прокси, то можно и на демке запускать)
билд минимальный 7.3.1.0 (ниже не опустить)
 
  • Thank you
Reactions: Koordinator

theinova

Client
Joined
Sep 7, 2016
Messages
132
Reaction score
84
Points
28
Тоже баловался с whisper, лучше всего через колаб (если нет видюхи). https://github.com/theinova/faster-whisper-google-colab
Схема такая, качаем видео(а точнее mp3) в папку на ПК, C:\videos ставим программу от гугла google drive, видео заливается в папку в облако потом, даем коллабу доступ к нашему драйву, оттуда уже выдает текста и сохраняет так же в облако - ну и настраиваем отдельно синхронизацию для текстов C:\texts. Ну а там дело техники передать гптшке. Качал видео через 4kdowloader в mp3, если yt-dl может в mp3 то можно и его. Заморочка с mp3 связана исключительно с размером файла, mp4 тяжелые.
 
Last edited:

Gfoblin

Client
Joined
May 30, 2013
Messages
4,698
Reaction score
1,048
Points
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
Joined
Sep 7, 2016
Messages
132
Reaction score
84
Points
28
А есть которые субтитры потом сделает что бы обратно наложить на видео с таймингом?
я кажется что-то подобное пытался сделать. но это типа караоке получается. чатгпт подсказывал делать через ffmpeg +srt, но до реализации дело не дошло.
ffmpeg -i input.mp4 -vf "subtitles=subtitles.srt" -codec:a copy output.mp4
 
  • Thank you
Reactions: Gfoblin

Gfoblin

Client
Joined
May 30, 2013
Messages
4,698
Reaction score
1,048
Points
113
я кажется что-то подобное пытался сделать. но это типа караоке получается. чатгпт подсказывал делать через ffmpeg +srt, но до реализации дело не дошло.
ну эт я тож видел пока попробовать руки не дошли )
 

volzahar

Client
Joined
May 9, 2024
Messages
2
Reaction score
1
Points
3
Проголосовал. Большое спасибо!
 
  • Thank you
Reactions: Botin

aswix

Client
Joined
Dec 13, 2020
Messages
50
Reaction score
13
Points
8
Здравствуйте подскажите при открытии такая ошибка. Скрин прикрепил
 

Attachments

Botin

Client
Joined
Feb 16, 2014
Messages
430
Reaction score
989
Points
93
Здравствуйте подскажите при открытии такая ошибка. Скрин прикрепил
при правке в проджект мейкере надо поменять браузер на хромиум, по умолчанию там стоит хром (для увеличения кликнуть на картинку)

browser.png
 

aswix

Client
Joined
Dec 13, 2020
Messages
50
Reaction score
13
Points
8
при правке в проджект мейкере надо поменять браузер на хромиум, по умолчанию там стоит хром (для увеличения кликнуть на картинку)

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

Botin

Client
Joined
Feb 16, 2014
Messages
430
Reaction score
989
Points
93
У меня при нажатии на шетсеренку эту в логе вылетает та ошибка выше на скрине, видиом из за версии 7.4
минимальный билд для запуска - 7.3.1

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

PussyM

Client
Joined
Apr 8, 2019
Messages
69
Reaction score
21
Points
8
Спасибо тебе. Закрыл часть моего вопроса.
 

QWER-MAS

Client
Joined
May 14, 2015
Messages
99
Reaction score
10
Points
18
Классная статья, очень мне помогла в моем роекте. У меня есть один чат который я обучил и хочу работать только с ним. Но у меня никак не получается заставить зено постер брать последнее сообщение из чата. Твой скрипт всегда берет первый ответ чата GPT.
 

Botin

Client
Joined
Feb 16, 2014
Messages
430
Reaction score
989
Points
93
Классная статья, очень мне помогла в моем роекте. У меня есть один чат который я обучил и хочу работать только с ним. Но у меня никак не получается заставить зено постер брать последнее сообщение из чата. Твой скрипт всегда берет первый ответ чата GPT.
в шаблоне VContent предусмотрен один ответ от ChatGPT, поэтому берется совпадение под номером 1

gpt.png


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

QWER-MAS

Client
Joined
May 14, 2015
Messages
99
Reaction score
10
Points
18
в шаблоне VContent предусмотрен один ответ от ChatGPT, поэтому берется совпадение под номером 1

View attachment 126560


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

Botin

Client
Joined
Feb 16, 2014
Messages
430
Reaction score
989
Points
93
Я это понял. Но я не могу придумать логику. Как брать именно это самое новое сообщение.
Так как при каждом проходе это число будет увеличиваться. И его тяжело отследить.
Возможно кто-то поможет придумать эту логику, я думаю не только мне это будет полезно.
как вариант простой реализации:

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

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

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

QWER-MAS

Client
Joined
May 14, 2015
Messages
99
Reaction score
10
Points
18
как вариант простой реализации:

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

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

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

Botin

Client
Joined
Feb 16, 2014
Messages
430
Reaction score
989
Points
93
Впринципе работает, но задержка здесь полчается в 1 одну секунду на один «фокус».
А так как на этом этапе уже более 100 ответов, то задержка в этом месте получается более 1 мин.
можно еще брать код страницы, считать, сколько там этих блоков с текстом и тогда одной такой проверки будет достаточно для получения последнего ответа
 

bpunk

Client
Joined
Aug 23, 2015
Messages
183
Reaction score
31
Points
28
note gpt хуже выдает транскрипт?
 

Botin

Client
Joined
Feb 16, 2014
Messages
430
Reaction score
989
Points
93
note gpt хуже выдает транскрипт?
не использовал его, попробуйте, узнаете, как там качество
 

Users Who Are Viewing This Thread (Total: 1, Members: 0, Guests: 1)