Верифицированный узел Speech Expert для n8n¶
Пакет n8n-nodes-speech-expert добавляет в n8n узел Speech Expert:
выберите операцию, подключите API-ключ и передайте файл или текст из своего
workflow. Узел сам формирует запросы к API Speech Expert.
Пакет в npm · Исходный код и примеры · Шаблоны без установки узла
Узел верифицирован командой n8n
n8n-nodes-speech-expert прошёл проверку и одобрен как verified community
node. Включение в каталог verified nodes ожидается в ближайшем выпуске;
n8n сообщит о доступности отдельно.
Версию 0.1.0, опубликованную 9 ноября 2026 года, уже можно установить из npm в self-hosted n8n — экземпляр, которым управляете вы или ваша команда. До появления узла в n8n Cloud используйте шаблоны со встроенными узлами.
Коннектор распространяется бесплатно по лицензии MIT. Распознавание, синтез и анализ оплачиваются кредитами Speech Expert по тарифам сервиса.
Возможности¶
| Раздел Resource | Операции Operation | Результат |
|---|---|---|
| Transcription | Create, Get | Фоновое распознавание аудио или видео, по выбору — резюме |
| Speech Synthesis | Create, Get, Download, Get Voices | Синтез речи, получение каталога голосов и готового WAV |
| Audio Research | Upload Source, Preview, Analyze, Get Results, Get Presets | Загрузка записи, расчёт стоимости, исследование звучания и сравнение двух озвучек |
Для распознавания доступны семь основных языков: русский, английский, казахский, кыргызский, узбекский, таджикский и армянский. При выборе языка узел подставляет совместимую модель; при необходимости её можно переопределить. Доступность голосов и языков синтеза зависит от выбранного движка и каталога.
Установка¶
Установка выполняется владельцем или администратором self-hosted n8n.
- Откройте Settings → Community nodes → Install.
-
Введите имя npm-пакета:
Чтобы установить именно описанную здесь версию, укажите
n8n-nodes-speech-expert@0.1.0. -
Ознакомьтесь с предупреждением n8n об установке community nodes, подтвердите его и нажмите Install.
- Добавьте в workflow узел Speech Expert через поиск узлов.
Если раздел установки скрыт, обратитесь к администратору своего экземпляра. Подробности и другие способы установки описаны в документации n8n.
Подключение API-ключа¶
- Войдите в личный кабинет Speech Expert и создайте API-ключ.
- В n8n создайте credential Speech Expert API.
- Вставьте сам ключ в поле API Key, без префикса
Api-Key. - Сохраните credential, проверьте подключение и выберите его во всех узлах Speech Expert своего workflow.
Заголовок авторизации добавляется автоматически. Проверка credential читает каталог исследовательских пресетов и не запускает платную обработку. Ключ хранится в credentials n8n; добавлять его в параметры узла или JSON workflow не нужно. Для обработки потребуется достаточный баланс Speech Expert.
Готовые примеры¶
Примеры для версии 0.1.0 проверены в n8n 2.46.6. Установите пакет, скачайте JSON и выберите Import from File в новом workflow.
| Пример | Что делает | Файл |
|---|---|---|
| Распознавание | Принимает один файл через форму, создаёт задачу и получает текст | Скачать JSON |
| Синтез | Озвучивает заданный текст и скачивает готовый WAV | Скачать JSON |
| Исследование | Загружает запись и показывает предварительную стоимость анализа | Скачать JSON |
В файлах нет ключей и паролей; workflow импортируются неактивными. Выберите свой credential Speech Expert API. В примерах с формой также настройте отдельный Basic Auth для доступа к ней: его пароль не должен совпадать с API-ключом. Пользователи формы расходуют кредиты владельца ключа.
В примерах с формой начните тестовое выполнение и откройте Test URL узла Upload form. Для исследования возьмите запись от 20 секунд и укажите новый UUID в форме. В примере синтеза нажмите Execute workflow; готовый WAV появится в Download audio → Binary → audio.
Примеры обрабатывают один файл или один текст за запуск. Для пакета файлов выполняйте всю последовательность создания и ожидания отдельно для каждого элемента, сохраняя его собственный идентификатор операции.
Распознавание и резюме¶
- Получите файл из формы, хранилища или предыдущего узла в бинарное поле n8n,
например
audio. - Выберите Transcription → Create, укажите Input Binary Field и язык записи. При необходимости включите резюме.
- Сохраните возвращённый
idоперации. - Добавьте цикл Wait → Transcription: Get → If. Передавайте в Get
тот же
idи ждитеdone: true, проверяя полеerror. - Передайте полученный текст в документ, CRM, сообщение или следующий узел.
Create только запускает обработку. При включённом Simplify текст
находится в поле text, а доступное резюме — в summary. В полном ответе
это response.result и response.summarization.summary. Ошибка создания
резюме не обязательно означает ошибку самого распознавания.
В готовом примере выбран русский язык. Опрос идёт раз в пять секунд,
ограничен десятью минутами или 120 ответами статуса; сетевые запросы могут
добавлять время к ожиданию. Если ожидание завершилось, проверьте операцию
по сохранённому id, прежде чем отправлять файл заново.
Privacy Mode включён по умолчанию. Для временных результатов API планирует очистку через 15 минут от начала операции; сохраните нужный текст в своём workflow. Чтение результата не удаляет его немедленно. Загрузка файла через Create не добавляет исходник в Мои записи при любом значении Privacy Mode.
Резюме и модели Large, выбранные по умолчанию для армянского, казахского, кыргызского и таджикского, требуют включить Allow External AI Processing. Это разрешение на внешнюю AI-обработку; оно не меняет политику хранения. Узел также запрашивает его для неизвестного ему переопределения модели.
Подробнее: языки и модели, приватный режим, операции.
Синтез речи¶
- Выполните Speech Synthesis → Get Voices и выберите голос, поддерживающий нужный движок.
- В Create укажите текст, точное имя голоса
nameиз каталога, движок и язык. Доступны Higgs и ElevenLabs V4; совместимость проверяется по каталогу. Для ElevenLabs оставьте скорость Speed равной1. - Сохраните
idи опрашивайте его через Wait → Get → If. - После
done: trueбез ошибки вызовите Download с тем жеid.
Download возвращает готовый PCM16 mono WAV в бинарное поле, обычно audio.
Его можно сохранить на диск, отправить в хранилище или прикрепить к сообщению.
Узел работает с готовыми файлами; потоковое воспроизведение звука в n8n
в этой версии не предусмотрено.
Подробнее: голоса и синтез, фоновые операции TTS.
Исследование аудио¶
- Выберите Audio Research → Upload Source и передайте бинарный файл. Для Request ID задайте новый UUID; используйте его повторно только при повторе загрузки того же файла.
- Сохраните
idзаписи и еёduration_ms. - В Preview укажите запись, пресет и границы фрагмента в секундах. Обычные пресеты исследуют непрерывный фрагмент 20–120 секунд.
- Проверьте предварительную стоимость в
billing.credits. - Для запуска Analyze перенесите те же параметры, задайте Maximum Credits и включите Allow External AI Processing.
- Историю сохранённых исследований можно получить через Get Results.
Пресеты охватывают интонацию и смысловые акценты, слышимые реакции аудитории, изменения темпа, громкости и подачи. Get Presets возвращает каталог сервиса; в интерфейсе версии 0.1.0 доступны эти три пресета и A/B-сравнение.
Upload Source сохраняет запись в архив без распознавания и анализа.
Preview проверяет параметры и рассчитывает стоимость без вызова модели
анализа. Analyze выполняет платное исследование и может занимать несколько
минут. Лимит Maximum Credits по умолчанию равен 0: для анализа с
положительной стоимостью его нужно задать явно.
В готовом примере подключённая цепочка заканчивается на Preview. Узел Analyze показан отдельно и не подключён, разрешение выключено, лимит равен нулю. После проверки стоимости используйте уже загруженную запись и запускайте нужный путь анализа.
Подробнее: исследование звучания и API.
Сравнение двух озвучек¶
В Audio Research выберите пресет Speech Synthesis A/B Comparison. Загрузите два разных файла с этим пресетом и разными UUID. Оба клипа должны озвучивать один исходный текст; длительность каждого — больше нуля и не больше 120 секунд.
В Preview и затем Analyze укажите:
- Recording ID и End (Seconds) — запись A и её полную длительность;
- Comparison Recording ID и Comparison Duration (Seconds) — запись B и её полную длительность;
- Target Text — общий исходный текст, до 4000 символов;
- Pair ID — метку сравнения, до 256 символов;
- при необходимости Speech Context — язык, диалект или желаемую подачу, до 1000 символов.
Длительности берите из ответа загрузки: duration_ms / 1000.
Сравниваются полные клипы с нулевой начальной границей, по самому аудио.
Стоимость учитывает оба клипа. Результат — субъективный разбор моделью,
с замеченными ошибками и предпочтением, если данных достаточно; это не
измеренный MOS. Отмеченные места можно проверить на слух.
Стоимость, хранение и повторные запуски¶
- Создание распознавания, синтеза и вызов Analyze могут расходовать
кредиты. Повторный Create создаёт новую операцию. При обрыве ответа
сначала проверьте прежний
idили историю исследований. - Узел не повторяет платные создающие запросы автоматически. Request ID защищает от дубликатов загрузки источника; он не объединяет повторные вызовы Analyze.
- Исследовательские записи остаются в архиве, в том числе после одного Preview. Срок хранения файлов и выполнений n8n настраивается отдельно.
- Обычный лимит Speech Expert — 500 МиБ на файл. Ограничения n8n, формы, reverse proxy и доступной памяти могут быть ниже.
Подробнее о лимитах и хранении.
Если что-то не получилось¶
| Ситуация | Что проверить |
|---|---|
| Узел не находится в n8n Cloud | Верификация пройдена, выпуск в каталог ожидается. До появления узла используйте HTTP-шаблоны |
| После импорта показан неизвестный узел | Установлен ли пакет n8n-nodes-speech-expert в том же экземпляре n8n |
401 |
Активен ли ключ и выбран ли Speech Expert API во всех узлах |
402 или превышение лимита |
Баланс аккаунта и Maximum Credits для анализа |
| Требуется внешняя обработка | Выбраны ли резюме, модель Large или исследование; разрешение задаётся в Allow External AI Processing |
| Не найден бинарный файл | Совпадает ли Input Binary Field с именем бинарного поля предыдущего узла |
| Голос несовместим с движком | Точное name и поддерживаемые движки из Get Voices |
| Ожидание истекло | Состояние уже созданной операции; тайм-аут n8n не отменяет её |
Об ошибках узла можно сообщить в GitHub Issues. Укажите версию, операцию и текст ошибки без ключей и личных данных.