Edited at

Dialogflow辞書

More than 1 year has passed since last update.

(気力があるだけ頑張ります)

Dialogflowの機能の覚書。辞書のようなものです。

Dialogflowを触りながら、この機能なんだ??と思ったら、探してみてください。

英語が得意な人は、是非公式の解説ページへ……


Dialogflow とは?

コード不要で、簡単にチャットボットを作るためのサービスです。

2016年9月にDialogflowのチームをGoogleが買収しました。

日本語に対応しています。

※名称が api.ai→Dialogflowになっております。










目次


  1. エージェント(Agent)


    • 一般(General)


      • Project ID

      • API KEYS

      • Delete Agent



    • 言語(Languages)

    • 機械学習(ML Serrings)

    • エクスポート・インポート(Export and Import)

    • 共有(Share)



  2. インテント(Intents)


    • User says

    • イベント(Event)

    • アクション(Action)


      • 必須項目(REQUIRED)

      • パラメータ(PARAMETER NAME)

      • 値(VALUE)

      • リスト(IS LIST)



    • レスポンス(Response)



  3. エンティティ(Entities)

  4. トレーニング(Training)

  5. インテグレーション(Integrations)


    • Web Demo

    • Slack

    • LINE



  6. アナリティクス(Analytics)

  7. フルフィルメント(Fulfillment)


    • Webhook

    • Inline Editor



スクリーンショット 2017-11-17 13.18.17.png










1.エージェント(Agent)

エージェントとは

チャットボットのことです。ここではcotysanというエージェント。

複数エージェント(ボット)を持つことができます。


○ 一般(General)

メニューのスクリーンショット 2017-11-17 13.19.15.png歯車マークをクリックすると、一般設定ができます。

エージェントの画像も変えることができますが、画像拡張子はpngのみです。

スクリーンショット 2017-11-17 13.21.08.png

・Project ID

このボットのIDです。

外部サービス「Google Cloud Platform」でなんやかんやするときに使います。

・API KEYS

他サービスとなんやかんやするときに使います。

・Delete Agent

エージェントを削除するときはここから!


○ 言語(Languages)

ボットで使用する言語を追加・選択することができます。

スクリーンショット 2017-11-17 13.39.31.png


○ 機械学習(ML Serrings)

機械学習のモードを変更したり(ルールベースor機械学習)、バックプロップの精度か何かを調整できそうです。よくわかっていません。そのままにしておきましょう。

スクリーンショット 2017-11-17 13.41.17.png


○ エクスポート・インポート(Export and Import)

・EXPORT:JSON形式で書き出しができます。

・RESTORE:現在のものを削除して上書きします。

・IMPORT:現在のものを削除せず、新しいインテントとエンティティをアップロードします。同じ名前のエンティティは上書きされます。

スクリーンショット 2017-11-17 13.43.40.png


○ 共有(Share)

他人と共有できます。

共有方法はgmailを追加するだけで、

・REVIEWER:見るだけ

・DEVELOPER:編集OK

の権限も与えることができます。

追加してもタイムラグがあります。気長に待ちましょう。また、招待メールなどは特に送られません、待つのみ です。










2. インテント(Intents)

そもそもインテントとエンティティがわからない人は

チャットボットをAIでもっと素敵にする!自然言語処理の仕組みがハイパーわかりやすいです。

エンティティから理解した方がいいです、絶対。

Intent nameは日本語でも大丈夫ですが、

Entitiesはアルファベットのみです。

基本はUsersays(人)→Response(ボット)で会話を成り立たせます。


○ User says

人間が喋る(打ち込む)言葉を入れ込みます。

スクリーンショット 2017-11-17 13.57.27.png

「ごはんたべたい」

という意味の言葉、会話をじゃんじゃん入れ込みます。

たくさんあるほど良い精度になります。

参考:api.aiのIntentsの概要


○ イベント(Event)

なんかイベントがおこせるらしい。勉強中。


○ アクション(Acrion)

どのデータをFullfillmentに送るか、定義できるらしい?

参考:Google DialogFlow

勉強中。

細かい設定ができるっぽいです。


● 必須項目(REQUIRED)

会話の中で必須項目があれば、チェックします。

チェックをするとPROMPTSという入力項目が出現します。

スクリーンショット 2017-11-17 14.26.18.png

会話の中に@gohanというパラメータがなかったら、『なにたべてるの?』とボットが聞いてくれる仕組みです。


例)

「おいしー!」

『なに食べてるの?』⇦PROMPTSの内容

「ごはんだよ、美味しいなあ」

『ごはん!ごはん!ごはん!ごはん!』⇦レスポンスの内容





● パラメータ(PARAMETER NAME)

言葉で説明するのは難しすぎます。説明を諦めます。

パラメータと値はセット、くらい覚えていただけると…嬉しい…




● 値(VALUE)

これも説明が難しい…

パラメータとセットです…




● 値(IS LIST)

並列の処理です。

User saysの一文に、同じgohanというパラメータが複数入った場合、それらをリスト化するのがこのチェックマークです。

たとえば、User saysにこんな文が……

スクリーンショット 2017-11-17 14.40.19.png

レスポンスはこれ。

スクリーンショット 2017-11-17 14.58.26.png



リスト化されていないと?


スクリーンショット 2017-11-17 14.49.04.png


$gohan1は入りません。



リスト化してみた!

スクリーンショット 2017-11-17 14.49.44.png


スクリーンショット 2017-11-17 14.49.54.png


うるさいけれど、「ごはん」も「おやつ」も読み取ってくれました。




○ レスポンス(Response)

ボットによる返事です。

スクリーンショット 2017-11-17 15.11.00.png

Text responseの中からランダムで一行返します。

また、値(VALUE)を入れると、User saysに適応した返信ができます。


スクリーンショット 2017-11-17 15.13.31.png