# اسکریپت بازنمایی جملات فارسی این اسکریپت (`p5_representer.py`) برای ساده‌سازی و بازنمایی جملات پیچیده حقوقی فارسی به مجموعه‌ای از جملات ساده‌تر و قابل فهم‌تر طراحی شده است. مدل مورد استفاده در این سورس `meta-llama/Meta-Llama-3.1-8B-Instruct` می‌باشد. **نکته:** برای مشاهده نسخه کتابخانه‌ها به فایل `requirements.txt` مراجعه کنید. ## مدل مورد استفاده - مدل: `meta-llama/Meta-Llama-3.1-8B-Instruct` - بارگذاری با استفاده از کتابخانه Transformers (توکنایزر و مدل) ## پرامپت‌های سیستمی و کاربری - **پرامپت سیستمی:** مدل را به عنوان یک وکیل حقوق‌دان معرفی می‌کند که باید متون حقوقی را بدون تغییر اصطلاحات فنی، به زبان ساده برای افراد غیرحقوق‌دان توضیح دهد. - **پرامپت کاربری:** از مدل می‌خواهد متن ورودی را در تعداد جمله مشخص، ساده و روان به زبان فارسی بازنویسی کند. ## متدهای اصلی ### ۱. `single_section_representation(content)` - **هدف:** ساده‌سازی یک بخش متنی حقوقی. - **ورودی:** - `content` (رشته): متن حقوقی برای ساده‌سازی. - **خروجی:** - `result` (بولین): وضعیت عملیات. - `desc` (رشته): توضیح نتیجه. - `sentences` (لیست): لیست جملات ساده‌شده. ### ۲. `do_representation(sections)` - **هدف:** پردازش چندین بخش و ذخیره نتایج. - **ورودی:** - `sections` (دیکشنری): هر کلید شناسه بخش و مقدار آن شامل فیلد `content` است. - **خروجی:** - `operation_result` (بولین): وضعیت کلی عملیات. - `sections` (دیکشنری): دیکشنری ورودی با فیلد جدید `represented_sentences` برای هر بخش. ## مثال ورودی ```python sections = { "1": {"content": "این یک متن حقوقی پیچیده است که باید ساده شود."}, "2": {"content": "متن حقوقی دوم برای بازنمایی."} } result, output_sections = do_representation(sections) ``` ## خروجی برای هر بخش، یک فیلد جدید به نام `represented_sentences` شامل جملات ساده‌شده اضافه می‌شود. ## نکات - اسکریپت به صورت خودکار در صورت وجود GPU از آن استفاده می‌کند. - خطاهای هر بخش در مسیر `./data/represent/` ثبت می‌شوند. - فایل خروجی JSON در مسیر `./data/represent/` ذخیره می‌شود.