Skip to content

Takeru522/smartreview-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 

Repository files navigation

SmartReviewAI - Sentiment Analysis & Summary Backend

===========

File: app/main.py

from fastapi import FastAPI from app.routes import review_router

app = FastAPI(title="SmartReviewAI") app.include_router(review_router, prefix="/api/reviews")

File: app/routes.py

from fastapi import APIRouter, HTTPException from pydantic import BaseModel from app.services import analyze_review

review_router = APIRouter()

class ReviewInput(BaseModel): text: str

@review_router.post("/") def process_review(review: ReviewInput): try: result = analyze_review(review.text) return result except Exception as e: raise HTTPException(status_code=500, detail=str(e))

File: app/services.py

from transformers import pipeline from textwrap import shorten

sentiment_pipeline = pipeline("sentiment-analysis") summarizer_pipeline = pipeline("summarization")

def analyze_review(text: str): sentiment = sentiment_pipeline(text)[0] summary = summarizer_pipeline(text, max_length=60, min_length=25, do_sample=False)[0]['summary_text'] return { "original": text, "sentiment": sentiment['label'], "confidence": sentiment['score'], "summary": summary }

File: requirements.txt

fastapi uvicorn transformers pydantic

File: Dockerfile

FROM python:3.10-slim WORKDIR /app COPY . /app RUN pip install --no-cache-dir -r requirements.txt CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"]

File: README.md

SmartReviewAI

A FastAPI-based backend for analyzing sentiment and summarizing product reviews using transformer-based NLP models.

πŸš€ Features

  • REST API to submit product reviews
  • Returns:
    • Sentiment (positive/negative/neutral)
    • Confidence score
    • AI-generated summary

🧠 Tech Stack

  • FastAPI
  • Transformers (HuggingFace)
  • Docker

πŸ“¦ Installation

git clone https://github.com/Takeru522/smartreview-ai.git
cd smartreview-ai
pip install -r requirements.txt
uvicorn app.main:app --reload

πŸ§ͺ Example API Call

POST /api/reviews/

{
  "text": "This product is amazing! It really improved my workflow."
}

Response:

{
  "original": "This product is amazing!...",
  "sentiment": "POSITIVE",
  "confidence": 0.98,
  "summary": "The product greatly improved the user's workflow."
}

🐳 Docker Run

docker build -t smartreview-ai .
docker run -p 8000:8000 smartreview-ai

Want to build more AI features? Fork this project and go further πŸš€

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published