ホーム API/ツール API 発話理解

発話理解

    発話理解APIは発話文をテキストでインプットすると、文脈を解析し、その意図に沿った機能名及び値を返却するAPIです。

    API
    基本情報
    提供 : REST, SDK(Android™,Server side JAVA)
    ご利用いただくためには「アカウント登録(無料)」が必要です。

    ご利用にあたって

    発話理解APIは発話文をテキストでインプットすると、求められている機能に一番近いものを選び返却するAPIです。
    発話は話しかけるような自然な文章を入力できます。
    回答としては、機能名の他に、文章中の特徴的な単語を抽出したものを返却します。

    例) :

    「お腹がすいた」 → 「”グルメ検索”」を返却
    「ラーメンが食べたい」 → 「”グルメ検索”、”グルメジャンル名 : ラーメン : フード名”」を返却
    「山田さんに電話がしたい」 → 「”電話”、”宛先 : 山田 : 姓”」を返却
    「横浜から溜池山王に行きたい」 → 「”乗換案内”、”乗車駅 : 横浜(駅名)”、”降車駅 : 溜池山王(駅名)”」を返却

    本APIには、日本語版と英語版があります。日本語版を利用されたい場合には、リクエストパラメータにおいて、"language=ja"と指定してください。
    また、英語版を利用されたい場合には、同様に"language=en"と指定してください。
    英語版と日本語版では、サポートするコマンド一覧やスロット一覧が異なります。また、英語版には、「タイプ」は存在しません。

    注意事項 :
    本APIは、発話文に対する”回答”を返却するものではありません。
    例えば、「横浜から溜池山王に行きたい」という文章に対して、実際の乗換案内情報をアプリ上に表示させるためには APIから返却される「横浜」と「溜池山王」という単語を用いて、乗換案内検索エンジンに問い合わせる必要があります。

    しくみ

    発話理解APIの基本的な使い方は「テキスト」を送信し、「判定結果」をサーバから受け取ることになります。
    機能別リファレンスページ内にありますリクエスト・レスポンスのサンプルコードも併せてご参照ください。

    本項では、実際にインタフェース内に登場する言葉を用いて、送信と受信それぞれの動きを解説します。
    詳細については、パラメータ一覧をご参照ください。
    以下に「乗換案内」を例として、しくみを解説します。

    ①アプリからサーバへの送信データについて
    必須のパラメータを送信してください。
    なお、判定結果を左右するのは「ユーザー発話内容」になります。

    ②サーバからアプリへの送信データについて
    重要なものは下記の5つになります。また、それぞれの例を記載します。

    「commandId」 : BT00101
    「commandName」 : 乗換案内
    「slotName」 : stationTo
    「slotValue」 : 溜池山王
    「valueType」 : station

    「commandID」「commandName」 :
        機能ごとの、IDと名称となります。IDと名称は一対一対応しています。
        詳細はコマンド一覧をご参照ください。
    「slotName」「slotValue」「valueType」 :
        各機能ごとに設定された単語の箱の事を、スロットと呼んでいます。
        例えば、乗換案内には”stationFrom(乗車駅)”と”stationTo(降車駅)”のスロットがあります。
        slotNameは、それらのスロットの名前を意味します。
        slotValueは、実際にスロットに格納された単語です。
        上記の例では、「stationTo」という名前のスロットに「溜池山王」という単語が入っていますという意味になります。
        また、valueTypeは、単語のタイプを意味します。
        上記の例では、「溜池山王」という単語は「station」のタイプという意味になります。
        コマンドごとに用いるスロットは決まっています。また、スロットごとに入るタイプも決まっています。
        詳細は機能別リファレンスページ内にありますスロット一覧をご参照ください。

    文章中から、指定されたスロット以上に単語を抽出したい場合は、「extractedWords」をご参照ください。
    抽出した単語すべてに対して、タイプ付したものを出力しています。
    ※単語の抽出は、日本語版のみ可能です。

    "extractedWords":
      "wordsValue": "溜池山王駅",
      "wordsType": "station", "upoi", "snoun"

    上記の場合は、駅名・地名・名詞のタイプが紐づいています。
    タイプの詳細は機能別リファレンスページ内にありますタイプ一覧をご参照ください

    使ってみようAPI講座

    ドコモAPIを実際に使いながらご紹介する「使ってみようAPI講座」。手軽にAPIの機能をお試しいただけるAPIコンソールをご紹介します。アプリケーションの登録手続きが不要で、ログインするだけでご利用可能なので、ぜひお試しください。

    よくあるご質問
    APIなどの各サービスに関するよくある質問を掲載します。
    お問い合わせ
    「docomo Developer support」及び「作ろうスマートフォン/iモードコンテンツ」に関するお問い合わせです。よくあるご質問や技術ブログで解決しない場合は、お問い合わせください。