mdeberta-v3-base-squad2
sjrhuschlee
Pregunta y respuesta
Este es el modelo mdeberta-v3-base, ajustado utilizando el conjunto de datos SQuAD2.0. Ha sido entrenado en pares de preguntas y respuestas, incluyendo preguntas sin respuesta, para la tarea de Extracción de Respuestas en Preguntas.
Como usar
import torch
from transformers import(
AutoModelForQuestionAnswering,
AutoTokenizer,
pipeline
)
model_name = "sjrhuschlee/mdeberta-v3-base-squad2"
#a) Usando pipelines
nlp = pipeline('question-answering', model=model_name, tokenizer=model_name)
qa_input = {
'question': '¿Dónde vivo?',
'context': 'Mi nombre es Sarah y vivo en Londres'
}
res = nlp(qa_input)
# {'score': 0.984, 'start': 30, 'end': 37, 'answer': 'Londres'}
#b) Cargar modelo y tokenizer
model = AutoModelForQuestionAnswering.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)
question = '¿Dónde vivo?'
context = 'Mi nombre es Sarah y vivo en Londres'
encoding = tokenizer(question, context, return_tensors="pt")
start_scores, end_scores = model(
encoding["input_ids"],
attention_mask = encoding["attention_mask"],
return_dict = False
)
all_tokens = tokenizer.convert_ids_to_tokens(input_ids[0].tolist())
answer_tokens = all_tokens[torch.argmax(start_scores):torch.argmax(end_scores) + 1]
answer = tokenizer.decode(tokenizer.convert_tokens_to_ids(answer_tokens))
# 'Londres'
Funcionalidades
- Ajuste fino utilizando SQuAD 2.0
- Soporte para preguntas sin respuesta
- Diseñado para la tarea de Extracción de Respuestas en Preguntas
Casos de uso
- Respuestas extractivas en preguntas usando conjuntos de datos en inglés
- Respuestas a preguntas específicas en un contexto dado
- Manejo de preguntas sin respuesta