快速入门:设置

本指南介绍了开始使用 Dialogflow 所需的所有设置步骤。

准备工作

在阅读本指南之前,请先完成以下事项:

  1. 阅读 Dialogflow 基础知识
  2. 阅读版本

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 代理。如果您需要多个代理,则需要创建多个项目。

在 Google Cloud Console 中的项目选择器页面上,选择或创建一个 Google Cloud 项目

转到“项目选择器”

启用结算功能

结算帐号用于定义一组给定资源的付款方,并且可以关联到一个或多个项目。 项目的使用费将计入关联的结算帐号名下。 在大多数情况下,您在创建项目时配置结算。 如需了解详情,请参阅结算文档

确保您的 Google Cloud 项目已启用结算功能

启用 API

您必须为项目启用 Dialogflow API。 如需详细了解如何启用 API,请参阅 Service Usage 文档

启用 Dialogflow API。

启用 API

启用审核日志

在您的项目中为 Dialogflow API 启用数据访问审核日志。这有助于跟踪与此项目关联的 Dialogflow 代理中的设计时更改。

设置身份验证

如果您计划使用 Dialogflow API,则需要设置身份验证。任何使用 API 的客户端应用都必须经过身份验证,并且拥有所请求资源的访问权限。本部分介绍重要的身份验证概念及其设置步骤。如需了解详情,请参阅 Google Cloud 身份验证概览

服务帐号简介

身份验证有多种可选方式,但建议您使用服务帐号执行身份验证和访问权限控制。服务帐号为应用而非最终用户提供凭据。服务帐号由项目拥有,您可以为一个项目创建多个服务帐号。 如需了解详情,请参阅了解服务帐号

角色简介

当身份调用 API 时,Google Cloud 要求该身份具有适当的权限。您可以向服务帐号分配角色来授予权限。 如需了解详情,请参阅身份和访问权限管理 (IAM) 文档

如需试用 Dialogflow API,您可以在以下步骤中使用 项目 > Owner 角色,这将为服务帐号授予对项目的完整访问权限。如需详细了解 Dialogflow 的特定角色,请参阅 Dialogflow 访问权限控制文档

服务帐号密钥简介

服务帐号与一个或多个公钥/私钥对相关联。 创建新密钥对时,您需要下载私钥。私钥用于在调用 API 时生成凭据。 您需要负责确保私钥和其他管理操作(如密钥轮替)的安全性。

创建服务帐号并下载私钥文件

创建服务帐号:

  1. 在 Google Cloud 控制台中,转到创建服务帐号页面。

    转到“创建服务帐号”
  2. 选择您的项目。
  3. 服务帐号名称字段中,输入一个名称。Google Cloud 控制台会根据此名称填充服务帐号 ID 字段。

    服务帐号说明字段中,输入说明。例如,Service account for quickstart

  4. 点击创建并继续
  5. Project > Owner 角色授予服务帐号。

    如需授予该角色,请找到选择角色列表,然后选择 Project > Owner

  6. 点击继续
  7. 点击完成以完成服务帐号的创建过程。

    不要关闭浏览器窗口。您将在下一步骤中用到它。

创建服务帐号密钥:

  1. 在 Google Cloud 控制台中,点击您创建的服务帐号的电子邮件地址。
  2. 点击密钥
  3. 点击添加密钥,然后点击创建新密钥
  4. 点击创建。JSON 密钥文件将下载到您的计算机上。
  5. 点击关闭

在您的环境中使用服务帐号密钥文件

通过设置环境变量 GOOGLE_APPLICATION_CREDENTIALS 向应用代码提供身份验证凭据。此变量仅适用于当前的 Shell 会话。如果您希望变量应用于未来的 Shell 会话,请在 shell 启动文件中设置变量,例如在 ~/.bashrc~/.profile 文件中。

Linux 或 macOS

export GOOGLE_APPLICATION_CREDENTIALS="KEY_PATH"

KEY_PATH 替换为包含凭据的 JSON 文件的路径。

例如:

export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"

Windows

对于 PowerShell:

$env:GOOGLE_APPLICATION_CREDENTIALS="KEY_PATH"

KEY_PATH 替换为包含凭据的 JSON 文件的路径。

例如:

$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\service-account-file.json"

对于命令提示符:

set GOOGLE_APPLICATION_CREDENTIALS=KEY_PATH

KEY_PATH 替换为包含凭据的 JSON 文件的路径。

安装并初始化 gcloud CLI

如果您计划使用 Dialogflow API,则需要安装并初始化 Google Cloud CLIgcloud CLI 是一组工具,可用于管理 Google Cloud 上托管的资源和应用。

以下链接提供了相关说明:

安装 Google Cloud CLI,然后通过运行以下命令初始化 Google Cloud CLI:

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

如果您使用的是 Maven,请将以下代码添加到您的 pom.xml 文件中。如需详细了解 BOM,请参阅 Google Cloud Platform 库 BOM

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>libraries-bom</artifactId>
      <version>26.34.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-dialogflow</artifactId>
  </dependency>

如果您使用的是 Gradle,请将以下代码添加到您的依赖项中:

implementation 'com.google.cloud:google-cloud-dialogflow:4.43.0'

如果您使用的是 sbt,请将以下代码添加到您的依赖项中:

libraryDependencies += "com.google.cloud" % "google-cloud-dialogflow" % "4.43.0"

如果您使用的是 Visual Studio Code、IntelliJ 或 Eclipse,可以通过以下 IDE 插件将客户端库添加到您的项目中:

上述插件还提供其他功能,例如服务账号密钥管理。如需了解详情,请参阅各个插件相应的文档。

Node.js

npm install @google-cloud/dialogflow

PHP

  1. 安装适用于 PHP 的首选依赖项管理器 Composer
  2. 安装 Google Cloud 客户端库的 Dialogflow 组件:
    composer require google/cloud-dialogflow
  3. 该组件支持 REST over HTTP/1.1 和 gRPC。为了充分利用 gRPC 提供的优势(如流式传输方法),请按照 gRPC 安装指南中的说明操作。

Python

pip install google-cloud-dialogflow

Ruby

gem install google-cloud-dialogflow-v2