sjrhuschlee/flan-t5-large-squad2
sjrhuschlee
Pregunta y respuesta
Este es el modelo flan-t5-large, afinado usando 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 Preguntas y Respuestas. Este modelo fue entrenado utilizando LoRA disponible a través de la biblioteca PEFT.
Como usar
Usando Transformers
import torch
from transformers import(
AutoModelForQuestionAnswering,
AutoTokenizer,
pipeline
)
model_name = "sjrhuschlee/flan-t5-large-squad2"
# a) Usando pipelines
nlp = pipeline(
'question-answering',
model=model_name,
tokenizer=model_name,
# trust_remote_code=True, # No usar si versión transformers>=4.31.0
)
qa_input = {
'question': f'{nlp.tokenizer.cls_token}Where do I live?', # '¿Dónde vivo?'
'context': 'My name is Sarah and I live in London'
}
res = nlp(qa_input)
# {'score': 0.984, 'start': 30, 'end': 37, 'answer': ' London'}
# b) Cargar modelo y tokenizador
model = AutoModelForQuestionAnswering.from_pretrained(
model_name,
# trust_remote_code=True # No usar si versión transformers>=4.31.0
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
question = f'{tokenizer.cls_token}Where do I live?' # '¿Dónde vivo?'
context = 'My name is Sarah and I live in London'
encoding = tokenizer(question, context, return_tensors="pt")
output = model(
encoding["input_ids"],
attention_mask=encoding["attention_mask"]
)
all_tokens = tokenizer.convert_ids_to_tokens(encoding["input_ids"][0].tolist())
answer_tokens = all_tokens[torch.argmax(output["start_logits"]):torch.argmax(output["end_logits"]) + 1]
answer = tokenizer.decode(tokenizer.convert_tokens_to_ids(answer_tokens))
# 'London'
Funcionalidades
- Modelo de lenguaje: flan-t5-large
- Idioma: Inglés
- Tarea secundaria: Preguntas y Respuestas Extractivas
- Datos de entrenamiento: SQuAD 2.0
- Datos de evaluación: SQuAD 2.0
- Infraestructura: 1x NVIDIA 3070
Casos de uso
- Responder preguntas extractivas basadas en contexto de texto
- Implementación de sistemas de respuesta automatizada
- Mejorar chatbots con comprensión de preguntas y respuestas