クイックスタート: 設定

このガイドでは、Dialogflow の使用開始に必要なすべての設定手順を説明します。

始める前に

このガイドを読む前に、次の手順を行ってください。

  1. Dialogflow の基本をご覧ください。
  2. エディションをご覧ください。

Google Cloud Console について

Google Cloud Console(ドキュメントを表示コンソールを開く)は、Google Cloud プロダクトを使用するシステムのプロビジョニング、構成、管理、モニタリングに使用されるウェブ UI です。Google Cloud Console を使用して、Dialogflow リソースを設定して管理します。

プロジェクトを作成

Google Cloud が提供するサービスを使用するには、プロジェクトを作成する必要があります。プロジェクトを使用して、すべての Google Cloud のリソースがまとめられます。 プロジェクトは、一連の共同編集者、有効化された API などのリソース、モニタリング ツール、お支払い情報、認証とアクセス制御で構成されます。1 つのプロジェクトを作成できるほか、複数のプロジェクトを作成してリソース階層内で Google Cloud リソースを構成することもできます。プロジェクトを作成する際は、プロジェクト ID をメモしてください。API 呼び出しを行うには、この ID が必要です。 プロジェクトの詳細については、Resource Manager ドキュメントをご覧ください。

Dialogflow コンソール(ドキュメントに移動コンソールを開く)では、エージェントを作成する際に必要に応じて基本プロジェクトを作成できます。無償版への基本的なアクセス以外のプロジェクトを使用する場合や、API を使用する場合は、以下の説明に従って Google Cloud Console を使ってプロジェクトを作成する必要があります。

実験、テスト、本番環境のそれぞれに個別のプロジェクトを作成することをおすすめします。各プロジェクトに作成できる Dialogflow エージェントは 1 つのみです。複数のエージェントが必要な場合は、複数のプロジェクトを作成する必要があります。

Cloud Console のプロジェクト セレクタページで、Cloud プロジェクトを選択または作成します。

プロジェクト セレクタのページに移動

課金を有効にする

請求先アカウントは、特定のリソースセットに対して誰が支払うかを定義するために使用され、1 つ以上のプロジェクトにリンクできます。 プロジェクトの利用料金は、リンクされた請求先アカウントに請求されます。 ほとんどの場合、プロジェクトの作成時に請求情報を構成します。 詳細については、お支払いとご請求に関するドキュメントをご覧ください。

Google Cloud プロジェクトに対して課金が有効になっていることを確認します。プロジェクトに対して課金が有効になっていることを確認する方法を学習する

API の有効化

Dialogflow API をプロジェクトで有効にする必要があります。 API の有効化の詳細については、サービス使用状況のドキュメントをご覧ください。

Dialogflow API を有効にします。

API を有効にする

認証の設定

Dialogflow API を使用する場合は、認証を設定する必要があります。API を使用するクライアント アプリケーションは、認証の対象であり、リクエストされるリソースへのアクセス権が付与されている必要があります。このセクションでは、認証の重要なコンセプトと設定手順について説明します。詳細については、Google Cloud 認証の概要をご覧ください。

サービス アカウントについて

認証には複数のオプションがありますが、認証とアクセス制御にサービス アカウントを使用することをおすすめします。サービス アカウントでは、エンドユーザーではなく、アプリケーションの認証情報が提供されます。サービス アカウントはプロジェクトで所有されます。プロジェクトに対して多数のサービス アカウントを作成できます。 詳細については、サービス アカウントについてをご覧ください。

ロールについて

ID で API を呼び出す場合、Google Cloud では、その ID が適切な権限を持っている必要があります。権限を付与するには、サービス アカウントにロールを付与します。 詳細については、Identity and Access Management(IAM)のドキュメントをご覧ください。

Dialogflow API を試してみるには、[プロジェクト] > [オーナー] の役割を使用できます。これにより、サービス アカウントにプロジェクトへの完全アクセス権が付与されます。Dialogflow 固有の役割の詳細は、 Dialogflow アクセス制御ドキュメントをご覧ください。

サービス アカウントキーについて

