どのようにブラウザでNLPを実行するには?


WINKNLPは最初にNODEJSで実行するために作られたが、それは簡単にブラウザで使用することができます.これを行うには、英語LiteモデルのWebバージョンを使用する必要があります.また、すべての必要なモジュール、wink-eng-lite-web-modelまたはWebpackのようなものを束ねることができるツールも必要です.このチュートリアルではBrowserifyを使用します.まず、必要なパッケージをインストールします.

We'll be installing Broswerify globally, refer to its documentation for more details.


npm install wink-nlp --save
npm install wink-eng-lite-web-model --save
npm install -g browserify
次に、通常のようにJavaScriptを書きます.ここでは、token-counter.jsと呼ばれる新しいファイルを作り、Winknlp、一部のヘルパー、およびWebモデルを必要とします.
const winkNLP = require( 'wink-nlp' );
const its = require( 'wink-nlp/src/its.js' );
const as = require( 'wink-nlp/src/as.js' );
const model = require( 'wink-eng-lite-web-model' );
const nlp = winkNLP( model )

const text = `Its quarterly profits jumped 76% to $1.13 billion 
for the three months to December, from $639 million of previous 
year.`;
const doc = nlp.readDoc( text );

doc.entities().each((e) => e.markup());
document.getElementById("result").innerHTML = doc.out(its.markedUpText);
さて、Broswerifyを使用して、必要なモジュールを一つのファイルにまとめます:
browserify token-counter.js -o bundle.js
これはbundle.jsと呼ばれる新しいファイルを作成します.これは他のどんなものとしてもHTMLに含めることができます.
<div id="result"></div>
<script src="bundle.js" charset="utf-8"></script>
これにより、次の出力が作成されます.
Its quarterly profits jumped 76% to $1.13 billion for the three months to December, from $639 million of previous year.

Browserify
性能考察
これは完全に注目される英語のモデルであることに注意することが重要です.あなたがウェブでそれをサーブするとき、必ずgzipを使用してください.これは、1 MB(圧縮されていない3.5 MBから)の下にそのサイズを減らします.また、適切なキャッシュヘッダーを設定すると、クライアントが複数回ダウンロードする必要はありません.