Тут пару дней назад вышла очередная, шестая книга из серии Bobiverse Денниса Тейлора - The Infinite Extent. Кто не в курсе - это такая гиковская научная фантастика про... в общем, про чувака, который в "теле" космического корабля бороздит просторы.
Так вот, книга долгожданная, но есть загвоздка - автор по традиции выпускает сначала аудиоверсию, и только через 4 месяца текст. Очевидно, не всем удобно слушать, да ещё и на английском. Но у нас же теперь есть ИИ! Почему бы не попробовать сделать текст и перевод самостоятельно?
Сказано-сделано. Первым делом был зареган аккаунт на Amazon (именно он, через свой сервис Audible, распространяет книгу). Затем за восемь с половиной часов был сграблен весь трек. Можно было бы натравить железного раба, чтобы он вытащил аудио прямо из онлайн-плеера, но что-то это мне показалось слишком грубым. В общем, запись книжки мы получили. Запись одним большим треком.
Так получилось, что новому аккаунту дают 30 дней бесплатного пробного периода. Простите, но я не мог не воспользоваться 🫡
Вторым шагом было разбиение трека на главы. Эту задачу взял на себя локальный ИИ и успешно с ней справился. С помощью ffmpeg он определял положение длинных пауз, затем брал 20 секунд записи и распознавал с помощью локального Whisper, чтобы "услышать" там "Chapter такой-то". Резал посередине паузы, сжимал полученный трек в ogg/vorbis и сохранял под номером и названием главы. Были и сложности - запись несколько раз прерывалась, и приходилось запускать с начала главы, поэтому в треке было несколько кусков незаконченных глав. Но и с этим он справился самостоятельно, определив дубли.
Затем была чисто механическая работа по транскрипции аудио в текст (скрипты, естественно, писал ИИ). Как я сказал, распознаванием занимался локальный Whisper. Нейросетка старая, но с хорошим английским справляется достаточно неплохо. В итоге у нас получилось 73 файла "сырого" текста - 71 глава, вступление и заключение.
Просто так использовать текст после распознавания - не лучшая идея. Во-первых, там много ошибок - как просто ошибок, так и ошибок распознавания специфических терминов, имён и аббревиатур, коих в книге немало. Во-вторых, модель не может распознать структуру текста - диалоги, прямую речь, какие-то комментарии и пр. Сырой текст требовал обработки.
Первым делом был составлен словарь терминов из предыдущих книг. ИИ прочитал их (на обоих языках) и составил довольно объёмный словарь с метаданными и комментариями - всего, около тысячи слов. Затем ИИ поставили задачу прочитать сырой текст, выделить структуру - абзацы, диалоги и пр. и, сверяясь со словарём (пока только с английскими словами), внести необходимые правки. Глава за главой, пока без общего контекста повествования.
Получился уже более-менее размеченный и читаемый текст, который, тем не менее, пока не был готов для перевода - требовалось вычитывание полного текста, не по главам, а целиком, чтобы не терять нить повествования и не упустить связанных с этим ошибок. Соответствующее поручение было дадено ИИ. Для контроля использовался тот же словарь и Whisper для уточнения спорных моментов в сыром тексте.
После вычитывания английского текста пришло время перевода. Для помощи железному в папку проекта были добавлены переводы предыдущих книг. Это довольно сильно помогло - когда ИИ встречал неоднозначные фразы или понятия, он смотрел, как аналогичные вещи были переведены в предыдущих книгах. Также ему были доступны все материалы - аудио с Whisper, сырой текст, словарь (уже с русским переводом). Кроме того, по мере перевода составлялся второй словарь с понятиями, которые не встречались прежде - здесь ИИ консультировался с оператором, предлагая варианты. Перевод выполнялся в одной сессии глава за главой. Когда контекст заполнялся, делался compaction, полностью перечитывался новый словарь и напоминалась задача. Так ИИ не терял нить и даже исправил одну ошибку, которую допустил сам автор - была названа не та планета, которая должна была быть по контексту повествования.
Так вот, книга долгожданная, но есть загвоздка - автор по традиции выпускает сначала аудиоверсию, и только через 4 месяца текст. Очевидно, не всем удобно слушать, да ещё и на английском. Но у нас же теперь есть ИИ! Почему бы не попробовать сделать текст и перевод самостоятельно?
Сказано-сделано. Первым делом был зареган аккаунт на Amazon (именно он, через свой сервис Audible, распространяет книгу). Затем за восемь с половиной часов был сграблен весь трек. Можно было бы натравить железного раба, чтобы он вытащил аудио прямо из онлайн-плеера, но что-то это мне показалось слишком грубым. В общем, запись книжки мы получили. Запись одним большим треком.
Так получилось, что новому аккаунту дают 30 дней бесплатного пробного периода. Простите, но я не мог не воспользоваться 🫡
Вторым шагом было разбиение трека на главы. Эту задачу взял на себя локальный ИИ и успешно с ней справился. С помощью ffmpeg он определял положение длинных пауз, затем брал 20 секунд записи и распознавал с помощью локального Whisper, чтобы "услышать" там "Chapter такой-то". Резал посередине паузы, сжимал полученный трек в ogg/vorbis и сохранял под номером и названием главы. Были и сложности - запись несколько раз прерывалась, и приходилось запускать с начала главы, поэтому в треке было несколько кусков незаконченных глав. Но и с этим он справился самостоятельно, определив дубли.
Затем была чисто механическая работа по транскрипции аудио в текст (скрипты, естественно, писал ИИ). Как я сказал, распознаванием занимался локальный Whisper. Нейросетка старая, но с хорошим английским справляется достаточно неплохо. В итоге у нас получилось 73 файла "сырого" текста - 71 глава, вступление и заключение.
Просто так использовать текст после распознавания - не лучшая идея. Во-первых, там много ошибок - как просто ошибок, так и ошибок распознавания специфических терминов, имён и аббревиатур, коих в книге немало. Во-вторых, модель не может распознать структуру текста - диалоги, прямую речь, какие-то комментарии и пр. Сырой текст требовал обработки.
Первым делом был составлен словарь терминов из предыдущих книг. ИИ прочитал их (на обоих языках) и составил довольно объёмный словарь с метаданными и комментариями - всего, около тысячи слов. Затем ИИ поставили задачу прочитать сырой текст, выделить структуру - абзацы, диалоги и пр. и, сверяясь со словарём (пока только с английскими словами), внести необходимые правки. Глава за главой, пока без общего контекста повествования.
Получился уже более-менее размеченный и читаемый текст, который, тем не менее, пока не был готов для перевода - требовалось вычитывание полного текста, не по главам, а целиком, чтобы не терять нить повествования и не упустить связанных с этим ошибок. Соответствующее поручение было дадено ИИ. Для контроля использовался тот же словарь и Whisper для уточнения спорных моментов в сыром тексте.
После вычитывания английского текста пришло время перевода. Для помощи железному в папку проекта были добавлены переводы предыдущих книг. Это довольно сильно помогло - когда ИИ встречал неоднозначные фразы или понятия, он смотрел, как аналогичные вещи были переведены в предыдущих книгах. Также ему были доступны все материалы - аудио с Whisper, сырой текст, словарь (уже с русским переводом). Кроме того, по мере перевода составлялся второй словарь с понятиями, которые не встречались прежде - здесь ИИ консультировался с оператором, предлагая варианты. Перевод выполнялся в одной сессии глава за главой. Когда контекст заполнялся, делался compaction, полностью перечитывался новый словарь и напоминалась задача. Так ИИ не терял нить и даже исправил одну ошибку, которую допустил сам автор - была названа не та планета, которая должна была быть по контексту повествования.