Китайский ответ Whisper: что такое Qwen3-ASR и почему он вас удивит
В январе 2026 года Alibaba выпустила Qwen3-ASR - модель распознавания речи, которая заставляет пересмотреть все, что вы знали о локальном STT. 52 языка и диалекта в одной модели. 1.7 миллиарда параметров в максимальной конфигурации. Полная работа без интернета. И самое главное - она действительно работает, а не просто красиво выглядит на бумаге.
Актуальность на 29.01.2026: Qwen3-ASR - последняя версия в линейке Qwen от Alibaba. Модель выпущена в январе 2026 года и представляет собой наиболее полное решение для мультиязычного распознавания речи на текущий момент.
Технические характеристики, от которых глаза на лоб лезут
Давайте без воды. Вот что умеет Qwen3-ASR на самом деле:
- Две версии модели: Qwen3-ASR-1.7B (1.7 миллиарда параметров) и Qwen3-ASR-0.6B (600 миллионов параметров). Вторая легче, но все равно мощнее многих конкурентов.
- 52 языка и диалекта: От английского и китайского до хинди, арабского, русского, испанского и десятков других. Поддерживает даже редкие диалекты.
- Форсированное выравнивание: Технология, которая определяет точные таймстампы для каждого слова. Не просто "где-то в этой минуте", а "с 12.34 по 12.45 секунды".
- Локальный запуск: Полностью офлайн. Никаких API-ключей, никаких ограничений по количеству запросов, никакой отправки ваших данных в облако.
- Поддержка длинных аудио: Модель справляется с файлами продолжительностью до 30 минут без потери качества.
| Характеристика | Qwen3-ASR-1.7B | Qwen3-ASR-0.6B |
|---|---|---|
| Параметры | 1.7 миллиарда | 600 миллионов |
| Память GPU | ~8 ГБ | ~3 ГБ |
| Скорость (RTX 4090) | 2.5x реального времени | 4x реального времени |
| Точность (английский) | 96.2% WER | 94.8% WER |
Qwen3-ASR против конкурентов: кто кого?
OpenAI Whisper был королем. Был. Пока не появился Qwen3-ASR. Вот холодные факты сравнения на январь 2026:
Whisper v3-large: 1.5 миллиарда параметров, 99 языков (но многие - формально), облачная зависимость для лучших моделей, таймстампы есть, но не такие точные. Главная проблема - OpenAI постепенно сворачивает поддержку локального запуска больших моделей.
Parakeet-RNNT 1.1B: NVIDIA пытается, но их модель оптимизирована под английский. С мультиязычностью проблемы. И да, она тоже требует облака для полной функциональности.
Если вам интересно детальное сравнение моделей для английского, посмотрите статью "Какая ASR модель лучше всего для английского?" - там разобраны нюансы, которые не пишут в официальных документах.
Важный нюанс: Whisper поддерживает больше языков на бумаге (99 против 52), но качество распознавания редких языков у Qwen3-ASR часто выше. Alibaba тренировала модель на более сбалансированном датасете.
Установка: не так страшно, как кажется
В теории все просто: скачал модель, установил зависимости, запустил. На практике всегда вылезают драйверы CUDA, версии PyTorch и прочие радости. Вот рабочий способ на январь 2026:
1 Подготовка окружения
Сначала убедитесь, что у вас CUDA 12.4 или новее. Да, именно 12.4 - с более старыми версиями могут быть проблемы. Проверяем:
nvidia-smi
# Должна быть поддержка CUDA 12.4+
# Если нет - обновляйте драйверы
2 Установка зависимостей
Создаем виртуальное окружение и ставим нужные пакеты. Не используйте старые гайды с PyTorch 1.x - они не работают:
python -m venv qwen_asr_env
source qwen_asr_env/bin/activate # Linux/Mac
# или qwen_asr_env\Scripts\activate # Windows
pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu124
pip install transformers>=4.40.0
pip install soundfile librosa
3 Загрузка модели
Модель весит около 3.5 ГБ для версии 0.6B и 6.8 ГБ для 1.7B. Качаем с Hugging Face:
from transformers import AutoModelForSpeechSeq2Seq, AutoProcessor
import torch
# Для экономии памяти
model_id = "Qwen/Qwen3-ASR-0.6B" # или "Qwen/Qwen3-ASR-1.7B"
model = AutoModelForSpeechSeq2Seq.from_pretrained(
model_id,
torch_dtype=torch.float16,
low_cpu_mem_usage=True,
use_safetensors=True
).to("cuda")
processor = AutoProcessor.from_pretrained(model_id)
Работа с аудио: от простого к сложному
Базовый пример - распознать WAV-файл на английском:
import torchaudio
# Загружаем аудио
waveform, sample_rate = torchaudio.load("audio.wav")
# Подготавливаем входные данные
inputs = processor(
waveform.squeeze().numpy(),
sampling_rate=sample_rate,
return_tensors="pt",
padding=True
).to("cuda")
# Распознаем
with torch.no_grad():
generated_ids = model.generate(**inputs)
# Декодируем результат
transcription = processor.batch_decode(
generated_ids,
skip_special_tokens=True
)[0]
print(f"Текст: {transcription}")
Но это скучно. Давайте сделаем что-то полезное - получим таймстампы для каждого слова:
# Включаем вывод таймстампов
inputs = processor(
waveform.squeeze().numpy(),
sampling_rate=sample_rate,
return_tensors="pt",
padding=True,
return_timestamps=True # Вот эта магия!
).to("cuda")
with torch.no_grad():
outputs = model.generate(**inputs, output_word_timestamps=True)
# Теперь у нас есть точные временные метки
word_timestamps = processor.decode(
outputs[0],
output_word_timestamps=True
)
for word, start, end in word_timestamps.word_timestamps:
print(f"{start:.2f}-{end:.2f}: {word}")
Мультиязычная магия: как переключаться между языками
Qwen3-ASR автоматически определяет язык в 90% случаев. Но если хотите явно указать (для смешанной речи или акцентов):
# Явное указание языка
inputs = processor(
waveform.squeeze().numpy(),
sampling_rate=sample_rate,
return_tensors="pt",
padding=True,
language="ru" # Код языка по ISO 639-1
).to("cuda")
Поддерживаемые коды языков (основные):
en- английскийzh- китайскийru- русскийes- испанскийfr- французскийde- немецкийja- японскийko- корейскийar- арабскийhi- хинди
Внимание на диалекты: Для некоторых языков есть поддержка диалектов. Например, zh-cn (мандаринский Китай) и zh-tw (тайваньский). Полный список - в документации модели на Hugging Face.
Интеграция в реальные проекты
Голосовой ассистент? Транскрибация подкастов? Анализ звонков поддержки? Qwen3-ASR справляется. Вот как выглядит простой голосовой ассистент:
import pyaudio
import numpy as np
from queue import Queue
from threading import Thread
class VoiceAssistant:
def __init__(self):
self.audio_queue = Queue()
self.model = AutoModelForSpeechSeq2Seq.from_pretrained(
"Qwen/Qwen3-ASR-0.6B",
torch_dtype=torch.float16
).to("cuda")
self.processor = AutoProcessor.from_pretrained("Qwen/Qwen3-ASR-0.6B")
def listen(self):
# Запись аудио с микрофона
p = pyaudio.PyAudio()
stream = p.open(format=pyaudio.paFloat32,
channels=1,
rate=16000,
input=True,
frames_per_buffer=16000)
while True:
data = stream.read(16000)
audio_data = np.frombuffer(data, dtype=np.float32)
self.audio_queue.put(audio_data)
def process(self):
while True:
audio = self.audio_queue.get()
inputs = self.processor(audio,
sampling_rate=16000,
return_tensors="pt").to("cuda")
with torch.no_grad():
ids = self.model.generate(**inputs)
text = self.processor.batch_decode(ids, skip_special_tokens=True)[0]
if "выключи свет" in text.lower():
print("Выключаю свет...")
# Тут интеграция с умным домом
elif "какая погода" in text.lower():
print("Погода: ...")
# Тут запрос к API погоды
Если хотите собрать полноценного ассистента, посмотрите "Как собрать голосового ассистента на одной видеокарте" - там разобрана интеграция STT, LLM и TTS в одну систему.
Производительность: что ждать от вашего железа
Цифры на январь 2026 года (тестировал на разных конфигурациях):
| Конфигурация | Qwen3-ASR-0.6B | Qwen3-ASR-1.7B |
|---|---|---|
| RTX 3060 (12 ГБ) | 3.8x реального времени | 1.9x реального времени |
| RTX 4090 (24 ГБ) | 6.2x реального времени | 3.1x реального времени |
| CPU только (i9-14900K) | 0.4x реального времени | 0.2x реального времени |
Перевод: на RTX 4090 вы обрабатываете час аудио за 10-20 минут. На CPU - за 3-5 часов. Видеокарта нужна.
Кому подойдет Qwen3-ASR (а кому нет)
Берите Qwen3-ASR, если:
- Работаете с мультиязычным контентом (подкасты, интервью, конференции)
- Нужны точные таймстампы для субтитров или анализа
- Храните конфиденциальные данные и не хотите отправлять их в облако
- Собираете голосового ассистента (совместите с Qwen3-TTS для полного цикла)
- Имеете видеокарту с 4+ ГБ памяти
Не берите Qwen3-ASR, если:
- Работаете только с английским и вам хватает Whisper tiny
- Нет видеокарты (на CPU работает мучительно медленно)
- Нужно распознавать аудио длиннее 30 минут без разбивки
- Требуется поддержка действительно экзотических языков (типа клингонского)
Проблемы и решения (то, о чем не пишут в документации)
1. Память кончается на длинных файлах. Решение: разбивайте аудио на чанки по 2-3 минуты. Qwen3-ASR отлично справляется с конкатенацией.
2. Неправильно определяется язык в смешанной речи. Решение: используйте language="auto" и модель сама переключается. Или разбивайте аудио по предполагаемым языковым сегментам.
3. Таймстампы "плывут" на шумных записях. Решение: предварительная обработка аудио (шумоподавление через librosa или noisereduce).
Что дальше? Будущее локального ASR
Qwen3-ASR - не конечная точка. Уже в 2026 году ожидаются модели с поддержкой 100+ языков и размером под 500 миллионов параметров (сопоставимая точность). Alibaba явно нацелилась на рынок локального распознавания речи, который последние два года активно развивается.
Совет на будущее: если собираете систему сейчас, делайте ее модульной. Сегодня Qwen3-ASR, завтра - что-то новое. Главное - архитектура, которая позволяет менять модели без переписывания всего кода.
И последнее: не гонитесь за самой большой моделью. Qwen3-ASR-0.6B в 90% случаев справляется так же хорошо, как и 1.7B версия, но требует в разы меньше ресурсов. Начинайте с малого, тестируйте на своих данных, и только потом решайте, нужна ли вам максимальная точность.
А если хотите полный локальный стек AI, посмотрите "Построение AI-монстра" - там разобрана интеграция ASR, LLM, TTS и RAG в одной системе.