Transformers documentation
BARThez
Este modelo se publicó en HF papers el 23-10-2020 y se contribuyó a Hugging Face Transformers el 27-11-2020.
BARThez
BARThez es un modelo BART diseñado para tareas de procesamiento del lenguaje francés. A diferencia de los modelos BERT franceses existentes, BARThez incluye un codificador-decodificador preentrenado, lo que le permite generar texto. Este modelo también está disponible como una variante multilingüe, mBARThez, al continuar el preentrenamiento de BART multilingüe en un corpus francés.
Puedes encontrar todos los puntos de control originales de BARThez en la colección BARThez.
Este modelo fue aportado por moussakam. Consulta la documentación de BART para más ejemplos de uso.
El siguiente ejemplo demuestra cómo predecir el token <mask> con Pipeline, AutoModel y desde la línea de comandos.
from transformers import pipeline
pipeline = pipeline(
task="fill-mask",
model="moussaKam/barthez",
device=0
)
pipeline("Les plantes produisent <mask> grâce à un processus appelé photosynthèse.")import torch
from transformers import AutoModelForMaskedLM, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained(
"moussaKam/barthez",
)
model = AutoModelForMaskedLM.from_pretrained(
"moussaKam/barthez",
device_map="auto",
)
inputs = tokenizer("Les plantes produisent <mask> grâce à un processus appelé photosynthèse.", return_tensors="pt").to(model.device)
with torch.no_grad():
outputs = model(**inputs)
predictions = outputs.logits
masked_index = torch.where(inputs['input_ids'] == tokenizer.mask_token_id)[1]
predicted_token_id = predictions[0, masked_index].argmax(dim=-1)
predicted_token = tokenizer.decode(predicted_token_id)
print(f"The predicted token is: {predicted_token}")BarthezTokenizer
clase transformers.BarthezTokenizer
< source >( vocab: str | dict | list | None = Nonebos_token = '<s>'eos_token = '</s>'sep_token = '</s>'cls_token = '<s>'unk_token = '<unk>'pad_token = '<pad>'mask_token = '<mask>'add_prefix_space = True**kwargs )
Parámetros
- bos_token (
str, opcional, por defecto"<s>") — El token de inicio de secuencia que se utilizó durante el preentrenamiento. Puede usarse como token de clasificador de secuencias. Al construir una secuencia con tokens especiales, este no es el token que se utiliza para el inicio de la secuencia. El token que se utiliza es cls_token.Al construir una secuencia con tokens especiales, este no es el token que se utiliza para el inicio de la secuencia. El token que se utiliza es
cls_token. - eos_token (
str, opcional, por defecto es"</s>") — El token de fin de secuencia. Al construir una secuencia con tokens especiales, este no es el token que se utiliza para el fin de la secuencia. El token que se utiliza es sep_token.Al construir una secuencia con tokens especiales, este no es el token que se utiliza para el final de la secuencia. El token que se utiliza es
sep_token. - sep_token (
str, opcional, valor predeterminado"</s>") — El token separador, que se utiliza al construir una secuencia a partir de varias secuencias, por ejemplo, dos secuencias para la clasificación de secuencias o un texto y una pregunta para la respuesta a preguntas. También se utiliza como el último token de una secuencia construida con tokens especiales. - cls_token (
str, opcional, valor predeterminado"<s>") — El token clasificador que se utiliza al realizar clasificación de secuencias (clasificación de la secuencia completa en lugar de clasificación por token). Es el primer token de la secuencia cuando se construye con tokens especiales. - unk_token (
str, opcional, valor predeterminado"<unk>") — El token desconocido. Un token que no está en el vocabulario no se puede convertir en un ID y se establece como este token en su lugar. - pad_token (
str, opcional, valor predeterminado"<pad>") — El token utilizado para el relleno, por ejemplo, al agrupar secuencias de diferentes longitudes. - mask_token (
str, opcional, valor predeterminado"<mask>") — El token utilizado para enmascarar valores. Este es el token que se emplea al entrenar este modelo con modelado de lenguaje enmascarado. Es el token que el modelo intentará predecir. - vocab_file (
str, opcional) — Archivo de SentencePiece (generalmente tiene la extensión .spm) que contiene el vocabulario necesario para instanciar un tokenizador. - vocab (
str,dictolist, opcional) — Diccionario de vocabulario personalizado. Si no se proporciona, el vocabulario se carga desde vocab_file. - add_prefix_space (
bool, opcional, valor predeterminadoTrue) — Indica si se debe añadir un espacio inicial a la entrada. Esto permite tratar la palabra inicial como cualquier otra palabra.
Adaptado de CamembertTokenizer y BartTokenizer. Construye un tokenizador BARThez “fast”. Basado en SentencePiece.
Este tokenizador hereda de PreTrainedTokenizerFast, que contiene la mayoría de los métodos principales. Los usuarios deben consultar esta superclase para obtener más información sobre dichos métodos.