サービス アカウントは、1 つまたは複数の公開鍵と秘密鍵のペアに関連付けられます。 新しい鍵ペアを作成すると、秘密鍵がダウンロードされます。秘密鍵は、API の呼び出し時に認証情報の生成に使用されます。 秘密鍵のセキュリティと、キーのローテーションなどの他の管理操作は、ユーザーの責任になります。

サービス アカウントを作成し、秘密鍵ファイルをダウンロードする

認証の設定:

  1. Cloud Console で、[サービス アカウント キーの作成] ページに移動します。

    [サービス アカウント キーの作成] ページに移動
  2. [サービス アカウント] リストから [新しいサービス アカウント] を選択します。
  3. [サービス アカウント名] フィールドに名前を入力します。
  4. [ロール] リストで、[プロジェクト] > [オーナー] を選択します。

    : [ロール] フィールドの設定により、リソースにアクセスするサービス アカウントが承認されます。このフィールドは、Cloud Console を使用して後から表示および変更できます。本番環境アプリケーションを開発している場合は、[プロジェクト > オーナー] よりも詳細な権限を指定します。詳しくは、サービス アカウントへのロールの付与をご覧ください。
  5. [作成] をクリックします。キーが含まれている JSON ファイルがパソコンにダウンロードされます。

環境でサービス アカウント キー ファイルを使用する

環境変数 GOOGLE_APPLICATION_CREDENTIALS を設定して、アプリケーション コードに認証情報を指定します。[PATH] は、サービス アカウント キーが含まれる JSON ファイルのファイルパスに置き換えます。この変数は現在のシェル セッションにのみ適用されるため、新しいセッションを開く場合は、変数を再度設定します。

Linux または macOS

export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

例:

export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/my-key.json"

Windows

PowerShell を使用する場合:

$env:GOOGLE_APPLICATION_CREDENTIALS="[PATH]"

例:

$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\my-key.json"

コマンド プロンプトを使用する場合:

set GOOGLE_APPLICATION_CREDENTIALS=[PATH]

Cloud SDK をインストールし、初期化する

Dialogflow API の使用を計画している場合は、Cloud SDK をインストールして初期化する必要があります。Cloud SDK は、Google Cloud でホストされるリソースとアプリケーションの管理に使用できる一連のツールです。これには、gcloud コマンドライン ツールが含まれます。

次のリンクで手順を説明します。

Cloud SDK をインストールして初期化します。

SDK と認証をテストする

前の手順で認証を設定した場合は、gcloud ツールを使用して認証環境をテストできます。次のコマンドを実行し、エラーが発生せず、認証情報が返されることを確認します。

gcloud auth application-default print-access-token

このコマンドは、すべての Dialogflow コマンドライン REST サンプルで API 呼び出しの認証に使用されます。

Dialogflow クライアント ライブラリをインストールする

API を呼び出す方法として、Google がサポートするクライアント ライブラリ、REST、および gRPC の 3 つのオプションがあります。クライアント ライブラリはいくつかの一般的な言語で使用できるので、これが推奨されるオプションです。クライアント ライブラリをインストールするには、次の手順を使用します。

C#

NuGet から Google.Cloud.Dialogflow.V2 パッケージをインストールします。通常の方法でプロジェクトに追加します(たとえば、Visual Studio でプロジェクトを右クリックして [NuGet パッケージの管理...] を選択します)。プレリリース版パッケージを必ず有効にします(たとえば、Visual Studio NuGet ユーザー インターフェースで [プレリリースを含める] ボックスをオンにします)。

あるいは、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>11.0.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 を使用している場合は、次のものを依存関係に追加します。

compile 'com.google.cloud:google-cloud-dialogflow:2.3.0'

sbt を使用している場合は、次のものを依存関係に追加します。

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

IntelliJ または Eclipse を使用している場合は、次の IDE プラグインを使用してプロジェクトにクライアント ライブラリを追加できます。

プラグインでは、サービス アカウントのキー管理などの追加機能も提供されます。詳細は各プラグインのドキュメントをご覧ください。

Node.js

npm install 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 dialogflow

Ruby

gem install google-cloud-dialogflow