Transformers documentation

GPT-Sw3

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

이 모델은 2022-12-12에 Hugging Face Transformers에 기여되었습니다.

GPT-Sw3

개요

GPT-Sw3 모델은 Ariel Ekgren, Amaru Cuba Gyllensten, Evangelia Gogoulou, Alice Heiman, Severine Verlinden, Joey Öhman, Fredrik Carlsson, Magnus Sahlgren이 작성한 Lessons Learned from GPT-SW3: Building the First Large-Scale Generative Language Model for Swedish에서 처음 제안되었습니다.

첫 번째 논문 이후로 저자들은 작업을 확장하여, The Nordic Pile이라는 이름의 새로운 1.2TB 코퍼스로 새로운 모델을 학습시켰습니다.

GPT-Sw3는 AI Sweden이 RISE 및 WASP WARA for Media and Language와 협력하여 개발한 대규모 decoder-only 사전 학습 transformer 언어 모델 모음입니다. GPT-Sw3는 스웨덴어, 노르웨이어, 덴마크어, 아이슬란드어, 영어 및 프로그래밍 코드를 포함하는 320B 토큰의 데이터셋으로 학습되었습니다. 해당 모델은 NeMo Megatron GPT 구현을 활용하여 causal language modeling(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", 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 fint

리소스

구현에는 GPT2Model과 GPTSw3Tokenizer가 함께 사용됩니다. API 참고 사항 및 예제는 GPT2Model 문서를 참조하세요.

토크나이저를 사용하려면 sentencepiece가 필요하며, pip install transformers[sentencepiece] 또는 pip install sentencepiece로 설치할 수 있습니다.

GPTSw3Tokenizer

클래스 transformers.GPTSw3Tokenizer

< >

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

매개변수

  • vocab_file (str) — 토크나이저를 인스턴스화하는 데 필요한 어휘를 포함하는 SentencePiece 파일(일반적으로 .spm 확장자를 가짐).
  • do_lower_case (bool, 선택 사항, 기본값 False) — 토큰화할 때 입력을 소문자로 변환할지 여부.
  • remove_space (bool, 선택 사항, 기본값 False) — 토큰화 시 텍스트를 제거할지 여부(문자열 앞뒤의 불필요한 공백을 제거).
  • keep_accents (bool, 선택, 기본값 False) — 토큰화할 때 발음 기호를 유지할지 여부입니다.
  • pad_token (str, 선택 사항) — 패딩에 사용되는 토큰입니다. 예를 들어 길이가 다른 시퀀스를 배치할 때 사용됩니다. 지정하지 않으면 모델 크기에 따라 ’’ 또는 ’’가 기본값으로 사용됩니다.
  • unk_token (str, 선택) — 미지의 토큰입니다. 어휘에 없는 토큰은 ID로 변환할 수 없으므로 이 토큰으로 설정됩니다. 지정하지 않으면 기본값은 ’‘.입니다.
  • eos_token (str, 선택) — 사전 학습 과정에서 사용되는 시퀀스 종료 토큰입니다. 제공되지 않으면 기본값으로 ’<|endoftext|>’가 사용됩니다.
  • bos_token (str, 선택 사항) — 하위 작업에 사용할 수 있는 시퀀스 시작 토큰으로, 사전 학습 과정에서 확인되지 않았습니다. 제공되지 않으면 모델 크기에 따라 기본값이 ’’ 또는 ’<|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가 무한하다고 가정하고, forward-filtering-and-backward-sampling 알고리즘을 사용하여 모든 가설(lattice)에서 샘플링합니다.
    • alpha: unigram 샘플링의 smoothing parameter 및 BPE-dropout의 merge 작업 dropout 확률

  • sp_model (SentencePieceProcessor) — 모든 변환(문자열, 토큰 및 ID)에 사용되는 SentencePiece 프로세서입니다.
  • whitespaces (set) — 전처리 단계의 공백 정규화에서 치환되는 공백 문자입니다.
  • non_printing_characters_re (Pattern) — 전처리에서 비인쇄 가능 문자를 제거하기 위한 컴파일된 정규식입니다.

SentencePiece 기반의 GPTSw3 토크나이저를 구성합니다.

이 토크나이저는 대부분의 주요 메서드를 포함하는 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: strfilename_prefix: str | None = None ) → tuple(str)

매개변수

  • save_directory (str) — 어휘를 저장할 디렉터리입니다.
  • filename_prefix (str, 선택 사항) — 저장할 파일 이름에 추가할 선택적 접두사입니다.

반환값

tuple(str)

저장된 파일의 경로입니다.

…

Update on GitHub