Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| from transformers import pipeline, AutoTokenizer | |
| import time | |
| st.title("Ask Licorn 🦄") | |
| MODELS = { | |
| "DistilBERT": "aharkane/squad-distilbert-v2", | |
| "ALBERT": "aharkane/squad-albert-v2", | |
| "MobileBERT": "aharkane/squad-mobilebert-v2", | |
| } | |
| def load_model(model_id): | |
| tokenizer = AutoTokenizer.from_pretrained(model_id) | |
| if "distilbert" in model_id.lower(): | |
| tokenizer.model_input_names = ["input_ids", "attention_mask"] | |
| return pipeline("question-answering", model=model_id, tokenizer=tokenizer) | |
| model_choice = st.selectbox("Choisir un modèle", list(MODELS.keys())) | |
| context = st.text_area("Contexte", height=150) | |
| question = st.text_input("Question") | |
| if st.button("Répondre"): | |
| qa = load_model(MODELS[model_choice]) | |
| start = time.time() | |
| result = qa(question=question, context=context) | |
| duration = time.time() - start | |
| st.success(f"**{result['answer']}**") | |
| st.write(f"Confiance : {result['score']:.2%}") | |
| st.write(f"Temps : {duration*1000:.0f} ms") |