如何在Python中使用dialogflow客户端

阿努巴夫·库什瓦哈

我正在尝试的是在python中获得响应

import dialogflow
from google.api_core.exceptions import InvalidArgument

DIALOGFLOW_PROJECT_ID = 'imposing-fx-333333'
DIALOGFLOW_LANGUAGE_CODE = 'en'
GOOGLE_APPLICATION_CREDENTIALS = 'imposing-fx-333333-e6e3cb9e4adb.json'
text_to_be_analyzed = "Hi! I'm David and I'd like to eat some sushi, can you help me?"
session_client = dialogflow.SessionsClient()
session = session_client.session_path(DIALOGFLOW_PROJECT_ID, SESSION_ID)
text_input = dialogflow.types.TextInput(text=text_to_be_analyzed, 
language_code=DIALOGFLOW_LANGUAGE_CODE)
query_input = dialogflow.types.QueryInput(text=text_input)
try:
    response = session_client.detect_intent(session=session, query_input=query_input)
except InvalidArgument:
    raise
print("Query text:", response.query_result.query_text)
print("Detected intent:", response.query_result.intent.display_name)
print("Detected intent confidence:", response.query_result.intent_detection_confidence)
print("Fulfillment text:", response.query_result.fulfillment_text)

而且我无法验证凭据

google.auth.exceptions.DefaultCredentialsError: Could not automatically determine credentials. Please set GOOGLE_APPLICATION_CREDENTIALS or explicitly create credentials and re-run the application. For more information, please see https://cloud.google.com/docs/authentication/getting-started

这是我在stackoverflow中的第一个问题:)我知道我已经做了很多

sid8491

您需要从中导出服务帐户密钥(JSON)文件,并将环境变量设置为GOOGLE_APPLICATION_CREDENTIALS包含服务帐户密钥的JSON文件的文件路径。然后,您可以调用dialogflow。

获取服务帐户密钥的步骤:确保您使用的是Dialogflow v2。转到常规设置,然后单击您的服务帐户。这会将您重定向到Google Cloud Platform项目的服务帐户页面。下一步是为服务帐户创建一个新密钥。现在创建一个服务帐户,然后选择JSON作为输出密钥。按照说明进行操作,JSON文件将下载到您的计算机中。该文件将用作GOOGLE_APPLICATION_CREDENTIALS

现在在代码中

import os
import dialogflow
os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "/path/to/file.json"
project_id = "your_project_id"
session_id = "your_session_id"
language_code = "en"
session_client = dialogflow.SessionsClient()
session = session_client.session_path(project_id, session_id)

text_input = dialogflow.types.TextInput(text=text, language_code=language_code)
query_input = dialogflow.types.QueryInput(text=text_input)
response_dialogflow = session_client.detect_intent(session=session, query_input=query_input)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Typescript中使用“ dialogflow”客户端库?

如何在客户端Java应用程序中使用客户端证书?

如何在客户端JavaScript中使用打字稿?

码头:如何在码头客户端中使用SSL

如何在存储中使用客户端githook?

如何在Flutter应用中使用WebSocket客户端?

如何在HTTPS中使用客户端证书?

如何在Delphi中使用HTTP客户端API

如何在客户端代码中使用节点模块?

如何在Meteor中使用本机客户端库?

如何在Mosquitto MQTT中使用客户端ID?

如何在Django中使用Paho mqtt客户端?

如何在片段中使用 GoogleAPI 客户端

如何在Blazor客户端中使用Socket?

如何在本机客户端中使用CORS机制

如何在Python中使用kafka客户端描述主题

IRC客户端应用程序,如何在python中使用select()

如何在Python多处理中使用boto3客户端?

如何在Jersey客户端中使用json正文使用ewquest Delete方法

如何在MVC Kendo网格的Ajax绑定中使用客户端模板表达式?

如何在WinForms客户端应用程序中使用命令模式?

如何在Advanced REST API客户端中使用Chrome中的Cookie

如何在其余客户端中使用spring @RequestBody发送发帖请求

如何在没有套接字的Android中使用TCP客户端?

如何在Apache HttpClient中使用SSL客户端证书?

如何在本机后台服务中使用(角度)HTTP客户端-NativeScript

如何在Sharepoint 2013客户端对象模型中使用javascript getPeerUrl()函数?

如何在Elasticsearch中使用Java客户端发出原始查询?

如何在Node.js和Jade中使用客户端Jquery?