Реалізація гарячих слів (Hotword Boosting) для STT

Проектуємо та впроваджуємо системи штучного інтелекту: від прототипу до production-ready рішення. Наша команда поєднує експертизу в машинному навчанні, дата-інжинірингу та MLOps, щоб AI працював не в лабораторії, а в реальному бізнесі.
Показано 1 з 1Усі 1566 послуг
Реалізація гарячих слів (Hotword Boosting) для STT
Простий
від 1 дня до 3 днів
Часті запитання

Напрямки AI-розробки

Етапи розробки AI-рішення

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1284
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1196
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    901
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1119
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    586
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    853

Реалізація гарячих слів (Hotword Boosting) для STT Hotword Boosting – механізм підвищення ймовірності розпізнавання конкретних слів та фраз. На відміну від custom vocabulary (статичний список), hotword boosting застосовується динамічно в runtime - різні фрази для різних контекстів запиту. ### Реалізація для різних провайдерів Google STT з phrase boost:```python

from google.cloud import speech

def transcribe_with_hotwords(audio_content: bytes, hotwords: list[str]) -> str: client = speech.SpeechClient()

speech_contexts = [
    speech.SpeechContext(
        phrases=hotwords,
        boost=20.0  # max значение
    )
]
config = speech.RecognitionConfig(
    encoding=speech.RecognitionConfig.AudioEncoding.LINEAR16,
    sample_rate_hertz=16000,
    language_code="ru-RU",
    speech_contexts=speech_contexts,
    enable_automatic_punctuation=True,
)
response = client.recognize(config=config,
                             audio=speech.RecognitionAudio(content=audio_content))
return response.results[0].alternatives[0].transcript

**Vosk з grammar (FST-based boosting)**:python from vosk import Model, KaldiRecognizer import json

model = Model("vosk-model-ru-0.42")

Ограниченная грамматика для определённого контекста

grammar = json.dumps(["да", "нет", "отмена", "помощь", "[unk]"]) recognizer = KaldiRecognizer(model, 16000, grammar) **Whisper через prefix промпт** — ненадійно, але працює для коротких записів із конкретними очікуваннями. ### Динамічні hotwords У голосових ботах hotwords залежать від стану діалогу:python DIALOG_HOTWORDS = { "greeting": ["здравствуйте", "добрый день", "привет"], "payment": ["оплатить", "счёт", "карта", "перевод", "сумма"], "cancel": ["отменить", "назад", "стоп", "выход"], }

def get_hotwords_for_state(state: str) -> list[str]: return DIALOG_HOTWORDS.get(state, [])