import streamlit as st from transformers import pipeline unmasker = pipeline('fill-mask', model='dsfsi/zabantu-ven-120m') def fill_mask(sentences): results = {} for sentence in sentences: unmasked = unmasker(sentence) results[sentence] = unmasked return results def replace_mask(sentence, predicted_word): return sentence.replace("", predicted_word) st.title("Fill Mask | Zabantu-nso-ven-120m") st.write("This app predicts the missing word in a sentence using a Zabantu-nso-ven-120m model.") sample_sentences = ["Rabulasi wa u khou bvelela nga u lima,", "Vhana vhane vha kha ḓi bva u bebwa vha kha khombo ya u nga Listeriosis"] text_input = st.text_area("Enter sentences with token (one per line):", "\n".join(sample_sentences)) input_sentences = text_input.split(",") if st.button("Submit"): result = fill_mask(input_sentences) if result: for sentence, predictions in result.items(): st.write(f"**Original sentence**: {sentence}") for prediction in predictions: predicted_word = prediction['token_str'] score = prediction['score'] * 100 full_sentence = replace_mask(sentence, predicted_word) st.write(f"Predicted word: {predicted_word} - Score: {score:.2f}%") st.write(f"Full sentence: {full_sentence}") st.write("=" * 80) css = """ """ st.markdown(css, unsafe_allow_html=True)