|
import gradio as gr |
|
from langchain.chat_models import ChatOpenAI |
|
from langchain.schema import HumanMessage |
|
|
|
|
|
|
|
|
|
|
|
llm = ChatOpenAI( |
|
base_url="https://api.together.xyz/v1", |
|
api_key="0291f33aee03412a47fa5d8e562e515182dcc5d9aac5a7fb5eefdd1759005979", |
|
model="meta-llama/Llama-3.3-70B-Instruct-Turbo-Free", |
|
max_tokens=1024 |
|
) |
|
|
|
|
|
|
|
|
|
|
|
def generate_report(operation_data, max_tokens, temperature, top_p): |
|
|
|
|
|
system_prompt = """تو یک افسر گزارشنویس نظامی هستی. وظیفه تو تهیه یک گزارش رسمی، دقیق، ساختاریافته و حرفهای از عملیات نظامی بر اساس دادههای ارائهشده است. اگر اطلاعاتی در متن وجود نداشت، صراحتاً بنویس «ذکر نشده است». |
|
|
|
لطفاً گزارش را دقیقاً در قالب فرمتیافته زیر تولید کن، با استفاده از نشانهگذاری واضح (مانند ایموجیها و خطوط جداکننده) تا خروجی قابلخواندن و رسمی باشد: |
|
[شرایط خاص، اطلاعات پشتیبانی، آبوهوا، یا بنویس: ذکر نشده است] |
|
|
|
━━━━━━━━━━━━━━━━━━━━━━ |
|
✅ این گزارش بر اساس اطلاعات خام ارائهشده تولید شده و ممکن است برخی جزئیات در دسترس نبوده باشند. |
|
|
|
""" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
messages = [ |
|
HumanMessage(content=f"{system_prompt}\n\n{operation_data}") |
|
] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
response = llm(messages) |
|
return response.content |
|
|
|
|
|
demo = gr.Interface( |
|
fn=generate_report, |
|
inputs=[ |
|
gr.Textbox(label="اطلاعات عملیات نظامی", lines=10, placeholder="مثلاً: در ساعت ۵ صبح، گردان الف از محور غربی وارد منطقه شد..."), |
|
gr.Slider(128, 2048, value=1024, step=64, label="حداکثر توکن خروجی"), |
|
gr.Slider(0.1, 1.5, value=0.7, step=0.1, label="دمای خلاقیت (temperature)"), |
|
gr.Slider(0.1, 1.0, value=0.95, step=0.05, label="Top-p"), |
|
], |
|
outputs=gr.Textbox(label="گزارش رسمی تولید شده", lines=10), |
|
title="گزارشنویس هوش مصنوعی عملیات نظامی", |
|
description="اطلاعات خام عملیات نظامی را وارد کن تا گزارش رسمی، خلاصه و حرفهای تولید شود." |
|
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__": |
|
demo.launch() |