tharu22 commited on
Commit
c6d2665
·
1 Parent(s): f61375e
Files changed (3) hide show
  1. Dockerfile +16 -0
  2. main.py +26 -0
  3. requirements.txt +4 -0
Dockerfile ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Read the doc: https://huggingface.co/docs/hub/spaces-sdks-docker
2
+ # you will also find guides on how best to write your Dockerfile
3
+
4
+ FROM python:3.9
5
+
6
+ RUN useradd -m -u 1000 user
7
+ USER user
8
+ ENV PATH="/home/user/.local/bin:$PATH"
9
+
10
+ WORKDIR /app
11
+
12
+ COPY --chown=user ./requirements.txt requirements.txt
13
+ RUN pip install --no-cache-dir --upgrade -r requirements.txt
14
+
15
+ COPY --chown=user . /main
16
+ CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860"]
main.py ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from transformers import AutoTokenizer, AutoModelForSequenceClassification
2
+ import torch
3
+
4
+ import pandas as pd
5
+
6
+ splits = {'train': 'train_df.csv', 'validation': 'val_df.csv', 'test': 'test_df.csv'}
7
+ df = pd.read_csv("hf://datasets/Sp1786/multiclass-sentiment-analysis-dataset/" + splits["train"])
8
+
9
+ model_name = "tabularisai/multilingual-sentiment-analysis"
10
+ tokenizer = AutoTokenizer.from_pretrained(model_name)
11
+ model = AutoModelForSequenceClassification.from_pretrained(model_name)
12
+
13
+ def predict_sentiment(texts):
14
+ inputs = tokenizer(texts, return_tensors="pt", truncation=True, padding=True, max_length=512)
15
+ with torch.no_grad():
16
+ outputs = model(**inputs)
17
+ probabilities = torch.nn.functional.softmax(outputs.logits, dim=-1)
18
+ sentiment_map = {0: "Very Negative", 1: "Negative", 2: "Neutral", 3: "Positive", 4: "Very Positive"}
19
+ return [sentiment_map[p] for p in torch.argmax(probabilities, dim=-1).tolist()]
20
+
21
+ texts = [
22
+ # English
23
+ "I absolutely love the new design of this app!", "Cooking microwave pizzas, yummy.", "The weather is fine, nothing special.",
24
+ ]
25
+
26
+ print(predict_sentiment(texts))
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ torch
2
+ transformers
3
+ pandas
4
+ datasets