NeuralNodeAI/AI-TransSummarizer
0
1from fastapi import FastAPI2from fastapi.responses import FileResponse3from pydantic import BaseModel4from transformers import pipeline5import os6 7app = FastAPI()8 9# تعريف نموذج البيانات10class TextInput(BaseModel):11 text: str12 13# تحميل الموديلات14summarizer = pipeline("summarization", model="facebook/bart-large-cnn")15translator = pipeline("translation_en_to_ar", model="Helsinki-NLP/opus-mt-en-ar")16 17# --- هذا هو الجزء الجديد لعرض صفحة الـ HTML ---18@app.get("/")19def read_index():20 return FileResponse("index.html")21# ---------------------------------------------22 23@app.post("/process")24def process_ai_tasks(item: TextInput):25 user_text = item.text26 if not user_text or not user_text.strip():27 return "No text provided"28 29 current_text = user_text30 31 if "summarize" in user_text or "لخص" in user_text:32 summary_result = summarizer(current_text, max_length=100, min_length=30, do_sample=False)33 current_text = summary_result[0]['summary_text']34 35 if "ترجم" in user_text:36 translation_result = translator(current_text)37 current_text = translation_result[0]['translation_text']38 39 return current_text