NLong commited on
Commit
72f7858
·
verified ·
1 Parent(s): 66afa80

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -72
app.py CHANGED
@@ -137,73 +137,8 @@ def process_search_results(items):
137
  return search_results
138
 
139
  def google_search_fallback(news_text):
140
-
141
- print("Using fallback search system...")
142
-
143
- mock_results = []
144
-
145
-
146
- if "Argentina" in news_text and "World Cup" in news_text:
147
- mock_results = [
148
- {
149
- 'title': 'Argentina wins World Cup 2022 - FIFA Official',
150
- 'snippet': 'Argentina defeated France in the 2022 World Cup final to win their third World Cup title.',
151
- 'link': 'https://www.fifa.com/worldcup/news/argentina-wins-world-cup-2022'
152
- },
153
- {
154
- 'title': 'World Cup 2022 Final: Argentina vs France - BBC Sport',
155
- 'snippet': 'Argentina won the 2022 FIFA World Cup after defeating France in a thrilling final.',
156
- 'link': 'https://www.bbc.com/sport/football/world-cup-2022'
157
- },
158
- {
159
- 'title': 'Lionel Messi leads Argentina to World Cup victory - ESPN',
160
- 'snippet': 'Lionel Messi finally won the World Cup as Argentina defeated France in Qatar 2022.',
161
- 'link': 'https://www.espn.com/soccer/world-cup/story/argentina-messi-world-cup'
162
- }
163
- ]
164
- elif "COVID" in news_text or "covid" in news_text:
165
- mock_results = [
166
- {
167
- 'title': 'COVID-19 Updates - World Health Organization',
168
- 'snippet': 'Latest updates on COVID-19 pandemic from WHO official sources.',
169
- 'link': 'https://www.who.int/emergencies/diseases/novel-coronavirus-2019'
170
- },
171
- {
172
- 'title': 'COVID-19 Vietnam News - Ministry of Health',
173
- 'snippet': 'Official COVID-19 updates from Vietnam Ministry of Health.',
174
- 'link': 'https://moh.gov.vn/covid-19'
175
- }
176
- ]
177
- elif "Việt Nam" in news_text or "Vietnam" in news_text:
178
- mock_results = [
179
- {
180
- 'title': 'Vietnam News - VnExpress',
181
- 'snippet': 'Latest news from Vietnam covering politics, economy, and society.',
182
- 'link': 'https://vnexpress.net'
183
- },
184
- {
185
- 'title': 'Vietnam News - Tuổi Trẻ',
186
- 'snippet': 'Vietnamese news and current events from Tuổi Trẻ newspaper.',
187
- 'link': 'https://tuoitre.vn'
188
- }
189
- ]
190
- else:
191
-
192
- mock_results = [
193
- {
194
- 'title': 'News Verification - Fact Check',
195
- 'snippet': 'Fact-checking and news verification from reliable sources.',
196
- 'link': 'https://www.factcheck.org'
197
- },
198
- {
199
- 'title': 'News Analysis - Reuters',
200
- 'snippet': 'Professional news analysis and reporting from Reuters.',
201
- 'link': 'https://www.reuters.com'
202
- }
203
- ]
204
-
205
- print(f"Generated {len(mock_results)} mock search results")
206
- return mock_results
207
 
208
 
209
 
@@ -467,6 +402,8 @@ Tránh dùng thuật ngữ kỹ thuật, hãy viết như đang nói chuyện v
467
 
468
  🌐 **Nguồn tin:** {len(search_results) if search_results else 0} nguồn được tìm thấy
469
 
 
 
470
  💡 **Khuyến nghị:** Hãy kiểm tra thêm từ các nguồn tin chính thống trước khi tin tưởng hoàn toàn.
471
  """
472
  return fallback_analysis
@@ -572,7 +509,7 @@ def analyze_news(news_text):
572
 
573
  </div>
574
  """
575
- return gr.update(value=empty_message, visible=True), "Độ chắc chắn là tin thật: 0%", "Độ chắc chắn là tin giả: 0%", gr.update(visible=False)
576
 
577
  print(f"Analyzing: {news_text[:50]}...")
578
 
@@ -646,6 +583,8 @@ def analyze_news(news_text):
646
  sources_display = "<br>".join([f"• {source}" for source in found_sources[:5]]) # Show max 5 sources
