Spaces:
Sleeping
Sleeping
| # AUTOGENERATED! DO NOT EDIT! File to edit: ../app.ipynb. | |
| # %% auto 0 | |
| __all__ = ['tokenizer', 'device', 'model', 'CLASS_LABELS', 'sentence', 'label', 'examples', 'intf', 'classify_sentiment'] | |
| # %% ../app.ipynb 2 | |
| import gradio as gr | |
| import torch | |
| from layer import Model | |
| # %% ../app.ipynb 3 | |
| from transformers import BertTokenizerFast | |
| tokenizer = BertTokenizerFast.from_pretrained('bert-base-cased') | |
| # %% ../app.ipynb 4 | |
| device = "cuda" if torch.cuda.is_available() else "cpu" | |
| model = torch.load('./model.pt', map_location=torch.device('cpu')).to(device) | |
| model.eval() | |
| # %% ../app.ipynb 5 | |
| CLASS_LABELS = ['Negative', 'Positive'] | |
| # %% ../app.ipynb 6 | |
| def classify_sentiment(sentence): | |
| tokens = tokenizer(sentence) | |
| pred = model(torch.tensor([tokens['input_ids']]).to(device), [len(tokens)]).item() | |
| return dict(zip(CLASS_LABELS, [1 - pred, pred])) | |
| # %% ../app.ipynb 7 | |
| sentence = gr.inputs.Textbox() | |
| label = gr.outputs.Label(label='sentiment') | |
| examples = ["best movie I've ever seen", 'Worst movie ever.'] | |
| intf = gr.Interface(fn=classify_sentiment, | |
| inputs=sentence, | |
| outputs=label, | |
| title='Sentiment analysis', | |
| examples=examples) | |
| intf.launch(inline=False) | |