#QnAMaker マネージドのショートアンサー機能を調べてみた

この記事は Microsoft Azure Cognitive Services Advent Calendar 2020 に参加しています。

QnA Maker のバージョン 2 (予定?)、QnA Maker マネージド の 新機能 の一つが “ショートアンサー” です。
ナレッジベースにある回答そのものではなく、自動生成された回答の要約、短縮版を応答してくれる機能です。

チャットボットは UI の物理的サイズから、長い回答は見づらくて適切ではないことがあります。
まず短い回答を返して、必要に応じて(例えばユーザーが要求したら)詳細な解答を返すやり方もありそうです。

ショートアンサーはそんな時に役に立ちそうな機能です。

チームブログでは機能について触れていますし、QnA Maker ポータルのテストペインでも動作は確認できます。
ただ公式ドキュメントなどには記載がないようです・・・ということで調べてみました。
プレビューだしドキュメントに書いていない内容なので、今後変更される可能性ありです。


■ ショートアンサーの確認方法

QnA Maker ポータル のテストペインを使うとショートアンサーを確認することができます。

ただしマネージドを有効にしたナレッジベースで、かつショートアンサーに対応した言語でのみ利用可能です。
残念ながら、現時点では日本語は未対応。今後に期待しましょう。

テストペインで [Display short answer] をチェックします。
これでショートアンサーが返ってきます。
(日本語だとこのチェックはグレーアウトして選択できません)


■ REST 呼び出し

QnA Maker ポータルで機能の確認ができました。

他のクライアントからも呼び出してみます。
公式ドキュメントを見る限り、多分どこにも記述がないので調べてみました。
QnA Maker マネージドはプレビューなので、今後変更されるかもしれません。

まず呼び出しの詳細について。

これは現状の V1 と同様、[Settings] – [Deployment details] の通りです。
V1 との違いは表示通り URL に “v5.0-preview.1” と入っているくらいですね。

ショートアンサーを応答させるには要求の本体が少しだけ違うので、それはあとで。


■ ショートアンサーを受け取るためのリクエスト本体

QnA Maker マネージドからショートアンサーを受け取るには、要求本体にパラメーターを一つ追加するようです。

要求本体に “answerSpanRequest” を追加します。
値には “enable”: true を指定します。

こんな感じ。

{
    "question":"<ここに質問>",
    "answerSpanRequest": 
    {
        "enable": true
    }
}

これでショートアンサーが返ってきます。

“answerSpanRequest” の値として、”topAnswerWithSpan” もあるようなのですが、今のところ英語だとしても無視されて、最初の回答のみショートアンサーが返ってきます。
今後は 2 以上の指定が有効になるということかな。

{
    "question":"<ここに質問>",
    "answerSpanRequest":
    {
        "enable": true,
        "topAnswerWithSpan": 1
    }
}

今のところ日本語未対応ですが、非常に楽しみな機能です。

プレビューなので今後変更される可能性がありますが、しばらくはこれでショートアンサーが得られそうです。

コメントを残す