Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Integrujte rozpoznávání řeči a převod textu na řeč (označované také jako TTS nebo syntézu řeči) přímo do uživatelského prostředí vaší aplikace.
Rozpoznávání řeči Rozpoznávání řeči převádí slova mluvená uživatelem na text pro zadávání formulářů, pro diktování textu, k určení akce nebo příkazu a k provádění úkolů. Podporuje jak předdefinované gramatiky pro diktování volného textu, tak webové vyhledávání a vlastní gramatiky vytvořené pomocí specifikace SRGS (Speech Recognition Grammar Specification) verze 1.0.
Speech syntéza/Text to Speech (TTS) TTS používá modul syntézy řeči (hlas) k převodu textového řetězce na mluvená slova. Vstupní řetězec může být buď základní, neoznačený text, nebo složitější jazyk SSML (Speech Synthesis Markup Language). SSML poskytuje standardní způsob ovládání vlastností řeči, jako je výslovnost, hlasitost, intonace, rychlost a zdůraznění.
Návrh designu hlasové interakce
Když navrhujete a implementujete řeč promyšleně, může to být efektivní, přístupný a přirozený způsob, jak lidé pracovat s vašimi Windows aplikacemi, doplnit nebo dokonce nahradit tradiční prostředí interakce na základě myši, klávesnice, ovladače nebo dotykového ovládání.
Tyto pokyny a doporučení popisují, jak nejlépe integrovat rozpoznávání řeči i TTS do prostředí interakce vaší aplikace.
Pokud uvažujete o podpoře interakcí s řečí ve vaší aplikaci, položte si následující otázky:
- Jaké akce můžou uživatelé provádět prostřednictvím řeči? Můžou přecházet mezi stránkami, volat příkazy nebo zadávat data jako textová pole, stručné poznámky nebo dlouhé zprávy?
- Je řečový vstup dobrou volbou pro dokončení úkolu?
- Jak uživatel pozná, kdy je dostupný vstup řeči?
- Naslouchá aplikace vždy nebo musí uživatel provést akci, aby aplikace vstoupila do režimu naslouchání?
- Jaké fráze iniciují akci nebo chování? Musí být na obrazovce výčty frází a akcí?
- Jsou vyžadovány výzva, potvrzení a obrazovka pro vyjasnění, nebo je třeba použití TTS?
- Jaký je dialog interakce mezi aplikací a uživatelem?
- Vyžaduje se pro kontext vaší aplikace vlastní nebo omezená slovní zásoba (například lékařství, věda nebo národní prostředí)?
- Vyžaduje se připojení k síti?
Textové zadání
Textové zadání může být v rozsahu od krátkého zadání formuláře, jako je jedno slovo nebo fráze, až po dlouhý vstup formuláře, například více frází, odstavců nebo nepřetržité diktování. Krátký vstup je obvykle kratší než 10 sekund, zatímco dlouhý vstup může trvat až dvě minuty. Dlouhý vstup do formuláře se může restartovat bez zásahu uživatele, aby navozoval dojem nepřetržitého diktování.
Poskytněte vizuální upozornění, které indikuje, že rozpoznávání řeči je podporované a dostupné uživateli a jestli ho uživatel potřebuje zapnout. Například pomocí tlačítka panelu příkazů s glyfem mikrofonu (viz panely příkazů) zobrazte dostupnost i stav.
Poskytněte průběžnou zpětnou vazbu k rozpoznávání, abyste minimalizovali jakýkoliv zjevný nedostatek odezvy během rozpoznávání.
Umožněte uživatelům revidovat text rozpoznávání pomocí vstupu z klávesnice, výzev k odstranění nejednoznačnosti, návrhů nebo dalšího rozpoznávání řeči.
Zastavení rozpoznávání, pokud se zjistí vstup ze zařízení jiného než rozpoznávání řeči, jako je dotykové ovládání nebo klávesnice. Tento vstup pravděpodobně značí, že se uživatel přesunul na jiný úkol, například opravit text rozpoznávání nebo pracovat s jinými poli formuláře.
Zadejte časový úsek, kdy žádný vstup řeči neznamená, že rozpoznávání skončilo. Po uplynutí tohoto časového období automaticky nerestartujte rozpoznávání, protože to obvykle značí, že se uživatel přestal s vaší aplikací zapojovat.
V některých případech může být pro podporu rozpoznávání řeči vyžadováno síťové připojení. Pokud není k dispozici, zakažte veškeré uživatelské rozhraní pro průběžné rozpoznávání a ukončete relaci rozpoznávání.
Velící
Vstup řeči může iniciovat akce, vyvolat příkazy a provádět úlohy.
Pokud je místo povolené, zvažte zobrazení podporovaných odpovědí pro aktuální kontext aplikace s příklady platného vstupu. Tento přístup snižuje potenciální odpovědi, které vaše aplikace potřebuje zpracovat, a také eliminuje nejasnosti pro uživatele.
Zkuste formulovat své otázky tak, abyste získali co nejkonkrétnější odpověď. Například "Co chcete udělat dnes?" je velmi otevřený a vyžaduje velmi velkou definici gramatiky kvůli tomu, jak se můžou odpovědi lišit. Alternativně možnost "Chcete hrát hru nebo poslouchat hudbu?" omezuje odpověď na jednu ze dvou platných odpovědí s odpovídající malou gramatickou definicí. Malá gramatika se mnohem snáze vytváří a vede k mnohem přesnějším výsledkům rozpoznávání.
Pokud je spolehlivost rozpoznávání řeči nízká, požádejte uživatele o potvrzení. Pokud je záměr uživatele nejasný, je lepší získat objasnění, než zahájit nezamýšlenou akci.
Poskytněte vizuální upozornění, které indikuje, že rozpoznávání řeči je podporované a dostupné uživateli a jestli ho uživatel potřebuje zapnout. Například pomocí tlačítka panelu příkazů s glyfem mikrofonu (viz Pokyny pro panely příkazů) zobrazte dostupnost i stav.
Pokud je přepínač rozpoznávání řeči obvykle mimo zobrazení, zvažte zobrazení indikátoru stavu v oblasti obsahu aplikace.
Pokud uživatel zahájí rozpoznávání, zvažte použití integrovaného prostředí pro rozpoznávání pro konzistenci. Integrované prostředí zahrnuje přizpůsobitelné obrazovky s výzvami, příklady, nejednoznačností, potvrzeními a chybami.
Obrazovky se liší v závislosti na zadaných omezeních:
Předdefinovaná gramatika (diktování nebo vyhledávání na webu)
- Obrazovka Naslouchání
- Obrazovka Thinking.
- Obrazovka „Slyšeli jsme, co říkáš“ nebo obrazovka s chybou.
Seznam slov nebo frází nebo gramatického souboru SRGS
- Obrazovka Naslouchání
- Obrazovka Did you say, pokud by to, co uživatel řekl, mohlo být interpretováno jako více než jeden možný výsledek.
- Obrazovka „Slyšeli jsme, co říkáš“ nebo obrazovka s chybou.
Na obrazovce Naslouchání můžete:
- Upravte text nadpisu.
- Zadejte ukázkový text toho, co může uživatel říct.
- Určete, zda je zobrazena obrazovka Heard you say.
- Přečtěte rozpoznaný text zpět uživateli na obrazovce Heard you say.
Následující obrázky ukazují příklad zabudovaného procesu rozpoznávání pro systém rozpoznávání řeči, který používá SRGS-definované omezení. V tomto příkladu je rozpoznávání řeči úspěšné.
Vždy nasloucháme
Aplikace může naslouchat a rozpoznávat vstup řeči hned po spuštění aplikace bez zásahu uživatele.
Přizpůsobení gramatických omezení na základě kontextu aplikace Tento přístup udržuje prostředí rozpoznávání řeči velmi cílené a relevantní pro aktuální úkol a minimalizuje chyby.
"Co můžu říct?"
Když povolíte vstup řeči, pomozte uživatelům zjistit, co aplikace dokáže pochopit a jaké akce může provádět.
Pokud uživatelé povolí rozpoznávání řeči, zvažte použití panelu příkazů nebo příkazu nabídky k zobrazení všech slov a frází podporovaných v aktuálním kontextu.
Pokud je rozpoznávání řeči vždy zapnuté, zvažte přidání fráze "Co můžu říct?" na každou stránku. Když uživatel řekne tuto frázi, zobrazí se všechna slova a fráze podporované v aktuálním kontextu. Použití této fráze poskytuje uživatelům konzistentní způsob, jak zjistit funkce řeči v celém systému.
Selhání rozpoznávání
Rozpoznávání řeči může selhat. K chybám dochází, když je kvalita zvuku špatná, když rozpoznávač detekuje pouze část fráze nebo když vůbec nezaznamená žádný vstup.
Zpracujte selhání elegantně, pomozte uživateli pochopit, proč se rozpoznávání nezdařilo, a obnovit.
Vaše aplikace by měla uživatele informovat o tom, že rozpoznávač jim nerozuměl a že se musí pokusit znovu.
Zvažte poskytnutí příkladů jedné nebo více podporovaných frází. Uživatel bude pravděpodobně opakovat navrženou frázi, která zvyšuje úspěšnost rozpoznávání.
Zobrazí seznam potenciálních shod, ze které si uživatel může vybrat. Tento přístup může být mnohem efektivnější než opětovné procházení procesu rozpoznávání.
Vždy podporovat alternativní typy zadávání, což je užitečné zejména pro zpracování opakovaných chyb rozpoznávání. Můžete například navrhnout, aby se uživatel pokusil použít klávesnici, nebo pomocí dotykového ovládání nebo myši vybrat ze seznamu potenciálních shod.
Použijte integrované prostředí pro rozpoznávání řeči, protože obsahuje obrazovky, které uživatele informují, že rozpoznávání nebylo úspěšné, a umožní uživateli provést další pokus o rozpoznávání.
Poslechněte si a pokuste se opravit problémy se vstupem zvuku. Rozpoznávání řeči dokáže rozpoznat problémy s kvalitou zvuku, která může nepříznivě ovlivnit přesnost rozpoznávání řeči. Informace, které poskytuje rozpoznávání řeči, můžete použít k informování uživatele o problému a nechat je provést nápravné akce, pokud je to možné. Pokud je například nastavení hlasitosti na mikrofonu příliš nízké, můžete uživatele vyzvat, aby hlasitě mluvil nebo aby hlasitost vypnul.
Omezení
Omezení nebo gramatiky definují mluvená slova a fráze, které může rozpoznávač řeči rozpoznat. Můžete zadat jednu z předdefinovaných gramatik webových služeb nebo můžete vytvořit vlastní gramatiku, kterou nainstalujete pomocí aplikace.
Předdefinované gramatiky
Předdefinované diktování a gramatiky vyhledávání na webu poskytují rozpoznávání řeči pro vaši aplikaci, aniž byste museli vytvářet gramatiku. Když tyto gramatiky použijete, vzdálená webová služba provede rozpoznávání řeči a vrátí výsledky do zařízení.
- Výchozí gramatika diktování volného textu rozpozná většinu slov a frází, které uživatel může říct v určitém jazyce. Je optimalizovaná pro rozpoznávání krátkých frází. Diktování volného textu použijte, když nechcete omezit druhy věcí, které může uživatel říct. Mezi obvyklé použití patří vytváření poznámek nebo diktování obsahu zprávy.
- Gramatika vyhledávání na webu, například gramatika diktování, obsahuje velký počet slov a frází, které může uživatel říct. Je ale optimalizovaná tak, aby rozpoznala termíny, které lidé obvykle používají při vyhledávání na webu.
Poznámka:
Vzhledem k tomu, že předdefinované diktování a gramatiky vyhledávání na webu můžou být velké a protože jsou online (ne na zařízení), nemusí být výkon tak rychlý jako u vlastní gramatiky nainstalované na zařízení.
Tyto předdefinované gramatiky můžou rozpoznat až 10 sekund vstupu řeči a nevyžadují žádné úsilí o vytváření. Vyžadují však připojení k síti.
Vlastní gramatiky
Navrhněte a vytvořte vlastní gramatiku a nainstalujte ji s aplikací. Zařízení provádí rozpoznávání řeči pomocí vlastního omezení.
Omezení programového seznamu poskytují jednoduchý přístup k vytváření jednoduchých gramatik pomocí seznamu slov nebo frází. Omezení seznamu funguje dobře pro rozpoznávání krátkých, jedinečných frází. Explicitní zadání všech slov v gramatikě také zlepšuje přesnost rozpoznávání, protože modul pro rozpoznávání řeči musí zpracovávat pouze řeč a potvrdit shodu. Seznam můžete také aktualizovat programově.
Gramatika SRGS je statický dokument, který na rozdíl od omezení seznamu programu používá formát XML definovaný SRGS verze 1.0. Gramatika SRGS poskytuje největší kontrolu nad prostředím rozpoznávání řeči tím, že umožňuje zachytit více sémantických významů v jediném rozpoznávání.
Tady je několik tipů pro vytváření gramatiky SRGS:
- Udržujte každou gramatiku jednoduchou. Gramatiky, které obsahují méně frází, mají tendenci poskytovat přesnější rozpoznávání než větší gramatiky, které obsahují mnoho frází. Pro konkrétní scénáře je lepší mít několik menších gramatik než mít jednu gramatiku pro celou aplikaci.
- Dejte uživatelům vědět, co říct pro každý kontext aplikace, a podle potřeby povolit a zakázat gramatiky.
- Navrhujte každou gramatiku tak, aby uživatelé mohli mluvit příkazy různými způsoby. Například použijte pravidlo NEZNÁMÝ k porovnání vstupu řeči, který vaše gramatika nedefinuje. Toto pravidlo umožňuje uživatelům mluvit další slova, která nemají význam pro vaši aplikaci. Například "dej mi", "a", "ehm", "možná" a tak dále.
- Pomocí elementu sapi:subset můžete pomoci s porovnáním s hlasovým vstupem. Tento prvek je rozšíření Microsoftu specifikace SRGS, které pomáhá porovnávat částečné fráze.
- Snažte se vyhnout definování frází v gramatikě, které obsahují jenom jednu slabiku. Rozpoznávání má tendenci být přesnější u frází obsahujících dvě nebo více slabiek.
- Nepoužívejte fráze, které zní podobně. Například fráze jako "hello", "bellow" a "fellow" mohou zmást modul rozpoznávání a vést k nízké přesnosti rozpoznávání.
Poznámka:
Jaký typ omezení použijete, závisí na složitosti prostředí rozpoznávání, které chcete vytvořit. Jakýkoli typ může být nejlepší volbou pro konkrétní úlohu rozpoznávání a můžete najít použití pro všechny typy omezení v aplikaci.
Vlastní výslovnost
Pokud vaše aplikace obsahuje specializovanou slovní zásobu s neobvyklými nebo fiktivními slovy nebo slovy s neobvyklou výslovností, můžete zlepšit výkon rozpoznávání těchto slov definováním vlastních výslovností.
Pro malý seznam slov a frází nebo seznam zřídka používaných slov a frází vytvořte vlastní výslovnost v gramatikě SRGS. Další informace najdete v elementu tokenu .
Pro větší seznamy slov a frází nebo často používaných slov a frází vytvořte samostatné dokumenty výslovnosti. Další informace najdete v tématu Lexikony a fonetické abecedy .
Testing
Otestujte přesnost rozpoznávání řeči a jakékoli podpůrné uživatelské rozhraní s cílovou skupinou vaší aplikace. Tento přístup vám pomůže určit, jak efektivní je prostředí pro interakci s řečí ve vaší aplikaci. Mají například uživatelé špatné výsledky rozpoznávání, protože vaše aplikace neposlouchá běžnou frázi?
Upravte gramatiku tak, aby podporovala tuto frázi, nebo poskytněte uživatelům seznam podporovaných frází. Pokud už seznam podporovaných frází zadáte, ujistěte se, že ho uživatelé můžou snadno najít.
Převod textu na řeč (TTS)
TTS generuje výstup řeči z prostého textu nebo SSML.
Zkuste navrhnout výzvy, které jsou zdvořilé a povzbudivé.
Zvažte, jestli byste měli číst dlouhé řetězce textu. Je jedna věc poslouchat textovou zprávu, ale docela další poslouchat dlouhý seznam výsledků hledání, které jsou obtížně zapamatovatelné.
Poskytnutím ovládacích prvků médií umožníte uživatelům pozastavit nebo zastavit TTS.
Poslechněte si všechny řetězce TTS, abyste měli jistotu, že jsou srozumitelné a zní přirozeně.
- Sestavení neobvyklé sekvence slov, čísel částí nebo interpunkce může způsobit, že věta nebude srozumitelná.
- Řeč může znít nepřirozeně, když se prosody nebo četnost liší od toho, jak by rodilý mluvčí řekl frázi.
Oba problémy můžete řešit pomocí SSML místo prostého textu jako vstupu do syntetizátoru řeči. Další informace o SSML naleznete v tématu Použití SSML k řízení syntetizované řeči a Referenční informace o jazykových prvcích pro syntézu řeči.