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