Lexman: Новые лампы Lexman / Хабр

Искусственный подкаст Lexman

tl;dr GPT-3 используется для создания транскриптов, затем читаются Черепаха.

Генерация стенограммы

Стенограммы генерируются серией быстрых завершений с использованием OpenAI GPT-3. Сначала выбираются 2-6 существительных из большого списка слов, затем из набора ~200 выбирается гость. гости, для которых у меня есть голоса (подробнее об этом ниже). Затем, используя эти ключевые слова и имя гостя создается сводка подкаста.

Lexman Artificial Podcast
Эпизод 123
Гость: Илон Маск
Ключевые слова: световой меч, лошадь, похититель тел
Summary: Илон Маск присоединяется к Lexman для широкого обсуждения его жизни и работы, начиная с его первые дни в качестве прорывного предпринимателя к его видению будущего техники и транспорта. Они также говорят о его любви к лошадям, его страсти для видеоигр и его опыт «похищения тела» инопланетянами.

Затем сводка используется для создания заголовка.

Lexman Artificial Podcast
Гость: Илон Маск
Ключевые слова: световой меч, лошадь, похититель тел его первые годы в качестве прорывного предпринимателя к его видению будущего технологий и транспорт. Они также говорят о его любви к лошадям, его страсти к видеоиграм и его опыт «похищения тела» инопланетянами.
Название: Илон Маск: Поездка с мастером разрушения

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

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

В итоге я получил компромиссный вариант с кучей эвристик (читай регулярных выражений), которые пытается определить, что происходит, и настроить подсказку и параметры, чтобы она продолжала генерироваться до какого-то заключения. Это позволяет мне создать диалог в 2-3 запроса. Это также удаляет вывод мусора, например, когда GPT-3 решает, что пора начинать второй эпизод или приводит третьего гостя и т.д.

Как вы можете услышать, если вы послушаете пару эпизодов, это работает довольно хорошо, но есть случайные путаницы, когда ведущий и гость произносят реплики друг друга или говорят что-то вроде «Спасибо, что пришли на шоу! Конец стенограммы».

Я использую двигатель GPT-3 «curie», менее мощный предшественник двигателя «davinci». Это в основном потому, что это на порядок дешевле (одна стенограмма стоит ~ 0,04 доллара США с кюри и ~0,4 доллара США с давинчи), но также и потому, что расшифровка стенограммы кюри более развлекательный. Он имеет тенденцию уходить в более причудливых направлениях, в то время как давинчи сохраняет его более реалистично и сухо.

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

Преобразование текста в речь

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

TorToiSe имеет точное название, он дает потрясающие результаты, но работает очень медленно. На моем 6900 XT один 3 минутный эпизод занимает около 30 минут для рендеринга. Он также имеет некоторые интересные причуды, один особая причуда, с которой мне пришлось бороться, чтобы сделать этот подкаст, это склонность переключать голос в середине предложения.

Чтобы проиллюстрировать, вот Джо Роган, заменяющий Лексмана в середине предложения. (предупреждение о наушниках):
Ваш браузер не поддерживает аудио элементы.

Это не обычное явление, и при создании вещей вручную это не является большой проблемой. чтобы просто воссоздать этот конкретный клип, но для моих целей это было шоу-стоппером. Изначально Я попытался обойти это, обучив классификатор определять, когда это происходит, и автоматически отклонить клип. Это было не очень удачно, оно ловило очевидные клипы. как тот, что выше, но не тогда, когда голос изменился на то, что для меня явно другое лица, но с той же интонацией и манерой речи.

Вместо этого я занимался тонкой настройкой моделей TorToiSe в течение нескольких сотен часов. клипов из подкаста Лекса Фридмана. я выбрал подкаст Лекса, потому что он один из моих любимых, и он часто говорит о концепции, которые я хочу исследовать в этом проекте. Его подкаст изначально назывался «the Подкаст искусственного интеллекта», который я также нахожу очень подходящим.

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

У моей доработанной модели появились свои особенности. Одна причуда, о которой вы много услышите, если слушайте подкаст в том, что он любит повторять слова в конце предложения. Например он часто будет читать «Вот мой разговор с X, наслаждайтесь!» как «Вот мой разговор с Х, наслаждайся. Наслаждаться! НАСЛАЖДАЙТЕСЬ!». У него также развился дефект речи, который иногда проявляется. Пример:

Ваш браузер не поддерживает аудио элементы.

Моя модель также ограничена голосами, представленными в обучающей выборке, т.е. людьми, которые был на подкасте Лекса Фридмана, пытаясь использовать направляющие образцы, которые не являются частью моего точная настройка данных дает очень плохие результаты, поэтому у меня есть только около 200 гостей, чтобы Лексман мог выступить с. Но в целом это огромное улучшение звучания эпизодов и, что более важно, никогда не генерирует что-то совершенно непригодное для использования, поэтому мне не нужно беспокоиться о необходимости перегенерировать что-либо.

