youssefreda9 commited on
Commit
cfddf82
·
1 Parent(s): 01f9c42

fix: use env var HF_TOKEN instead of hf_token kwarg for gradio_client compatibility

Browse files
Files changed (1) hide show
  1. src/nlp/grammar/grammar_service.py +12 -8
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
- HF_TOKEN = os.environ.get("HF_TOKEN", "").strip() or None
 
 
 
 
 
 
 
 
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
- if HF_TOKEN:
167
- logger.info(f"Connecting to Gradio Space: {GRADIO_SPACE} with HF token (attempt {attempt}/{max_retries})")
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: