Как улучшить производительность
Платформы Windows используют Vulkan для ускорения работы GPU, что значительно ускоряет процесс распознавания. На других платформах плагин использует CPU + intrins для ускорения. Тем не менее, вы можете дополнительно улучшить производительность плагина, следуя рекомендациям ниже:
-
Уменьшить Step Size По умолчанию шаг составляет 5000 мс (5 секунд), это значит, что аудиоданные распознаются каждые 5 секунд во время захвата. Если вы хотите распознавать аудиоданные чаще, вы можете уменьшить шаг, например, до 500 мс (0.5 секунд).
-
Используйте Меньшую Языковую Модель
Вы можете рассмотреть возможность использования меньшей языковой модели, такой как
Tiny Quantized (Q5_1)
, для уменьшения размера модели и улучшения производительности. Инструкции по выбору языковой модели можно найти здесь. -
Изменение Наборов Инструкций CPU
Библиотека, используемая в плагине, - это whisper.cpp, которая использует наборы инструкций CPU для повышения производительности распознавания. В настоящее время наборы инструкций зашиты в коде плагина и определены по приближению/вероятности их наличия в зависимости от различных макросов, из-за ограничений UE по передаче компиляторских флагов. Вы можете вручную изменить файл SpeechRecognizerPrivate.h, чтобы определить наборы инструкций, поддерживаемые вашей целевой платформой. Вот список текущих наборов инструкций, используемых whisper.cpp, которые вы можете определить вручную в файле SpeechRecognizerPrivate.h:
-
AVX and AVX2 Family:
__AVX__
__AVXVNNI__
__AVX2__
__AVX512F__
__AVX512VBMI__
__AVX512VNNI__
__AVX512BF16__
-
Floating-Point and SIMD Extensions:
__FMA__
__F16C__
__SSE3__
__SSSE3__
-
ARM Architecture Extensions:
__ARM_NEON
__ARM_FEATURE_SVE
__ARM_FEATURE_FMA
__ARM_FEATURE_FP16_VECTOR_ARITHMETIC
__ARM_FEATURE_MATMUL_INT8
-
POWER Architecture Extensions:
__POWER9_VECTOR__
-
-
Использование библиотек ускорения
whisper.cpp может ускорить процесс распознавания, используя следующие библиотеки: Core ML для устройств Apple Silicon, OpenVINO на устройствах, включая процессоры x86 и графические процессоры Intel, Nvidia GPU Cuda на Windows или Linux, поддержка BLAS для CPU через OpenBLAS, поддержка BLAS для CPU через Intel MKL. Обратите внимание, что эти библиотеки по умолчанию не включены в плагин, и вам нужно установить их вручную, следуя инструкциям whisper.cpp.