Update app.py
Browse files
app.py
CHANGED
|
@@ -2,9 +2,6 @@ import gradio as gr
|
|
| 2 |
from langchain.chat_models import ChatOpenAI
|
| 3 |
from langchain.schema import HumanMessage
|
| 4 |
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
# مدل LLaMA-3 از طریق Together API
|
| 9 |
llm = ChatOpenAI(
|
| 10 |
base_url="https://api.together.xyz/v1",
|
|
@@ -13,50 +10,44 @@ llm = ChatOpenAI(
|
|
| 13 |
max_tokens=1024
|
| 14 |
)
|
| 15 |
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
# تابع تولید گزارش
|
| 20 |
def generate_report(operation_data, max_tokens, temperature, top_p):
|
| 21 |
-
|
| 22 |
-
|
| 23 |
system_prompt = """تو یک افسر گزارشنویس نظامی هستی. وظیفه تو تهیه یک گزارش رسمی، دقیق، ساختاریافته و حرفهای از عملیات نظامی بر اساس دادههای ارائهشده است. اگر اطلاعاتی در متن وجود نداشت، صراحتاً بنویس «ذکر نشده است».
|
| 24 |
-
|
| 25 |
لطفاً گزارش را دقیقاً در قالب فرمتیافته زیر تولید کن، با استفاده از نشانهگذاری واضح (مانند ایموجیها و خطوط جداکننده) تا خروجی قابلخواندن و رسمی باشد:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 26 |
[شرایط خاص، اطلاعات پشتیبانی، آبوهوا، یا بنویس: ذکر نشده است]
|
| 27 |
-
|
| 28 |
━━━━━━━━━━━━━━━━━━━━━━
|
| 29 |
✅ این گزارش بر اساس اطلاعات خام ارائهشده تولید شده و ممکن است برخی جزئیات در دسترس نبوده باشند.
|
| 30 |
-
|
| 31 |
"""
|
| 32 |
|
| 33 |
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
| 38 |
# تعریف پیامها برای مدل
|
| 39 |
messages = [
|
| 40 |
HumanMessage(content=f"{system_prompt}\n\n{operation_data}")
|
| 41 |
]
|
| 42 |
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
| 60 |
# ارسال پیام به مدل و گرفتن پاسخ
|
| 61 |
response = llm(messages)
|
| 62 |
return response.content
|
|
@@ -75,19 +66,5 @@ demo = gr.Interface(
|
|
| 75 |
description="اطلاعات خام عملیات نظامی را وارد کن تا گزارش رسمی، خلاصه و حرفهای تولید شود."
|
| 76 |
)
|
| 77 |
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
|
| 81 |
-
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
|
| 87 |
-
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
|
| 91 |
-
|
| 92 |
if __name__ == "__main__":
|
| 93 |
-
demo.launch()
|
|
|
|
| 2 |
from langchain.chat_models import ChatOpenAI
|
| 3 |
from langchain.schema import HumanMessage
|
| 4 |
|
|
|
|
|
|
|
|
|
|
| 5 |
# مدل LLaMA-3 از طریق Together API
|
| 6 |
llm = ChatOpenAI(
|
| 7 |
base_url="https://api.together.xyz/v1",
|
|
|
|
| 10 |
max_tokens=1024
|
| 11 |
)
|
| 12 |
|
|
|
|
|
|
|
|
|
|
| 13 |
# تابع تولید گزارش
|
| 14 |
def generate_report(operation_data, max_tokens, temperature, top_p):
|
|
|
|
|
|
|
| 15 |
system_prompt = """تو یک افسر گزارشنویس نظامی هستی. وظیفه تو تهیه یک گزارش رسمی، دقیق، ساختاریافته و حرفهای از عملیات نظامی بر اساس دادههای ارائهشده است. اگر اطلاعاتی در متن وجود نداشت، صراحتاً بنویس «ذکر نشده است».
|
|
|
|
| 16 |
لطفاً گزارش را دقیقاً در قالب فرمتیافته زیر تولید کن، با استفاده از نشانهگذاری واضح (مانند ایموجیها و خطوط جداکننده) تا خروجی قابلخواندن و رسمی باشد:
|
| 17 |
+
━━━━━━━━━━━━━━━━━━━━━━
|
| 18 |
+
📄 گزارش رسمی عملیات نظامی
|
| 19 |
+
🕒 تاریخ و ساعت شروع عملیات:
|
| 20 |
+
[اگر در متن بود بنویس، در غیر این صورت بنویس: ذکر نشده است]
|
| 21 |
+
🕓 تاریخ و ساعت پایان عملیات:
|
| 22 |
+
[اگر در متن بود بنویس، در غیر این صورت بنویس: ذکر نشده است]
|
| 23 |
+
📍 مکان عملیات:
|
| 24 |
+
[نام مکان عملیات یا بنویس: ذکر نشده است]
|
| 25 |
+
🪖 واحدهای شرکتکننده:
|
| 26 |
+
[نام گردانها یا یگانها یا بنویس: ذکر نشده است]
|
| 27 |
+
🎯 هدف عملیات:
|
| 28 |
+
[اهداف اصلی عملیات یا بنویس: ذکر نشده است]
|
| 29 |
+
📝 شرح عملیات:
|
| 30 |
+
[شرح مختصر عملیات شامل مسیر، تاکتیک، درگیریها و روند پیشروی]
|
| 31 |
+
🏁 نتیجه عملیات:
|
| 32 |
+
[پیروزی، شکست، توقف، عقبنشینی یا ذکر نشده است]
|
| 33 |
+
🩻 تلفات نیروهای خودی:
|
| 34 |
+
[تعداد شهدا، مجروحین یا بنویس: ذکر نشده است]
|
| 35 |
+
🚫 تلفات دشمن:
|
| 36 |
+
[در صورت موجود بودن، ذکر شود - در غیر این صورت بنویس: ذکر نشده است]
|
| 37 |
+
🛠️ تجهیزات استفادهشده یا از دسترفته:
|
| 38 |
+
[مثلاً تانک، پهپاد، سلاح خاص یا ذکر نشده است]
|
| 39 |
+
🗒️ یادداشتهای اضافی:
|
| 40 |
[شرایط خاص، اطلاعات پشتیبانی، آبوهوا، یا بنویس: ذکر نشده است]
|
|
|
|
| 41 |
━━━━━━━━━━━━━━━━━━━━━━
|
| 42 |
✅ این گزارش بر اساس اطلاعات خام ارائهشده تولید شده و ممکن است برخی جزئیات در دسترس نبوده باشند.
|
|
|
|
| 43 |
"""
|
| 44 |
|
| 45 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 46 |
# تعریف پیامها برای مدل
|
| 47 |
messages = [
|
| 48 |
HumanMessage(content=f"{system_prompt}\n\n{operation_data}")
|
| 49 |
]
|
| 50 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 51 |
# ارسال پیام به مدل و گرفتن پاسخ
|
| 52 |
response = llm(messages)
|
| 53 |
return response.content
|
|
|
|
| 66 |
description="اطلاعات خام عملیات نظامی را وارد کن تا گزارش رسمی، خلاصه و حرفهای تولید شود."
|
| 67 |
)
|
| 68 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 69 |
if __name__ == "__main__":
|
| 70 |
+
demo.launch()
|