Extension for NDC Predictor

はじめに

Extension for NDC Predictorを作りました。NDC Predictorとはなんぞや?という方はこちらをご覧ください。本ツールでは NDC Predictor APIを利用しています*1

lab.ndl.go.jp

機能

機能としてはとてもシンプルです。

1.テキスト選択部分を分類
テキスト選択をしたテキストを(NDC Predictorを通じて)分類します。

2.入力されたテキストを分類
テキスト入力欄にテキストを入力すると(NDC Predictorを通じて)分類した結果が表示されます。

3.ウェブサイトを分類し分類に基づくオススメ資料を表示(β版)
あらかじめ登録したドメインにアクセスするとユーザがアクセスしているサイトを(NDC Predictorを通じて)分類し、その分類に基づきオススメの資料へのリンクが表示されます(β版の機能です)。

つかいかた

Google Chrome拡張機能なのでこちらでインストールしてください。

chrome.google.com

以下、機能の1-3の順番で使い方を説明します。

1つ目のテキスト選択部分を分類する、です。
ユーザがテキスト選択をしたテキストを(NDC Predictorを通じて)分類する機能です。まずユーザがブラウザ上で分類したいテキストをテキスト選択します。テキスト選択し右クリックをすると右クリックメニューに「Let's Classify!」という項目が追加されているので、それをクリックします。

f:id:haseharu:20191216062845p:plain

テキスト選択をしたテキスト部分がNDC Predictorに送られNDC分類された結果がブラウザ左下に表示されます。

f:id:haseharu:20191216062911p:plain

2つ目は入力するインターフェースで(NDC Predictorを通じて)分類結果を得る方法です。ブラウザ右上に表示されたLet's Classifyのアイコンをクリックするとポップアップが表示されます。テキスト入力欄に分類したいテキストを入力すると、ポップアップ下部にNDC Predictorを通じてNDC分類した結果が表示されます。

f:id:haseharu:20191216062935p:plain

3つ目は試験的な機能でβ版の扱いです。
こちらは事前準備が必要で、ブラウザ右上に表示されたLet's Classifyのアイコンを右クリックし「オプション」画面を表示します。

f:id:haseharu:20191216063001p:plain

「Recommendation function using site contents」にチェックを入れ、テキスト入力欄にドメインを記入し、「Save」ボタンを押してください。

f:id:haseharu:20191216063021p:plain

さきほど「オプション」画面で登録したドメインにアクセスすると、表示しているページをページ内のテキストから(NDC Predictorを通じて)分類し、オススメの資料がブラウザに表示されます。

f:id:haseharu:20191216063037p:plain

なお、本機能は所属するイントラサイト内での動作やウェブメーラーなどでの動作はセキュリティ上好ましくないため、避けていただくようお願いいたします。

おわりに

NDLからNDC Predictorが提供されたのを見て作りました。見ていただければわかるように、NDC PredictorへAPIを通じてリクエストを飛ばし、その結果を表示しているだけなので、特に手を入れていません。おすすめ資料の表示、という部分で利用している3つ目の機能以外はNDC Predictorの結果をそのまま利用しています。

実は、作りたかったのは3つ目の機能ですが、もう少し手を入れないとまともに動きそうもないことと、セキュリティ上の注意点があり、今回のようなホワイトリスト方式での、登録済みドメインに対して機能が有効となる実装となりました。

ツール自体は数日で作ったもので、NDC Predictorの公開後2週間程度でできていたのですが、3つ目の機能の実装上の設定からGoogleでの公開のための審査がやや長引き結局12月に入ってからの公開となりました。というか初登録時にはGoogleの審査ではじめてリジェクトされちょっと焦りました。

ともあれ「分類×機械学習」のAPIまで実装した遊べるサービスを提供いただき、NDLラボの中の人には感謝しております。

*1:中の人、ありがとうございます。