🚀 インドネシア語BERT2BERT要約モデル
BERT-baseとGPT2-smallを使用して、インドネシア語の文章要約用に微調整されたEncoderDecoderモデルです。このモデルは、インドネシア語の文章を効果的に要約することができます。
🚀 クイックスタート
このモデルは、BERT-baseとGPT2-smallをベースに、インドネシア語の文章要約に特化して微調整されています。以下の手順でモデルを使用することができます。
✨ 主な機能
- BERT-baseとGPT2-smallを組み合わせたEncoderDecoderモデルを使用。
- インドネシア語の文章要約に特化して微調整されている。
📦 インストール
このモデルを使用するには、transformers
ライブラリが必要です。以下のコードでモデルをロードすることができます。
from transformers import BertTokenizer, EncoderDecoderModel
tokenizer = BertTokenizer.from_pretrained("cahya/bert2gpt-indonesian-summarization")
tokenizer.bos_token = tokenizer.cls_token
tokenizer.eos_token = tokenizer.sep_token
model = EncoderDecoderModel.from_pretrained("cahya/bert2gpt-indonesian-summarization")
💻 使用例
基本的な使用法
from transformers import BertTokenizer, EncoderDecoderModel
tokenizer = BertTokenizer.from_pretrained("cahya/bert2gpt-indonesian-summarization")
tokenizer.bos_token = tokenizer.cls_token
tokenizer.eos_token = tokenizer.sep_token
model = EncoderDecoderModel.from_pretrained("cahya/bert2gpt-indonesian-summarization")
ARTICLE_TO_SUMMARIZE = ""
input_ids = tokenizer.encode(ARTICLE_TO_SUMMARIZE, return_tensors='pt')
summary_ids = model.generate(input_ids,
min_length=20,
max_length=80,
num_beams=10,
repetition_penalty=2.5,
length_penalty=1.0,
early_stopping=True,
no_repeat_ngram_size=2,
use_cache=True,
do_sample = True,
temperature = 0.8,
top_k = 50,
top_p = 0.95)
summary_text = tokenizer.decode(summary_ids[0], skip_special_tokens=True)
print(summary_text)
高度な使用法
上記のコードは基本的な使用例です。パラメータを調整することで、要約の品質をさらに向上させることができます。
from transformers import BertTokenizer, EncoderDecoderModel
tokenizer = BertTokenizer.from_pretrained("cahya/bert2gpt-indonesian-summarization")
tokenizer.bos_token = tokenizer.cls_token
tokenizer.eos_token = tokenizer.sep_token
model = EncoderDecoderModel.from_pretrained("cahya/bert2gpt-indonesian-summarization")
ARTICLE_TO_SUMMARIZE = ""
input_ids = tokenizer.encode(ARTICLE_TO_SUMMARIZE, return_tensors='pt')
summary_ids = model.generate(input_ids,
min_length=20,
max_length=80,
num_beams=10,
repetition_penalty=2.5,
length_penalty=1.0,
early_stopping=True,
no_repeat_ngram_size=2,
use_cache=True,
do_sample = True,
temperature = 0.8,
top_k = 50,
top_p = 0.95)
summary_text = tokenizer.decode(summary_ids[0], skip_special_tokens=True)
print(summary_text)
📚 ドキュメント
微調整コーパス
bert2gpt-indonesian-summarization
モデルは、cahya氏によるcahya/bert-base-indonesian-1.5G
とcahya/gpt2-small-indonesian-522M
をベースに、id_liputan6データセットを使用して微調整されています。
📄 ライセンス
このプロジェクトは、Apache-2.0ライセンスの下で公開されています。