本指南介绍了开始使用 Dialogflow 所需的所有设置步骤。
准备工作
在阅读本指南之前,请先完成以下事项:
- 阅读 Dialogflow 基础知识。
- 阅读版本。
Google Cloud Console 简介
Google Cloud Console(访问文档,打开控制台)是一个网页界面,用于预配、配置、管理和监控使用 Google Cloud 产品的系统。您可以用 Google Cloud Console 设置和管理 Dialogflow 资源。
创建项目
如需使用 Google Cloud 提供的服务,您必须创建一个项目。项目用于组织您的所有 Google Cloud 资源。 项目由一组协作者、已启用的 API(和其他资源)、监控工具、结算信息以及身份验证和访问权限控制组成。您可以创建一个项目,也可以创建多个项目,并使用这些项目按资源层次结构组织 Google Cloud 资源。创建项目时,请记下项目 ID。您需要此 ID 才能进行 API 调用。 如需详细了解项目,请参阅 Resource Manager 文档。
当您创建代理时,Dialogflow ES 控制台(访问文档,打开控制台)可以为您创建一个基本项目。如果您计划将项目用于不只是对免费版的基本访问权限,或者您计划使用 API,请按照以下说明使用 Google Cloud Console 创建项目。
我们建议您分别创建用于实验、测试和生产的项目。每个项目只能创建一个 Dialogflow 代理。如果您需要多个代理,则需要创建多个项目。
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
启用结算功能
结算帐号用于定义一组给定资源的付款方,并且可以关联到一个或多个项目。 项目的使用费将计入关联的结算帐号名下。 在大多数情况下,您在创建项目时配置结算。 如需了解详情,请参阅结算文档。
Make sure that billing is enabled for your Google Cloud project.
启用 API
您必须为项目启用 Dialogflow API。 如需详细了解如何启用 API,请参阅 Service Usage 文档。
Enable the Dialogflow API.
启用审核日志
在您的项目中为 Dialogflow API 启用数据访问审核日志。这有助于跟踪与此项目关联的 Dialogflow 代理中的设计时更改。
设置身份验证
如果您计划使用 Dialogflow API,则需要设置身份验证。任何使用 API 的客户端应用都必须经过身份验证,并且拥有所请求资源的访问权限。本部分介绍重要的身份验证概念及其设置步骤。如需了解详情,请参阅 Google Cloud 身份验证概览。
服务帐号简介
身份验证有多种可选方式,但建议您使用服务帐号执行身份验证和访问权限控制。服务帐号为应用而非最终用户提供凭据。服务帐号由项目拥有,您可以为一个项目创建多个服务帐号。 如需了解详情,请参阅了解服务帐号。
角色简介
当身份调用 API 时,Google Cloud 要求该身份具有适当的权限。您可以向服务帐号分配角色来授予权限。 如需了解详情,请参阅身份和访问权限管理 (IAM) 文档。
如需试用 Dialogflow API,您可以在以下步骤中使用 项目 > Owner 角色,这将为服务帐号授予对项目的完整访问权限。如需详细了解 Dialogflow 的特定角色,请参阅 Dialogflow 访问权限控制文档。
服务帐号密钥简介
服务帐号与一个或多个公钥/私钥对相关联。 创建新密钥对时,您需要下载私钥。私钥用于在调用 API 时生成凭据。 您需要负责确保私钥和其他管理操作(如密钥轮替)的安全性。
创建服务帐号并下载私钥文件
Create a service account:
-
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart
. - Click Create and continue.
-
Grant the Project > Owner role to the service account.
To grant the role, find the Select a role list, then select Project > Owner.
- Click Continue.
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys.
- Click Add key, and then click Create new key.
- Click Create. A JSON key file is downloaded to your computer.
- Click Close.
在您的环境中使用服务帐号密钥文件
Provide authentication credentials to your application code by setting the
environment variable GOOGLE_APPLICATION_CREDENTIALS
. This
variable applies only to your current shell session. If you want the variable
to apply to future shell sessions, set the variable in your shell startup file,
for example in the ~/.bashrc
or ~/.profile
file.
Linux 或 macOS
export GOOGLE_APPLICATION_CREDENTIALS="KEY_PATH
"
Replace KEY_PATH
with the path of the JSON file that contains your credentials.
For example:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"
Windows
For PowerShell:
$env:GOOGLE_APPLICATION_CREDENTIALS="KEY_PATH
"
Replace KEY_PATH
with the path of the JSON file that contains your credentials.
For example:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\service-account-file.json"
For command prompt:
set GOOGLE_APPLICATION_CREDENTIALS=KEY_PATH
Replace KEY_PATH
with the path of the JSON file that contains your credentials.
安装并初始化 gcloud
CLI
如果您计划使用 Dialogflow API,则需要安装并初始化 Google Cloud CLI。gcloud
CLI 是一组工具,可用于管理 Google Cloud 上托管的资源和应用。
以下链接提供了相关说明:
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
测试 SDK 和身份验证
如果您在前面的步骤中设置了身份验证,则可以使用“gcloud”工具测试您的身份验证环境。执行以下命令,确认没有错误发生并且返回了凭据:
gcloud auth application-default print-access-token
所有 Dialogflow 命令行 REST 示例都会使用该命令对 API 调用进行身份验证。
安装 Dialogflow 客户端库
您可以通过以下三种方式调用 API:Google 支持的客户端库、REST 和 gRPC。客户端库支持多种主流语言,建议您使用这些客户端库。如需安装客户端库,请执行以下操作:
C#
安装 NuGet 提供的 Google.Cloud.Dialogflow.V2
软件包。以常规方式将它添加到您的项目中(例如,在 Visual Studio 中右键点击项目并选择“Manage NuGet Packages...”)。确保启用了预发布版软件包(例如,在 Visual Studio NuGet 界面中,选中“Include prerelease”复选框)。
或者,您也可以使用 NuGet 命令行界面:
nuget install Google.Cloud.Dialogflow.V2 -PreRelease
Go
go get cloud.google.com/go/dialogflow/apiv2
Java
If you are using Maven, add
the following to your pom.xml
file. For more information about
BOMs, see The Google Cloud Platform Libraries BOM.
If you are using Gradle, add the following to your dependencies:
If you are using sbt, add the following to your dependencies:
If you're using Visual Studio Code, IntelliJ, or Eclipse, you can add client libraries to your project using the following IDE plugins:
The plugins provide additional functionality, such as key management for service accounts. Refer to each plugin's documentation for details.
Node.js
npm install @google-cloud/dialogflow
PHP
Python
pip install google-cloud-dialogflow
Ruby
gem install google-cloud-dialogflow-v2