M17idd commited on
Commit
a147c7f
·
1 Parent(s): a5d7c10

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +48 -14
app.py CHANGED
@@ -245,7 +245,7 @@ st.markdown("""
245
  llm = ChatOpenAI(
246
  base_url="https://api.together.xyz/v1",
247
  api_key='0291f33aee03412a47fa5d8e562e515182dcc5d9aac5a7fb5eefdd1759005979',
248
- model="deepseek-ai/DeepSeek-R1-Distill-Llama-70B-free",
249
  max_tokens=1024
250
  )
251
 
@@ -370,7 +370,7 @@ if query:
370
  <div class="spinner"></div>
371
  </div>
372
  """, unsafe_allow_html=True)
373
-
374
  else:
375
  st.markdown("")
376
 
@@ -426,30 +426,64 @@ if query:
426
  if similarity >= threshold:
427
  st.markdown(sentence)
428
 
 
429
  prompt = f"""
430
- تعدادی پاسخ برای سوال زیر تولید شده است. لطفاً ابتدا این پاسخ‌ها را بررسی کن، سپس با در نظر گرفتن محتوای سوال و لحن آن، یک پاسخ نهایی حرفه‌ای، دقیق و روان ارائه کن که هم به سوال پاسخ دهد و هم از نظر نگارشی و ساختاری در سطح بالایی باشد. از تکرار اضافی پرهیز کن و محتوای چند پاسخ را در صورت نیاز با هم ترکیب کن و به هیچ عنوان از جملاتی جز فارسی استفاده نکن تا بهترین نتیجه حاصل شود.
431
-
432
- سوال:
433
- {query}
434
-
435
- پاسخ‌ها:
436
- {sentence}
437
-
438
- پاسخ نهایی حرفه‌ای بازنویسی‌شده:
439
- """
440
 
 
 
 
 
 
 
 
 
441
  response = llm([
442
  SystemMessage(content="You are a helpful assistant."),
443
  HumanMessage(content=prompt)
444
  ])
445
  rewritten = response.content.strip()
446
- st.markdown(f'<div class="chat-message">{rewritten}</div>', unsafe_allow_html=True)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
447
  think.empty()
448
  found = True
449
  break
450
 
451
  if not found:
452
- prompt = f" لطفاً بر اساس سوال زیر یک متن مرتبط و معنادار تولید کن و از خودت ننویس و جملات معتبر باشن و از زبانی جز فارسی استفاده نکن:\n\nسوال: {query}"
453
  response = llm([
454
  SystemMessage(content="You are a helpful assistant."),
455
  HumanMessage(content=prompt)
 
245
  llm = ChatOpenAI(
246
  base_url="https://api.together.xyz/v1",
247
  api_key='0291f33aee03412a47fa5d8e562e515182dcc5d9aac5a7fb5eefdd1759005979',
248
+ model="meta-llama/Llama-3.3-70B-Instruct-Turbo-Free",
249
  max_tokens=1024
250
  )
251
 
 
370
  <div class="spinner"></div>
371
  </div>
372
  """, unsafe_allow_html=True)
373
+
374
  else:
375
  st.markdown("")
376
 
 
426
  if similarity >= threshold:
427
  st.markdown(sentence)
428
 
429
+ # تولید پاسخ بازنویسی‌شده
430
  prompt = f"""
431
+ تعدادی پاسخ برای سوال زیر تولید شده است. لطفاً ابتدا این پاسخ‌ها را بررسی کن، سپس با در نظر گرفتن محتوای سوال و لحن آن، یک پاسخ نهایی حرفه‌ای، دقیق و روان ارائه کن که هم به سوال پاسخ دهد و هم از نظر نگارشی و ساختاری در سطح بالایی باشد. پاسخ نهایی باید حداکثر ۵۱۲ کاراکتر باشد، خلاصه و واضح نوشته شود و فقط به زبان فارسی باشد. از تکرار اضافی پرهیز کن و محتوای چند پاسخ را در صورت نیاز با هم ترکیب کن.
 
 
 
 
 
 
 
 
 
432
 
433
+ سوال:
434
+ {query}
435
+
436
+ پاسخ‌ها:
437
+ {sentence}
438
+
439
+ پاسخ نهایی حرفه‌ای بازنویسی‌شده:
440
+ """
441
  response = llm([
442
  SystemMessage(content="You are a helpful assistant."),
443
  HumanMessage(content=prompt)
444
  ])
445
  rewritten = response.content.strip()
446
+
447
+ # بررسی مرتبط بودن پاسخ با سؤال
448
+ review_prompt = f"""
449
+ لطفاً بررسی کن که آیا پاسخ زیر، دقیقاً به سوال زیر پاسخ داده است یا خیر. اگر پاسخ به سوال مرتبط، درست و قابل قبول است، فقط بنویس: 'تأیید شد'.
450
+ اگر پاسخ اشتباه است یا ربطی به سوال ندارد، فقط بنویس: 'نیاز به اصلاح دارد'.
451
+
452
+ سوال:
453
+ {query}
454
+
455
+ پاسخ:
456
+ {rewritten}
457
+ """
458
+ review_response = llm([
459
+ SystemMessage(content="You are a helpful assistant."),
460
+ HumanMessage(content=review_prompt)
461
+ ])
462
+ review_result = review_response.content.strip()
463
+
464
+ if "تأیید شد" in review_result:
465
+ st.markdown(f'<div class="chat-message">{rewritten}</div>', unsafe_allow_html=True)
466
+ else:
467
+ # تولید پاسخ جدید توسط مدل بدون استفاده از داده قبلی
468
+ final_prompt = f"""
469
+ لطفاً برای سوال زیر پاسخی حرفه‌ای، دقیق و روان تولید کن که مرتبط و معتبر باشد. از زبانی جز فارسی استفاده نکن:
470
+
471
+ سوال:
472
+ {query}
473
+ """
474
+ new_response = llm([
475
+ SystemMessage(content="You are a helpful assistant."),
476
+ HumanMessage(content=final_prompt)
477
+ ])
478
+ final_answer = new_response.content.strip()
479
+ st.markdown(f'<div class="chat-message">{final_answer}</div>', unsafe_allow_html=True)
480
+
481
  think.empty()
482
  found = True
483
  break
484
 
485
  if not found:
486
+ prompt = f"لطفاً بر اساس سوال زیر یک متن مرتبط و معنادار تولید کن و از خودت ننویس و جملات معتبر باشن و از زبانی جز فارسی استفاده نکن:\n\nسوال: {query}"
487
  response = llm([
488
  SystemMessage(content="You are a helpful assistant."),
489
  HumanMessage(content=prompt)