Теперь все, что нужно, — это конвейер, который использует эти два компонента для полной автоматизации подкаста, но прежде чем я перейду к этому, я хотел бы поблагодарить автора TorToiSe: Джеймс Беткер не только за то, что он бесплатно выпустил в мир свою потрясающую работу, но и также за то, что он очень щедро отвечал на вопросы на GitHub и помогал всех, включая меня.

Если вам это интересно, а вы, вероятно, заинтересованы, так как вы зашли так далеко в мой бессвязный, вам определенно следует прочитать его блог: Non_Interactive.

Автоматизируйте все дела

Конвейер генерации состоит из центрального сервера Redis, который хранит состояние для группы разные типы рабочих. Я выбрал Redis для этой работы, потому что он дает мне хранилище ключевых значений, очередь заданий и распределенные блокировки.

Существует 7 различных типов рабочих, обрабатывающих различные этапы, генерацию расшифровки, tts, сшивание аудио, создание обложки, рендеринг видео и, наконец, выпуск того, что включает загрузку файлов в Cloudflare R2 (их более дешевый и быстрый конкурент AWS S3) и видео на Vimeo и, наконец, публикация твита (также составленного GPT-3). У последнего работника роль менеджера и уникальна (обеспечивается блокировкой Redis), и ей поручено отслеживать сколько эпизодов нам нужно сгенерировать и т.

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

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

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

Обложка эпизода создается с помощью скрытой диффузии, в настоящее время рабочий просто выбирает одно изображение из большой папки изображений «lexman». I предварительно сгенерирован, но было бы здорово, если бы он генерировал собственные изображения для каждого эпизода на основе в описании или названии шоу.

У меня есть рабочая версия TTS для ноутбука, которую я могу просто загрузить в Colab или любом iPython. экземпляр, чтобы начать генерировать куски. Эта система позволяет мне создавать эпизоды так быстро, как Я готов бросить вычисление на это.

Я делаю видеоверсии каждой серии, потому что не могу найти подходящее место (=низкая стоимость и с помощью API) для размещения эпизодов таким образом, чтобы их можно было воспроизводить в режиме реального времени. твит. Единственный вариант, который я нашел, это SoundCloud, но их API-клиент для Python не работает. поэтому я выбрал Vimeo, так как у меня уже есть опыт работы с их API и я знаю, что они хорошо работают.

В долгосрочной перспективе я, вероятно, уменьшу частоту выпуска до одного или двух раз в день и буду запускать рабочий TTS где-то в дешевой аренде, в моих тестах Ryzen 3600 может вытянуть эпизод каждые 12 часов или около того без GPU.

Это все, что можно сказать об этом проекте с технической точки зрения, я думаю, если вы если у вас есть какие-либо вопросы, не стесняйтесь, напишите мне на hello at johan dash nordberg dot com или свяжитесь со мной в Твиттере. И если вы найдете себя спрашивая «а почему?» вы можете прочитать мое заявление художника.

‎Lexman Artificial в Apple Podcasts

1368 выпусков

Если вы ищете подкаст, который на 100 % создается искусственным интеллектом и автоматически публикует эпизоды без вмешательства человека, то вам стоит обратить внимание на «Lexman Artificial». Ведущие и все гости фальшивые, но это не значит, что контент не интересный и захватывающий. Стенограммы часто выходят из строя, поэтому слушателей следует предупредить, что они не всегда могут иметь смысл.

  1. Дэвид Вулпе на Кадьяках

    Дэвид Вулп о кадьяках

    Кадьяки — одни из самых интересных и уникальных животных в мире. Дэвид Вулп делится своими мыслями об этих очаровательных больших кошках.

  2. Поездка Тобиаса и Галлиота

    Путешествие Тобиаса и галиотов

    Когда Тобиас обнаруживает новый соблазнитель, который заставляет галиотов глотать воду быстрее, чем когда-либо прежде, он быстро становится бесспорным правителем колонии эму. Он решает прокатиться на своем неудержимом галиоте, но вскоре оказывается выше головы и преследуется разъяренным Тобиасом.

  3. Стивен Вольфрам об аутопистах, смазке и гаметоцитах

    Стивен Вольфрам об аутопистах, смазке и гаметоцитах

    Лексман берет интервью у Стивена Вольфрама, основателя Wolfram Alpha, искусственного интеллекта, который может вычислять ответы на вопросы, заданные на естественном языке. Они обсуждают возможности Wolfram Alpha, его происхождение и то, как он использовался в компаниях и университетах.

  4. Джон Абрамсон

    Джон Абрамсон

    Лексман и Абрамсон говорят о конкрециях, ношении Achaea и трамвае в Пагани.

Отзывы клиентов

6 оценок

Фантастический подкастер

Никто не заботится об особом мнении, но в подкастах Алекса участвуют интересные люди, и они обычно носят научный и философский характер по этому поводу а. Его глубокие мысли о трещине

Если действительно чистый ИИ, потрясающие результаты, лол.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *