import streamlit as st from transformers import pipeline import torch import matplotlib.pyplot as plt #pipe = pipeline(model="RuudVelo/dutch_news_classifier_bert_finetuned") #text = st.text_area('Please type/copy/paste the Dutch article') #labels = ['Binnenland' 'Buitenland' 'Cultuur & Media' 'Economie' 'Koningshuis' # 'Opmerkelijk' 'Politiek' 'Regionaal nieuws' 'Tech'] #if text: # out = pipe(text) # st.json(out) # load tokenizer and model, create trainer #model_name = "RuudVelo/dutch_news_classifier_bert_finetuned" #tokenizer = AutoTokenizer.from_pretrained(model_name) #model = AutoModelForSequenceClassification.from_pretrained(model_name) #trainer = Trainer(model=model) #print(filename, type(filename)) #print(filename.name) from transformers import BertForSequenceClassification, BertTokenizer model = BertForSequenceClassification.from_pretrained("RuudVelo/dutch_news_classifier_bert_finetuned") #from transformers import BertTokenizer tokenizer = BertTokenizer.from_pretrained("RuudVelo/dutch_news_classifier_bert_finetuned") #text = ["this is one sentence", "this is another sentence"] text = st.text_area('Please type/copy/paste the Dutch article') if text: encoding = tokenizer(text, return_tensors="pt") outputs = model(**encoding) predictions = outputs.logits.argmax(-1) probabilities = torch.nn.functional.softmax(outputs.logits, dim=-1) fig = plt.figure() ax = fig.add_axes([0,0,1,1]) langs = ['Binnenland', 'Buitenland' ,'Cultuur & Media' ,'Economie' ,'Koningshuis', 'Opmerkelijk' ,'Politiek', 'Regionaal nieuws', 'Tech'] students = probabilities[0].cpu().detach().numpy() ax.barh(langs,students) st.pyplot(fig) #plt.show() #out = pipe(text) #st.json(predictions) #encoding = tokenizer(text, return_tensors="pt") #import numpy as np #arr = np.random.normal(1, 1, size=100) #fig, ax = plt.subplots() #ax.hist(arr, bins=20) #st.pyplot(fig) # forward pass #outputs = model(**encoding) #predictions = outputs.logits.argmax(-1)