NLP_Graph_Project/ │ ├── app.py # فایل اصلی وب‌سرور (مدیریت روت‌ها و صفحات وب) ├── config.py # تنظیمات کلی (مسیر مدل‌ها، کلید API و ...) │ ├── modules/ # پوشه ماژول‌های پایتونی │ ├── __init__.py │ ├── segmenter.py # ماژول ۱: سگمنت‌بندی با مدل‌های لوکال (Gap Cosine) │ ├── api_handler.py # ماژول ۲: ارتباط با LLM برای استخراج گزاره، روابط و امتیازدهی │ ├── visualizer.py # ماژول ۳: رسم درخت و گراف تعاملی با PyVis و Textwrap │ └── data_manager.py # مدیریت فایل‌های CSV و پوشه‌های پروژه │ ├── static/ # فایل‌های استاتیک وب (آفلاین) │ ├── css/ │ │ └── style.css # استایل‌های صفحات وب │ ├── js/ │ │ ├── main.js # کدهای جاوااسکریپت برای مدیریت کلیک‌ها و درخواست‌های Ajax │ │ └── vis-network.min.js # کتابخانه آفلاین PyVis │ └── images/ │ ├── templates/ # صفحات HTML (بخش وب برنامه) │ ├── index.html # صفحه ۱: داشبورد و لیست پروژه‌های گذشته │ ├── new_project.html # صفحه ۲: دریافت متن و تعداد سگمنت‌های نهایی │ ├── loading.html # صفحه ۳: صفحه انتظار و نمایش وضعیت پردازش │ ├── tree_view.html # صفحه ۴: نمایش درخت، سایدبار و هندل کردن کلیک روی نودها │ └── graph_view.html # صفحه ۵: نمایش گراف نهایی │ ├── projects/ # محل ذخیره دیتای پروژه‌ها │ ├── 1405-01-28_10-30-00/ # نمونه یک پوشه پروژه بر اساس تاریخ و زمان │ │ ├── tree_data.csv # اطلاعات ساختار درخت و سگمنت‌ها │ │ ├── tree_visualization.html # فایل آفلاین درخت │ │ ├── node_ID_1_graph/ # دیتای مربوط به گراف ساخته شده برای یک نود خاص │ │ │ ├── propositions.csv │ │ │ ├── relations.csv │ │ │ ├── scores.csv │ │ │ └── graph.html │ │ └── node_ID_2_graph/ # گراف نود دیگر در صورت کلیک کاربر │ │ └── ... │ └── ... │ ├── tests/ # پوشه تست برای ماژول‌ها │ ├── test_segmenter.py │ ├── test_api.py │ └── test_visualizer.py │ └── requirements.txt # لیست پیش‌نیازهای پروژه