647
  if len(found_sources) > 5:
648
  sources_display += f"<br>• ... và {len(found_sources) - 5} nguồn khác"
 
 
649
 
650
  # Show credible sources found
651
  credible_display = ""
@@ -708,7 +647,7 @@ def analyze_news(news_text):
708
  </div>
709
  """
710
 
711
- return gr.update(value=detailed_analysis, visible=True), f"Độ chắc chắn là tin thật: {real_confidence:.1%}", f"Độ chắc chắn là tin giả: {fake_confidence:.1%}", gr.update(visible=True)
712
 
713
  except Exception as e:
714
  error_message = f"""
@@ -729,7 +668,7 @@ def analyze_news(news_text):
729
  </div>
730
  """
731
  print(f"Analysis error: {e}")
732
- return gr.update(value=error_message, visible=True), "Độ chắc chắn là tin thật: 0%", "Độ chắc chắn là tin giả: 0%", gr.update(visible=True)
733
 
734
  # --- GRADIO INTERFACE ---
735
  def create_interface():
@@ -779,8 +718,8 @@ def create_interface():
779
 
780
  with gr.Column(scale=1, visible=False) as results_column:
781
  gr.Markdown("### 📊 Kết quả phân tích")
782
- real_confidence = gr.Label(value="Độ chắc chắn là tin thật: 0%")
783
- fake_confidence = gr.Label(value="Độ chắc chắn là tin giả: 0%")
784
 
785
  detailed_analysis = gr.Markdown("### 📋 Phân tích chi tiết sẽ hiển thị ở đây...", visible=False)
786
 
 
137
  return search_results
138
 
139
  def google_search_fallback(news_text):
140
+ print("Google Search is unavailable due to quota exceeded")
141
+ return []
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
142
 
143
 
144
 
 
402
 
403
  🌐 **Nguồn tin:** {len(search_results) if search_results else 0} nguồn được tìm thấy
404
 
405
+ ⚠️ **Lưu ý:** Google Search không khả dụng do hết quota. Phân tích chỉ dựa trên AI.
406
+
407
  💡 **Khuyến nghị:** Hãy kiểm tra thêm từ các nguồn tin chính thống trước khi tin tưởng hoàn toàn.
408
  """
409
  return fallback_analysis
 
509
 
510
  </div>
511
  """
512
+ return gr.update(value=empty_message, visible=True), "**Độ chắc chắn là tin thật:** 0%", "**Độ chắc chắn là tin giả:** 0%", gr.update(visible=False)
513
 
514
  print(f"Analyzing: {news_text[:50]}...")
515
 
 
583
  sources_display = "<br>".join([f"• {source}" for source in found_sources[:5]]) # Show max 5 sources
584
  if len(found_sources) > 5:
585
  sources_display += f"<br>• ... và {len(found_sources) - 5} nguồn khác"
586
+ elif len(search_results) == 0:
587
+ sources_display = "⚠️ Google Search không khả dụng do hết quota"
588
 
589
  # Show credible sources found
590
  credible_display = ""
 
647
  </div>
648
  """
649
 
650
+ return gr.update(value=detailed_analysis, visible=True), f"**Độ chắc chắn là tin thật:** {real_confidence:.1%}", f"**Độ chắc chắn là tin giả:** {fake_confidence:.1%}", gr.update(visible=True)
651
 
652
  except Exception as e:
653
  error_message = f"""
 
668
  </div>
669
  """
670
  print(f"Analysis error: {e}")
671
+ return gr.update(value=error_message, visible=True), "**Độ chắc chắn là tin thật:** 0%", "**Độ chắc chắn là tin giả:** 0%", gr.update(visible=True)
672
 
673
  # --- GRADIO INTERFACE ---
674
  def create_interface():
 
718
 
719
  with gr.Column(scale=1, visible=False) as results_column:
720
  gr.Markdown("### 📊 Kết quả phân tích")
721
+ real_confidence = gr.Markdown("**Độ chắc chắn là tin thật:** 0%")
722
+ fake_confidence = gr.Markdown("**Độ chắc chắn là tin giả:** 0%")
723
 
724
  detailed_analysis = gr.Markdown("### 📋 Phân tích chi tiết sẽ hiển thị ở đây...", visible=False)
725