FastAPI / app.py
Pep1900's picture
Update app.py
f2aeda2 verified
Raw
History Blame Contribute Delete
1.03 kB
import os
from fastapi import FastAPI, Header, HTTPException
from transformers import pipeline
from pydantic import BaseModel
import gradio as gr
import torch
import os
# Загружаем секретный ключ из Hugging Face Secrets
API_KEY = os.getenv("API_KEY")
# Загружаем модель один раз при старте
sentiment_model = pipeline(
"sentiment-analysis",
model="cardiffnlp/twitter-roberta-base-sentiment-latest",
device = 0
)
# FastAPI приложение
app = FastAPI(title="Sentiment Analysis API")
# Модель запроса
class TextRequest(BaseModel):
text: str
# Эндпоинт для анализа
@app.post("/analyze")
def analyze_sentiment(request: TextRequest, x_api_key: str = Header(...)):
if x_api_key != API_KEY:
raise HTTPException(status_code=401, detail="Invalid API Key")
result = sentiment_model(request.text)
return {"result": result}
@app.get("/hello")
def hello_world():
return {"message": "Hello World"}