deepset/electra-base-squad2
deepset
Pregunta y respuesta
deepset/electra-base-squad2 es un modelo de lenguaje basado en electra entrenado para el aprendizaje de preguntas y respuestas extractivas (Extractive QA). Utiliza el conjunto de datos SQuAD 2.0 tanto para el entrenamiento como para la evaluación. El modelo está diseñado para proporcionar respuestas precisas a las preguntas basadas en un contexto dado. La evaluación se realizó en un entorno de infraestructura Tesla v100, demostrando una notable precisión en las métricas exactas (exact) y F1.
Como usar
En Transformers
from transformers import AutoModelForQuestionAnswering, AutoTokenizer, pipeline
model_name = "deepset/electra-base-squad2"
# a) Obtener predicciones
nlp = pipeline('question-answering', model=model_name, tokenizer=model_name)
QA_input = {
'question': 'Why is model conversion important?',
'context': 'The option to convert models between FARM and transformers gives freedom to the user and lets people easily switch between frameworks.'
}
res = nlp(QA_input)
# b) Cargar modelo y tokenizer
model = AutoModelForQuestionAnswering.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)
En FARM
from farm.modeling.adaptive_model import AdaptiveModel
from farm.modeling.tokenization import Tokenizer
from farm.infer import Inferencer
model_name = "deepset/electra-base-squad2"
# a) Obtener predicciones
nlp = Inferencer.load(model_name, task_type="question_answering")
QA_input = [{"questions": ["Why is model conversion important?"],
"text": "The option to convert models between FARM and transformers gives freedom to the user and lets people easily switch between frameworks."}]
res = nlp.inference_from_dicts(dicts=QA_input)
# b) Cargar modelo y tokenizer
model = AdaptiveModel.convert_from_transformers(model_name, device="cpu", task_type="question_answering")
tokenizer = Tokenizer.load(model_name)
En haystack
# Para hacer QA a gran escala (es decir, muchos documentos en lugar de un solo párrafo), también puedes cargar el modelo en haystack:
reader = FARMReader(model_name_or_path="deepset/electra-base-squad2")
# o
reader = TransformersReader(model="deepset/electra-base-squad2",tokenizer="deepset/electra-base-squad2")
Funcionalidades
- Modelo de lenguaje: electra-base
- Idioma: Inglés
- Tarea de aprendizaje: Extractive QA
- Datos de entrenamiento: SQuAD 2.0
- Datos de evaluación: SQuAD 2.0
- Parámetros del modelo: 109M
- Tipo de tensor: F32
- Tamaño del modelo: 109M params
Casos de uso
- Responder preguntas extractivas basadas en un contexto dado.
- Aplicaciones en sistemas de preguntas y respuestas a gran escala.