e06fe8e8c6
Secret Leaks / trufflehog (push) Failing after 1s
Build documentation / build (push) Failing after 1s
Build documentation / build_other_lang (push) Failing after 0s
CodeQL Security Analysis / CodeQL Analysis (push) Failing after 0s
PR CI / pr-ci (push) Failing after 1s
Slow tests on important models (on Push - A10) / Get all modified files (push) Failing after 1s
Slow tests on important models (on Push - A10) / Model CI (push) Has been skipped
Self-hosted runner (benchmark) / Benchmark (aws-g5-4xlarge-cache) (push) Has been cancelled
New model PR merged notification / Notify new model (push) Has been cancelled
Update Transformers metadata / build_and_package (push) Has been cancelled
84 lines
2.7 KiB
Markdown
84 lines
2.7 KiB
Markdown
<!--Copyright 2020 The HuggingFace Team. All rights reserved.
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
|
|
an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations under the License.
|
|
|
|
⚠️ Note that this file is in Markdown but contain specific syntax for our doc-builder (similar to MDX) that may not be
|
|
rendered properly in your Markdown viewer.
|
|
|
|
-->
|
|
*This model was contributed to Hugging Face Transformers on 2020-11-16.*
|
|
|
|
# BertJapanese
|
|
|
|
|
|
## Overview
|
|
|
|
The BERT models trained on Japanese text.
|
|
|
|
There are models with two different tokenization methods:
|
|
|
|
- Tokenize with MeCab and WordPiece. This requires some extra dependencies, [fugashi](https://github.com/polm/fugashi) which is a wrapper around [MeCab](https://taku910.github.io/mecab/).
|
|
- Tokenize into characters.
|
|
|
|
To use *MecabTokenizer*, you should `pip install transformers["ja"]` (or `pip install -e .["ja"]` if you install
|
|
from source) to install dependencies.
|
|
|
|
See [details on cl-tohoku repository](https://github.com/cl-tohoku/bert-japanese).
|
|
|
|
Example of using a model with MeCab and WordPiece tokenization:
|
|
|
|
```python
|
|
import torch
|
|
from transformers import AutoModel, AutoTokenizer
|
|
|
|
bertjapanese = AutoModel.from_pretrained("cl-tohoku/bert-base-japanese", device_map="auto")
|
|
tokenizer = AutoTokenizer.from_pretrained("cl-tohoku/bert-base-japanese")
|
|
|
|
## Input Japanese Text
|
|
line = "吾輩は猫である。"
|
|
|
|
inputs = tokenizer(line, return_tensors="pt").to(model.device)
|
|
|
|
print(tokenizer.decode(inputs["input_ids"][0]))
|
|
[CLS] 吾輩 は 猫 で ある 。 [SEP]
|
|
|
|
outputs = bertjapanese(**inputs)
|
|
```
|
|
|
|
Example of using a model with Character tokenization:
|
|
|
|
```python
|
|
bertjapanese = AutoModel.from_pretrained("cl-tohoku/bert-base-japanese-char", device_map="auto")
|
|
tokenizer = AutoTokenizer.from_pretrained("cl-tohoku/bert-base-japanese-char")
|
|
|
|
## Input Japanese Text
|
|
line = "吾輩は猫である。"
|
|
|
|
inputs = tokenizer(line, return_tensors="pt").to(model.device)
|
|
|
|
print(tokenizer.decode(inputs["input_ids"][0]))
|
|
[CLS] 吾 輩 は 猫 で あ る 。 [SEP]
|
|
|
|
outputs = bertjapanese(**inputs)
|
|
```
|
|
|
|
This model was contributed by [cl-tohoku](https://huggingface.co/cl-tohoku).
|
|
|
|
<Tip>
|
|
|
|
This implementation is the same as BERT, except for tokenization method. Refer to [BERT documentation](bert) for
|
|
API reference information.
|
|
|
|
</Tip>
|
|
|
|
## BertJapaneseTokenizer
|
|
|
|
[[autodoc]] BertJapaneseTokenizer
|