今回は、enebular で作ったシンプルな HTTP リクエストのフローで、りんな API の、会話の文脈を踏まえて回答を提案する API 、Session Based Scoring API を体験してみます。
(本記事の内容は執筆時 [2022/10] の情報に基づいて作成しています)
rinna Developers で API を使うには
rinna Developers で API を使うには、2022/10 現在、こちらの記事を参考にアカウント登録して各 API サブスクリプション申請すれば使えるようになります。

rinna Developers ページ

rinna Developersの API 一覧を見てみます。

2022/10 現在、いろいろ API ありますね。今回は Session Based Scoring API をやってみます。

Session Based Scoring API とは、会話の文脈を踏まえて回答を提案する API とのこと。
サブスクリプション登録

2022/10 現在の手順ですが、API の使い方ページからサブスクリプション登録します。

サブスクリプション登録完了してプロフィール画面でサブスクリプションキー詳細が出てきました。
今回はプライマリキーを使ってみます。メモしておきましょう。
API 仕様ページ

API 仕様ページを見て POST リクエストの仕様を把握します。

API をすぐ試せるサイト内蔵の Try it ツールで、より詳細に送るべきプライマリキーを入れるヘッダー情報 Ocp-Apim-Subscription-Key 値がわかりました。
今回の Discover Flow
今回のフローはこちらです。

こちらのフローを自分のプロジェクトにインポートします。

インポート出来たら編集ボタンをクリックします。
inject ノードから送るサンプル文言

inject ノードから送るサンプル文言は、API ページにあるサンプルをそのまま利用しています。

以下、 JSON の詳細です。

dialogHistory という前の会話の履歴を元に、responses の中身から次の会話を判断してくれる感じですね。
りんな API 設定と書かれている change ノードの設定

りんな API 設定と書かれている change ノードの設定です。

API 仕様で把握した POST リクエストの送り先と、ヘッダーの設定をしていて、API のプライマリキーを設定してます。次の http request ノードが、この内容を元に送受信してくれます。
2 段目の msg.headers.Ocp-Apim-Subscription-Key の項目の <Ocp-Apim-Subscription-Key>
をプライマリキーで置き換えます。

設定ができたら保存ボタンをクリックしてデプロイしましょう。
動かしてみる

inject ノードの左にあるボタンをクリックしてデータを送ってみます。

待っていると、デバッグタブに次の会話が「おはよう」が一番適切な会話とお知らせしてくれました。
ということで、enebular で作ったシンプルな HTTP リクエストのフローで、りんな API の会話の文脈を踏まえて回答を提案する API 、Session Based Scoring API を体験できました。
チャットボットでこのあたりの判断を自前でやるのは大変ですし、一番良い topCandidate まで返してくれるのでうれしいですね。いろいろな応答する仕組みに活用できそうです。
りんな API には、さまざまな API があるので、他にも API 試してみようと思います。