1

私の LUIS アプリには、場所を設定する必要がある GetWeather というインテントがあります。必須パラメーターとして Location を使用した GetWeather インテント

クエリを使用してアプリに接続する場合

ロンドンの天気は?

それは正しく戻ります

{
  "query": "what is the weather in london",
  "topScoringIntent": {
    "intent": "GetWeather",
    "score": 0.999875546,
    "actions": [
      {
        "triggered": true,
        "name": "GetWeather",
        "parameters": [
          {
            "name": "Location",
            "type": "Location",
            "required": true,
            "value": [
              {
                "entity": "london",
                "type": "Location",
                "resolution": {}
              }
            ]
          }
        ]
      }
    ]
  },
  "entities": [
    {
      "entity": "london",
      "type": "Location",
      "startIndex": 23,
      "endIndex": 28,
      "score": 0.832388461,
      "resolution": {}
    }
  ],
  "dialog": {
    "contextId": "e1df6c2d-e691-4fc6-89f2-3ee2ef519724",
    "status": "Finished"
  }
}

代わりにクエリを使用する場合

天気は?

次の期待される結果を返します。

{
  "query": "what is the weather",
  "topScoringIntent": {
    "intent": "GetWeather",
    "score": 1.0,
    "actions": [
      {
        "triggered": false,
        "name": "GetWeather",
        "parameters": [
          {
            "name": "Location",
            "type": "Location",
            "required": true,
            "value": null
          }
        ]
      }
    ]
  },
  "entities": [],
  "dialog": {
    "prompt": "Where",
    "parameterName": "Location",
    "parameterType": "Location",
    "contextId": "3b0725f4-7d6f-43fd-ab6e-02fc11c3eed1",
    "status": "Question"
  }
}

次の呼び出しで contextID を forceSet パラメーターと一緒に使用すると、パラメーター Location がクエリとして送信したものに設定されると思いました。私が使用する接続文字列は次のとおりです。

https://api.projectoxford.ai/luis/v2.0/apps/{APP_ID}?subscription-key={SUBSCRIPTION_KEY}&q=london&contextid=3b0725f4-7d6f-43fd-ab6e-02fc11c3eed1&forceset=Location

代わりに、次の応答が返されます。

{
  "query": "london",
  "topScoringIntent": {
    "intent": "GetWeather",
    "score": 1.0,
    "actions": [
      {
        "triggered": false,
        "name": "GetWeather",
        "parameters": [
          {
            "name": "Location",
            "type": "Location",
            "required": true,
            "value": null
          }
        ]
      }
    ]
  },
  "entities": [],
  "dialog": {
    "prompt": "Where",
    "parameterName": "Location",
    "parameterType": "Location",
    "contextId": "3b0725f4-7d6f-43fd-ab6e-02fc11c3eed1",
    "status": "Question"
  }
}

最初の応答のようなものが返されることを期待していました。何か間違ったことをしているのですか、それとも forceSet パラメーターの役割を誤解しているだけですか?

4

0 に答える 0