Transformers documentation
GPT-Sw3
Model ini disumbangkan ke Hugging Face Transformers pada 2022-12-12.
GPT-Sw3
Ikhtisar
Model GPT-Sw3 pertama kali diusulkan dalam Lessons Learned from GPT-SW3: Building the First Large-Scale Generative Language Model for Swedish oleh Ariel Ekgren, Amaru Cuba Gyllensten, Evangelia Gogoulou, Alice Heiman, Severine Verlinden, Joey Öhman, Fredrik Carlsson, Magnus Sahlgren.
Sejak makalah pertama tersebut, para penulis telah memperluas pekerjaan mereka dan melatih model-model baru pada korpus 1,2 TB mereka yang baru bernama The Nordic Pile.
GPT-Sw3 adalah kumpulan model bahasa transformer pra-terlatih besar yang hanya menggunakan decoder, yang dikembangkan oleh AI Sweden dalam kolaborasi dengan RISE dan WASP WARA untuk Media dan Bahasa. GPT-Sw3 telah dilatih pada dataset yang berisi 320B token dalam bahasa Swedia, Norwegia, Denmark, Islandia, Inggris, dan kode pemrograman. Model ini dipra-latih menggunakan tujuan pemodelan bahasa kausal (CLM) dengan memanfaatkan implementasi NeMo Megatron GPT.
Model ini disumbangkan oleh AI Sweden Models.
Contoh penggunaan
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("AI-Sweden-Models/gpt-sw3-356m")
model = AutoModelForCausalLM.from_pretrained("AI-Sweden-Models/gpt-sw3-356m", device_map="auto")
input_ids = tokenizer("Träd är fina för att", return_tensors="pt").to(model.device)["input_ids"]
generated_token_ids = model.generate(inputs=input_ids, max_new_tokens=10, do_sample=True)[0]
print(tokenizer.decode(generated_token_ids))
Träd är fina för att de är färgstarka. Men ibland är det fintSumber daya
- Panduan tugas klasifikasi teks
- Panduan tugas klasifikasi token
- Panduan tugas pemodelan bahasa kausal
Implementasi ini menggunakan
GPT2Modelyang dikombinasikan denganGPTSw3Tokenizerkami. Lihat dokumentasi GPT2Model untuk referensi API dan contoh.Perhatikan bahwa sentencepiece diperlukan untuk menggunakan tokenizer kami dan dapat diinstal dengan
pip install transformers[sentencepiece]ataupip install sentencepiece
GPTSw3Tokenizer
kelas transformers.GPTSw3Tokenizer
< source >( vocab_filedo_lower_case = Falseremove_space = Falsekeep_accents = Falsepad_token = Noneunk_token = Noneeos_token = Nonebos_token = Nonesp_model_kwargs: dict[str, typing.Any] | None = None**kwargs )
Parameter
- vocab_file (
str) — file SentencePiece (umumnya berekstensi .spm) yang mengandung kosakata yang diperlukan untuk menginstansiasi tokenizer. - do_lower_case (
bool, opsional, defaultFalse) — Apakah akan mengubah input menjadi huruf kecil saat melakukan tokenisasi. - remove_space (
bool, opsional, defaultFalse) — Apakah akan menghapus teks saat melakukan tokenisasi (menghapus spasi berlebih sebelum dan sesudah string). - keep_accents (
bool, opsional, defaultnyaFalse) — Apakah akan mempertahankan aksen saat melakukan tokenisasi. - pad_token (
str, opsional) — Token yang digunakan untuk padding, misalnya saat mem-batching urutan dengan panjang berbeda. Jika tidak disediakan, akan default ke ’’ atau ’ ’ tergantung pada ukuran model. - unk_token (
str, opsional) — Token yang tidak diketahui. Token yang tidak ada dalam kosakata tidak dapat dikonversi menjadi ID dan akan diset sebagai token ini. Jika tidak disediakan, akan menggunakan nilai default ’‘. - eos_token (
str, opsional) — Token akhir urutan yang terlihat selama pra-pelatihan. Jika tidak disediakan, akan secara default menjadi ’<|endoftext|>’ - bos_token (
str, opsional) — Token awal urutan yang dapat digunakan untuk tugas turunan, yang tidak pernah dilihat selama pra-pelatihan. Jika tidak disediakan, akan secara default menjadi ’’ atau ’<|endoftext|>’, tergantung pada ukuran model. - sp_model_kwargs (
dict, opsional) — Akan diteruskan keSentencePieceProcessor.__init__()metode. Python wrapper untuk SentencePiece dapat digunakan, di antara hal-hal lain, untuk mengatur:-
enable_sampling: Aktifkan regularisasi subword. -
nbest_size: Parameter sampling untuk unigram. Tidak valid untuk BPE-Dropout.nbest_size = {0,1}: Tidak ada sampling yang dilakukan.nbest_size > 1: mengambil sampel dari hasil nbest_size.nbest_size < 0: diasumsikan bahwa nbest_size tak hingga dan mengambil sampel dari semua hipotesis (lattice) menggunakan algoritma forward-filtering-and-backward-sampling.
-
alpha: Parameter penghalusan untuk pengambilan sampel unigram, dan probabilitas dropout untuk operasi penggabungan pada BPE-dropout.
-
- sp_model (
SentencePieceProcessor) — Pemroses SentencePiece yang digunakan untuk setiap konversi (string, token, dan ID). - whitespaces (
set) — Spasi yang diganti dalam normalisasi spasi saat pra-pemrosesan. - non_printing_characters_re (
Pattern) — Ekspresi reguler yang dikompilasi untuk menghapus karakter non-cetak dalam pra-pemrosesan.
Konstruksi tokenizer GPTSw3. Berbasis pada SentencePiece.
Tokenizer ini mewarisi dari PreTrainedTokenizer yang berisi sebagian besar metode utama. Pengguna harus merujuk ke superclass ini untuk informasi lebih lanjut mengenai metode-metode tersebut.
Contoh penggunaan:
>>> from transformers import GPTSw3Tokenizer
>>> tokenizer = GPTSw3Tokenizer.from_pretrained("AI-Sweden-Models/gpt-sw3-126m")
>>> tokenizer("Svenska är kul!")["input_ids"]
[1814, 377, 3617, 63504]save_vocabulary
< source >( save_directory: strfilename_prefix: str | None = None ) → tuple(str)
Simpan kosakata sentencepiece (salin file asli) ke sebuah direktori.