0

我正在使用 python 和 dialogflowcx v3beta1 库,我想传递一个查询参数来检测意图函数,但它显示错误。

我已阅读文档:https ://cloud.google.com/dialogflow/cx/docs/reference/rest/v3beta1/QueryParameters但我对格式对象结构格式感到困惑。

它应该如何在代码中传递?

session_client = SessionsClient(client_options=client_options, credentials=credentials)
text_input = session.TextInput(text=message)
query_input = session.QueryInput(text=text_input, language_code=language_code)
query_params = {
        "parameters": {
            "param1": "value1"
        }
    }
request = session.DetectIntentRequest(
    session=session_path, query_input=query_input, query_params=query_params
)

提前致谢。

4

2 回答 2

0

解决了。我使用了下一个代码。

text_input = session.TextInput(text=message)
query_input = session.QueryInput(text=text_input, language_code=language_code)
params = {
    "session_id": session_id
}
query_params = session.QueryParameters(parameters=params)
request = session.DetectIntentRequest(
    session=session_path, query_input=query_input, query_params=query_params
)
于 2021-01-26T18:15:38.963 回答
0

我对 dialogflow nodejs api 也有同样的担忧。能否提供 queryParams 的 JSON 格式数据示例?由于在 nodejs v3 sdk 包中找不到 QueryParameters obj。

我在这里提出的问题

var mapParameters = new Map([['Michael', 95], ['Bob', 75], ['Tracy', 85]]);

 const request = {
    session: sessionPath,
    
    "queryInput": {
      
      "text": {
        "text": query,
      },
      languageCode,
    },

    'queryParams': {
      'timeZone': 'America/Los_Angeles',
      'parameters': {
        "fields":mapParameters
      }
    },

 };


const [response] = await client.detectIntent(request);

我也尝试了这些,但没有奏效。

 const request = {
    session: sessionPath,
    
    "queryInput": {
      
      "text": {
        "text": query,
      },
      languageCode,
    },

    'queryParams': {
      'timeZone': 'America/Los_Angeles',
      'parameters': {
       "p1":"p1 value"
      }
    },

 };
于 2021-02-23T23:44:20.163 回答