Transformers documentation
GPT-Sw3
Ce modèle a été contribué à Hugging Face Transformers le 2022-12-12.
GPT-Sw3
Aperçu
Le modèle GPT-Sw3 a été initialement proposé dans Lessons Learned from GPT-SW3: Building the First Large-Scale Generative Language Model for Swedish par Ariel Ekgren, Amaru Cuba Gyllensten, Evangelia Gogoulou, Alice Heiman, Severine Verlinden, Joey Öhman, Fredrik Carlsson, Magnus Sahlgren.
Depuis cet article initial, les auteurs ont étendu leur travail et ont entraîné de nouveaux modèles sur leurs nouveaux corpus de 1,2 To nommés The Nordic Pile.
GPT-Sw3 est une collection de grands modèles de langage transformers pré-entraînés, à décodeur uniquement, développés par AI Sweden en collaboration avec RISE et le WASP WARA for Media and Language. GPT-Sw3 a été entraîné sur un jeu de données contenant 320 milliards de jetons en suédois, norvégien, danois, islandais, anglais et en code de programmation. Le modèle a été pré-entraîné à l'aide d'un objectif de modélisation de langage causale (CLM) en utilisant l'implémentation NeMo Megatron GPT.
Ce modèle a été contribué par AI Sweden Models.
Exemple d'utilisation
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 fintRessources
- Guide de la tâche de classification de texte
- Guide de la tâche de classification de jetons
- Guide de la tâche de modélisation de langage causale
L’implémentation utilise le
GPT2Modelcouplé à notreGPTSw3Tokenizer. Consultez la documentation de GPT2Model pour la référence de l’API et des exemples.Notez que sentencepiece est requis pour utiliser notre tokenizer et peut être installé avec
pip install transformers[sentencepiece]oupip install sentencepiece
GPTSw3Tokenizer
classe 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 )
Paramètres
- vocab_file (
str) — fichier SentencePiece (généralement avec l’extension .spm) qui contient le vocabulaire nécessaire pour instancier un tokeniseur. - do_lower_case (
bool, facultatif, valeur par défautFalse) — Indique s'il faut mettre l'entrée en minuscules lors de la tokenisation. - remove_space (
bool, facultatif, par défautFalse) — Indique s'il faut ou non retirer les espaces du texte lors de la tokenisation (suppression des espaces superflus avant et après la chaîne). - keep_accents (
bool, facultatif, par défautFalse) — Indique s'il faut conserver les accents lors de la tokenisation. - pad_token (
str, facultatif) — Le jeton utilisé pour le bourrage, par exemple lors du regroupement de séquences de longueurs différentes. S'il n'est pas fourni, la valeur par défaut sera ’’ ou ’ ’ en fonction de la taille du modèle. - unk_token (
str, facultatif) — Le jeton inconnu. Un jeton qui n’est pas dans le vocabulaire ne peut pas être converti en identifiant et est remplacé par ce jeton. S’il n’est pas fourni, la valeur par défaut est ’‘. - eos_token (
str, facultatif) — Le jeton de fin de séquence observé lors de la préformation. S’il n’est pas fourni, la valeur par défaut est ’<|endoftext|>’ - bos_token (
str, facultatif) — Le jeton de début de séquence qui peut être utilisé pour les tâches en aval, mais qui n’a pas été vu lors de la préformation. S’il n’est pas fourni, la valeur par défaut sera ’’ ou ’<|endoftext|>’, selon la taille du modèle. - sp_model_kwargs (
dict, facultatif) — Sera transmis à la méthodeSentencePieceProcessor.__init__(). Le wrapper Python de SentencePiece peut être utilisé, entre autres, pour définir :-
enable_sampling: Active la régularisation des sous-mots. -
nbest_size: Paramètres d'échantillonnage pour les unigrammes. Invalide pour BPE-Dropout.nbest_size = {0,1}: Aucun échantillonnage n'est effectué.nbest_size > 1: échantillonne parmi les résultats de nbest_size.nbest_size < 0: suppose que nbest_size est infini et échantillonne à partir de toutes les hypothèses (lattice) en utilisant l'algorithme de filtrage avant et d'échantillonnage arrière.
-
alpha: Paramètre de lissage pour l'échantillonnage des unigrammes et probabilité de suppression pour les opérations de fusion dans le cas du BPE-dropout.
-
- sp_model (
SentencePieceProcessor) — Le processeur SentencePiece utilisé pour chaque conversion (chaîne, jetons et identifiants). - whitespaces (
set) — Les espaces blancs qui sont remplacés lors de la normalisation des espaces blancs dans la prétraitement. - non_printing_characters_re (
Pattern) — Expression régulière compilée pour supprimer les caractères non imprimables lors de la prétraitement.
Construit un tokenizer GPTSw3. Basé sur SentencePiece.
Ce tokenizer hérite de PreTrainedTokenizer, qui contient la plupart des méthodes principales. Les utilisateurs doivent se référer à cette superclasse pour plus d'informations sur ces méthodes.
Exemple d'utilisation :
>>> 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)
Enregistrez le vocabulaire sentencepiece (copie du fichier d'origine) dans un répertoire.