
[![Current PyPI packages](https://badge.fury.io/py/suparkanbun.svg)](https://pypi.org/project/suparkanbun/)

# SuPar-Kanbun

Tokenizer, POS-Tagger and Dependency-Parser for Classical Chinese Texts (漢文/文言文) with [spaCy](https://spacy.io), [Transformers](https://huggingface.co/transformers/) and [SuPar](https://github.com/yzhangcs/parser).

## Basic usage

```py
>>> import suparkanbun
>>> nlp=suparkanbun.load()
>>> doc=nlp("不入虎穴不得虎子")
>>> print(type(doc))
<class 'spacy.tokens.doc.Doc'>
>>> print(suparkanbun.to_conllu(doc))
# text = 不入虎穴不得虎子
1	不	不	ADV	v,副詞,否定,無界	Polarity=Neg	2	advmod	_	Gloss=not|SpaceAfter=No
2	入	入	VERB	v,動詞,行為,移動	_	0	root	_	Gloss=enter|SpaceAfter=No
3	虎	虎	NOUN	n,名詞,主体,動物	_	4	nmod	_	Gloss=tiger|SpaceAfter=No
4	穴	穴	NOUN	n,名詞,固定物,地形	Case=Loc	2	obj	_	Gloss=cave|SpaceAfter=No
5	不	不	ADV	v,副詞,否定,無界	Polarity=Neg	6	advmod	_	Gloss=not|SpaceAfter=No
6	得	得	VERB	v,動詞,行為,得失	_	2	parataxis	_	Gloss=get|SpaceAfter=No
7	虎	虎	NOUN	n,名詞,主体,動物	_	8	nmod	_	Gloss=tiger|SpaceAfter=No
8	子	子	NOUN	n,名詞,人,関係	_	6	obj	_	Gloss=child|SpaceAfter=No

>>> import deplacy
>>> deplacy.render(doc)
不 ADV  <════╗   advmod
入 VERB ═══╗═╝═╗ ROOT
虎 NOUN <╗ ║   ║ nmod
穴 NOUN ═╝<╝   ║ obj
不 ADV  <════╗ ║ advmod
得 VERB ═══╗═╝<╝ parataxis
虎 NOUN <╗ ║     nmod
子 NOUN ═╝<╝     obj
```

`suparkanbun.load()` has two options `suparkanbun.load(BERT="roberta-classical-chinese-base-char",Danku=False)`. With the option `Danku=True` the pipeline tries to segment sentences automatically. Available `BERT` options are:

* `BERT="roberta-classical-chinese-base-char"` utilizes [roberta-classical-chinese-base-char](https://huggingface.co/KoichiYasuoka/roberta-classical-chinese-base-char) (default)
* `BERT="roberta-classical-chinese-large-char"` utilizes [roberta-classical-chinese-large-char](https://huggingface.co/KoichiYasuoka/roberta-classical-chinese-large-char)
* `BERT="guwenbert-base"` utilizes [GuwenBERT-base](https://huggingface.co/ethanyt/guwenbert-base)
* `BERT="guwenbert-large"` utilizes [GuwenBERT-large](https://huggingface.co/ethanyt/guwenbert-large)
* `BERT="sikubert"` utilizes [SikuBERT](https://huggingface.co/SIKU-BERT/sikubert)
* `BERT="sikuroberta"` utilizes [SikuRoBERTa](https://huggingface.co/SIKU-BERT/sikuroberta)

## Installation for Linux

```sh
pip3 install suparkanbun --user
```

## Installation for Cygwin64

Make sure to get `python37-devel` `python37-pip` `python37-cython` `python37-numpy` `python37-wheel` `gcc-g++` `mingw64-x86_64-gcc-g++` `git` `curl` `make` `cmake` packages, and then:
```sh
curl -L https://raw.githubusercontent.com/KoichiYasuoka/CygTorch/master/installer/supar.sh | sh
pip3.7 install suparkanbun --no-build-isolation
```

## Installation for Jupyter Notebook (Google Colaboratory)

```py
!pip install suparkanbun 
```

Try [notebook](https://colab.research.google.com/github/KoichiYasuoka/SuPar-Kanbun/blob/main/suparkanbun.ipynb) for Google Colaboratory.

## Author

Koichi Yasuoka (安岡孝一)


{"language": ["lzh"], "license": "mit", "tags": ["classical chinese", "literary chinese", "ancient chinese", "token-classification", "pos"], "datasets": ["universal_dependencies"], "pipeline_tag": "token-classification", "widget": [{"text": "\u4e0d\u5165\u864e\u7a74\u4e0d\u5f97\u864e\u5b50"}]}
transformers pytorch roberta token-classification classical chinese literary chinese ancient chinese pos lzh dataset:universal_dependencies license:mit autotrain_compatible endpoints_compatible region:us
TAGS
#transformers #pytorch #roberta #token-classification #classical chinese #literary chinese #ancient chinese #pos #lzh #dataset-universal_dependencies #license-mit #autotrain_compatible #endpoints_compatible #region-us 


![Current PyPI packages](URL

# SuPar-Kanbun

Tokenizer, POS-Tagger and Dependency-Parser for Classical Chinese Texts (漢文/文言文) with spaCy, Transformers and SuPar.

## Basic usage



'URL()' has two options 'URL(BERT="roberta-classical-chinese-base-char",Danku=False)'. With the option 'Danku=True' the pipeline tries to segment sentences automatically. Available 'BERT' options are:

* 'BERT="roberta-classical-chinese-base-char"' utilizes roberta-classical-chinese-base-char (default)
* 'BERT="roberta-classical-chinese-large-char"' utilizes roberta-classical-chinese-large-char
* 'BERT="guwenbert-base"' utilizes GuwenBERT-base
* 'BERT="guwenbert-large"' utilizes GuwenBERT-large
* 'BERT="sikubert"' utilizes SikuBERT
* 'BERT="sikuroberta"' utilizes SikuRoBERTa

## Installation for Linux



## Installation for Cygwin64

Make sure to get 'python37-devel' 'python37-pip' 'python37-cython' 'python37-numpy' 'python37-wheel' 'gcc-g++' 'mingw64-x86_64-gcc-g++' 'git' 'curl' 'make' 'cmake' packages, and then:


## Installation for Jupyter Notebook (Google Colaboratory)



Try notebook for Google Colaboratory.

## Author

Koichi Yasuoka (安岡孝一)


# SuPar-Kanbun

Tokenizer, POS-Tagger and Dependency-Parser for Classical Chinese Texts (漢文/文言文) with spaCy, Transformers and SuPar. ## Basic usage



'URL()' has two options 'URL(BERT="roberta-classical-chinese-base-char",Danku=False)'. With the option 'Danku=True' the pipeline tries to segment sentences automatically. Available 'BERT' options are:

* 'BERT="roberta-classical-chinese-base-char"' utilizes roberta-classical-chinese-base-char (default)
* 'BERT="roberta-classical-chinese-large-char"' utilizes roberta-classical-chinese-large-char
* 'BERT="guwenbert-base"' utilizes GuwenBERT-base
* 'BERT="guwenbert-large"' utilizes GuwenBERT-large
* 'BERT="sikubert"' utilizes SikuBERT
* 'BERT="sikuroberta"' utilizes SikuRoBERTa ## Installation for Linux ## Installation for Cygwin64

Make sure to get 'python37-devel' 'python37-pip' 'python37-cython' 'python37-numpy' 'python37-wheel' 'gcc-g++' 'mingw64-x86_64-gcc-g++' 'git' 'curl' 'make' 'cmake' packages, and then: ## Installation for Jupyter Notebook (Google Colaboratory)



Try notebook for Google Colaboratory. ## Author

Koichi Yasuoka (安岡孝一)
TAGS
#transformers #pytorch #roberta #token-classification #classical chinese #literary chinese #ancient chinese #pos #lzh #dataset-universal_dependencies #license-mit #autotrain_compatible #endpoints_compatible #region-us 
 # SuPar-Kanbun

Tokenizer, POS-Tagger and Dependency-Parser for Classical Chinese Texts (漢文/文言文) with spaCy, Transformers and SuPar. ## Basic usage



'URL()' has two options 'URL(BERT="roberta-classical-chinese-base-char",Danku=False)'. With the option 'Danku=True' the pipeline tries to segment sentences automatically. Available 'BERT' options are:

* 'BERT="roberta-classical-chinese-base-char"' utilizes roberta-classical-chinese-base-char (default)
* 'BERT="roberta-classical-chinese-large-char"' utilizes roberta-classical-chinese-large-char
* 'BERT="guwenbert-base"' utilizes GuwenBERT-base
* 'BERT="guwenbert-large"' utilizes GuwenBERT-large
* 'BERT="sikubert"' utilizes SikuBERT
* 'BERT="sikuroberta"' utilizes SikuRoBERTa ## Installation for Linux ## Installation for Cygwin64

Make sure to get 'python37-devel' 'python37-pip' 'python37-cython' 'python37-numpy' 'python37-wheel' 'gcc-g++' 'mingw64-x86_64-gcc-g++' 'git' 'curl' 'make' 'cmake' packages, and then: ## Installation for Jupyter Notebook (Google Colaboratory)



Try notebook for Google Colaboratory. ## Author

Koichi Yasuoka (安岡孝一)
passage: TAGS
#transformers #pytorch #roberta #token-classification #classical chinese #literary chinese #ancient chinese #pos #lzh #dataset-universal_dependencies #license-mit #autotrain_compatible #endpoints_compatible #region-us 
# SuPar-Kanbun

Tokenizer, POS-Tagger and Dependency-Parser for Classical Chinese Texts (漢文/文言文) with spaCy, Transformers and SuPar.## Basic usage



'URL()' has two options 'URL(BERT="roberta-classical-chinese-base-char",Danku=False)'. With the option 'Danku=True' the pipeline tries to segment sentences automatically. Available 'BERT' options are:

* 'BERT="roberta-classical-chinese-base-char"' utilizes roberta-classical-chinese-base-char (default)
* 'BERT="roberta-classical-chinese-large-char"' utilizes roberta-classical-chinese-large-char
* 'BERT="guwenbert-base"' utilizes GuwenBERT-base
* 'BERT="guwenbert-large"' utilizes GuwenBERT-large
* 'BERT="sikubert"' utilizes SikuBERT
* 'BERT="sikuroberta"' utilizes SikuRoBERTa## Installation for Linux## Installation for Cygwin64

Make sure to get 'python37-devel' 'python37-pip' 'python37-cython' 'python37-numpy' 'python37-wheel' 'gcc-g++' 'mingw64-x86_64-gcc-g++' 'git' 'curl' 'make' 'cmake' packages, and then:## Installation for Jupyter Notebook (Google Colaboratory)



Try notebook for Google Colaboratory.## Author

Koichi Yasuoka (安岡孝一)