2017-09-17 16 views
1

現在、私たちはWatson Natural Language Classifierサービス(NLC)を使用して、ユーザーの質問のインテントを取得しています。しかし、NLCを構成して維持することは難しくなっているので、Watson Conversationセクションを使用してユーザーの質問のみを目的とすることが可能かどうか、サービスからのダイアログの応答ではないのかという疑問がありました。ワトソン会話を使用してインテントのみを取得できますか?

答えて

2

このインテントは、会話からの返信の一部として提供されます。パラメータalternate_intents=trueを設定すると、上位10のインテントが返されます。

残りのペイロードは取得されますが、無視することはできます。私は、trueという条件を持つダイアログノードを1つ作成することをお勧めします。これにより、一致するノードが見つからない場合にSPELエラーを防止します。

あなたの応答は次のようになります。

{ 
    "alternate_intents": true, 
    "context": { 
    "conversation_id": "6c256e10-ba3b-4d2b-84fc-740853879d4f", 
    "system": { 
     "_node_output_map": { "True": [0] }, 
     "branch_exited": true, 
     "branch_exited_reason": "completed", 
     "dialog_request_counter": 1, 
     "dialog_stack": [ { "dialog_node": "root" } ], 
     "dialog_turn_counter": 1 
    } 
    }, 
    "entities": [], 
    "input": { "text": "test" }, 
    "intents": [ 
     { "intent": "intent1", "confidence": 1.0 }, 
     { "intent": "intent2", "confidence": 0.9 }, 
     { "intent": "intent3", "confidence": 0.8 }, 
     { "intent": "intent4", "confidence": 0.7 }, 
     { "intent": "intent5", "confidence": 0.6 }, 
     { "intent": "intent6", "confidence": 0.5 }, 
     { "intent": "intent7", "confidence": 0.4 }, 
     { "intent": "intent8", "confidence": 0.3 }, 
     { "intent": "intent9", "confidence": 0.2 }, 
     { "intent": "intent10", "confidence": 0.1 } 
    ], 
    "output": { 
    "log_messages": [], 
    "nodes_visited": [ "True" ], 
    "text": [ "" ] 
    } 
} 

あなたが参照する必要があるのは、json_response['intents']です。また、意図を気にするだけであれば、文脈を送り返す必要はありません。


これを追加するだけです。 NLCと会話は、2つの非常に異なる学習モデルを使用します。

  • NLCは自動的に、会話が相対の場合は「絶対の自信」

を使用して、検出されたアイテムのすべての信頼度が素人用語では1まで追加されます

  • NLCを「相対自信」を使用しています答えはそれが与えられた意図でしかないと仮定します。

    絶対の場合、信頼はその意図にのみ関係します。これは、あなたが話していることが与えられた訓練にないかもしれないことを会話が理解できることを意味します。また、あなたの意図リストが空に戻ってくることを意味します。

    これまでに90%を与えていたものが60%を与えているのであれば、慌てないでください。彼らはちょうど異なって得点しています。

  • 関連する問題