Увеличение скорости производственного процесса
с помощью нейросетей.

Этот логотип среди сгенерированных отличался, на мой взгляд, большей оригинальностью.

Это изображение показалось мне более красивым, но, в то же время, в большей степени банальным. Тем не менее, мой очередной комплимент алгоритмам midjourney.
Оба логотипа созданы сетью midjourney 6.1 по запросу "логотип системы преобразования речи в текст, основанный на нейросети искуственного интеллекта".
Предыстория
О возможностях электронно-вычислительной техники в её практическом применении для распознавания образов, автоматического перевода с
одного языка на другой, в более узком применении, например, для преобразования сканированных текстов в пригодную для обработки с
помощью текстовых редакторов, говорили, я полагаю, еще во врема пионеров информатики.
Моя первая встреча с подобными системами состоялась когда я занимался программным обеспечением так называемой векторизации,
то есть преобразования сканированных чертежей в формат инженерных систем проектирования.
Тогда, однако, название искуственного интеллекта для преобразования еще не было в моде.
Это было также время развития технологий распознавания текстов для их последующего
изменения в текстовых редакторах. Очевидно, это было связано с необходимостью реализации ускорения поиска нужных сведений
в книгах, поскольку в файле изображения тексте сделать это более затруднительно. Это были 1990-е годы.
Знатоки кино могут вспомнить фильм Сидни Поллака "Три дня Кондора", вышедшем на экраны в 1975 году. В начале фильма
эта технология была мельком показана в декорациях "книжной" лаборатории ЦРУ, занимавшейся поиском утечек информации в открытых источниках.
То есть, специальные службы уже тогда располагали похожими технологиями, распространившимися в гражданской сфере спустя 15 лет.
Изображения оборудования для сканирования и преобразования в текст из фильма "Три дня Кондора" (реж. Сидни Поллак, 1975)
На переднем плане компьютер с системой хранения на магнитных лентах, на заднем плане - фотографическое устройство,
преобразующее изображение в электронную форму. В итоге, текст сохранялся в кодах, пригодных для последующей обработки
в текстовом редакторе.
В начальных титрах любезно указано, что "специальное оборудование предоставлено фимой Digital Corporation".
В диалоге героев фильма также практически повторяется современная процедура запроса к тексту, заложенному в систему обработки:
- Какая была пуля?(Прим. автора. Речь идет об анализе текста детектива.)
- Машина не выдаст ответа. Машина потребует сформулировать вопрос более развернуто.
А по поводу скорости обработки - анализ текстов, в конечном счет выполнялся людьми,
"Подготовьте в вечеру анализ книги, которую я оставил у Вас на столе",- говорит директор лаборатории Джозефу Тернеру, главному герою фильма.
В то время, очевидно, не придавали большого значения аналитическим результатам, выдаваемым электронным устройством.
Можно предположить, что современные технологии преобразования звуковых записей в текстовую форму также использовались ранее
силовыми структурами, и уже потом поступили в гражданский оборот.
Open AI Whisper
В поиске приложений для обработки или, как теперь пишут, "транскрибирования" звуковых файлов я натолкнулся на OpenAI Whisper.
Инструкции по использованию я нашел достаточно простыми и решил испытать эту систему.
На сайте фирмы OpenAI, американской фирмы занимающейся разработками в области искусственного интеллекта и прославившейся благодаря чатботу ChatGPT, написано, что
Whisper - это система автоматического распознавания речи (ASR), обученная на основе 680 000 часов многоязычных и многозадачных контролируемых данных,
собранных из Интернета.
Можно поиронизировать, откуда у этой фирмы достаточное количество звуковых файлов "из Интернета", но сейчас это не тема данной статьи.
В открытом доступе, на сайте Github есть раздел, в который помещена открытая версия программы на языке python преобразователя звуковых файлов
в текстовую форму вместе с так называемыми "моделями", то есть базами данных, где образцы (шаблоны) звукового формата сопоставлены с текстовыми кодами.
До поры до времени у меня не было необходимости испытывать этот продукт, поскольку уже накопился опыт использования других изделий подобного рода,
и, в целом, стало понятно, что представляют эти системы.
Однако, в один прекрасный день я вспомнил о паре звуковых файлов, хранивших памятные мне встречи.
Во-первых, это было интервью, взятое моей ученицей в рамках проекту создания сайтов по теме "Встреча с интересным человеком". Хотя я на этом не настаивал,
но в качестве "интересного человека" ученица Вика выбрала меня.
Во-вторых, в июле 2010, в преддверии дня памяти, я интервьюировал внука знаменитого маршал Советского Союза Константина Константиновича Рокоссовского Павла.
У меня возникла мысль опубликовать это интервью в газете "Комсомольская правда", но тогдашний заведующий военным разделом "Комсомолки" Виктор Баранец
забраковал полученный им материал.
Некоторая часть, ограниченная газетным объемом, и которую я обработал вручную, осталась у меня, но гораздо больший объем нашей беседы
сохранился в виде аудиодорожки с видеокамеры. Тогда камерофон "SonyEricsson", лежавший на столе и ведший запись, наверное, лучшего качества
по какой-то причине не сохранил нашу беседу, а дублирующая аналоговая видеокамера 1990 года выпуска, стоявшая в отдалении, меня сильно выручила.
Но, увы, отдаление сыграло не на пользу качеству и уровню записи. Оцифровка и дальнейшая обработка несколько исправили положение, однако, в целом,
качество получились удручающее. Выбрав для газеты, показавшиеся мне для наиболее существенные части беседы, я записал аудиофайл на компакт-диск и отложил его в архив.
Мое выступление для ученицы, по причине объёмности текста полностью не вошло в материал сайта,
и я уже, признаюсь забыл, что там наговорил. Да и файл с интервью Павла Рокоссовского подзадорил меня испытать систему распознавания.
Мне стало интересно перечитать эти выступления полностью, но переводить их вручную благодаря появлению
Whisper'a уже в мыслях не было. Я загорелся идеей реализовать это с помощью электронно-вычислительной машины.
Мое интервью было записано на смартфон и сохранено в виде аудиофайла в формате aac. Длительность воспроизведения файла 58 минут 17 секунд (3497 секунд).
Интервью в Павлом Рокоссовским сохране в формате wav длительностью 1 час 34 минуты 01 секунда (5641 секунда).
В техническом описании
Напрямую указания на ограничения по использованию оперативной памяти при локальном использовании я не нашел.
Однако, при первой попытке запуска OpenAI Whisper на компьютере c операционной системой Ubuntu 24.04.3
с объёмом оперативной памяти 8 Гб и четырёхядерным процессором 3,4 ГГц Intel Core2Quad Q9650,
скорее всего, по этой причине он намертво "завис" и потребовал перезагрузки.
Я решил повторить эксперимент с развертыванием системы уже на восьмиядерном AMD FX-8350 4 ГГц и объемом оперативной памяти 11 Гб также
с близкой и приятной мне операционной системой Ubuntu, только предыдущей версии 22.04.
Держа в уме проблемы, связанные с объемом оперативной памяти, я решил перевести файлы с помощью Audacity в формат mp3, подразумевая, что меньший объём будет компенсирован
увеличением времени обработки. Все-таки, объем файла интервью Павла Рокоссовского в формате wav составляет 1.1 ГБ, а в формате mp3 110.6 МБ.
Я предполагаю, что внутренние алгоритмы все-таки настроены на обработку формата несжатого звука, преобразованного из первоначального формата,
но в этом случае использование памяти будет оптимизировано либо компилятором языка, либо алгоритмами системы, либо операционной системой.
Экспериментального обоснования этого предположения у меня нет и в дальнейшем, возможно, такой эксперимент, при необходимости, можно провести.
Установка системы требует пакета обработки мультимедиа ffmpeg
sudo apt update && sudo apt install ffmpeg
Система создана и испытывалась, согласно найденным мною сведениям на языке python, поэтому установка выполняется с помощью pip. Важно упомянуть,
что в репозитории pip есть пакет с близким названием whisper, но о ничего общего с openai-whisper не имеет. Я сначала ошибся и установил именно
whisper и уже потом openai-whisper, но никаких замеченных мною последствий это не имело.
pip install -U openai-whisper
В процессе установки загружаются пакеты самой системы и дополнительные пакеты для работы с графическими картами NVIDIA,
с арифметикой для чисел с плавающей запятой, и, вероятно, некоторые файлы для обработки мультимедиа.
Загрузка баз данных ("моделей") осуществлялась по ссылкам, найденным в файле __init__.py, на что любезно указали иные испытатели системы (здесь и далее
подразумевается форум на странице OpenAI, посвященный этой системе.)
Как заведено в "дивном, новом мире", в документации я не нашел указаний и сведений по поводу расположения и установки моделей (видимо, считается, система
справляется с этим самостоятельно и участие пользователя для этого не требуется).
Существенная подробность заключается в том, что файлы баз данных в операционной системе Ubuntu надо сохранить
в каталоге {user}/home/.cache/whisper. Файлы баз данных при установке системы не загружаются, а скачиваются при указании конкретной модели. Идея вполне разумная, но
python для этой цели оказался непригоден. Кроме того, если файлы отличаются по какой-либо причине по контрольной сумме, исполнитель python пытается загрузить их самостоятельно, но длительность загрузки оказывается фактически бесконечной и невозможной.
Исключением стала лишь "модель" base - python скачал её при запуске программы.
Скорее всего, это связано с самой средой python (я работал в IDLE), поскольку
загрузка по ссылке в браузере Google Chrome была завершена в течение 15 минут для каждого файла.
Предлагаемый в системе список "моделей" выглядит следующим образом:
"карликовая для английского языка"
tiny.en, файл tiny.en.pt, объём 75571315 байт,
"карликовая"
tiny, файл tiny.pt, объём 75572083 байт,
"базовая для английского языка"
base.en, файл base.en.pt, объём 145261783 байт,
"базовая"
base, файл base.pt, объем 145262807 байт,
"малая для английского языка"
small.en, файл small.en.pt, объём 483615683 байт,
"малая"
small, файл small.pt, объём 483617219 байт,
"средняя для английского языка"
medium.en, файл medium.en.pt, объём 1528006491 байт,
"средняя"
medium, файл medium.pt, объём 1528008539 байт,
"большая, версия 1"
large-v1, файл large-v1.pt, объём 3086999982 байт,
"большая, версия 2"
large-v2, файл large-v2.pt, объём 3086999982 байт,
"большая, версия 3"
large-v3, файл large-v3.pt, объём 3087371615 байт,
"большая"
фактически используется large-v3.pt, но при этом есть
large, файл large.pt, объём 3086999982 байт,
"большая, версия 3, скоростная"
large-v3-turbo, файл large-v3-turbo.pt, объём 1617941637 байт,
"скоростная"
turbo, файл large-v3-turbo.pt, объём 1617941637 байт
Фактически, количество "моделей" меньше, так как оказалось, large загружает large-v3, а turbo - large-v3-turbo
и особой разницы между моделями для английского языка и для остальных другими испытателями найдено не было.
Более того, подразумевая распознавание других языков, в моем случае с текстом на русском языке могла получится "каша" из разноязычных фраз.
Заметно также, что файлы "моделей" large, large-v1 и large-v2 по размеру не отличаются.
(
проверка контрольных сумм от 08.05.2025 large, large-v1,
SHA-256 =
e4b87e7e0bf463eb8e6956e646f1e277e901512310def2c24bf0e11bd3c28e9a)
large-v2
SHA-256 =
81f7c96c852ee8fc832187b0132e569d6c3065a3252ed18e56effd0b6a73e524
large-v3
SHA-256 =
e5b1a55b89c1367dacf97e3e19bfd829a01529dbfdeefa8caeb59b3f1b81dadb
вычислена Gtkhash.
Как видно из сопоставления, модели large и large-v1 полностью одинаковы,
а large-v2 и large-v3 различаются.
)
и, видимо, для ускорения, "модель" large-v3-turbo примерно на 40% меньше версии large-v3.
И размеры файлы моделей tiny по сравнению с остальными - действительно "карликовые".
После установки системы и загрузки баз данных можно приступать к запуску системы. Программа для преобразования небольшая - всего несколько строк
и её запуск программы в среде IDLE несложен.
В окне предупреждений появилось указание о невозможности использования текущего драйвера NVIDIA ввиду его "древности".
В качестве решения предлагается установить PyTorch с предварительно скомпилированным драйвером для данной видеокарты:
UserWarning:
CUDA initialization:
The NVIDIA driver on your system is too old (found version 11040).
Please update your GPU driver by downloading
and installing a new version from the URL:
http://www.nvidia.com/Download/index.aspx
Alternatively, go to:
https://pytorch.org to install a PyTorch version
that has been compiled with your version of the CUDA driver.
И также предупреждение о недостаточно актуальном пакете numPy:
UserWarning:
A NumPy version >=1.17.3 and < 1.25.0 is required
for this version of SciPy (detected version 2.2.4)
Было выведено также предупреждение об использовании арифметики с плавающей точкой более высокой разрядности:
FP16 is not supported on CPU; using FP32 instead
Один из испытателей посчитал, что использование арифметики с плавающей точкой меньшей разрядности должно привести к экономии оперативной памяти,
однако, для меня это высказывание не совсем понятно.
Эти предупреждения говорят лишь о том, что ускорение обработки на данном оборудовании, очевидно, невозможно.
import whisper
import time
start_time = time.time() # время начала выполнения
model = whisper.load_model("large-v3")
result = model.transcribe("Interview_Goussev.mp3")
print(result["text"])
end_time = time.time() # время окончания выполнения
execution_time = end_time - start_time # вычисляем время выполнения
print(f"Время выполнения программы: {execution_time} секунд")
Очевидно, что нужно загрузить предварительно установленный локально пакет whisper и указать корректное название используемой "модели".
На мой взгляд, недостатком в этой программе является выведение результата в окно, а, например, не в файл.
Кстати, когда я запустил программу для "транскрибирования" крупного объёма аудиоданных, вывод, составивший более нескольких сотен строк,
привел к появлению предупреждения о необходимости сохранения пользователем этих данных на носитель, и опасности чрезмерной потребности в оперативной памяти
при просмотре результата в окне вывода.
Для оценки длительности выполнения добавлены операторы измерения времени из соответствующего пакета.
Результаты продемостированы для разных моделей на примере аудиофайла хорошего качества.
Модель "base", файл интервью Гусева.
Здравствуйте, манцерки, мы с вами договорились в таком предуме.
Последаю вам вопрос. Нет, спасибо. Продолжение, не сопросто. Я не себя. И тебе удобнее. Вот тут хорошо.
Модель «medium», файл интервью Гусева.
Здравствуйте, Иван Сергеевич. Мы с вами договорились, что я к вам приду, позадаю вам вопрос.
Чай, пожалуйста. Нет, спасибо. Куда-нибудь так поставлю. Где тебе удобнее? Тут хорошо.
Разница весьма значительная, видны пропуски текста и это указывает на необходимость использования
более крупных баз данных для распознавания, даже для файлов приличного качества.
После первых запусков на небольших фрагментах звуковых файлов
я пришел к выводу о необходимости использования самой крупной базы данных large-v3.
И, наконец, производительность, выражаемая в затраченном времени для контрольных файлов.
Интервью Гусева, формат mp3, русский язык
Длительность Модель Время обработки
Фрагмент - 1476 секунд - medium - 3380 секунд
Полный - 3497 секунд - large-v3 - 17890 секунд - 5 часов
Интервью Рокоссовского, формат mp3, русский язык
Длительность Модель Время обработки
Фрагмент - 293 секунды - base - 240 секунд
Фрагмент - 293 секунды - medium - 732 секунды
Фрагмент - 293 секунды - small - 266 секунд
Фрагмент - 293 секунды - large-v3-turbo - 689 секунд
Фрагмент - 293 секунды - large-v3 - 2218 секунд
Полный - 5641 секунда - large-v3 - 30700 секунд
Дополнение от 08.05.2025
Продолжая работы по транскрибированию звуковых файлов, я выполнил обработку звуковой дорожки
выступлений Ричарда Бендера, известного автора-создателя спорного, признанного, согласно текущей
версии "Википедии" псеводнаучным, нейролингвистического програмиирования (НЛП, NLP, не путать с
аббревиатурой Natural Language Processing - обработка естественного языка).
Я взял звуковые дорожки четырех выступлений в формате mp3 длительностью около одного часа и запустил их обработку
с помощью тех же программ с помощью модели large-v3. Результы приведены в таблице ниже.
Название
Длительность звучания,
сек
Время обработки,
сек
Отношение
T обработки/ Tзвучания
Instant talent
3661
19788.1
5.4
Inner beauty
3093
17472.4
5.65
Rapid Hypnotic inductions
3417
15185.8
4.44
Fantastic futures
3185
15014.15
4.71
Persuation Engineering, p.1
6278
27863.43
4.43
Persuation Engineering, p.2
5958
32629,81
5,47
Persuation Engineering, p.3
6174
-
-
Persuation Engineering, p.4
5517
28425.0
5.15
Persuation Engineering, p.5
4631
25875.7
5.59
Persuation Engineering, p.6
5129
30176.65
5.88
Persuation Engineering, p.7
6781
41066.68
6.05
Persuation Engineering, p.8
7327
34213.9
4.66
A Twist of Sand (1968)
5182
32668.87
6.3
Для файла с хорошим качеством звука коэффициент отношения длительности воспроизведения файла к времени обработки составил около 5.1
(я принял качество звука интервью Гусева хорошим, и качество звука интервью Рокоссовского - плохим. Усиление цифрового звука, которое
я выполнил для прослушивания записи, увы, видимо сослужила плохую службу для транскрибирования. При этом полученнный текст оказался
в целом пригоден для дальнейшего редактирования),
и для файла с плохим качеством звука этот коэффициент составил 5.4.
То есть, по моему мнению качество и длительность воспроизведения исходного материала не повлияла на скорость обработки.
При этом, если посчитать оценку длительности обработки на основе пропорции (к сожалению, для файла с интервью Гусева измерение времени я не выполнил)
для файла с интервью Рокоссовского, то она составит 42703 секунды, но фактически оказалось примерно на 30% меньше.
На скорость обработки влияет, главным образом, размер модели. Но, увы, эти результаты основаны только на использовании центрального процессора при обработке
звукового материала. Поскольку ранее мои графические карты NVIDIA с поддержкой технологии использовались при обработке материалов BOINC/1/
для проекта SETI /2/ и
настройка поддержки CUDA привела к существенному росту производительности, то можно догадаться, что прирост благодаря графическим процессорам даст ожидаемо высокую
прибавку в скорости получения результата.
Дополнение от 08.05.2025.
Здесь я могу только посетовать, что программисты проекта BOINC смогли адаптировать приложения для работы с графическими картами пользователей своего времени,
а авторы OpenAI Whisper посчитали, что для их системы потребуются только актуальные карты NVIDIA. Интуитивно я полагаю, что таким образом, стимулируется
приобретение нового аппаратного обеспечения, и при этом игнорируются возможности графических процессоров предыдущего поколения. Увы, это предположение
я обосновать не могу. Возможно, как и для процессоров 80286, время карт NVIDIA моего компьютера прошло, и именно современные графические процессоры действительно
предлагают использование своих ресурсов для решения задач ускорения обработки подобных задач.
После первых опытов запуска OpenAI Whisper в среде операционной системы Ubuntu 22.04 я установил это его вместе с сопутствующими библиотеками (Visual Studio, ffmpeg, PyTorch, Python 3.12) в среде Windows 10. В среде Ubuntu 24.04, приложение остановило систему с 8 ГБайт оперативной памяти. Видимо, этого количества оперативной памяти
Whisper недостаточно. Как показали измерения используемой памяти во время работы Whisper - оно составляло около 9,7 ГБайт. Похоже, swap-память на жестком диске
не решает вопроса потребности в размещении данных этого приложения.
Я надеялся, что в среде Windows возможно удастся запустить CUDA, но, увы, NVIDIA GeForce 8600 GTS (микроархитектура Tesla, выпуск: ноябрь 2006 года) не поддерживается Whisper.
Полагаю, что рассчитывать на включение CUDA для NVIDIA GT 740 (микроархитектура Fermi, Kepler или Maxwell, выпуск: май 2014) тоже не стоит.
В среде Windows не обошлось без неожиданностей. При первом запуске уже отлаженной программы для транскрибирования Windows "вывалился" из текущего
пользователя и "выбил" пару резидентных процессов. Как оказалось, в конце работы формат записи данных в режиме неопреденной кодировки,
"выводит приложение из себя".
file.write(f"Время выполнения программы: {execution_time} секунд")
File "C:\..\...\PythonSoftwareFoundation.Python.3.13_3.13.1008.0_x64...\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-4:
character maps to '<'undefined'>'
Оказалось, что в оператор создания файла надо добавить строку назначения кодировки выводимых данных.
file = open("Probe.txt", "a", encoding="utf-8")
После этого вывод закончился успешно.
Возможно, файл, сохраненный в кодировке UTF-8 входил в конфликт с действующей кодировкой Windows (см. cp1252.py ).
В итоге, транскрибированное содержание было записано в файл, но несколько часов работы остались без измерения времени.
В завершение добавлю, что связи между использованием Whisper для транскрибирования от работы программы в разных операционных
системах я пока не установил. Отношение длительности работы приложения к длительности звучания обрабатываемого файла колеблется
от 4.4 до 5.5 и, скорее всего, в большей степени определяется объёмом библиотеки ("модели") для обработки. Разумеется, было бы
очень любопытно узнать влияние графического ускорителя, но сегодняшние цены - порядка 50000-70000 рублей заставляют задуматься
о целесообразности такой инвестиции.
Кстати, с этой целью я решил провести оценку стоимости транскрибирования без ускорителя.
Прямые затраты на 10-часовое транскрибирование файла, например, фильма или публичного выступления связаны с расходами на электроэнергию.
Потребляемая компьютером мощность, по моим измерениям в пиковые моменты может достигать 600 Вт, в среднем же составляет около 520 Вт.
То есть, в течение 10 часов при примерной стоимости киловатт-часа 10 рублей затраты на электроэнергию составят около 52 рубля.
Для точности следует добавить амортизацию оборудования. Оценка выглядит такой - общее время функционирования домашнего комьпютера,
для 24 часов в течение 15 лет надо соотнести со стоимостью компьютера порядка 1500 долларов при средней цене доллара 80 рублей.
120000 рублей к 131400 часов владения дадут 0,91 рубля/час. Суммируя с затратами на электроэнергию, получаем себестоимость транскрибирования
звукового файла порядка 61-62 рублей. Здесь задумаешься о том, что не стоит платить интернет-сервисам за обработку файлов, не говоря уже о покупке
супер-карты NVIDIA.
Другое дело, коммерческая деятельность. В этом случае скорость обработки, наверное, стоит этих инвестиций. Однако, как я уже упоминал,
измерить ускорение для конкретной оценки мне пока не удалось.
Запрос ChatGPT
Всемирно известный чатбот проконсультировал меня по теме возможностей располагаемых мной карт и я получил следующий ответ.
Вы спросили: У меня установлена видеокарта с чипом NVIDIA GT 740. Могу ли я запустить программу на языке Python с интерфейсом к этой карте?
ChatGPT сказал:
Комментарий ChatGPT
с демонстрацией действий
Пользователь спрашивает, можно ли запустить программу на Python с использованием GPU NVIDIA GT 740. Для этого требуется поддержка CUDA.
Вероятно, карта имеет вычислительную способность 3.0, что ограничивает использование более новых версий CUDA.
Мы проверим, насколько эта карта поддерживает CUDA и библиотеки Python, такие как PyCUDA, Numba, TensorFlow и PyTorch.
Важно помнить, что она поддерживает только CUDA до версии 8.0.
Итак, GT 740 существует в двух вариантах: GK107 (Kepler) с Compute 3.0 и Maxwell GM107 с Compute 5.0.
Нужно подтвердить, что ваша карта поддерживает Compute 3.0, что ограничивает использование некоторых библиотек глубокого обучения.
>
Чтобы работать с такими фреймворками, как TensorFlow и PyTorch, потребуется Compute Capability (CC) 3.5 и выше.
>Для других задач можно использовать PyCUDA, Numba или CuPy. Следует установить правильные драйверы и подсистемы, чтобы избежать проблем с совместимостью.
Итоговый ответ
Думал на протяжении 48 секунд
Да, вы можете запускать на вашей карте NVIDIA GeForce GT 740 Python-программы с использованием GPU, но с рядом ограничений.
-
Вычислительная способность (Compute Capability) вашей карты
GeForce GT 740 имеет Compute Capability (CC) 3.0
Источник: developers forum
- Поддержка CUDA-тулкитов
-
Все GPU с CC≥3.0 поддерживаются CUDA 9 и CUDA 10 (до версии 10.2 включительно)
Источник: NVIDIA Developer Forums
-
Начиная с CUDA 11 минимальная CC составляет 3.5, так что на CUDA 11+ ваша карта уже не будет работать.
- Как подключить Python
- Драйвер NVIDIA: установите последнюю совместимую версию драйвера для вашей ОС.
- CUDA Toolkit 10.2: скачайте и установите его с официального сайта NVIDIA.
- Python-пакеты: после установки CUDA вы можете установить через pip или conda:
- PyCUDA для прямого доступа к CUDA-ядрам.
- Numba (версии ≤0.55), которая поддерживает CC 3.0 на CUDA 10.x.
- CuPy, аналог NumPy, ускоренный на CUDA.
Пример (в терминале):
pip install pycuda numba cupy
- Ограничения с фреймворками глубокого обучения
-
TensorFlow-GPU официально требует CC ≥3.5, так что GT 740 не поддерживается даже старым релизом TF-GPU
Источник: Stack Overflow
-
PyTorch последних версий тоже не будет работать на CC 3.0; последний релиз с поддержкой 3.0 – это PyTorch 0.3.0 (2018 г.)
Источник: Stack Overflow
Итог:
- Для общих задач GPGPU (написания и запуска собственных CUDA-ядер) GT 740 подходит, достаточно установить драйвера, CUDA 10.x и библиотеки PyCUDA/Numba/CuPy.
- Для современного машинного обучения (TensorFlow 2.x, PyTorch 1.x) нужна карта с CC ≥3.5 (рекомендуется минимум CC 6.0–7.0). Если ваша цель — именно глубокое обучение, стоит рассмотреть более новую видеокарту.
Я задал вопрос и по поводу второй карты.
Вы спросили:
У меня установлена видеокарта с чипом NVIDIA GeForce 8600 GTS. Могу ли я запустить программу на языке Python с интерфейсом к этой карте?
Комментарий ChatGPT
с демонстрацией действий
Пользователь задаёт вопрос о том, может ли их видеокарта NVIDIA GeForce 8600 GTS работать с Python-программами с интерфейсом для этой карты.
Карта стариковая, с вычислительной способностью 1.1 или 1.2, поддерживает старые версии CUDA (до 3.x).
Современные библиотеки Python требуют CC >= 3.0, поэтому, скорее всего, такой интерфейс не работает.
Я планирую найти точную информацию для подтверждения, используя поиск по вопросам вычислительных способностей и поддержки в TensorFlow, Numba.
Пользователь спрашивает о возможности использования NVIDIA GeForce 8600 GTS для Python-программы с интерфейсом к этой видеокарте.
Поскольку карта имеет вычислительную способность 1.1 и поддерживает CUDA до версии 3.x, она не совместима с большинством современных Python-библиотек, которые требуют CC >= 3.0.
Чтобы подтвердить, всё-таки стоит проверить информацию по поддержке CUDA и TensorFlow.
Видеокарта GeForce 8600 GTS имеет способность вычислений 1.1, поддерживаемую CUDA до версии 6.5.
Современные библиотеки Python, такие как CuPy и Numba, требуют более высоких вычислительных возможностей (CC >= 3.0 и CC >= 2.0 соответственно).
PyCUDA может работать с устаревшими версиями CUDA, но установка старых версий крайне сложна, а поддержка драйверов для современных ОС прекращена в 2016 году.
Так что, в целом, для GeForce 8600 GTS это будет проблематично.
ChatGPT сказал:
Думал на протяжении 37 секунд
Ваша GeForce 8600 GTS имеет устаревшую архитектуру и далеко не всё программное обеспечение для GPGPU её поддерживает. Ключевые моменты:
- Compute Capability
GeForce 8600 GTS относится к серии «GeForce 8» и обладает Compute Capability 1.1
Источник: Википедия
- Поддержка CUDA Toolkit
Версии CUDA Toolkit 1.1–6.5 официально поддерживают CC 1.1 (микроархитектура Tesla/G8x)
Источник: Википедия
Начиная с CUDA 7.0 и далее (особенно CUDA 9/10/11…) минимальная CC составляет 2.0 или даже 3.0, так что новейшие тулкиты и вовсе не совместимы с вашей картой
Источник: NVIDIA Developer Forums
Чтобы пользоваться CUDA на этой карте, придётся:
- Найти и установить древний драйвер (серии 340.x или ниже, поддерживающий GeForce 8, последний выпуск — апрель 2016).
- Установить CUDA 6.5 или более ранний Toolkit (из архива NVIDIA).
- Python-оболочки для CUDA
- PyCUDA: теоретически можно работать с любым CUDA Toolkit, но вам придётся собирать библиотеки под старую версию CUDA вручную.
- Numba: требует Compute Capability ≥ 2.0, CC 1.1 не поддерживается.
- CuPy: ориентирован на CC ≥ 3.0, с вашей картой работать не будет.
- Фреймворки глубокого обучения
- TensorFlow-GPU поддерживает лишь карты с CC ≥ 3.5, ваша CC 1.1 отбрасывается на этапе инициализации
Источник: Stack Overflow
- PyTorch последних версий также рассчитан на CC ≥ 3.0 и выше; с CC 1.1 не запустится.
Вывод
-
Для обучения собственным CUDA-ядрам (GPGPU-эксперименты) на CC 1.1 можно использовать старый драйвер + CUDA 6.5 + PyCUDA.
-
Для современных библиотек и фреймворков (Numba, CuPy, TensorFlow, PyTorch) эта видеокарта не подходит — нужна хотя бы CC 3.0 (рекомендуется CC 6.0 и выше).
-
Если ваша цель — глубокое обучение или готовые ускорители, стоит задуматься об обновлении видеокарты минимум до архитектуры Kepler (CC 3.0+) или новее.
Заключение
Судя по результатам распознавания, я полагаю, что значительное время система может тратить на распознавание языка каждого слова. Это подтверждается использование
отдельных моделей для английского языка, однако, размер файла для английского языка не слишком отличается от "универсального". Можно порассуждать об оптимальности самой модели и программного обеспечения, предоставленных в свободное пользование, и вывод, который напрашивается у меня - в свободный доступ были предоставлены "урезанные"
и неоптимизированные версии, которые было не жалко предоставить для получения массовой обратной связи, например, на форуме OpenAI. Как происходит обучение системы при коммерческом использовании более совершенных моделей для меня лично пока остается неясным, поскольку платные версии OpenAI недоступны российским пользователям по политическим причинам.
Коммерсанты обучают систему достаточно качественно, но, скорее всего, в публичный (читай - бесплатный) доступ отправляют ослабленные в каких-либо параметрах версии.
Поскольку в публичном доступе предоставлены разные по объему версии, то можно предположить, что самая маленькая имеет
небольшое количество образцов для сопоставления, а самая крупная - самое обширное. Особое место занимает файл для ускорения обработки,
но, вероятно, с некоторым снижения качества. Судить об этом определенно несколько сложно, поскольку эти выводы построены только на испытаниях
конкретного примера и на оборудовании, которое не использует все современные возможности ускорения, например, CUDA (Согласно "Википедии",
CUDA (изначально аббр. от англ. Compute Unified Device Architecture) — программно-аппаратная архитектура параллельных вычислений,
которая позволяет существенно увеличить вычислительную производительность благодаря использованию графических процессоров фирмы Nvidia).
Параллельно с испытаниями локально установленной версии OpenAI Whisper для траскрибирования я отправлял получасовые фрагменты звуковых файлов в онлайн.
Оказалось, что коммерческие версии также могут распознавать собеседников, помечая их в распознанном тексте и надо отметить, что выполненное транскрибирование
выглядело еще качественнее. Я полагаю, что в настоящий момент онлайн используются более совершенные версии программного обеспечения для преобразования и,
более точные версии баз данных ("моделей").
Спикер 1: Здравствуйте, Иван Сергеевич, мы с вами договорились, что я к вам приду. Позадаю вам вопрос.
Спикер 2: Чай будешь?
Спикер 1: Нет, спасибо. Я поспрашивала одноклассников и ребят из параллели, кого что волнует...
Разница между коммерческой версией и свободной версией large-v3 здесь менее заметна, но все же она есть и выражается в потере фрагментов текста.
Таким образом, "вычитка" текста и "ручное" восстановление пропущенных кусков является для свободной версии существенной необходимостью.
Проблемы с распознаванием встречаются не только у меня.
По ссылке https://vc.ru/ai/1673598-pochemu-whisper-samyi-slabyi-produkt-openai-nash-opyt-s-ai-raspoznavaniem-rechi
можно найти букет претензий к системе Whisper, массово примененной для решения практических задачи.
Кстати, упомянутое авторами поста дописывание текста "Продолжение следует" произошло и при моих испытаниях.
Итоги
В заключение хочу сказать, что я получил желанный результат, съэкономив огромное количество времени по сравнению с "ручной" обработкой
звуковых файлов. Качество этого результата соответствует актуальному состоянию свободного программного обеспечения
и может с оговорками использоваться любителями.
Примечания
1)
BOINC - BOINC (англ. Berkeley Open Infrastructure for Network Computing) — открытая программная платформа университета Беркли для грид-вычислений,
то есть, (англ. grid — решётка, сеть) — таких распределённых вычислений, в которой «виртуальный суперкомпьютер» представлен в виде кластеров,
соединённых с помощью сети компьютеров, работающих вместе для выполнения огромного количества заданий (операций, работ), применяемой для решения научных,
математических задач, требующих значительных вычислительных ресурсов. Представляет собой некоммерческое межплатформенное программное обеспечение для организации
распределённых вычислений и используется для организации добровольных вычислений. (цитируется по "Википедии")
2)
SETI - в данном случае SETI@home (от англ. Search for Extra-Terrestrial Intelligence at Home — поиск внеземного разума на дому́) —
научный некоммерческий проект добровольных вычислений на платформе BOINC, созданный исследовательским центром SETI при Калифорнийском университете в Беркли,
использующий свободные вычислительные ресурсы на компьютерах добровольцев для анализа радиосигналов, полученных проектом SETI.
Проект поддерживается лабораторией космических наук Калифорнийского университета в Беркли и является частью всемирных инициатив SETI.
В общем, проект SETI (англ. SETI, Search for Extraterrestrial Intelligence) — общее название мероприятий по поиску внеземных цивилизаций
и возможному вступлению с ними в контакт.
О возможностях электронно-вычислительной техники в её практическом применении для распознавания образов, автоматического перевода с одного языка на другой, в более узком применении, например, для преобразования сканированных текстов в пригодную для обработки с помощью текстовых редакторов, говорили, я полагаю, еще во врема пионеров информатики.
Моя первая встреча с подобными системами состоялась когда я занимался программным обеспечением так называемой векторизации,
то есть преобразования сканированных чертежей в формат инженерных систем проектирования.
Тогда, однако, название искуственного интеллекта для преобразования еще не было в моде.
Это было также время развития технологий распознавания текстов для их последующего
изменения в текстовых редакторах. Очевидно, это было связано с необходимостью реализации ускорения поиска нужных сведений
в книгах, поскольку в файле изображения тексте сделать это более затруднительно. Это были 1990-е годы.
Знатоки кино могут вспомнить фильм Сидни Поллака "Три дня Кондора", вышедшем на экраны в 1975 году. В начале фильма
эта технология была мельком показана в декорациях "книжной" лаборатории ЦРУ, занимавшейся поиском утечек информации в открытых источниках.
То есть, специальные службы уже тогда располагали похожими технологиями, распространившимися в гражданской сфере спустя 15 лет.

