Transformers 文件

GPT-Sw3

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

GPT-Sw3

PyTorch TensorFlow Flax

概述

GPT-Sw3模型最早由Ariel Ekgren、Amaru Cuba Gyllensten、Evangelia Gogoulou、Alice Heiman、Severine Verlinden、Joey Öhman、Fredrik Carlsson和Magnus Sahlgren在《從GPT-SW3中汲取的經驗:構建首個瑞典語大規模生成式語言模型》一文中提出。

自第一篇論文發表以來,作者擴充套件了他們的工作,並利用其名為“北歐語料庫”(The Nordic Pile)的1.2TB新語料庫訓練了新模型。

GPT-Sw3是由AI Sweden與RISE以及WASP WARA for Media and Language合作開發的一系列大型僅解碼器預訓練Transformer語言模型。GPT-Sw3在一個包含3200億詞元的瑞典語、挪威語、丹麥語、冰島語、英語和程式設計程式碼的資料集上進行了訓練。該模型利用NeMo Megatron GPT實現,使用因果語言建模(CLM)目標進行了預訓練。

此模型由AI Sweden Models貢獻。

用法示例

>>> 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")

>>> input_ids = tokenizer("Träd är fina för att", return_tensors="pt")["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 fint

資源

該實現使用了GPT2Model和我們的GPTSw3Tokenizer。有關API參考和示例,請參閱GPT2Model文件

請注意,使用我們的分詞器需要安裝sentencepiece,可以透過pip install transformers[sentencepiece]pip install sentencepiece進行安裝。

GPTSw3Tokenizer

class transformers.GPTSw3Tokenizer

< >

( vocab_file do_lower_case = False remove_space = False keep_accents = False pad_token = None unk_token = None eos_token = None bos_token = None sp_model_kwargs: typing.Optional[dict[str, typing.Any]] = None **kwargs )

引數

  • vocab_file (str) — SentencePiece 檔案(通常副檔名為 .spm),其中包含例項化分詞器所需的詞彙表。
  • do_lower_case (bool, 可選, 預設為 False) — 是否在分詞時將輸入轉換為小寫。
  • remove_space (bool, 可選, 預設為 False) — 是否在分詞時去除文字(刪除字串前後多餘的空格)。
  • keep_accents (bool, 可選, 預設為 False) — 是否在分詞時保留重音符號。
  • pad_token (str, 可選) — 用於填充的詞元,例如在批處理不同長度的序列時使用。如果未提供,將根據模型大小預設為“<pad>”或“<unk>”。
  • unk_token (str, 可選) — 未知詞元。不在詞彙表中的詞元無法轉換為ID,將被設定為此詞元。如果未提供,將預設為“<unk>”。
  • eos_token (str, 可選) — 預訓練期間見到的序列結束詞元。如果未提供,將預設為“<|endoftext|>”。
  • bos_token (str, 可選) — 可用於下游任務的序列開始詞元,在預訓練期間未見過。如果未提供,將根據模型大小預設為“<s>”或“<|endoftext|>”。
  • sp_model_kwargs (dict, 可選) — 將傳遞給 SentencePieceProcessor.__init__() 方法。SentencePiece的Python包裝器可用於設定(其中包括):

    • enable_sampling: 啟用子詞正則化。

    • nbest_size: Unigram的取樣引數。對BPE-Dropout無效。

      • nbest_size = {0,1}: 不執行取樣。
      • nbest_size > 1: 從nbest_size個結果中取樣。
      • nbest_size < 0: 假設nbest_size是無限的,並使用前向過濾和後向取樣演算法從所有假設(格)中取樣。
    • alpha: Unigram取樣的平滑引數,以及BPE-dropout的合併操作的丟棄機率。

  • sp_model (SentencePieceProcessor) — 用於每次轉換(字串、詞元和ID)的 SentencePiece 處理器。
  • whitespaces (set) — 在預處理的空格規範化中被替換的空格字元集。
  • non_printing_characters_re (Pattern) — 用於在預處理中移除非列印字元的已編譯正則表示式。

構建一個GPTSw3分詞器。基於SentencePiece

此分詞器繼承自PreTrainedTokenizer,其中包含了大多數主要方法。使用者應參考此超類以獲取有關這些方法的更多資訊。

用法示例

>>> 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

< >

( save_directory: str filename_prefix: typing.Optional[str] = None )

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.