Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
Update app.py
Browse files
app.py
CHANGED
@@ -456,17 +456,48 @@ def search_serphouse(query, country, page=1, num_result=10):
|
|
456 |
}
|
457 |
|
458 |
try:
|
|
|
459 |
session = requests.Session()
|
460 |
-
retries = Retry(total=3, backoff_factor=0.5)
|
461 |
-
session.mount('https://', HTTPAdapter(max_retries=retries))
|
462 |
|
463 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
464 |
response.raise_for_status()
|
465 |
return {"results": response.json(), "translated_query": translated_query}
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
470 |
|
471 |
def format_results_from_raw(response_data):
|
472 |
if "error" in response_data:
|
@@ -995,7 +1026,7 @@ with gr.Blocks(theme="Nymbo/Nymbo_Theme", css=css, title="NewsAI μλΉμ€") as
|
|
995 |
|
996 |
|
997 |
# AI λ²μ ν μΆκ°
|
998 |
-
with gr.Tab("AI
|
999 |
gr.Markdown("λ΄μ€ URLμ μ
λ ₯νλ©΄ AIκ° νκ΅μ΄λ‘ λ²μνμ¬ κΈ°μ¬ νμμΌλ‘ μμ±ν©λλ€.")
|
1000 |
|
1001 |
with gr.Column():
|
|
|
456 |
}
|
457 |
|
458 |
try:
|
459 |
+
# μΈμ
μ€μ κ°μ
|
460 |
session = requests.Session()
|
|
|
|
|
461 |
|
462 |
+
# μ¬μλ μ€μ κ°ν
|
463 |
+
retries = Retry(
|
464 |
+
total=5, # μ΅λ μ¬μλ νμ μ¦κ°
|
465 |
+
backoff_factor=1, # μ¬μλ κ°κ²© μ¦κ°
|
466 |
+
status_forcelist=[500, 502, 503, 504, 429], # μ¬μλν HTTP μν μ½λ
|
467 |
+
allowed_methods=["POST"] # POST μμ²μ λν μ¬μλ νμ©
|
468 |
+
)
|
469 |
+
|
470 |
+
# νμμμ μ€μ μ‘°μ
|
471 |
+
adapter = HTTPAdapter(max_retries=retries)
|
472 |
+
session.mount('http://', adapter)
|
473 |
+
session.mount('https://', adapter)
|
474 |
+
|
475 |
+
# νμμμ κ° μ¦κ° (connect timeout, read timeout)
|
476 |
+
response = session.post(
|
477 |
+
url,
|
478 |
+
json=payload,
|
479 |
+
headers=headers,
|
480 |
+
timeout=(30, 30) # μ°κ²° νμμμ 30μ΄, μ½κΈ° νμμμ 30μ΄
|
481 |
+
)
|
482 |
+
|
483 |
response.raise_for_status()
|
484 |
return {"results": response.json(), "translated_query": translated_query}
|
485 |
+
|
486 |
+
except requests.exceptions.Timeout:
|
487 |
+
return {
|
488 |
+
"error": "κ²μ μκ°μ΄ μ΄κ³Όλμμ΅λλ€. μ μ ν λ€μ μλν΄μ£ΌμΈμ.",
|
489 |
+
"translated_query": query
|
490 |
+
}
|
491 |
+
except requests.exceptions.RequestException as e:
|
492 |
+
return {
|
493 |
+
"error": f"κ²μ μ€ μ€λ₯κ° λ°μνμ΅λλ€: {str(e)}",
|
494 |
+
"translated_query": query
|
495 |
+
}
|
496 |
+
except Exception as e:
|
497 |
+
return {
|
498 |
+
"error": f"μκΈ°μΉ μμ μ€λ₯κ° λ°μνμ΅λλ€: {str(e)}",
|
499 |
+
"translated_query": query
|
500 |
+
}
|
501 |
|
502 |
def format_results_from_raw(response_data):
|
503 |
if "error" in response_data:
|
|
|
1026 |
|
1027 |
|
1028 |
# AI λ²μ ν μΆκ°
|
1029 |
+
with gr.Tab("AI κΈ°μ¬ μμ±"):
|
1030 |
gr.Markdown("λ΄μ€ URLμ μ
λ ₯νλ©΄ AIκ° νκ΅μ΄λ‘ λ²μνμ¬ κΈ°μ¬ νμμΌλ‘ μμ±ν©λλ€.")
|
1031 |
|
1032 |
with gr.Column():
|