Update app.py
Browse files
app.py
CHANGED
@@ -6,7 +6,19 @@ from langchain.chat_models import ChatOpenAI
|
|
6 |
from langchain.schema import SystemMessage, HumanMessage
|
7 |
from rapidfuzz import fuzz
|
8 |
import concurrent.futures
|
9 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
st.markdown("""
|
11 |
<style>
|
12 |
@font-face {
|
@@ -186,7 +198,34 @@ with st.sidebar:
|
|
186 |
if idx in [1, 3, 5]:
|
187 |
st.markdown("<hr/>", unsafe_allow_html=True)
|
188 |
|
189 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
190 |
st.markdown("""
|
191 |
<div class="header-text">
|
192 |
<h1>رزمیار ارتش</h1>
|
@@ -202,7 +241,7 @@ llm = ChatOpenAI(
|
|
202 |
)
|
203 |
|
204 |
# ---------- پردازش فایلها با کش و موازی ----------
|
205 |
-
folder_path = '46'
|
206 |
normalizer = Normalizer()
|
207 |
sentence_tokenizer = SentenceTokenizer()
|
208 |
|
@@ -231,8 +270,59 @@ def load_and_process_documents(path):
|
|
231 |
all_sentences = load_and_process_documents(folder_path)
|
232 |
|
233 |
# ---------- ورودی جستجو ----------
|
234 |
-
|
235 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
236 |
if query:
|
237 |
found = False
|
238 |
threshold = 70
|
|
|
6 |
from langchain.schema import SystemMessage, HumanMessage
|
7 |
from rapidfuzz import fuzz
|
8 |
import concurrent.futures
|
9 |
+
st.markdown("""
|
10 |
+
<style>
|
11 |
+
/* استایل برای هدر */
|
12 |
+
.stAppHeader.st-emotion-cache-12fmjuu.e4hpqof0 {
|
13 |
+
background-color: rgba(58, 83, 56, 0.9) !important; /* سبز متمایل به خاکی */
|
14 |
+
color: #d4d4d4 !important; /* رنگ متن روشن */
|
15 |
+
font-family: 'Vazirmatn', Tahoma, sans-serif !important;
|
16 |
+
padding: 20px !important; /* فضای داخلی بیشتر */
|
17 |
+
border-radius: 10px !important; /* گوشههای گرد */
|
18 |
+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3) !important; /* سایه برای برجسته شدن */
|
19 |
+
}
|
20 |
+
</style>
|
21 |
+
""", unsafe_allow_html=True)
|
22 |
st.markdown("""
|
23 |
<style>
|
24 |
@font-face {
|
|
|
198 |
if idx in [1, 3, 5]:
|
199 |
st.markdown("<hr/>", unsafe_allow_html=True)
|
200 |
|
201 |
+
st.markdown("""
|
202 |
+
<style>
|
203 |
+
@font-face {
|
204 |
+
font-family: 'IRANSans';
|
205 |
+
src: url('https://cdn.jsdelivr.net/gh/rastikerdar/iransans/font/IRANSans.woff2') format('woff2'),
|
206 |
+
url('https://cdn.jsdelivr.net/gh/rastikerdar/iransans/font/IRANSans.woff') format('woff');
|
207 |
+
font-weight: 400;
|
208 |
+
font-style: normal;
|
209 |
+
}
|
210 |
+
|
211 |
+
.header-text h1 {
|
212 |
+
font-family: 'IRANSans', Tahoma, sans-serif !important;
|
213 |
+
font-weight: 900 !important;
|
214 |
+
font-size: 50px !important;
|
215 |
+
color: #b8860b !important;
|
216 |
+
margin: 0 !important;
|
217 |
+
}
|
218 |
+
|
219 |
+
.header-text .subtitle {
|
220 |
+
font-family: 'IRANSans', Tahoma, sans-serif !important;
|
221 |
+
font-weight: 600 !important;
|
222 |
+
font-size: 24px !important;
|
223 |
+
color: #d4d4d4 !important;
|
224 |
+
margin-top: 10px !important;
|
225 |
+
}
|
226 |
+
</style>
|
227 |
+
""", unsafe_allow_html=True)
|
228 |
+
|
229 |
st.markdown("""
|
230 |
<div class="header-text">
|
231 |
<h1>رزمیار ارتش</h1>
|
|
|
241 |
)
|
242 |
|
243 |
# ---------- پردازش فایلها با کش و موازی ----------
|
244 |
+
folder_path = 'C:/Users/ici/Downloads/Telegram Desktop/45/46'
|
245 |
normalizer = Normalizer()
|
246 |
sentence_tokenizer = SentenceTokenizer()
|
247 |
|
|
|
270 |
all_sentences = load_and_process_documents(folder_path)
|
271 |
|
272 |
# ---------- ورودی جستجو ----------
|
273 |
+
st.markdown("""
|
274 |
+
<style>
|
275 |
+
/* استایل برای کلاس خاص st-emotion-cache-128upt6 eht7o1d3 */
|
276 |
+
.st-emotion-cache-128upt6.eht7o1d3 {
|
277 |
+
background-color: rgba(68, 83, 63, 0.8) !important; /* سبز تیره (44533f) */
|
278 |
+
border-radius: 10px !important; /* گوشههای گرد */
|
279 |
+
color: #d4d4d4 !important; /* رنگ متن روشن */
|
280 |
+
font-family: 'Vazirmatn', Tahoma, sans-serif !important;
|
281 |
+
padding: 15px !important; /* فضای داخلی بیشتر */
|
282 |
+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3) !important; /* سایه برای برجسته شدن */
|
283 |
+
}
|
284 |
+
</style>
|
285 |
+
""", unsafe_allow_html=True)
|
286 |
+
st.markdown("""
|
287 |
+
<style>
|
288 |
+
/* استایل برای کلاس خاص */
|
289 |
+
.st-ae.st-bd.st-be.st-bf.st-bg.st-bh.st-bi.st-bj.st-bk.st-bl.st-bm.st-ah.st-bn.st-bo.st-bp.st-bq.st-br.st-bs.st-ci.st-cj.st-ax.st-ay.st-az.st-bv.st-b1.st-b2.st-bc.st-bw.st-bx.st-by.st-ck.st-cl.st-cn {
|
290 |
+
background-color: rgba(106, 127, 83, 0.8) !important; /* سبز خاکی مایل به زرد (#6a7f53) */
|
291 |
+
border-radius: 10px !important; /* گوشههای گرد */
|
292 |
+
color: #d4d4d4 !important; /* رنگ متن روشن */
|
293 |
+
font-family: 'Vazirmatn', Tahoma, sans-serif !important;
|
294 |
+
padding: 15px !important; /* فضای داخلی بیشتر */
|
295 |
+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3) !important; /* سایه برای برجسته شدن */
|
296 |
+
}
|
297 |
+
</style>
|
298 |
+
""", unsafe_allow_html=True)
|
299 |
+
st.markdown("""
|
300 |
+
<style>
|
301 |
+
/* استایل برای کلاس st-emotion-cache-yd4u6l e1togvvn1 */
|
302 |
+
.st-emotion-cache-yd4u6l.e1togvvn1 {
|
303 |
+
background-color: rgba(106, 127, 83, 0.8) !important; /* سبز خاکی مایل به زرد (#6a7f53) */
|
304 |
+
border-radius: 10px !important; /* گوشههای گرد */
|
305 |
+
color: #d4d4d4 !important; /* رنگ متن روشن */
|
306 |
+
font-family: 'Vazirmatn', Tahoma, sans-serif !important;
|
307 |
+
padding: 15px !important; /* فضای داخلی بیشتر */
|
308 |
+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3) !important; /* سایه برای برجسته شدن */
|
309 |
+
}
|
310 |
+
</style>
|
311 |
+
""", unsafe_allow_html=True)
|
312 |
+
st.markdown("""
|
313 |
+
<style>
|
314 |
+
/* استایل برای هدر */
|
315 |
+
.stAppHeader.st-emotion-cache-12fmjuu.e4hpqof0 {
|
316 |
+
background-color: rgba(42, 55, 39, 0.9) !important; /* سبز تیرهتر */
|
317 |
+
color: #d4d4d4 !important; /* رنگ متن روشن */
|
318 |
+
font-family: 'Vazirmatn', Tahoma, sans-serif !important;
|
319 |
+
padding: 20px !important; /* فضای داخلی بیشتر */
|
320 |
+
border-radius: 10px !important; /* گوشههای گرد */
|
321 |
+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3) !important; /* سایه برای برجسته شدن */
|
322 |
+
}
|
323 |
+
</style>
|
324 |
+
""", unsafe_allow_html=True)
|
325 |
+
query = st.chat_input("چطور میتونم کمک کنم؟")
|
326 |
if query:
|
327 |
found = False
|
328 |
threshold = 70
|