Velocity powered by Wavelink
文法ファイル構造
文法ファイルは、Speakeasy がファイルの内容を正しく解釈するための特定の構造です。
次に基本文法ファイルの例を示します。
#BNF+EM V2.1;
/*
GRAMMAR: usa_states.bnf
説明:
これは米国の一部の州を認識する文法ファイルです。
何を言うことができますか?
次の任意のアメリカの州を言うことができます。
*/
!grammar usa_states;
!start <state>;
<state>:
アラバマ
| アラスカ
| コネチカット
| フロリダ
| アイダホ
| カンザス
| "ニュージャージー"
| "New York";
#BNF+EM V1.1;
各文法ファイルは、Speakeasy が文法ファイルを処理する方法を特定する #BNF+EM V1.1; などの文で始まる必要があります。この行を修正する必要はありません。
/* */ または //
コメント (エンジンが無視する情報) を作成するには、行の先頭を // にするか、テキストを /* および */ マーカーで囲みます。[説明] と [読み上げ可能な内容] セクションを編集し、文法ファイルに行う変更を説明できます。
!grammar [filename]
文法ファイルの名前を変更する場合は、コマンド !grammar
が新しいファイル名を使用する必要があります。たとえば、ファイルの名前が VoicePick.bnf に変更された場合、コマンドは !grammar VoicePick; のようになります。
!start <state>;
!start コマンドは、文法を使用しているときに、使用可能になる文法の用語グループを指定します。上記の例では、エンジンは <state>
ルールのすべての用語を待機します。複数のルールが存在し、1つだけがコマンドによって参照された場合、すべての他のルールは無視されます。
<state>: アラバマ | コネチカット |...
<state>: と最後の ; の間の単語と語句は、文法が許可する用語です。各単語または語句は、 | (OR 記号) で区切る必要があります。用語はすべて同じ行に一覧表示されるか、簡単に編集できるように垂直に配置されることができます。
New York、New Jersey などの他に類似している可能性がある用語の認識を改善するには、語句を"" (引用符) で囲みます。Speakeasy エンジンは、強制的に、許可された語句をより詳細にユーザ応答に対して比較します。
複数のルール
一部の文法ファイルでは、主なルールがサブセクションに分割され、用語を管理しやすくなっています。ファイルに複数のルールがある場合は、 !start 行で使用されるルールにすべて含まれることを確認してください。
!start <Speech>;
<Speech>: <YesNo> | <Maybe>;
<YesNo>: はい | いいえ;
<Maybe>: maybe;
この例では、<Speech> ルールには <YesNo> と <Maybe> ルールがあるため、エンジンは <YesNo> ルールと <Maybe> ルールの両方のすべての用語を待機します。
類似している用語
同じように聞こえる単語がある場合は、認識結果が低下する可能性があります。認識を改善するには、長く固有のフレーズを使用します。たとえば、「faster」や「fastest」などの類似した用語を使用する代わりに、「go faster」や「warp speed」などの語句に置き換えます。
この記事は役に立ちましたか?
トピックの評価:
不正確
不完全
期待していた内容ではない
その他
Copyright © 2018, Ivanti. All rights reserved.