Commit ·
cfddf82
1
Parent(s): 01f9c42
fix: use env var HF_TOKEN instead of hf_token kwarg for gradio_client compatibility
Browse files
src/nlp/grammar/grammar_service.py
CHANGED
|
@@ -21,7 +21,15 @@ _load_error = None
|
|
| 21 |
_lock = threading.Lock()
|
| 22 |
|
| 23 |
GRADIO_SPACE = "mohammedahmedezz2004/bayan_arabic_grammarly_correction"
|
| 24 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25 |
|
| 26 |
|
| 27 |
class GrammarChecker:
|
|
@@ -156,6 +164,7 @@ def get_grammar_model():
|
|
| 156 |
logger.info("Loading Grammar model (lazy init)...")
|
| 157 |
|
| 158 |
# 1. Initialize Gradio Client — with retry for rate limiting / sleeping Spaces
|
|
|
|
| 159 |
from gradio_client import Client
|
| 160 |
client = None
|
| 161 |
max_retries = 3
|
|
@@ -163,13 +172,8 @@ def get_grammar_model():
|
|
| 163 |
|
| 164 |
for attempt in range(1, max_retries + 1):
|
| 165 |
try:
|
| 166 |
-
|
| 167 |
-
|
| 168 |
-
client = Client(GRADIO_SPACE, hf_token=HF_TOKEN)
|
| 169 |
-
else:
|
| 170 |
-
logger.warning("HF_TOKEN not set — sending unauthenticated requests (lower rate limits)")
|
| 171 |
-
logger.info(f"Connecting to Gradio Space: {GRADIO_SPACE} WITHOUT token (attempt {attempt}/{max_retries})")
|
| 172 |
-
client = Client(GRADIO_SPACE)
|
| 173 |
logger.info("Gradio Client connected")
|
| 174 |
break
|
| 175 |
except Exception as conn_err:
|
|
|
|
| 21 |
_lock = threading.Lock()
|
| 22 |
|
| 23 |
GRADIO_SPACE = "mohammedahmedezz2004/bayan_arabic_grammarly_correction"
|
| 24 |
+
|
| 25 |
+
# Read HF_TOKEN and ensure it's set in the environment so gradio_client picks it up
|
| 26 |
+
# automatically (works across all gradio_client versions)
|
| 27 |
+
_hf_token = os.environ.get("HF_TOKEN", "").strip()
|
| 28 |
+
if _hf_token:
|
| 29 |
+
os.environ["HF_TOKEN"] = _hf_token
|
| 30 |
+
logger.info("HF_TOKEN found — Gradio Client will use authenticated requests")
|
| 31 |
+
else:
|
| 32 |
+
logger.warning("HF_TOKEN not set — Gradio Client will send unauthenticated requests (lower rate limits)")
|
| 33 |
|
| 34 |
|
| 35 |
class GrammarChecker:
|
|
|
|
| 164 |
logger.info("Loading Grammar model (lazy init)...")
|
| 165 |
|
| 166 |
# 1. Initialize Gradio Client — with retry for rate limiting / sleeping Spaces
|
| 167 |
+
# HF_TOKEN is already set in the environment (module-level) so Client picks it up automatically
|
| 168 |
from gradio_client import Client
|
| 169 |
client = None
|
| 170 |
max_retries = 3
|
|
|
|
| 172 |
|
| 173 |
for attempt in range(1, max_retries + 1):
|
| 174 |
try:
|
| 175 |
+
logger.info(f"Connecting to Gradio Space: {GRADIO_SPACE} (attempt {attempt}/{max_retries})")
|
| 176 |
+
client = Client(GRADIO_SPACE)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 177 |
logger.info("Gradio Client connected")
|
| 178 |
break
|
| 179 |
except Exception as conn_err:
|