Meta выпустила новую модель перевода и транскрипции речи/текста под названием SeamlessM4T. Вот как вы можете запустить модель локально на своем MacOS.

Запуск модели на MacOS требует усилий; чтобы все работало правильно, требуется несколько сложных шагов. Я потратил несколько часов на то, чтобы заставить его работать, загрузить нужные пакеты, создать расширения C++ и все запустить.

Знакомство со всеми требованиями

Код модели находится в этом репозитории GitHub.

Но если вы будете следовать README.md на своем локальном Macbook, он не будет работать, поскольку одна из зависимостей fairseq2, также из Meta, в настоящее время недоступна для MacOS. Поэтому его нужно построить.

Код этой конкретной зависимости находится в этом репозитории Github.

Чтобы реализовать это на MacOS, требуется больше всего усилий.

Помимо этого, я предполагаю, что большинство пользователей Mac используют Homebrew для установки всех других зависимостей; если нет, то вы можете получить его по этой ссылке.

Нам понадобится Homebrew для одной зависимости под названием libsndfile для взаимодействия с файлами WAV. Вот ссылка.

Вам также понадобится установленная версия Python. Я использую Python 3.11, но примеры показывают, что вы можете использовать более старые версии, начиная с 3.8.

Шаги

1. Получение libsndfile с помощью Homebrew

Сначала мы установим libsndfile с помощью Homebrew. Вы можете использовать эту команду:

brew install libsndfile

Вам следует позаботиться о любых обновлениях и обновлениях, необходимых для Homebrew.

2. Получение tbb с Homebrew

Мне также нужно было TBB. Мне потребовалось некоторое время, чтобы понять, что это такое. Оказывается, он используется для потоковой обработки в C++, и получить его несложно. Просто установите его с помощью Homebrew, как и раньше.

brew install tbb

3. Загрузка и сборка fairseq2.

Затем нам нужно получить fairseq2, но я нашел README.md и набор инструкций запутанным. Итак, после многих попыток и неудач, вот шаги, которые сработали для меня.