Skip to content

miyako/Jagger

Repository files navigation

Jagger

形態素解析器

実行ファイルjaggerstdIn stdOutではなく,コマンドラインと対話するバージョンです。

デフォルトのモデルファイルは../model/kyoto+kwdlc/patternです。

辞書の管理

辞書は別途GitHubからダウンロードする設計です。
まずZip形式で圧縮しておきます。

  • ファイル名は常にmodel.zip
$model:=Folder("/RESOURCES/model/kyoto+kwdlc")
$zip:=cs._Zip.new($model)
$zip.create()

リリース名を辞書名に合わせます。

https://github.com/miyako/Jagger/releases/tag/kyoto%2Bkwdlc

Releasesから.zip形式の辞書をダウンロードして展開します。

$model:=cs.Jagger.Model.new("kyoto+kwdlc")
If (Not($model.exists))
	$model.install()
End if

つかいかた(同期モード)

var $Jagger : cs.Jagger.Jagger
$Jagger:=cs.Jagger.Jagger.new()

$text:="Jagger は、辞書に基づく単語分割のための最長一致法と、機械学習の分類器の事前計算に着想を得た、特徴パターンに基づく高速・高精度・省メモリの形態素解析器です。"
$status:=$Jagger.split($text)
ALERT($status.join(","))
var $Jagger : cs.Jagger.Jagger
$Jagger:=cs.Jagger.Jagger.new()
$text:="Jagger は、辞書に基づく単語分割のための最長一致法と、機械学習の分類器の事前計算に着想を得た、特徴パターンに基づく高速・高精度・省メモリの形態素解析器です。"
$status:=$Jagger.tokenize($text)
ALERT(JSON Stringify($status; *))

つかいかた(非同期モード)

#DECLARE($params : Object)

If (Count parameters=0)
	
	CALL WORKER("Jagger"; Current method name; {})
	
Else 
	
	var Jagger : cs.Jagger.Jagger
	If (Jagger=Null)
		Jagger:=cs.Jagger.Jagger.new()
	End if 
	
	$text:="Jagger は、辞書に基づく単語分割のための最長一致法と、機械学習の分類器の事前計算に着想を得た、特徴パターンに基づく高速・高精度・省メモリの形態素解析器です。"
	Jagger.split($text; True)
	
	//Jagger.quit()
	
End if

実行ファイルを起動したまま,CGIのように標準入出力で対話します。毎回,辞書やモデルをロードしないので効率的です。.quit()するまでonDataコールバック関数が呼ばれます。実行中のインスタンスで辞書やモデルを変更することはできません。起動した後はsplitあるいはtokenizeいずれかの実装になります。

注記

  • コンストラクターが必要に応じてGitHubからデフォルトの辞書をインストールします。

aknowlegements

About

形態素解析器

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •