from fastapi import FastAPI, HTTPException from pydantic import BaseModel from transformers import pipeline, AutoModelForCausalLM, AutoTokenizer import torch app = FastAPI(title="مساعد كتابة المقالات العربية") class ArticleRequest(BaseModel): topic: str style: str = "academic" length: str = "medium" class OutlineRequest(BaseModel): topic: str sections: int = 3 @app.get("/") async def root(): return {"message": "مرحباً بك في مساعد كتابة المقالات العربية"} @app.post("/generate_outline") async def generate_outline(request: OutlineRequest): try: # هنا سيتم إضافة منطق توليد الهيكل التفصيلي outline = { "title": request.topic, "sections": [ "مقدمة", "العرض الرئيسي", "الخاتمة" ], "suggestions": [ "فكر في إضافة أمثلة عملية", "اربط الموضوع بالواقع المعاصر", "اختم بتوصيات عملية" ] } return outline except Exception as e: raise HTTPException(status_code=500, detail=str(e)) @app.post("/improve_style") async def improve_style(text: str): try: # هنا سيتم إضافة منطق تحسين الأسلوب improved_text = text # سيتم تحسين هذا لاحقاً suggestions = [ "حاول استخدام جمل أقصر", "تجنب تكرار الكلمات", "استخدم روابط منطقية بين الفقرات" ] return { "improved_text": improved_text, "suggestions": suggestions } except Exception as e: raise HTTPException(status_code=500, detail=str(e)) if __name__ == "__main__": import uvicorn uvicorn.run(app, host="0.0.0.0", port=8000)