На переднем плане компьютер с системой хранения на магнитных лентах, на заднем плане - фотографическое устройство, преобразующее изображение в электронную форму. В итоге, текст сохранялся в кодах, пригодных для последующей обработки в текстовом редакторе.
В начальных титрах любезно указано, что "специальное оборудование предоставлено фимой Digital Corporation". В диалоге героев фильма также практически повторяется современная процедура запроса к тексту, заложенному в систему обработки:
- Какая была пуля?(Прим. автора. Речь идет об анализе текста детектива.)
- Машина не выдаст ответа. Машина потребует сформулировать вопрос более развернуто.
А по поводу скорости обработки - анализ текстов, в конечном счет выполнялся людьми, "Подготовьте в вечеру анализ книги, которую я оставил у Вас на столе",- говорит директор лаборатории Джозефу Тернеру, главному герою фильма.
В то время, очевидно, не придавали большого значения аналитическим результатам, выдаваемым электронным устройством.
Можно предположить, что современные технологии преобразования звуковых записей в текстовую форму также использовались ранее силовыми структурами, и уже потом поступили в гражданский оборот.
Open AI Whisper
В поиске приложений для обработки или, как теперь пишут, "транскрибирования" звуковых файлов я натолкнулся на OpenAI Whisper.
Инструкции по использованию я нашел достаточно простыми и решил испытать эту систему.
На сайте фирмы OpenAI, американской фирмы занимающейся разработками в области искусственного интеллекта и прославившейся благодаря чатботу ChatGPT, написано, что
Whisper - это система автоматического распознавания речи (ASR), обученная на основе 680 000 часов многоязычных и многозадачных контролируемых данных,
собранных из Интернета.
Можно поиронизировать, откуда у этой фирмы достаточное количество звуковых файлов "из Интернета", но сейчас это не тема данной статьи.
В открытом доступе, на сайте Github есть раздел, в который помещена открытая версия программы на языке python преобразователя звуковых файлов
в текстовую форму вместе с так называемыми "моделями", то есть базами данных, где образцы (шаблоны) звукового формата сопоставлены с текстовыми кодами.
До поры до времени у меня не было необходимости испытывать этот продукт, поскольку уже накопился опыт использования других изделий подобного рода,
и, в целом, стало понятно, что представляют эти системы.
Однако, в один прекрасный день я вспомнил о паре звуковых файлов, хранивших памятные мне встречи.
Во-первых, это было интервью, взятое моей ученицей в рамках проекту создания сайтов по теме "Встреча с интересным человеком". Хотя я на этом не настаивал,
но в качестве "интересного человека" ученица Вика выбрала меня.
Во-вторых, в июле 2010, в преддверии дня памяти, я интервьюировал внука знаменитого маршал Советского Союза Константина Константиновича Рокоссовского Павла.
У меня возникла мысль опубликовать это интервью в газете "Комсомольская правда", но тогдашний заведующий военным разделом "Комсомолки" Виктор Баранец
забраковал полученный им материал.
Некоторая часть, ограниченная газетным объемом, и которую я обработал вручную, осталась у меня, но гораздо больший объем нашей беседы
сохранился в виде аудиодорожки с видеокамеры. Тогда камерофон "SonyEricsson", лежавший на столе и ведший запись, наверное, лучшего качества
по какой-то причине не сохранил нашу беседу, а дублирующая аналоговая видеокамера 1990 года выпуска, стоявшая в отдалении, меня сильно выручила.
Но, увы, отдаление сыграло не на пользу качеству и уровню записи. Оцифровка и дальнейшая обработка несколько исправили положение, однако, в целом,
качество получились удручающее. Выбрав для газеты, показавшиеся мне для наиболее существенные части беседы, я записал аудиофайл на компакт-диск и отложил его в архив.
Мое выступление для ученицы, по причине объёмности текста полностью не вошло в материал сайта,
и я уже, признаюсь забыл, что там наговорил. Да и файл с интервью Павла Рокоссовского подзадорил меня испытать систему распознавания.
Мне стало интересно перечитать эти выступления полностью, но переводить их вручную благодаря появлению
Whisper'a уже в мыслях не было. Я загорелся идеей реализовать это с помощью электронно-вычислительной машины.
Мое интервью было записано на смартфон и сохранено в виде аудиофайла в формате aac. Длительность воспроизведения файла 58 минут 17 секунд (3497 секунд).
Интервью в Павлом Рокоссовским сохране в формате wav длительностью 1 час 34 минуты 01 секунда (5641 секунда).
В техническом описании
Напрямую указания на ограничения по использованию оперативной памяти при локальном использовании я не нашел.
Однако, при первой попытке запуска OpenAI Whisper на компьютере c операционной системой Ubuntu 24.04.3
с объёмом оперативной памяти 8 Гб и четырёхядерным процессором 3,4 ГГц Intel Core2Quad Q9650,
скорее всего, по этой причине он намертво "завис" и потребовал перезагрузки.
Я решил повторить эксперимент с развертыванием системы уже на восьмиядерном AMD FX-8350 4 ГГц и объемом оперативной памяти 11 Гб также
с близкой и приятной мне операционной системой Ubuntu, только предыдущей версии 22.04.
Держа в уме проблемы, связанные с объемом оперативной памяти, я решил перевести файлы с помощью Audacity в формат mp3, подразумевая, что меньший объём будет компенсирован
увеличением времени обработки. Все-таки, объем файла интервью Павла Рокоссовского в формате wav составляет 1.1 ГБ, а в формате mp3 110.6 МБ.
Я предполагаю, что внутренние алгоритмы все-таки настроены на обработку формата несжатого звука, преобразованного из первоначального формата,
но в этом случае использование памяти будет оптимизировано либо компилятором языка, либо алгоритмами системы, либо операционной системой.
Экспериментального обоснования этого предположения у меня нет и в дальнейшем, возможно, такой эксперимент, при необходимости, можно провести.
Установка системы требует пакета обработки мультимедиа ffmpeg
sudo apt update && sudo apt install ffmpeg
Система создана и испытывалась, согласно найденным мною сведениям на языке python, поэтому установка выполняется с помощью pip. Важно упомянуть,
что в репозитории pip есть пакет с близким названием whisper, но о ничего общего с openai-whisper не имеет. Я сначала ошибся и установил именно
whisper и уже потом openai-whisper, но никаких замеченных мною последствий это не имело.
pip install -U openai-whisper
В процессе установки загружаются пакеты самой системы и дополнительные пакеты для работы с графическими картами NVIDIA,
с арифметикой для чисел с плавающей запятой, и, вероятно, некоторые файлы для обработки мультимедиа.
Загрузка баз данных ("моделей") осуществлялась по ссылкам, найденным в файле __init__.py, на что любезно указали иные испытатели системы (здесь и далее
подразумевается форум на странице OpenAI, посвященный этой системе.)
Как заведено в "дивном, новом мире", в документации я не нашел указаний и сведений по поводу расположения и установки моделей (видимо, считается, система
справляется с этим самостоятельно и участие пользователя для этого не требуется).
Существенная подробность заключается в том, что файлы баз данных в операционной системе Ubuntu надо сохранить
в каталоге {user}/home/.cache/whisper. Файлы баз данных при установке системы не загружаются, а скачиваются при указании конкретной модели. Идея вполне разумная, но
python для этой цели оказался непригоден. Кроме того, если файлы отличаются по какой-либо причине по контрольной сумме, исполнитель python пытается загрузить их самостоятельно, но длительность загрузки оказывается фактически бесконечной и невозможной.
Исключением стала лишь "модель" base - python скачал её при запуске программы.
Скорее всего, это связано с самой средой python (я работал в IDLE), поскольку
загрузка по ссылке в браузере Google Chrome была завершена в течение 15 минут для каждого файла.
Предлагаемый в системе список "моделей" выглядит следующим образом:
"карликовая для английского языка"
tiny.en, файл tiny.en.pt, объём 75571315 байт,
"карликовая"
tiny, файл tiny.pt, объём 75572083 байт,
"базовая для английского языка"
base.en, файл base.en.pt, объём 145261783 байт,
"базовая"
base, файл base.pt, объем 145262807 байт,
"малая для английского языка"
small.en, файл small.en.pt, объём 483615683 байт,
"малая"
small, файл small.pt, объём 483617219 байт,
"средняя для английского языка"
medium.en, файл medium.en.pt, объём 1528006491 байт,
"средняя"
medium, файл medium.pt, объём 1528008539 байт,
"большая, версия 1"
large-v1, файл large-v1.pt, объём 3086999982 байт,
"большая, версия 2"
large-v2, файл large-v2.pt, объём 3086999982 байт,
"большая, версия 3"
large-v3, файл large-v3.pt, объём 3087371615 байт,
"большая"
фактически используется large-v3.pt, но при этом есть
large, файл large.pt, объём 3086999982 байт,
"большая, версия 3, скоростная"
large-v3-turbo, файл large-v3-turbo.pt, объём 1617941637 байт,
"скоростная"
turbo, файл large-v3-turbo.pt, объём 1617941637 байт
Фактически, количество "моделей" меньше, так как оказалось, large загружает large-v3, а turbo - large-v3-turbo
и особой разницы между моделями для английского языка и для остальных другими испытателями найдено не было.
Более того, подразумевая распознавание других языков, в моем случае с текстом на русском языке могла получится "каша" из разноязычных фраз.
Заметно также, что файлы "моделей" large, large-v1 и large-v2 по размеру не отличаются.
(
проверка контрольных сумм от 08.05.2025 large, large-v1,
SHA-256 =
e4b87e7e0bf463eb8e6956e646f1e277e901512310def2c24bf0e11bd3c28e9a)
large-v2
SHA-256 =
81f7c96c852ee8fc832187b0132e569d6c3065a3252ed18e56effd0b6a73e524
large-v3
SHA-256 =
e5b1a55b89c1367dacf97e3e19bfd829a01529dbfdeefa8caeb59b3f1b81dadb
вычислена Gtkhash.
Как видно из сопоставления, модели large и large-v1 полностью одинаковы,
а large-v2 и large-v3 различаются.
)
и, видимо, для ускорения, "модель" large-v3-turbo примерно на 40% меньше версии large-v3.
И размеры файлы моделей tiny по сравнению с остальными - действительно "карликовые".
После установки системы и загрузки баз данных можно приступать к запуску системы. Программа для преобразования небольшая - всего несколько строк
и её запуск программы в среде IDLE несложен.
В окне предупреждений появилось указание о невозможности использования текущего драйвера NVIDIA ввиду его "древности".
В качестве решения предлагается установить PyTorch с предварительно скомпилированным драйвером для данной видеокарты:
UserWarning:
CUDA initialization:
The NVIDIA driver on your system is too old (found version 11040).
Please update your GPU driver by downloading
and installing a new version from the URL:
http://www.nvidia.com/Download/index.aspx
Alternatively, go to:
https://pytorch.org to install a PyTorch version
that has been compiled with your version of the CUDA driver.
И также предупреждение о недостаточно актуальном пакете numPy:
UserWarning:
A NumPy version >=1.17.3 and < 1.25.0 is required
for this version of SciPy (detected version 2.2.4)
Было выведено также предупреждение об использовании арифметики с плавающей точкой более высокой разрядности:
FP16 is not supported on CPU; using FP32 instead
Один из испытателей посчитал, что использование арифметики с плавающей точкой меньшей разрядности должно привести к экономии оперативной памяти,
однако, для меня это высказывание не совсем понятно.
Эти предупреждения говорят лишь о том, что ускорение обработки на данном оборудовании, очевидно, невозможно.
import whisper
import time
start_time = time.time() # время начала выполнения
model = whisper.load_model("large-v3")
result = model.transcribe("Interview_Goussev.mp3")
print(result["text"])
end_time = time.time() # время окончания выполнения
execution_time = end_time - start_time # вычисляем время выполнения
print(f"Время выполнения программы: {execution_time} секунд")
Очевидно, что нужно загрузить предварительно установленный локально пакет whisper и указать корректное название используемой "модели".
На мой взгляд, недостатком в этой программе является выведение результата в окно, а, например, не в файл.
Кстати, когда я запустил программу для "транскрибирования" крупного объёма аудиоданных, вывод, составивший более нескольких сотен строк,
привел к появлению предупреждения о необходимости сохранения пользователем этих данных на носитель, и опасности чрезмерной потребности в оперативной памяти
при просмотре результата в окне вывода.
Для оценки длительности выполнения добавлены операторы измерения времени из соответствующего пакета.
Результаты продемостированы для разных моделей на примере аудиофайла хорошего качества.
Модель "base", файл интервью Гусева.
Здравствуйте, манцерки, мы с вами договорились в таком предуме.
Последаю вам вопрос. Нет, спасибо. Продолжение, не сопросто. Я не себя. И тебе удобнее. Вот тут хорошо.
Модель «medium», файл интервью Гусева.
Здравствуйте, Иван Сергеевич. Мы с вами договорились, что я к вам приду, позадаю вам вопрос.
Чай, пожалуйста. Нет, спасибо. Куда-нибудь так поставлю. Где тебе удобнее? Тут хорошо.
Разница весьма значительная, видны пропуски текста и это указывает на необходимость использования
более крупных баз данных для распознавания, даже для файлов приличного качества.
После первых запусков на небольших фрагментах звуковых файлов
я пришел к выводу о необходимости использования самой крупной базы данных large-v3.
И, наконец, производительность, выражаемая в затраченном времени для контрольных файлов.
Интервью Гусева, формат mp3, русский язык
Длительность Модель Время обработки
Фрагмент - 1476 секунд - medium - 3380 секунд
Полный - 3497 секунд - large-v3 - 17890 секунд - 5 часов
Интервью Рокоссовского, формат mp3, русский язык
Длительность Модель Время обработки
Фрагмент - 293 секунды - base - 240 секунд
Фрагмент - 293 секунды - medium - 732 секунды
Фрагмент - 293 секунды - small - 266 секунд
Фрагмент - 293 секунды - large-v3-turbo - 689 секунд
Фрагмент - 293 секунды - large-v3 - 2218 секунд
Полный - 5641 секунда - large-v3 - 30700 секунд
Дополнение от 08.05.2025
Продолжая работы по транскрибированию звуковых файлов, я выполнил обработку звуковой дорожки
выступлений Ричарда Бендера, известного автора-создателя спорного, признанного, согласно текущей
версии "Википедии" псеводнаучным, нейролингвистического програмиирования (НЛП, NLP, не путать с
аббревиатурой Natural Language Processing - обработка естественного языка).
Я взял звуковые дорожки четырех выступлений в формате mp3 длительностью около одного часа и запустил их обработку
с помощью тех же программ с помощью модели large-v3. Результы приведены в таблице ниже.
Название
Длительность звучания,
сек
Время обработки,
сек
Отношение
T обработки/ Tзвучания
Instant talent
3661
19788.1
5.4
Inner beauty
3093
17472.4
5.65
Rapid Hypnotic inductions
3417
15185.8
4.44
Fantastic futures
3185
15014.15
4.71
Persuation Engineering, p.1
6278
27863.43
4.43
Persuation Engineering, p.2
5958
32629,81
5,47
Persuation Engineering, p.3
6174
-
-
Persuation Engineering, p.4
5517
28425.0
5.15
Persuation Engineering, p.5
4631
25875.7
5.59
Persuation Engineering, p.6
5129
30176.65
5.88
Persuation Engineering, p.7
6781
41066.68
6.05
Persuation Engineering, p.8
7327
34213.9
4.66
A Twist of Sand (1968)
5182
32668.87
6.3
Для файла с хорошим качеством звука коэффициент отношения длительности воспроизведения файла к времени обработки составил около 5.1
(я принял качество звука интервью Гусева хорошим, и качество звука интервью Рокоссовского - плохим. Усиление цифрового звука, которое
я выполнил для прослушивания записи, увы, видимо сослужила плохую службу для транскрибирования. При этом полученнный текст оказался
в целом пригоден для дальнейшего редактирования),
и для файла с плохим качеством звука этот коэффициент составил 5.4.
То есть, по моему мнению качество и длительность воспроизведения исходного материала не повлияла на скорость обработки.
При этом, если посчитать оценку длительности обработки на основе пропорции (к сожалению, для файла с интервью Гусева измерение времени я не выполнил)
для файла с интервью Рокоссовского, то она составит 42703 секунды, но фактически оказалось примерно на 30% меньше.
На скорость обработки влияет, главным образом, размер модели. Но, увы, эти результаты основаны только на использовании центрального процессора при обработке
звукового материала. Поскольку ранее мои графические карты NVIDIA с поддержкой технологии использовались при обработке материалов BOINC/1/
для проекта SETI /2/ и
настройка поддержки CUDA привела к существенному росту производительности, то можно догадаться, что прирост благодаря графическим процессорам даст ожидаемо высокую
прибавку в скорости получения результата.
Дополнение от 08.05.2025.
Здесь я могу только посетовать, что программисты проекта BOINC смогли адаптировать приложения для работы с графическими картами пользователей своего времени,
а авторы OpenAI Whisper посчитали, что для их системы потребуются только актуальные карты NVIDIA. Интуитивно я полагаю, что таким образом, стимулируется
приобретение нового аппаратного обеспечения, и при этом игнорируются возможности графических процессоров предыдущего поколения. Увы, это предположение
я обосновать не могу. Возможно, как и для процессоров 80286, время карт NVIDIA моего компьютера прошло, и именно современные графические процессоры действительно
предлагают использование своих ресурсов для решения задач ускорения обработки подобных задач.
После первых опытов запуска OpenAI Whisper в среде операционной системы Ubuntu 22.04 я установил это его вместе с сопутствующими библиотеками (Visual Studio, ffmpeg, PyTorch, Python 3.12) в среде Windows 10. В среде Ubuntu 24.04, приложение остановило систему с 8 ГБайт оперативной памяти. Видимо, этого количества оперативной памяти
Whisper недостаточно. Как показали измерения используемой памяти во время работы Whisper - оно составляло около 9,7 ГБайт. Похоже, swap-память на жестком диске
не решает вопроса потребности в размещении данных этого приложения.
Я надеялся, что в среде Windows возможно удастся запустить CUDA, но, увы, NVIDIA GeForce 8600 GTS (микроархитектура Tesla, выпуск: ноябрь 2006 года) не поддерживается Whisper.
Полагаю, что рассчитывать на включение CUDA для NVIDIA GT 740 (микроархитектура Fermi, Kepler или Maxwell, выпуск: май 2014) тоже не стоит.
В среде Windows не обошлось без неожиданностей. При первом запуске уже отлаженной программы для транскрибирования Windows "вывалился" из текущего
пользователя и "выбил" пару резидентных процессов. Как оказалось, в конце работы формат записи данных в режиме неопреденной кодировки,
"выводит приложение из себя".
file.write(f"Время выполнения программы: {execution_time} секунд")
File "C:\..\...\PythonSoftwareFoundation.Python.3.13_3.13.1008.0_x64...\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-4:
character maps to '<'undefined'>'
Оказалось, что в оператор создания файла надо добавить строку назначения кодировки выводимых данных.
file = open("Probe.txt", "a", encoding="utf-8")
После этого вывод закончился успешно.
Возможно, файл, сохраненный в кодировке UTF-8 входил в конфликт с действующей кодировкой Windows (см. cp1252.py ).
В итоге, транскрибированное содержание было записано в файл, но несколько часов работы остались без измерения времени.
В завершение добавлю, что связи между использованием Whisper для транскрибирования от работы программы в разных операционных
системах я пока не установил. Отношение длительности работы приложения к длительности звучания обрабатываемого файла колеблется
от 4.4 до 5.5 и, скорее всего, в большей степени определяется объёмом библиотеки ("модели") для обработки. Разумеется, было бы
очень любопытно узнать влияние графического ускорителя, но сегодняшние цены - порядка 50000-70000 рублей заставляют задуматься
о целесообразности такой инвестиции.
Кстати, с этой целью я решил провести оценку стоимости транскрибирования без ускорителя.
Прямые затраты на 10-часовое транскрибирование файла, например, фильма или публичного выступления связаны с расходами на электроэнергию.
Потребляемая компьютером мощность, по моим измерениям в пиковые моменты может достигать 600 Вт, в среднем же составляет около 520 Вт.
То есть, в течение 10 часов при примерной стоимости киловатт-часа 10 рублей затраты на электроэнергию составят около 52 рубля.
Для точности следует добавить амортизацию оборудования. Оценка выглядит такой - общее время функционирования домашнего комьпютера,
для 24 часов в течение 15 лет надо соотнести со стоимостью компьютера порядка 1500 долларов при средней цене доллара 80 рублей.
120000 рублей к 131400 часов владения дадут 0,91 рубля/час. Суммируя с затратами на электроэнергию, получаем себестоимость транскрибирования
звукового файла порядка 61-62 рублей. Здесь задумаешься о том, что не стоит платить интернет-сервисам за обработку файлов, не говоря уже о покупке
супер-карты NVIDIA.
Другое дело, коммерческая деятельность. В этом случае скорость обработки, наверное, стоит этих инвестиций. Однако, как я уже упоминал,
измерить ускорение для конкретной оценки мне пока не удалось.
Запрос ChatGPT
Всемирно известный чатбот проконсультировал меня по теме возможностей располагаемых мной карт и я получил следующий ответ.
Вы спросили: У меня установлена видеокарта с чипом NVIDIA GT 740. Могу ли я запустить программу на языке Python с интерфейсом к этой карте?
ChatGPT сказал:
Комментарий ChatGPT
с демонстрацией действий
Пользователь спрашивает, можно ли запустить программу на Python с использованием GPU NVIDIA GT 740. Для этого требуется поддержка CUDA.
Вероятно, карта имеет вычислительную способность 3.0, что ограничивает использование более новых версий CUDA.
Мы проверим, насколько эта карта поддерживает CUDA и библиотеки Python, такие как PyCUDA, Numba, TensorFlow и PyTorch.
Важно помнить, что она поддерживает только CUDA до версии 8.0.
Итак, GT 740 существует в двух вариантах: GK107 (Kepler) с Compute 3.0 и Maxwell GM107 с Compute 5.0.
Нужно подтвердить, что ваша карта поддерживает Compute 3.0, что ограничивает использование некоторых библиотек глубокого обучения.
>
Чтобы работать с такими фреймворками, как TensorFlow и PyTorch, потребуется Compute Capability (CC) 3.5 и выше.
>Для других задач можно использовать PyCUDA, Numba или CuPy. Следует установить правильные драйверы и подсистемы, чтобы избежать проблем с совместимостью.
Итоговый ответ
Думал на протяжении 48 секунд
Да, вы можете запускать на вашей карте NVIDIA GeForce GT 740 Python-программы с использованием GPU, но с рядом ограничений.
-
Вычислительная способность (Compute Capability) вашей карты
GeForce GT 740 имеет Compute Capability (CC) 3.0
Источник: developers forum
- Поддержка CUDA-тулкитов
-
Все GPU с CC≥3.0 поддерживаются CUDA 9 и CUDA 10 (до версии 10.2 включительно)
Источник: NVIDIA Developer Forums
-
Начиная с CUDA 11 минимальная CC составляет 3.5, так что на CUDA 11+ ваша карта уже не будет работать.
- Как подключить Python
- Драйвер NVIDIA: установите последнюю совместимую версию драйвера для вашей ОС.
- CUDA Toolkit 10.2: скачайте и установите его с официального сайта NVIDIA.
- Python-пакеты: после установки CUDA вы можете установить через pip или conda:
- PyCUDA для прямого доступа к CUDA-ядрам.
- Numba (версии ≤0.55), которая поддерживает CC 3.0 на CUDA 10.x.
- CuPy, аналог NumPy, ускоренный на CUDA.
Пример (в терминале):
pip install pycuda numba cupy
- Ограничения с фреймворками глубокого обучения
-
TensorFlow-GPU официально требует CC ≥3.5, так что GT 740 не поддерживается даже старым релизом TF-GPU
Источник: Stack Overflow
-
PyTorch последних версий тоже не будет работать на CC 3.0; последний релиз с поддержкой 3.0 – это PyTorch 0.3.0 (2018 г.)
Источник: Stack Overflow
Итог:
- Для общих задач GPGPU (написания и запуска собственных CUDA-ядер) GT 740 подходит, достаточно установить драйвера, CUDA 10.x и библиотеки PyCUDA/Numba/CuPy.
- Для современного машинного обучения (TensorFlow 2.x, PyTorch 1.x) нужна карта с CC ≥3.5 (рекомендуется минимум CC 6.0–7.0). Если ваша цель — именно глубокое обучение, стоит рассмотреть более новую видеокарту.
Я задал вопрос и по поводу второй карты.
Вы спросили:
У меня установлена видеокарта с чипом NVIDIA GeForce 8600 GTS. Могу ли я запустить программу на языке Python с интерфейсом к этой карте?
Комментарий ChatGPT
с демонстрацией действий
Пользователь задаёт вопрос о том, может ли их видеокарта NVIDIA GeForce 8600 GTS работать с Python-программами с интерфейсом для этой карты.
Карта стариковая, с вычислительной способностью 1.1 или 1.2, поддерживает старые версии CUDA (до 3.x).
Современные библиотеки Python требуют CC >= 3.0, поэтому, скорее всего, такой интерфейс не работает.
Я планирую найти точную информацию для подтверждения, используя поиск по вопросам вычислительных способностей и поддержки в TensorFlow, Numba.
Пользователь спрашивает о возможности использования NVIDIA GeForce 8600 GTS для Python-программы с интерфейсом к этой видеокарте.
Поскольку карта имеет вычислительную способность 1.1 и поддерживает CUDA до версии 3.x, она не совместима с большинством современных Python-библиотек, которые требуют CC >= 3.0.
Чтобы подтвердить, всё-таки стоит проверить информацию по поддержке CUDA и TensorFlow.
Видеокарта GeForce 8600 GTS имеет способность вычислений 1.1, поддерживаемую CUDA до версии 6.5.
Современные библиотеки Python, такие как CuPy и Numba, требуют более высоких вычислительных возможностей (CC >= 3.0 и CC >= 2.0 соответственно).
PyCUDA может работать с устаревшими версиями CUDA, но установка старых версий крайне сложна, а поддержка драйверов для современных ОС прекращена в 2016 году.
Так что, в целом, для GeForce 8600 GTS это будет проблематично.
ChatGPT сказал:
Думал на протяжении 37 секунд
Ваша GeForce 8600 GTS имеет устаревшую архитектуру и далеко не всё программное обеспечение для GPGPU её поддерживает. Ключевые моменты:
- Compute Capability
GeForce 8600 GTS относится к серии «GeForce 8» и обладает Compute Capability 1.1
Источник: Википедия
- Поддержка CUDA Toolkit
Версии CUDA Toolkit 1.1–6.5 официально поддерживают CC 1.1 (микроархитектура Tesla/G8x)
Источник: Википедия
Начиная с CUDA 7.0 и далее (особенно CUDA 9/10/11…) минимальная CC составляет 2.0 или даже 3.0, так что новейшие тулкиты и вовсе не совместимы с вашей картой
Источник: NVIDIA Developer Forums
Чтобы пользоваться CUDA на этой карте, придётся:
- Найти и установить древний драйвер (серии 340.x или ниже, поддерживающий GeForce 8, последний выпуск — апрель 2016).
- Установить CUDA 6.5 или более ранний Toolkit (из архива NVIDIA).
- Python-оболочки для CUDA
- PyCUDA: теоретически можно работать с любым CUDA Toolkit, но вам придётся собирать библиотеки под старую версию CUDA вручную.
- Numba: требует Compute Capability ≥ 2.0, CC 1.1 не поддерживается.
- CuPy: ориентирован на CC ≥ 3.0, с вашей картой работать не будет.
- Фреймворки глубокого обучения
- TensorFlow-GPU поддерживает лишь карты с CC ≥ 3.5, ваша CC 1.1 отбрасывается на этапе инициализации
Источник: Stack Overflow
- PyTorch последних версий также рассчитан на CC ≥ 3.0 и выше; с CC 1.1 не запустится.
Вывод
-
Для обучения собственным CUDA-ядрам (GPGPU-эксперименты) на CC 1.1 можно использовать старый драйвер + CUDA 6.5 + PyCUDA.
-
Для современных библиотек и фреймворков (Numba, CuPy, TensorFlow, PyTorch) эта видеокарта не подходит — нужна хотя бы CC 3.0 (рекомендуется CC 6.0 и выше).
-
Если ваша цель — глубокое обучение или готовые ускорители, стоит задуматься об обновлении видеокарты минимум до архитектуры Kepler (CC 3.0+) или новее.
Заключение
Судя по результатам распознавания, я полагаю, что значительное время система может тратить на распознавание языка каждого слова. Это подтверждается использование
отдельных моделей для английского языка, однако, размер файла для английского языка не слишком отличается от "универсального". Можно порассуждать об оптимальности самой модели и программного обеспечения, предоставленных в свободное пользование, и вывод, который напрашивается у меня - в свободный доступ были предоставлены "урезанные"
и неоптимизированные версии, которые было не жалко предоставить для получения массовой обратной связи, например, на форуме OpenAI. Как происходит обучение системы при коммерческом использовании более совершенных моделей для меня лично пока остается неясным, поскольку платные версии OpenAI недоступны российским пользователям по политическим причинам.
Коммерсанты обучают систему достаточно качественно, но, скорее всего, в публичный (читай - бесплатный) доступ отправляют ослабленные в каких-либо параметрах версии.
Поскольку в публичном доступе предоставлены разные по объему версии, то можно предположить, что самая маленькая имеет
небольшое количество образцов для сопоставления, а самая крупная - самое обширное. Особое место занимает файл для ускорения обработки,
но, вероятно, с некоторым снижения качества. Судить об этом определенно несколько сложно, поскольку эти выводы построены только на испытаниях
конкретного примера и на оборудовании, которое не использует все современные возможности ускорения, например, CUDA (Согласно "Википедии",
CUDA (изначально аббр. от англ. Compute Unified Device Architecture) — программно-аппаратная архитектура параллельных вычислений,
которая позволяет существенно увеличить вычислительную производительность благодаря использованию графических процессоров фирмы Nvidia).
Параллельно с испытаниями локально установленной версии OpenAI Whisper для траскрибирования я отправлял получасовые фрагменты звуковых файлов в онлайн.
Оказалось, что коммерческие версии также могут распознавать собеседников, помечая их в распознанном тексте и надо отметить, что выполненное транскрибирование
выглядело еще качественнее. Я полагаю, что в настоящий момент онлайн используются более совершенные версии программного обеспечения для преобразования и,
более точные версии баз данных ("моделей").
Спикер 1: Здравствуйте, Иван Сергеевич, мы с вами договорились, что я к вам приду. Позадаю вам вопрос.
Спикер 2: Чай будешь?
Спикер 1: Нет, спасибо. Я поспрашивала одноклассников и ребят из параллели, кого что волнует...
Разница между коммерческой версией и свободной версией large-v3 здесь менее заметна, но все же она есть и выражается в потере фрагментов текста.
Таким образом, "вычитка" текста и "ручное" восстановление пропущенных кусков является для свободной версии существенной необходимостью.
Проблемы с распознаванием встречаются не только у меня.
По ссылке https://vc.ru/ai/1673598-pochemu-whisper-samyi-slabyi-produkt-openai-nash-opyt-s-ai-raspoznavaniem-rechi
можно найти букет претензий к системе Whisper, массово примененной для решения практических задачи.
Кстати, упомянутое авторами поста дописывание текста "Продолжение следует" произошло и при моих испытаниях.
Итоги
В заключение хочу сказать, что я получил желанный результат, съэкономив огромное количество времени по сравнению с "ручной" обработкой
звуковых файлов. Качество этого результата соответствует актуальному состоянию свободного программного обеспечения
и может с оговорками использоваться любителями.
Примечания
1)
BOINC - BOINC (англ. Berkeley Open Infrastructure for Network Computing) — открытая программная платформа университета Беркли для грид-вычислений,
то есть, (англ. grid — решётка, сеть) — таких распределённых вычислений, в которой «виртуальный суперкомпьютер» представлен в виде кластеров,
соединённых с помощью сети компьютеров, работающих вместе для выполнения огромного количества заданий (операций, работ), применяемой для решения научных,
математических задач, требующих значительных вычислительных ресурсов. Представляет собой некоммерческое межплатформенное программное обеспечение для организации
распределённых вычислений и используется для организации добровольных вычислений. (цитируется по "Википедии")
2)
SETI - в данном случае SETI@home (от англ. Search for Extra-Terrestrial Intelligence at Home — поиск внеземного разума на дому́) —
научный некоммерческий проект добровольных вычислений на платформе BOINC, созданный исследовательским центром SETI при Калифорнийском университете в Беркли,
использующий свободные вычислительные ресурсы на компьютерах добровольцев для анализа радиосигналов, полученных проектом SETI.
Проект поддерживается лабораторией космических наук Калифорнийского университета в Беркли и является частью всемирных инициатив SETI.
В общем, проект SETI (англ. SETI, Search for Extraterrestrial Intelligence) — общее название мероприятий по поиску внеземных цивилизаций
и возможному вступлению с ними в контакт.
В поиске приложений для обработки или, как теперь пишут, "транскрибирования" звуковых файлов я натолкнулся на OpenAI Whisper. Инструкции по использованию я нашел достаточно простыми и решил испытать эту систему.
На сайте фирмы OpenAI, американской фирмы занимающейся разработками в области искусственного интеллекта и прославившейся благодаря чатботу ChatGPT, написано, что
Whisper - это система автоматического распознавания речи (ASR), обученная на основе 680 000 часов многоязычных и многозадачных контролируемых данных, собранных из Интернета.
Можно поиронизировать, откуда у этой фирмы достаточное количество звуковых файлов "из Интернета", но сейчас это не тема данной статьи.
В открытом доступе, на сайте Github есть раздел, в который помещена открытая версия программы на языке python преобразователя звуковых файлов в текстовую форму вместе с так называемыми "моделями", то есть базами данных, где образцы (шаблоны) звукового формата сопоставлены с текстовыми кодами.
До поры до времени у меня не было необходимости испытывать этот продукт, поскольку уже накопился опыт использования других изделий подобного рода, и, в целом, стало понятно, что представляют эти системы.
Однако, в один прекрасный день я вспомнил о паре звуковых файлов, хранивших памятные мне встречи.
Во-первых, это было интервью, взятое моей ученицей в рамках проекту создания сайтов по теме "Встреча с интересным человеком". Хотя я на этом не настаивал,
но в качестве "интересного человека" ученица Вика выбрала меня.
Во-вторых, в июле 2010, в преддверии дня памяти, я интервьюировал внука знаменитого маршал Советского Союза Константина Константиновича Рокоссовского Павла.
У меня возникла мысль опубликовать это интервью в газете "Комсомольская правда", но тогдашний заведующий военным разделом "Комсомолки" Виктор Баранец
забраковал полученный им материал.
Некоторая часть, ограниченная газетным объемом, и которую я обработал вручную, осталась у меня, но гораздо больший объем нашей беседы
сохранился в виде аудиодорожки с видеокамеры. Тогда камерофон "SonyEricsson", лежавший на столе и ведший запись, наверное, лучшего качества
по какой-то причине не сохранил нашу беседу, а дублирующая аналоговая видеокамера 1990 года выпуска, стоявшая в отдалении, меня сильно выручила.
Но, увы, отдаление сыграло не на пользу качеству и уровню записи. Оцифровка и дальнейшая обработка несколько исправили положение, однако, в целом,
качество получились удручающее. Выбрав для газеты, показавшиеся мне для наиболее существенные части беседы, я записал аудиофайл на компакт-диск и отложил его в архив.
Мое выступление для ученицы, по причине объёмности текста полностью не вошло в материал сайта,
и я уже, признаюсь забыл, что там наговорил. Да и файл с интервью Павла Рокоссовского подзадорил меня испытать систему распознавания.
Мне стало интересно перечитать эти выступления полностью, но переводить их вручную благодаря появлению
Whisper'a уже в мыслях не было. Я загорелся идеей реализовать это с помощью электронно-вычислительной машины.
Мое интервью было записано на смартфон и сохранено в виде аудиофайла в формате aac. Длительность воспроизведения файла 58 минут 17 секунд (3497 секунд).
Интервью в Павлом Рокоссовским сохране в формате wav длительностью 1 час 34 минуты 01 секунда (5641 секунда).
В техническом описании
Напрямую указания на ограничения по использованию оперативной памяти при локальном использовании я не нашел.
Однако, при первой попытке запуска OpenAI Whisper на компьютере c операционной системой Ubuntu 24.04.3
с объёмом оперативной памяти 8 Гб и четырёхядерным процессором 3,4 ГГц Intel Core2Quad Q9650,
скорее всего, по этой причине он намертво "завис" и потребовал перезагрузки.
Я решил повторить эксперимент с развертыванием системы уже на восьмиядерном AMD FX-8350 4 ГГц и объемом оперативной памяти 11 Гб также
с близкой и приятной мне операционной системой Ubuntu, только предыдущей версии 22.04.
Держа в уме проблемы, связанные с объемом оперативной памяти, я решил перевести файлы с помощью Audacity в формат mp3, подразумевая, что меньший объём будет компенсирован увеличением времени обработки. Все-таки, объем файла интервью Павла Рокоссовского в формате wav составляет 1.1 ГБ, а в формате mp3 110.6 МБ. Я предполагаю, что внутренние алгоритмы все-таки настроены на обработку формата несжатого звука, преобразованного из первоначального формата, но в этом случае использование памяти будет оптимизировано либо компилятором языка, либо алгоритмами системы, либо операционной системой. Экспериментального обоснования этого предположения у меня нет и в дальнейшем, возможно, такой эксперимент, при необходимости, можно провести.
Установка системы требует пакета обработки мультимедиа ffmpeg
sudo apt update && sudo apt install ffmpeg
Система создана и испытывалась, согласно найденным мною сведениям на языке python, поэтому установка выполняется с помощью pip. Важно упомянуть,
что в репозитории pip есть пакет с близким названием whisper, но о ничего общего с openai-whisper не имеет. Я сначала ошибся и установил именно
whisper и уже потом openai-whisper, но никаких замеченных мною последствий это не имело.
pip install -U openai-whisper
В процессе установки загружаются пакеты самой системы и дополнительные пакеты для работы с графическими картами NVIDIA, с арифметикой для чисел с плавающей запятой, и, вероятно, некоторые файлы для обработки мультимедиа.
Загрузка баз данных ("моделей") осуществлялась по ссылкам, найденным в файле __init__.py, на что любезно указали иные испытатели системы (здесь и далее
подразумевается форум на странице OpenAI, посвященный этой системе.)
Как заведено в "дивном, новом мире", в документации я не нашел указаний и сведений по поводу расположения и установки моделей (видимо, считается, система
справляется с этим самостоятельно и участие пользователя для этого не требуется).
Существенная подробность заключается в том, что файлы баз данных в операционной системе Ubuntu надо сохранить
в каталоге {user}/home/.cache/whisper. Файлы баз данных при установке системы не загружаются, а скачиваются при указании конкретной модели. Идея вполне разумная, но
python для этой цели оказался непригоден. Кроме того, если файлы отличаются по какой-либо причине по контрольной сумме, исполнитель python пытается загрузить их самостоятельно, но длительность загрузки оказывается фактически бесконечной и невозможной.
Исключением стала лишь "модель" base - python скачал её при запуске программы.
Скорее всего, это связано с самой средой python (я работал в IDLE), поскольку
загрузка по ссылке в браузере Google Chrome была завершена в течение 15 минут для каждого файла.
Предлагаемый в системе список "моделей" выглядит следующим образом:
"карликовая для английского языка"
Фактически, количество "моделей" меньше, так как оказалось, large загружает large-v3, а turbo - large-v3-turbo
и особой разницы между моделями для английского языка и для остальных другими испытателями найдено не было.
Более того, подразумевая распознавание других языков, в моем случае с текстом на русском языке могла получится "каша" из разноязычных фраз.
tiny.en, файл tiny.en.pt, объём 75571315 байт,
"карликовая"
tiny, файл tiny.pt, объём 75572083 байт,
"базовая для английского языка"
base.en, файл base.en.pt, объём 145261783 байт,
"базовая"
base, файл base.pt, объем 145262807 байт,
"малая для английского языка"
small.en, файл small.en.pt, объём 483615683 байт,
"малая"
small, файл small.pt, объём 483617219 байт,
"средняя для английского языка"
medium.en, файл medium.en.pt, объём 1528006491 байт,
"средняя"
medium, файл medium.pt, объём 1528008539 байт,
"большая, версия 1"
large-v1, файл large-v1.pt, объём 3086999982 байт,
"большая, версия 2"
large-v2, файл large-v2.pt, объём 3086999982 байт,
"большая, версия 3"
large-v3, файл large-v3.pt, объём 3087371615 байт,
"большая"
фактически используется large-v3.pt, но при этом есть
large, файл large.pt, объём 3086999982 байт,
"большая, версия 3, скоростная"
large-v3-turbo, файл large-v3-turbo.pt, объём 1617941637 байт,
"скоростная"
turbo, файл large-v3-turbo.pt, объём 1617941637 байт
Заметно также, что файлы "моделей" large, large-v1 и large-v2 по размеру не отличаются.
(
проверка контрольных сумм от 08.05.2025 large, large-v1,
SHA-256 =
e4b87e7e0bf463eb8e6956e646f1e277e901512310def2c24bf0e11bd3c28e9a)
large-v2
SHA-256 =
81f7c96c852ee8fc832187b0132e569d6c3065a3252ed18e56effd0b6a73e524
large-v3
SHA-256 =
e5b1a55b89c1367dacf97e3e19bfd829a01529dbfdeefa8caeb59b3f1b81dadb
вычислена Gtkhash.
Как видно из сопоставления, модели large и large-v1 полностью одинаковы,
а large-v2 и large-v3 различаются.
)
и, видимо, для ускорения, "модель" large-v3-turbo примерно на 40% меньше версии large-v3.
И размеры файлы моделей tiny по сравнению с остальными - действительно "карликовые".
После установки системы и загрузки баз данных можно приступать к запуску системы. Программа для преобразования небольшая - всего несколько строк
и её запуск программы в среде IDLE несложен.
В окне предупреждений появилось указание о невозможности использования текущего драйвера NVIDIA ввиду его "древности".
В качестве решения предлагается установить PyTorch с предварительно скомпилированным драйвером для данной видеокарты:
UserWarning: CUDA initialization: The NVIDIA driver on your system is too old (found version 11040). Please update your GPU driver by downloading and installing a new version from the URL: http://www.nvidia.com/Download/index.aspx Alternatively, go to: https://pytorch.org to install a PyTorch version that has been compiled with your version of the CUDA driver.
И также предупреждение о недостаточно актуальном пакете numPy:
UserWarning: A NumPy version >=1.17.3 and < 1.25.0 is required for this version of SciPy (detected version 2.2.4)
Было выведено также предупреждение об использовании арифметики с плавающей точкой более высокой разрядности:
FP16 is not supported on CPU; using FP32 instead
Один из испытателей посчитал, что использование арифметики с плавающей точкой меньшей разрядности должно привести к экономии оперативной памяти, однако, для меня это высказывание не совсем понятно.
Эти предупреждения говорят лишь о том, что ускорение обработки на данном оборудовании, очевидно, невозможно.
import whisper import time start_time = time.time() # время начала выполнения model = whisper.load_model("large-v3") result = model.transcribe("Interview_Goussev.mp3") print(result["text"]) end_time = time.time() # время окончания выполнения execution_time = end_time - start_time # вычисляем время выполнения print(f"Время выполнения программы: {execution_time} секунд")
Очевидно, что нужно загрузить предварительно установленный локально пакет whisper и указать корректное название используемой "модели".
На мой взгляд, недостатком в этой программе является выведение результата в окно, а, например, не в файл.
Кстати, когда я запустил программу для "транскрибирования" крупного объёма аудиоданных, вывод, составивший более нескольких сотен строк,
привел к появлению предупреждения о необходимости сохранения пользователем этих данных на носитель, и опасности чрезмерной потребности в оперативной памяти
при просмотре результата в окне вывода.
Для оценки длительности выполнения добавлены операторы измерения времени из соответствующего пакета.
Результаты продемостированы для разных моделей на примере аудиофайла хорошего качества.
Модель "base", файл интервью Гусева.
Здравствуйте, манцерки, мы с вами договорились в таком предуме. Последаю вам вопрос. Нет, спасибо. Продолжение, не сопросто. Я не себя. И тебе удобнее. Вот тут хорошо.
Модель «medium», файл интервью Гусева.
Здравствуйте, Иван Сергеевич. Мы с вами договорились, что я к вам приду, позадаю вам вопрос. Чай, пожалуйста. Нет, спасибо. Куда-нибудь так поставлю. Где тебе удобнее? Тут хорошо.
Разница весьма значительная, видны пропуски текста и это указывает на необходимость использования более крупных баз данных для распознавания, даже для файлов приличного качества.
После первых запусков на небольших фрагментах звуковых файлов я пришел к выводу о необходимости использования самой крупной базы данных large-v3.
И, наконец, производительность, выражаемая в затраченном времени для контрольных файлов.
Интервью Гусева, формат mp3, русский язык Длительность Модель Время обработки Фрагмент - 1476 секунд - medium - 3380 секунд Полный - 3497 секунд - large-v3 - 17890 секунд - 5 часов Интервью Рокоссовского, формат mp3, русский язык Длительность Модель Время обработки Фрагмент - 293 секунды - base - 240 секунд Фрагмент - 293 секунды - medium - 732 секунды Фрагмент - 293 секунды - small - 266 секунд Фрагмент - 293 секунды - large-v3-turbo - 689 секунд Фрагмент - 293 секунды - large-v3 - 2218 секунд Полный - 5641 секунда - large-v3 - 30700 секунд
Дополнение от 08.05.2025
Продолжая работы по транскрибированию звуковых файлов, я выполнил обработку звуковой дорожки
выступлений Ричарда Бендера, известного автора-создателя спорного, признанного, согласно текущей
версии "Википедии" псеводнаучным, нейролингвистического програмиирования (НЛП, NLP, не путать с
аббревиатурой Natural Language Processing - обработка естественного языка).
Я взял звуковые дорожки четырех выступлений в формате mp3 длительностью около одного часа и запустил их обработку
с помощью тех же программ с помощью модели large-v3. Результы приведены в таблице ниже.
Название |
Длительность звучания, сек |
Время обработки, сек |
Отношение T обработки/ Tзвучания |
---|---|---|---|
Instant talent | 3661 | 19788.1 | 5.4 |
Inner beauty | 3093 | 17472.4 | 5.65 |
Rapid Hypnotic inductions | 3417 | 15185.8 | 4.44 |
Fantastic futures | 3185 | 15014.15 | 4.71 |
Persuation Engineering, p.1 | 6278 | 27863.43 | 4.43 |
Persuation Engineering, p.2 | 5958 | 32629,81 | 5,47 |
Persuation Engineering, p.3 | 6174 | - | - |
Persuation Engineering, p.4 | 5517 | 28425.0 | 5.15 |
Persuation Engineering, p.5 | 4631 | 25875.7 | 5.59 |
Persuation Engineering, p.6 | 5129 | 30176.65 | 5.88 |
Persuation Engineering, p.7 | 6781 | 41066.68 | 6.05 |
Persuation Engineering, p.8 | 7327 | 34213.9 | 4.66 |
A Twist of Sand (1968) | 5182 | 32668.87 | 6.3 |
Для файла с хорошим качеством звука коэффициент отношения длительности воспроизведения файла к времени обработки составил около 5.1
(я принял качество звука интервью Гусева хорошим, и качество звука интервью Рокоссовского - плохим. Усиление цифрового звука, которое
я выполнил для прослушивания записи, увы, видимо сослужила плохую службу для транскрибирования. При этом полученнный текст оказался
в целом пригоден для дальнейшего редактирования),
и для файла с плохим качеством звука этот коэффициент составил 5.4.
То есть, по моему мнению качество и длительность воспроизведения исходного материала не повлияла на скорость обработки.
При этом, если посчитать оценку длительности обработки на основе пропорции (к сожалению, для файла с интервью Гусева измерение времени я не выполнил)
для файла с интервью Рокоссовского, то она составит 42703 секунды, но фактически оказалось примерно на 30% меньше.
На скорость обработки влияет, главным образом, размер модели. Но, увы, эти результаты основаны только на использовании центрального процессора при обработке
звукового материала. Поскольку ранее мои графические карты NVIDIA с поддержкой технологии использовались при обработке материалов BOINC/1/
для проекта SETI /2/ и
настройка поддержки CUDA привела к существенному росту производительности, то можно догадаться, что прирост благодаря графическим процессорам даст ожидаемо высокую
прибавку в скорости получения результата.
Дополнение от 08.05.2025.
Здесь я могу только посетовать, что программисты проекта BOINC смогли адаптировать приложения для работы с графическими картами пользователей своего времени,
а авторы OpenAI Whisper посчитали, что для их системы потребуются только актуальные карты NVIDIA. Интуитивно я полагаю, что таким образом, стимулируется
приобретение нового аппаратного обеспечения, и при этом игнорируются возможности графических процессоров предыдущего поколения. Увы, это предположение
я обосновать не могу. Возможно, как и для процессоров 80286, время карт NVIDIA моего компьютера прошло, и именно современные графические процессоры действительно
предлагают использование своих ресурсов для решения задач ускорения обработки подобных задач.
После первых опытов запуска OpenAI Whisper в среде операционной системы Ubuntu 22.04 я установил это его вместе с сопутствующими библиотеками (Visual Studio, ffmpeg, PyTorch, Python 3.12) в среде Windows 10. В среде Ubuntu 24.04, приложение остановило систему с 8 ГБайт оперативной памяти. Видимо, этого количества оперативной памяти
Whisper недостаточно. Как показали измерения используемой памяти во время работы Whisper - оно составляло около 9,7 ГБайт. Похоже, swap-память на жестком диске
не решает вопроса потребности в размещении данных этого приложения.
Я надеялся, что в среде Windows возможно удастся запустить CUDA, но, увы, NVIDIA GeForce 8600 GTS (микроархитектура Tesla, выпуск: ноябрь 2006 года) не поддерживается Whisper.
Полагаю, что рассчитывать на включение CUDA для NVIDIA GT 740 (микроархитектура Fermi, Kepler или Maxwell, выпуск: май 2014) тоже не стоит.
В среде Windows не обошлось без неожиданностей. При первом запуске уже отлаженной программы для транскрибирования Windows "вывалился" из текущего
пользователя и "выбил" пару резидентных процессов. Как оказалось, в конце работы формат записи данных в режиме неопреденной кодировки,
"выводит приложение из себя".
file.write(f"Время выполнения программы: {execution_time} секунд")
File "C:\..\...\PythonSoftwareFoundation.Python.3.13_3.13.1008.0_x64...\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-4:
Оказалось, что в оператор создания файла надо добавить строку назначения кодировки выводимых данных.
character maps to '<'undefined'>'
file = open("Probe.txt", "a", encoding="utf-8")
После этого вывод закончился успешно.
Возможно, файл, сохраненный в кодировке UTF-8 входил в конфликт с действующей кодировкой Windows (см. cp1252.py ).
В итоге, транскрибированное содержание было записано в файл, но несколько часов работы остались без измерения времени.
В завершение добавлю, что связи между использованием Whisper для транскрибирования от работы программы в разных операционных
системах я пока не установил. Отношение длительности работы приложения к длительности звучания обрабатываемого файла колеблется
от 4.4 до 5.5 и, скорее всего, в большей степени определяется объёмом библиотеки ("модели") для обработки. Разумеется, было бы
очень любопытно узнать влияние графического ускорителя, но сегодняшние цены - порядка 50000-70000 рублей заставляют задуматься
о целесообразности такой инвестиции.
Кстати, с этой целью я решил провести оценку стоимости транскрибирования без ускорителя.
Прямые затраты на 10-часовое транскрибирование файла, например, фильма или публичного выступления связаны с расходами на электроэнергию.
Потребляемая компьютером мощность, по моим измерениям в пиковые моменты может достигать 600 Вт, в среднем же составляет около 520 Вт.
То есть, в течение 10 часов при примерной стоимости киловатт-часа 10 рублей затраты на электроэнергию составят около 52 рубля.
Для точности следует добавить амортизацию оборудования. Оценка выглядит такой - общее время функционирования домашнего комьпютера,
для 24 часов в течение 15 лет надо соотнести со стоимостью компьютера порядка 1500 долларов при средней цене доллара 80 рублей.
120000 рублей к 131400 часов владения дадут 0,91 рубля/час. Суммируя с затратами на электроэнергию, получаем себестоимость транскрибирования
звукового файла порядка 61-62 рублей. Здесь задумаешься о том, что не стоит платить интернет-сервисам за обработку файлов, не говоря уже о покупке
супер-карты NVIDIA.
Другое дело, коммерческая деятельность. В этом случае скорость обработки, наверное, стоит этих инвестиций. Однако, как я уже упоминал,
измерить ускорение для конкретной оценки мне пока не удалось.
Запрос ChatGPT
Всемирно известный чатбот проконсультировал меня по теме возможностей располагаемых мной карт и я получил следующий ответ.
Вы спросили: У меня установлена видеокарта с чипом NVIDIA GT 740. Могу ли я запустить программу на языке Python с интерфейсом к этой карте?
ChatGPT сказал:
Комментарий ChatGPT
с демонстрацией действий
Пользователь спрашивает, можно ли запустить программу на Python с использованием GPU NVIDIA GT 740. Для этого требуется поддержка CUDA.
Вероятно, карта имеет вычислительную способность 3.0, что ограничивает использование более новых версий CUDA.
Мы проверим, насколько эта карта поддерживает CUDA и библиотеки Python, такие как PyCUDA, Numba, TensorFlow и PyTorch.
Важно помнить, что она поддерживает только CUDA до версии 8.0.
Итак, GT 740 существует в двух вариантах: GK107 (Kepler) с Compute 3.0 и Maxwell GM107 с Compute 5.0.
Нужно подтвердить, что ваша карта поддерживает Compute 3.0, что ограничивает использование некоторых библиотек глубокого обучения.
>
Чтобы работать с такими фреймворками, как TensorFlow и PyTorch, потребуется Compute Capability (CC) 3.5 и выше.
>Для других задач можно использовать PyCUDA, Numba или CuPy. Следует установить правильные драйверы и подсистемы, чтобы избежать проблем с совместимостью.
Итоговый ответ
Думал на протяжении 48 секунд
Да, вы можете запускать на вашей карте NVIDIA GeForce GT 740 Python-программы с использованием GPU, но с рядом ограничений.
-
Вычислительная способность (Compute Capability) вашей карты
GeForce GT 740 имеет Compute Capability (CC) 3.0
Источник: developers forum
- Поддержка CUDA-тулкитов
-
Все GPU с CC≥3.0 поддерживаются CUDA 9 и CUDA 10 (до версии 10.2 включительно)
Источник: NVIDIA Developer Forums
-
Начиная с CUDA 11 минимальная CC составляет 3.5, так что на CUDA 11+ ваша карта уже не будет работать.
- Как подключить Python
- Драйвер NVIDIA: установите последнюю совместимую версию драйвера для вашей ОС.
- CUDA Toolkit 10.2: скачайте и установите его с официального сайта NVIDIA.
- Python-пакеты: после установки CUDA вы можете установить через pip или conda:
- PyCUDA для прямого доступа к CUDA-ядрам.
- Numba (версии ≤0.55), которая поддерживает CC 3.0 на CUDA 10.x.
- CuPy, аналог NumPy, ускоренный на CUDA.
Пример (в терминале):
pip install pycuda numba cupy
- Ограничения с фреймворками глубокого обучения
-
TensorFlow-GPU официально требует CC ≥3.5, так что GT 740 не поддерживается даже старым релизом TF-GPU
Источник: Stack Overflow
-
PyTorch последних версий тоже не будет работать на CC 3.0; последний релиз с поддержкой 3.0 – это PyTorch 0.3.0 (2018 г.)
Источник: Stack Overflow
Итог:
- Для общих задач GPGPU (написания и запуска собственных CUDA-ядер) GT 740 подходит, достаточно установить драйвера, CUDA 10.x и библиотеки PyCUDA/Numba/CuPy.
- Для современного машинного обучения (TensorFlow 2.x, PyTorch 1.x) нужна карта с CC ≥3.5 (рекомендуется минимум CC 6.0–7.0). Если ваша цель — именно глубокое обучение, стоит рассмотреть более новую видеокарту.
Я задал вопрос и по поводу второй карты.
Вы спросили:
У меня установлена видеокарта с чипом NVIDIA GeForce 8600 GTS. Могу ли я запустить программу на языке Python с интерфейсом к этой карте?
Комментарий ChatGPT
с демонстрацией действий
Пользователь задаёт вопрос о том, может ли их видеокарта NVIDIA GeForce 8600 GTS работать с Python-программами с интерфейсом для этой карты.
Карта стариковая, с вычислительной способностью 1.1 или 1.2, поддерживает старые версии CUDA (до 3.x).
Современные библиотеки Python требуют CC >= 3.0, поэтому, скорее всего, такой интерфейс не работает.
Я планирую найти точную информацию для подтверждения, используя поиск по вопросам вычислительных способностей и поддержки в TensorFlow, Numba.
Пользователь спрашивает о возможности использования NVIDIA GeForce 8600 GTS для Python-программы с интерфейсом к этой видеокарте.
Поскольку карта имеет вычислительную способность 1.1 и поддерживает CUDA до версии 3.x, она не совместима с большинством современных Python-библиотек, которые требуют CC >= 3.0.
Чтобы подтвердить, всё-таки стоит проверить информацию по поддержке CUDA и TensorFlow.
Видеокарта GeForce 8600 GTS имеет способность вычислений 1.1, поддерживаемую CUDA до версии 6.5.
Современные библиотеки Python, такие как CuPy и Numba, требуют более высоких вычислительных возможностей (CC >= 3.0 и CC >= 2.0 соответственно).
PyCUDA может работать с устаревшими версиями CUDA, но установка старых версий крайне сложна, а поддержка драйверов для современных ОС прекращена в 2016 году.
Так что, в целом, для GeForce 8600 GTS это будет проблематично.
ChatGPT сказал:
Думал на протяжении 37 секунд
Ваша GeForce 8600 GTS имеет устаревшую архитектуру и далеко не всё программное обеспечение для GPGPU её поддерживает. Ключевые моменты:
- Compute Capability
GeForce 8600 GTS относится к серии «GeForce 8» и обладает Compute Capability 1.1
Источник: Википедия
- Поддержка CUDA Toolkit
Версии CUDA Toolkit 1.1–6.5 официально поддерживают CC 1.1 (микроархитектура Tesla/G8x)
Источник: Википедия
Начиная с CUDA 7.0 и далее (особенно CUDA 9/10/11…) минимальная CC составляет 2.0 или даже 3.0, так что новейшие тулкиты и вовсе не совместимы с вашей картой
Источник: NVIDIA Developer Forums
Чтобы пользоваться CUDA на этой карте, придётся:
- Найти и установить древний драйвер (серии 340.x или ниже, поддерживающий GeForce 8, последний выпуск — апрель 2016).
- Установить CUDA 6.5 или более ранний Toolkit (из архива NVIDIA).
- Python-оболочки для CUDA
- PyCUDA: теоретически можно работать с любым CUDA Toolkit, но вам придётся собирать библиотеки под старую версию CUDA вручную.
- Numba: требует Compute Capability ≥ 2.0, CC 1.1 не поддерживается.
- CuPy: ориентирован на CC ≥ 3.0, с вашей картой работать не будет.
- Фреймворки глубокого обучения
- TensorFlow-GPU поддерживает лишь карты с CC ≥ 3.5, ваша CC 1.1 отбрасывается на этапе инициализации
Источник: Stack Overflow
- PyTorch последних версий также рассчитан на CC ≥ 3.0 и выше; с CC 1.1 не запустится.
Вывод
-
Для обучения собственным CUDA-ядрам (GPGPU-эксперименты) на CC 1.1 можно использовать старый драйвер + CUDA 6.5 + PyCUDA.
-
Для современных библиотек и фреймворков (Numba, CuPy, TensorFlow, PyTorch) эта видеокарта не подходит — нужна хотя бы CC 3.0 (рекомендуется CC 6.0 и выше).
-
Если ваша цель — глубокое обучение или готовые ускорители, стоит задуматься об обновлении видеокарты минимум до архитектуры Kepler (CC 3.0+) или новее.
Заключение
Судя по результатам распознавания, я полагаю, что значительное время система может тратить на распознавание языка каждого слова. Это подтверждается использование
отдельных моделей для английского языка, однако, размер файла для английского языка не слишком отличается от "универсального". Можно порассуждать об оптимальности самой модели и программного обеспечения, предоставленных в свободное пользование, и вывод, который напрашивается у меня - в свободный доступ были предоставлены "урезанные"
и неоптимизированные версии, которые было не жалко предоставить для получения массовой обратной связи, например, на форуме OpenAI. Как происходит обучение системы при коммерческом использовании более совершенных моделей для меня лично пока остается неясным, поскольку платные версии OpenAI недоступны российским пользователям по политическим причинам.
Коммерсанты обучают систему достаточно качественно, но, скорее всего, в публичный (читай - бесплатный) доступ отправляют ослабленные в каких-либо параметрах версии.
Поскольку в публичном доступе предоставлены разные по объему версии, то можно предположить, что самая маленькая имеет
небольшое количество образцов для сопоставления, а самая крупная - самое обширное. Особое место занимает файл для ускорения обработки,
но, вероятно, с некоторым снижения качества. Судить об этом определенно несколько сложно, поскольку эти выводы построены только на испытаниях
конкретного примера и на оборудовании, которое не использует все современные возможности ускорения, например, CUDA (Согласно "Википедии",
CUDA (изначально аббр. от англ. Compute Unified Device Architecture) — программно-аппаратная архитектура параллельных вычислений,
которая позволяет существенно увеличить вычислительную производительность благодаря использованию графических процессоров фирмы Nvidia).
Параллельно с испытаниями локально установленной версии OpenAI Whisper для траскрибирования я отправлял получасовые фрагменты звуковых файлов в онлайн.
Оказалось, что коммерческие версии также могут распознавать собеседников, помечая их в распознанном тексте и надо отметить, что выполненное транскрибирование
выглядело еще качественнее. Я полагаю, что в настоящий момент онлайн используются более совершенные версии программного обеспечения для преобразования и,
более точные версии баз данных ("моделей").
Спикер 1: Здравствуйте, Иван Сергеевич, мы с вами договорились, что я к вам приду. Позадаю вам вопрос.
Спикер 2: Чай будешь?
Спикер 1: Нет, спасибо. Я поспрашивала одноклассников и ребят из параллели, кого что волнует...
Разница между коммерческой версией и свободной версией large-v3 здесь менее заметна, но все же она есть и выражается в потере фрагментов текста.
Таким образом, "вычитка" текста и "ручное" восстановление пропущенных кусков является для свободной версии существенной необходимостью.
Проблемы с распознаванием встречаются не только у меня.
По ссылке https://vc.ru/ai/1673598-pochemu-whisper-samyi-slabyi-produkt-openai-nash-opyt-s-ai-raspoznavaniem-rechi
можно найти букет претензий к системе Whisper, массово примененной для решения практических задачи.
Кстати, упомянутое авторами поста дописывание текста "Продолжение следует" произошло и при моих испытаниях.
Итоги
В заключение хочу сказать, что я получил желанный результат, съэкономив огромное количество времени по сравнению с "ручной" обработкой
звуковых файлов. Качество этого результата соответствует актуальному состоянию свободного программного обеспечения
и может с оговорками использоваться любителями.
Примечания
1)
BOINC - BOINC (англ. Berkeley Open Infrastructure for Network Computing) — открытая программная платформа университета Беркли для грид-вычислений,
то есть, (англ. grid — решётка, сеть) — таких распределённых вычислений, в которой «виртуальный суперкомпьютер» представлен в виде кластеров,
соединённых с помощью сети компьютеров, работающих вместе для выполнения огромного количества заданий (операций, работ), применяемой для решения научных,
математических задач, требующих значительных вычислительных ресурсов. Представляет собой некоммерческое межплатформенное программное обеспечение для организации
распределённых вычислений и используется для организации добровольных вычислений. (цитируется по "Википедии")
2)
SETI - в данном случае SETI@home (от англ. Search for Extra-Terrestrial Intelligence at Home — поиск внеземного разума на дому́) —
научный некоммерческий проект добровольных вычислений на платформе BOINC, созданный исследовательским центром SETI при Калифорнийском университете в Беркли,
использующий свободные вычислительные ресурсы на компьютерах добровольцев для анализа радиосигналов, полученных проектом SETI.
Проект поддерживается лабораторией космических наук Калифорнийского университета в Беркли и является частью всемирных инициатив SETI.
В общем, проект SETI (англ. SETI, Search for Extraterrestrial Intelligence) — общее название мероприятий по поиску внеземных цивилизаций
и возможному вступлению с ними в контакт.
Всемирно известный чатбот проконсультировал меня по теме возможностей располагаемых мной карт и я получил следующий ответ.
Вы спросили: У меня установлена видеокарта с чипом NVIDIA GT 740. Могу ли я запустить программу на языке Python с интерфейсом к этой карте?
ChatGPT сказал:
Комментарий ChatGPT
с демонстрацией действий
Пользователь спрашивает, можно ли запустить программу на Python с использованием GPU NVIDIA GT 740. Для этого требуется поддержка CUDA.
Вероятно, карта имеет вычислительную способность 3.0, что ограничивает использование более новых версий CUDA.
Мы проверим, насколько эта карта поддерживает CUDA и библиотеки Python, такие как PyCUDA, Numba, TensorFlow и PyTorch.
Важно помнить, что она поддерживает только CUDA до версии 8.0.
Итак, GT 740 существует в двух вариантах: GK107 (Kepler) с Compute 3.0 и Maxwell GM107 с Compute 5.0.
Нужно подтвердить, что ваша карта поддерживает Compute 3.0, что ограничивает использование некоторых библиотек глубокого обучения.
>
Чтобы работать с такими фреймворками, как TensorFlow и PyTorch, потребуется Compute Capability (CC) 3.5 и выше.
>Для других задач можно использовать PyCUDA, Numba или CuPy. Следует установить правильные драйверы и подсистемы, чтобы избежать проблем с совместимостью.
Итоговый ответ
Думал на протяжении 48 секунд
Да, вы можете запускать на вашей карте NVIDIA GeForce GT 740 Python-программы с использованием GPU, но с рядом ограничений.
-
Вычислительная способность (Compute Capability) вашей карты
GeForce GT 740 имеет Compute Capability (CC) 3.0
Источник: developers forum - Поддержка CUDA-тулкитов
-
Все GPU с CC≥3.0 поддерживаются CUDA 9 и CUDA 10 (до версии 10.2 включительно)
Источник: NVIDIA Developer Forums - Начиная с CUDA 11 минимальная CC составляет 3.5, так что на CUDA 11+ ваша карта уже не будет работать.
- Как подключить Python
- Драйвер NVIDIA: установите последнюю совместимую версию драйвера для вашей ОС.
- CUDA Toolkit 10.2: скачайте и установите его с официального сайта NVIDIA.
- Python-пакеты: после установки CUDA вы можете установить через pip или conda:
- PyCUDA для прямого доступа к CUDA-ядрам.
- Numba (версии ≤0.55), которая поддерживает CC 3.0 на CUDA 10.x.
- CuPy, аналог NumPy, ускоренный на CUDA.
Пример (в терминале):
pip install pycuda numba cupy
- Ограничения с фреймворками глубокого обучения
-
TensorFlow-GPU официально требует CC ≥3.5, так что GT 740 не поддерживается даже старым релизом TF-GPU
Источник: Stack Overflow -
PyTorch последних версий тоже не будет работать на CC 3.0; последний релиз с поддержкой 3.0 – это PyTorch 0.3.0 (2018 г.)
Источник: Stack Overflow
- Для общих задач GPGPU (написания и запуска собственных CUDA-ядер) GT 740 подходит, достаточно установить драйвера, CUDA 10.x и библиотеки PyCUDA/Numba/CuPy.
- Для современного машинного обучения (TensorFlow 2.x, PyTorch 1.x) нужна карта с CC ≥3.5 (рекомендуется минимум CC 6.0–7.0). Если ваша цель — именно глубокое обучение, стоит рассмотреть более новую видеокарту.
Я задал вопрос и по поводу второй карты.
Вы спросили:
У меня установлена видеокарта с чипом NVIDIA GeForce 8600 GTS. Могу ли я запустить программу на языке Python с интерфейсом к этой карте?
Комментарий ChatGPT
с демонстрацией действий
Пользователь задаёт вопрос о том, может ли их видеокарта NVIDIA GeForce 8600 GTS работать с Python-программами с интерфейсом для этой карты.
Карта стариковая, с вычислительной способностью 1.1 или 1.2, поддерживает старые версии CUDA (до 3.x).
Современные библиотеки Python требуют CC >= 3.0, поэтому, скорее всего, такой интерфейс не работает.
Я планирую найти точную информацию для подтверждения, используя поиск по вопросам вычислительных способностей и поддержки в TensorFlow, Numba.
Пользователь спрашивает о возможности использования NVIDIA GeForce 8600 GTS для Python-программы с интерфейсом к этой видеокарте.
Поскольку карта имеет вычислительную способность 1.1 и поддерживает CUDA до версии 3.x, она не совместима с большинством современных Python-библиотек, которые требуют CC >= 3.0.
Чтобы подтвердить, всё-таки стоит проверить информацию по поддержке CUDA и TensorFlow.
Видеокарта GeForce 8600 GTS имеет способность вычислений 1.1, поддерживаемую CUDA до версии 6.5.
Современные библиотеки Python, такие как CuPy и Numba, требуют более высоких вычислительных возможностей (CC >= 3.0 и CC >= 2.0 соответственно).
PyCUDA может работать с устаревшими версиями CUDA, но установка старых версий крайне сложна, а поддержка драйверов для современных ОС прекращена в 2016 году.
Так что, в целом, для GeForce 8600 GTS это будет проблематично.
ChatGPT сказал: Думал на протяжении 37 секунд
Ваша GeForce 8600 GTS имеет устаревшую архитектуру и далеко не всё программное обеспечение для GPGPU её поддерживает. Ключевые моменты:
- Compute Capability GeForce 8600 GTS относится к серии «GeForce 8» и обладает Compute Capability 1.1
- Поддержка CUDA Toolkit Версии CUDA Toolkit 1.1–6.5 официально поддерживают CC 1.1 (микроархитектура Tesla/G8x)
- Найти и установить древний драйвер (серии 340.x или ниже, поддерживающий GeForce 8, последний выпуск — апрель 2016).
- Установить CUDA 6.5 или более ранний Toolkit (из архива NVIDIA).
- Python-оболочки для CUDA
- PyCUDA: теоретически можно работать с любым CUDA Toolkit, но вам придётся собирать библиотеки под старую версию CUDA вручную.
- Numba: требует Compute Capability ≥ 2.0, CC 1.1 не поддерживается.
- CuPy: ориентирован на CC ≥ 3.0, с вашей картой работать не будет.
- Фреймворки глубокого обучения
- TensorFlow-GPU поддерживает лишь карты с CC ≥ 3.5, ваша CC 1.1 отбрасывается на этапе инициализации
Источник: Stack Overflow - PyTorch последних версий также рассчитан на CC ≥ 3.0 и выше; с CC 1.1 не запустится.
Источник: Википедия
Источник: Википедия
Начиная с CUDA 7.0 и далее (особенно CUDA 9/10/11…) минимальная CC составляет 2.0 или даже 3.0, так что новейшие тулкиты и вовсе не совместимы с вашей картой
Источник: NVIDIA Developer Forums
Чтобы пользоваться CUDA на этой карте, придётся:
- Для обучения собственным CUDA-ядрам (GPGPU-эксперименты) на CC 1.1 можно использовать старый драйвер + CUDA 6.5 + PyCUDA.
- Для современных библиотек и фреймворков (Numba, CuPy, TensorFlow, PyTorch) эта видеокарта не подходит — нужна хотя бы CC 3.0 (рекомендуется CC 6.0 и выше).
- Если ваша цель — глубокое обучение или готовые ускорители, стоит задуматься об обновлении видеокарты минимум до архитектуры Kepler (CC 3.0+) или новее.
Заключение
Судя по результатам распознавания, я полагаю, что значительное время система может тратить на распознавание языка каждого слова. Это подтверждается использование
отдельных моделей для английского языка, однако, размер файла для английского языка не слишком отличается от "универсального". Можно порассуждать об оптимальности самой модели и программного обеспечения, предоставленных в свободное пользование, и вывод, который напрашивается у меня - в свободный доступ были предоставлены "урезанные"
и неоптимизированные версии, которые было не жалко предоставить для получения массовой обратной связи, например, на форуме OpenAI. Как происходит обучение системы при коммерческом использовании более совершенных моделей для меня лично пока остается неясным, поскольку платные версии OpenAI недоступны российским пользователям по политическим причинам.
Коммерсанты обучают систему достаточно качественно, но, скорее всего, в публичный (читай - бесплатный) доступ отправляют ослабленные в каких-либо параметрах версии.
Поскольку в публичном доступе предоставлены разные по объему версии, то можно предположить, что самая маленькая имеет
небольшое количество образцов для сопоставления, а самая крупная - самое обширное. Особое место занимает файл для ускорения обработки,
но, вероятно, с некоторым снижения качества. Судить об этом определенно несколько сложно, поскольку эти выводы построены только на испытаниях
конкретного примера и на оборудовании, которое не использует все современные возможности ускорения, например, CUDA (Согласно "Википедии",
CUDA (изначально аббр. от англ. Compute Unified Device Architecture) — программно-аппаратная архитектура параллельных вычислений,
которая позволяет существенно увеличить вычислительную производительность благодаря использованию графических процессоров фирмы Nvidia).
Параллельно с испытаниями локально установленной версии OpenAI Whisper для траскрибирования я отправлял получасовые фрагменты звуковых файлов в онлайн.
Оказалось, что коммерческие версии также могут распознавать собеседников, помечая их в распознанном тексте и надо отметить, что выполненное транскрибирование
выглядело еще качественнее. Я полагаю, что в настоящий момент онлайн используются более совершенные версии программного обеспечения для преобразования и,
более точные версии баз данных ("моделей").
Спикер 1: Здравствуйте, Иван Сергеевич, мы с вами договорились, что я к вам приду. Позадаю вам вопрос.
Спикер 2: Чай будешь?
Спикер 1: Нет, спасибо. Я поспрашивала одноклассников и ребят из параллели, кого что волнует...
Разница между коммерческой версией и свободной версией large-v3 здесь менее заметна, но все же она есть и выражается в потере фрагментов текста.
Таким образом, "вычитка" текста и "ручное" восстановление пропущенных кусков является для свободной версии существенной необходимостью.
Проблемы с распознаванием встречаются не только у меня.
По ссылке https://vc.ru/ai/1673598-pochemu-whisper-samyi-slabyi-produkt-openai-nash-opyt-s-ai-raspoznavaniem-rechi
можно найти букет претензий к системе Whisper, массово примененной для решения практических задачи.
Кстати, упомянутое авторами поста дописывание текста "Продолжение следует" произошло и при моих испытаниях.
Итоги
В заключение хочу сказать, что я получил желанный результат, съэкономив огромное количество времени по сравнению с "ручной" обработкой
звуковых файлов. Качество этого результата соответствует актуальному состоянию свободного программного обеспечения
и может с оговорками использоваться любителями.
Примечания
1)
BOINC - BOINC (англ. Berkeley Open Infrastructure for Network Computing) — открытая программная платформа университета Беркли для грид-вычислений,
то есть, (англ. grid — решётка, сеть) — таких распределённых вычислений, в которой «виртуальный суперкомпьютер» представлен в виде кластеров,
соединённых с помощью сети компьютеров, работающих вместе для выполнения огромного количества заданий (операций, работ), применяемой для решения научных,
математических задач, требующих значительных вычислительных ресурсов. Представляет собой некоммерческое межплатформенное программное обеспечение для организации
распределённых вычислений и используется для организации добровольных вычислений. (цитируется по "Википедии")
2)
SETI - в данном случае SETI@home (от англ. Search for Extra-Terrestrial Intelligence at Home — поиск внеземного разума на дому́) —
научный некоммерческий проект добровольных вычислений на платформе BOINC, созданный исследовательским центром SETI при Калифорнийском университете в Беркли,
использующий свободные вычислительные ресурсы на компьютерах добровольцев для анализа радиосигналов, полученных проектом SETI.
Проект поддерживается лабораторией космических наук Калифорнийского университета в Беркли и является частью всемирных инициатив SETI.
В общем, проект SETI (англ. SETI, Search for Extraterrestrial Intelligence) — общее название мероприятий по поиску внеземных цивилизаций
и возможному вступлению с ними в контакт.
Судя по результатам распознавания, я полагаю, что значительное время система может тратить на распознавание языка каждого слова. Это подтверждается использование отдельных моделей для английского языка, однако, размер файла для английского языка не слишком отличается от "универсального". Можно порассуждать об оптимальности самой модели и программного обеспечения, предоставленных в свободное пользование, и вывод, который напрашивается у меня - в свободный доступ были предоставлены "урезанные" и неоптимизированные версии, которые было не жалко предоставить для получения массовой обратной связи, например, на форуме OpenAI. Как происходит обучение системы при коммерческом использовании более совершенных моделей для меня лично пока остается неясным, поскольку платные версии OpenAI недоступны российским пользователям по политическим причинам.
Коммерсанты обучают систему достаточно качественно, но, скорее всего, в публичный (читай - бесплатный) доступ отправляют ослабленные в каких-либо параметрах версии.
Поскольку в публичном доступе предоставлены разные по объему версии, то можно предположить, что самая маленькая имеет
небольшое количество образцов для сопоставления, а самая крупная - самое обширное. Особое место занимает файл для ускорения обработки,
но, вероятно, с некоторым снижения качества. Судить об этом определенно несколько сложно, поскольку эти выводы построены только на испытаниях
конкретного примера и на оборудовании, которое не использует все современные возможности ускорения, например, CUDA (Согласно "Википедии",
CUDA (изначально аббр. от англ. Compute Unified Device Architecture) — программно-аппаратная архитектура параллельных вычислений,
которая позволяет существенно увеличить вычислительную производительность благодаря использованию графических процессоров фирмы Nvidia).
Параллельно с испытаниями локально установленной версии OpenAI Whisper для траскрибирования я отправлял получасовые фрагменты звуковых файлов в онлайн.
Оказалось, что коммерческие версии также могут распознавать собеседников, помечая их в распознанном тексте и надо отметить, что выполненное транскрибирование
выглядело еще качественнее. Я полагаю, что в настоящий момент онлайн используются более совершенные версии программного обеспечения для преобразования и,
более точные версии баз данных ("моделей").
Спикер 1: Здравствуйте, Иван Сергеевич, мы с вами договорились, что я к вам приду. Позадаю вам вопрос.
Спикер 2: Чай будешь?
Спикер 1: Нет, спасибо. Я поспрашивала одноклассников и ребят из параллели, кого что волнует...
Разница между коммерческой версией и свободной версией large-v3 здесь менее заметна, но все же она есть и выражается в потере фрагментов текста.
Таким образом, "вычитка" текста и "ручное" восстановление пропущенных кусков является для свободной версии существенной необходимостью.
Проблемы с распознаванием встречаются не только у меня.
По ссылке https://vc.ru/ai/1673598-pochemu-whisper-samyi-slabyi-produkt-openai-nash-opyt-s-ai-raspoznavaniem-rechi
можно найти букет претензий к системе Whisper, массово примененной для решения практических задачи.
Кстати, упомянутое авторами поста дописывание текста "Продолжение следует" произошло и при моих испытаниях.
Итоги
В заключение хочу сказать, что я получил желанный результат, съэкономив огромное количество времени по сравнению с "ручной" обработкой
звуковых файлов. Качество этого результата соответствует актуальному состоянию свободного программного обеспечения
и может с оговорками использоваться любителями.
Примечания
1)
BOINC - BOINC (англ. Berkeley Open Infrastructure for Network Computing) — открытая программная платформа университета Беркли для грид-вычислений,
то есть, (англ. grid — решётка, сеть) — таких распределённых вычислений, в которой «виртуальный суперкомпьютер» представлен в виде кластеров,
соединённых с помощью сети компьютеров, работающих вместе для выполнения огромного количества заданий (операций, работ), применяемой для решения научных,
математических задач, требующих значительных вычислительных ресурсов. Представляет собой некоммерческое межплатформенное программное обеспечение для организации
распределённых вычислений и используется для организации добровольных вычислений. (цитируется по "Википедии")
2)
SETI - в данном случае SETI@home (от англ. Search for Extra-Terrestrial Intelligence at Home — поиск внеземного разума на дому́) —
научный некоммерческий проект добровольных вычислений на платформе BOINC, созданный исследовательским центром SETI при Калифорнийском университете в Беркли,
использующий свободные вычислительные ресурсы на компьютерах добровольцев для анализа радиосигналов, полученных проектом SETI.
Проект поддерживается лабораторией космических наук Калифорнийского университета в Беркли и является частью всемирных инициатив SETI.
В общем, проект SETI (англ. SETI, Search for Extraterrestrial Intelligence) — общее название мероприятий по поиску внеземных цивилизаций
и возможному вступлению с ними в контакт.
Поскольку в публичном доступе предоставлены разные по объему версии, то можно предположить, что самая маленькая имеет
небольшое количество образцов для сопоставления, а самая крупная - самое обширное. Особое место занимает файл для ускорения обработки,
но, вероятно, с некоторым снижения качества. Судить об этом определенно несколько сложно, поскольку эти выводы построены только на испытаниях
конкретного примера и на оборудовании, которое не использует все современные возможности ускорения, например, CUDA (Согласно "Википедии",
CUDA (изначально аббр. от англ. Compute Unified Device Architecture) — программно-аппаратная архитектура параллельных вычислений,
которая позволяет существенно увеличить вычислительную производительность благодаря использованию графических процессоров фирмы Nvidia).
Параллельно с испытаниями локально установленной версии OpenAI Whisper для траскрибирования я отправлял получасовые фрагменты звуковых файлов в онлайн.
Оказалось, что коммерческие версии также могут распознавать собеседников, помечая их в распознанном тексте и надо отметить, что выполненное транскрибирование
выглядело еще качественнее. Я полагаю, что в настоящий момент онлайн используются более совершенные версии программного обеспечения для преобразования и,
более точные версии баз данных ("моделей").
Спикер 1: Здравствуйте, Иван Сергеевич, мы с вами договорились, что я к вам приду. Позадаю вам вопрос.Разница между коммерческой версией и свободной версией large-v3 здесь менее заметна, но все же она есть и выражается в потере фрагментов текста. Таким образом, "вычитка" текста и "ручное" восстановление пропущенных кусков является для свободной версии существенной необходимостью.
Спикер 2: Чай будешь?
Спикер 1: Нет, спасибо. Я поспрашивала одноклассников и ребят из параллели, кого что волнует...
Проблемы с распознаванием встречаются не только у меня.
По ссылке https://vc.ru/ai/1673598-pochemu-whisper-samyi-slabyi-produkt-openai-nash-opyt-s-ai-raspoznavaniem-rechi
можно найти букет претензий к системе Whisper, массово примененной для решения практических задачи.
Кстати, упомянутое авторами поста дописывание текста "Продолжение следует" произошло и при моих испытаниях.
Итоги
В заключение хочу сказать, что я получил желанный результат, съэкономив огромное количество времени по сравнению с "ручной" обработкой
звуковых файлов. Качество этого результата соответствует актуальному состоянию свободного программного обеспечения
и может с оговорками использоваться любителями.
Примечания
1)
BOINC - BOINC (англ. Berkeley Open Infrastructure for Network Computing) — открытая программная платформа университета Беркли для грид-вычислений,
то есть, (англ. grid — решётка, сеть) — таких распределённых вычислений, в которой «виртуальный суперкомпьютер» представлен в виде кластеров,
соединённых с помощью сети компьютеров, работающих вместе для выполнения огромного количества заданий (операций, работ), применяемой для решения научных,
математических задач, требующих значительных вычислительных ресурсов. Представляет собой некоммерческое межплатформенное программное обеспечение для организации
распределённых вычислений и используется для организации добровольных вычислений. (цитируется по "Википедии")
2)
SETI - в данном случае SETI@home (от англ. Search for Extra-Terrestrial Intelligence at Home — поиск внеземного разума на дому́) —
научный некоммерческий проект добровольных вычислений на платформе BOINC, созданный исследовательским центром SETI при Калифорнийском университете в Беркли,
использующий свободные вычислительные ресурсы на компьютерах добровольцев для анализа радиосигналов, полученных проектом SETI.
Проект поддерживается лабораторией космических наук Калифорнийского университета в Беркли и является частью всемирных инициатив SETI.
В общем, проект SETI (англ. SETI, Search for Extraterrestrial Intelligence) — общее название мероприятий по поиску внеземных цивилизаций
и возможному вступлению с ними в контакт.
В заключение хочу сказать, что я получил желанный результат, съэкономив огромное количество времени по сравнению с "ручной" обработкой звуковых файлов. Качество этого результата соответствует актуальному состоянию свободного программного обеспечения и может с оговорками использоваться любителями.
Примечания
1) BOINC - BOINC (англ. Berkeley Open Infrastructure for Network Computing) — открытая программная платформа университета Беркли для грид-вычислений, то есть, (англ. grid — решётка, сеть) — таких распределённых вычислений, в которой «виртуальный суперкомпьютер» представлен в виде кластеров, соединённых с помощью сети компьютеров, работающих вместе для выполнения огромного количества заданий (операций, работ), применяемой для решения научных, математических задач, требующих значительных вычислительных ресурсов. Представляет собой некоммерческое межплатформенное программное обеспечение для организации распределённых вычислений и используется для организации добровольных вычислений. (цитируется по "Википедии")
2)
SETI - в данном случае SETI@home (от англ. Search for Extra-Terrestrial Intelligence at Home — поиск внеземного разума на дому́) —
научный некоммерческий проект добровольных вычислений на платформе BOINC, созданный исследовательским центром SETI при Калифорнийском университете в Беркли,
использующий свободные вычислительные ресурсы на компьютерах добровольцев для анализа радиосигналов, полученных проектом SETI.
Проект поддерживается лабораторией космических наук Калифорнийского университета в Беркли и является частью всемирных инициатив SETI.
В общем, проект SETI (англ. SETI, Search for Extraterrestrial Intelligence) — общее название мероприятий по поиску внеземных цивилизаций
и возможному вступлению с ними в контакт.