Spaces:
Runtime error
Runtime error
import streamlit as st | |
import gradio as gr | |
import torch | |
import tensorflow as tf | |
from transformers import RobertaTokenizer, RobertaModel | |
from transformers import AutoModelForSequenceClassification | |
from transformers import TFAutoModelForSequenceClassification | |
from transformers import AutoTokenizer | |
tokenizer = AutoTokenizer.from_pretrained("paragon-analytics/ADRv1") | |
model = AutoModelForSequenceClassification.from_pretrained("paragon-analytics/ADRv1") | |
def adr_predict(x): | |
encoded_input = tokenizer(x, return_tensors='pt') | |
output = model(**encoded_input) | |
scores = output[0][0].detach().numpy() | |
scores = tf.nn.softmax(scores) | |
return {"Severe Reaction": float(scores.numpy()[1]), "Non-severe Reaction": float(scores.numpy()[0])} | |
def main(text): | |
text = str(text).lower() | |
obj = adr_predict(text) | |
return obj | |
title = "Welcome to **ADR Detector** 🪐" | |
description1 = """ | |
This app takes text (up to a few sentences) and predicts to what extent the text describes severe (or non-severe) adverse reaction to medicaitons. | |
""" | |
with gr.Blocks(title=title) as demo: | |
gr.Markdown(f"## {title}") | |
gr.Markdown(description1) | |
gr.Markdown("""---""") | |
text = gr.Textbox(label="Enter Your Text Here:",lines=2, placeholder="Type it here ...") | |
submit_btn = gr.Button("Analyze") | |
with gr.Column(visible=True) as output_col: | |
label = gr.Label(label = "Predicted Label") | |
# impplot = gr.HighlightedText(label="Important Words", combine_adjacent=False).style( | |
# color_map={"+++": "royalblue","++": "cornflowerblue", | |
# "+": "lightsteelblue", "NA":"white"}) | |
# NER = gr.HTML(label = 'NER:') | |
# intp =gr.HighlightedText(label="Word Scores", | |
# combine_adjacent=False).style(color_map={"++": "darkgreen","+": "green", | |
# "--": "darkred", | |
# "-": "red", "NA":"white"}) | |
submit_btn.click( | |
main, | |
[text], | |
[label], api_name="adr" | |
) | |
gr.Markdown("### Click on any of the examples below to see to what extent they contain resilience messaging:") | |
gr.Examples([["I have minor pain."],["I have severe pain."]], [text], [label], main, cache_examples=True) | |
demo.launch() | |