Update app.py
Browse files
app.py
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
-
|
2 |
import gradio as gr
|
3 |
from langchain.chat_models import ChatOpenAI
|
4 |
from langchain.schema import HumanMessage
|
5 |
|
|
|
6 |
llm = ChatOpenAI(
|
7 |
base_url="https://api.together.xyz/v1",
|
8 |
api_key="0291f33aee03412a47fa5d8e562e515182dcc5d9aac5a7fb5eefdd1759005979",
|
@@ -10,6 +10,7 @@ llm = ChatOpenAI(
|
|
10 |
max_tokens=1024
|
11 |
)
|
12 |
|
|
|
13 |
def generate_report(operation_data, max_tokens, temperature, top_p):
|
14 |
system_prompt = """تو یک افسر گزارشنویس نظامی هستی. وظیفه تو تهیه یک گزارش رسمی، دقیق، ساختاریافته و حرفهای از عملیات نظامی بر اساس دادههای ارائهشده است. اگر اطلاعاتی در متن وجود نداشت، صراحتاً بنویس «ذکر نشده است».
|
15 |
لطفاً گزارش را دقیقاً در قالب فرمتیافته زیر تولید کن، با استفاده از نشانهگذاری واضح (مانند ایموجیها و خطوط جداکننده) تا خروجی قابلخواندن و رسمی باشد:
|
@@ -41,19 +42,19 @@ def generate_report(operation_data, max_tokens, temperature, top_p):
|
|
41 |
✅ این گزارش بر اساس اطلاعات خام ارائهشده تولید شده و ممکن است برخی جزئیات در دسترس نبوده باشند.
|
42 |
"""
|
43 |
|
44 |
-
|
45 |
messages = [
|
46 |
HumanMessage(content=f"{system_prompt}\n\n{operation_data}")
|
47 |
]
|
48 |
|
49 |
-
|
50 |
-
|
51 |
|
|
|
52 |
with open("report.txt", "w", encoding="utf-8") as file:
|
53 |
file.write(response.content)
|
54 |
|
55 |
-
return response.content
|
56 |
-
|
57 |
|
58 |
demo = gr.Interface(
|
59 |
fn=generate_report,
|
@@ -69,7 +70,8 @@ demo = gr.Interface(
|
|
69 |
gr.Slider(0.1, 1.0, value=0.95, step=0.05, label="🎯 Top-p", elem_id="slider-3"),
|
70 |
],
|
71 |
outputs=[
|
72 |
-
gr.Textbox(label="📄 گزارش رسمی تولید شده", lines=10, elem_id="military-output")
|
|
|
73 |
],
|
74 |
title="🛰️ سامانه گزارشساز هوش مصنوعی «توانا»",
|
75 |
description="🔰 اطلاعات خام عملیات را وارد کن تا سامانه توانا یک گزارش رسمی، حرفهای و محرمانه تولید کند.",
|
@@ -133,7 +135,7 @@ demo = gr.Interface(
|
|
133 |
clear_btn="🗑️ پاک کردن"
|
134 |
)
|
135 |
|
136 |
-
demo.launch(
|
137 |
|
138 |
if __name__ == "__main__":
|
139 |
-
demo.launch(
|
|
|
|
|
1 |
import gradio as gr
|
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",
|
8 |
api_key="0291f33aee03412a47fa5d8e562e515182dcc5d9aac5a7fb5eefdd1759005979",
|
|
|
10 |
max_tokens=1024
|
11 |
)
|
12 |
|
13 |
+
# تابع تولید گزارش
|
14 |
def generate_report(operation_data, max_tokens, temperature, top_p):
|
15 |
system_prompt = """تو یک افسر گزارشنویس نظامی هستی. وظیفه تو تهیه یک گزارش رسمی، دقیق، ساختاریافته و حرفهای از عملیات نظامی بر اساس دادههای ارائهشده است. اگر اطلاعاتی در متن وجود نداشت، صراحتاً بنویس «ذکر نشده است».
|
16 |
لطفاً گزارش را دقیقاً در قالب فرمتیافته زیر تولید کن، با استفاده از نشانهگذاری واضح (مانند ایموجیها و خطوط جداکننده) تا خروجی قابلخواندن و رسمی باشد:
|
|
|
42 |
✅ این گزارش بر اساس اطلاعات خام ارائهشده تولید شده و ممکن است برخی جزئیات در دسترس نبوده باشند.
|
43 |
"""
|
44 |
|
45 |
+
# تعریف پیامها برای مدل
|
46 |
messages = [
|
47 |
HumanMessage(content=f"{system_prompt}\n\n{operation_data}")
|
48 |
]
|
49 |
|
50 |
+
# ارسال پیام به مدل و گرفتن پاسخ
|
51 |
+
response = llm(messages)
|
52 |
|
53 |
+
# ذخیره گزارش در یک فایل متنی
|
54 |
with open("report.txt", "w", encoding="utf-8") as file:
|
55 |
file.write(response.content)
|
56 |
|
57 |
+
return response.content, "report.txt" # لینک به فایل متنی برای دانلود
|
|
|
58 |
|
59 |
demo = gr.Interface(
|
60 |
fn=generate_report,
|
|
|
70 |
gr.Slider(0.1, 1.0, value=0.95, step=0.05, label="🎯 Top-p", elem_id="slider-3"),
|
71 |
],
|
72 |
outputs=[
|
73 |
+
gr.Textbox(label="📄 گزارش رسمی تولید شده", lines=10, elem_id="military-output"),
|
74 |
+
gr.File(label=" دانلود گزارش", elem_id="download-btn") # اضافه کردن دکمه دانلود
|
75 |
],
|
76 |
title="🛰️ سامانه گزارشساز هوش مصنوعی «توانا»",
|
77 |
description="🔰 اطلاعات خام عملیات را وارد کن تا سامانه توانا یک گزارش رسمی، حرفهای و محرمانه تولید کند.",
|
|
|
135 |
clear_btn="🗑️ پاک کردن"
|
136 |
)
|
137 |
|
138 |
+
demo.launch()
|
139 |
|
140 |
if __name__ == "__main__":
|
141 |
+
demo.launch()
|