bharat-raghunathan's picture
Update app v0.5
5b14b96
raw
history blame
1.06 kB
import gradio as gr
import numpy as np
from transformers import AutoModelForSequenceClassification, AutoTokenizer
def lyrics_categories(input_text):
spotify_model = "spotify/autonlp-huggingface-demo-song-lyrics-18923587"
model = AutoModelForSequenceClassification.from_pretrained(spotify_model)
tokenizer = AutoTokenizer.from_pretrained(spotify_model)
labels = model.config.id2label
inputs = tokenizer(input_text, return_tensors="pt")
outputs = model(**inputs)
predictions = torch.nn.functional.softmax(outputs.logits, dim=-1)
predictions = predictions.detach().numpy()[0]
predictions = predictions * 100
index_sorted = np.argsort(predictions)[::-1]
clean_outputs = {label[idx]:predictions[idx] for idx in index_sorted}
print(clean_outputs)
return clean_outputs
iface = gr.Interface(fn=lyrics_categories,
inputs=gr.inputs.Textbox(lines=20, placeholder="Enter song lyrics here...", label="Song Lyrics"),
outputs=gr.outputs.Label(num_top_classes=5, label="Lyrics Categories"))
iface.launch()