Spaces:
Sleeping
Sleeping
File size: 1,330 Bytes
b51b7e3 fadc66a b51b7e3 fadc66a b51b7e3 0df2dd4 b51b7e3 fadc66a e71b024 d65dc23 b51b7e3 b465f85 fadc66a b51b7e3 b465f85 fadc66a e19a951 fadc66a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
from fastapi import FastAPI, HTTPException,APIRouter,Request
from pydantic import BaseModel
from fastapi.responses import HTMLResponse
from typing import List
from fastapi.staticfiles import StaticFiles
from starlette.responses import FileResponse
from fastapi.middleware.cors import CORSMiddleware
import os
app = FastAPI()
origins = ["*"]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
)
os.environ['SENTENCE_TRANSFORMERS_HOME'] = './.cache' ## For Docker
app.mount("/files/", StaticFiles(directory='../code'), name="index")
class TextInput(BaseModel):
InputText: str # python casing??????
def emotion_detection(str1: str) -> str:
from transformers import pipeline
pipe = pipeline(model="distilbert-base-uncased-finetuned-sst-2-english")
expected=(pipe(str1))
return expected[0].get('label')
@app.get("/")
async def read_index():
return FileResponse('app/index.html')
@app.post("/generate-emotion/")
async def detect_emotion(input_data: TextInput):
text1 = input_data.InputText
emotion= emotion_detection(text1)
response={"Text Entered":text1,"emotion":emotion}
return response
@app.get("/testing/")
async def testing_emotion(input_data):
emotion= emotion_detection(input_data)
response={"Text Entered":input_data,"emotion":emotion}
return response |