2017-07-25 11 views
3

IBM Watson Conversationsのスロット機能を試していますが、回避方法がわかりません。IBM Watson Slotsは受け入れられません0

私は、ユーザーからいくつかの情報を収集しているユースケースを持っているので、スロット機能を使用することは意味があります。残念ながら、@ sys-numberでスロットを追加すると、システムは有効な入力として0を受け付けません。このスロットは実際には必要ですが、0が有効な値です。

誰もが値として0を受け取る@ sys-number型の必要なスロットを持つ方法を知っていますか?

+0

スロットなしでテストする場合、サービスは '@ sys-number'と認識しますか?私の場合はそうでした。 –

+0

はい、 '0 'を' @sys-number'としてピックアップしますが、スロットを満たしているとは思われません。 –

+1

私はこの質問がすでに答えられていると思います。 https://stackoverflow.com/questions/43472182/ibm-watson-sys-number-does-not-get-0 – barbs

答えて

2

実際には条件の条件@sys-numberは短い手続きの構文です。 0が送信されると、状態はfalseと評価され、0は、ワトソン会話サービスの式言語評価プログラムによってfalseとして処理されます。この場合、これは望ましい動作ではありません。これが起こらないようにするには、entities['sys-number']trueを入力するたびにのエンティティが認識される条件で返すことができます。

これをスロットで使用するときは、条件を変更すると変数に格納されているものも変更されるため、コンテキスト変数に格納されているものを編集することができます。これは、JSONエディタで行うことができます。スロット仕様の横にあるスロットギアをクリックし、開いているウィンドウで3つの点をクリックし、JSONエディタを開き、スロットによって更新されるコンテキスト変数内に実際に格納される内容を変更します。

ここにsystem entity section in Watson Conversation Service documentationへのリンクです。

+1

おかげでMichalは、スロットの状態を 'entities ['sys-number']'として扱い、JSONエディタでコンテキスト変数を '@ sys-number'に設定していることを確認しましたスロット。 –

関連する問題