BART-Squad2
primer-ai
Pregunta y respuesta
BART para responder preguntas extractivas (basadas en fragmentos), entrenado en Squad 2.0. Puntuación F1 de 87.4.
Como usar
Aquí hay una manera rápida de hacer que la respuesta a preguntas funcione localmente:
from transformers import AutoTokenizer, AutoModelForQuestionAnswering
# Cargar el tokenizador y el modelo
tokenizador = AutoTokenizer.from_pretrained('Primer/bart-squad2')
modelo = AutoModelForQuestionAnswering.from_pretrained('Primer/bart-squad2')
modelo.to('cuda')
modelo.eval()
# Definir función para responder preguntas
def answer(question, text):
seq = '' + question + ' ' + text + ' '
tokens = tokenizador.encode_plus(seq, return_tensors='pt', padding='max_length', max_length=1024)
input_ids = tokens['input_ids'].to('cuda')
attention_mask = tokens['attention_mask'].to('cuda')
start, end, _ = modelo(input_ids, attention_mask=attention_mask)
start_idx = int(start.argmax().int())
end_idx = int(end.argmax().int())
print(tokenizador.decode(input_ids[0, start_idx:end_idx]).strip())
# Ejemplo de uso
question = 'Where does Tom live?'
contexto = 'Tom is an engineer in San Francisco.'
answer(question, contexto)
# San Francisco
Funcionalidades
- Transformers
- PyTorch
- BART
- Question Answering
- Endpoints compatible
- Región: US
Casos de uso
- Responder preguntas específicas basadas en el contexto dado.
- Buscar información precisa dentro de textos largos.
- Aplicaciones en servicio al cliente automatizado.