valhalla/bart-large-finetuned-squadv1
Este es un modelo bart-large afinado en el conjunto de datos SQuADv1 para la tarea de respuesta a preguntas. BART fue propuesto en el artículo BART: Denoising Sequence-to-Sequence Pre-training for Natural Language Generation, Translation, and Comprehension. BART es un modelo de seq2seq destinado tanto a tareas de generación de lenguaje natural (NLG) como de comprensión de lenguaje natural (NLU). Para usar BART en tareas de respuesta a preguntas, alimentamos el documento completo en el codificador y el decodificador, y usamos el estado oculto superior del decodificador como representación para cada palabra. Esta representación se usa para clasificar el token. Como se menciona en el artículo, bart-large logra resultados comparables a ROBERTa en SQuAD. Otra característica notable de BART es que puede manejar secuencias de hasta 1024 tokens.
Como usar
from transformers import BartTokenizer, BartForQuestionAnswering
import torch
tokenizer = BartTokenizer.from_pretrained('valhalla/bart-large-finetuned-squadv1')
model = BartForQuestionAnswering.from_pretrained('valhalla/bart-large-finetuned-squadv1')
question, text = "Who was Jim Henson?", "Jim Henson was a nice puppet"
encoding = tokenizer(question, text, return_tensors='pt')
input_ids = encoding['input_ids']
attention_mask = encoding['attention_mask']
start_scores, end_scores = model(input_ids, attention_mask=attention_mask, output_attentions=False)[:2]
all_tokens = tokenizer.convert_ids_to_tokens(input_ids[0])
answer = ' '.join(all_tokens[torch.argmax(start_scores) : torch.argmax(end_scores)+1])
answer = tokenizer.convert_tokens_to_ids(answer.split())
answer = tokenizer.decode(answer)
#answer => 'a nice puppet'
Funcionalidades
- 12 capas de codificador
- 12 capas de decodificador
- Tamaño oculto de 4096
- 16 cabezas de atención
- Tamaño en disco de 1.63GB
Casos de uso
- Responde a preguntas basadas en el contexto proporcionado.
- Asistencia en sistemas de atención al cliente proporcionando respuestas rápidas y precisas.
- Mejora de chatbots con capacidades de comprensión del lenguaje natural.