Skip to content

Commit 2de37bb

Browse files
committed
🎨 refactor(ft_detect): prepend module name to log messages
🔥 remove(feature_test): delete redundant test case for strict mode 🐛 fix(ft_detect): raise original exception as cause in strict mode 🎨 style(feature_test): adjust test case structure for clarity
1 parent 70500aa commit 2de37bb

File tree

2 files changed

+14
-12
lines changed

2 files changed

+14
-12
lines changed

feature_test/__init__.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@
55

66
# 测试繁体,简体,日文,英文,韩文,法文,德文,西班牙文
77
print(detect_multilingual("Hello, world!你好世界!Привет, мир!", low_memory=False))
8-
print(
9-
detect_multilingual("Hello, world!你好世界!Привет, мир!", low_memory=True, use_strict_mode=True)
10-
)
118
# [{'lang': 'ja', 'score': 0.32009604573249817}, {'lang': 'uk', 'score': 0.27781224250793457}, {'lang': 'zh', 'score': 0.17542070150375366}, {'lang': 'sr', 'score': 0.08751443773508072}, {'lang': 'bg', 'score': 0.05222449079155922}]
129
print(detect("hello world"))
1310
print(detect("你好世界"))
@@ -19,3 +16,8 @@
1916
print(detect_language("Hallo Welt"))
2017
print(detect_language("Hola mundo"))
2118
print(detect_language("這些機構主辦的課程,多以基本電腦使用為主,例如文書處理、中文輸入、互聯網應用等"))
19+
20+
# When offline, its raise error
21+
print(
22+
detect_multilingual("Hello, world!你好世界!Привет, мир!", low_memory=False, use_strict_mode=True)
23+
)

src/fast_langdetect/ft_detect/infer.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,10 @@ def download_model(
5252
:raises DetectError: If download fails
5353
"""
5454
if save_path.exists():
55-
logger.info(f"Model already exists at {save_path}. Skipping download.")
55+
logger.info(f"fast-langdetect:Model already exists at {save_path}. Skipping download.")
5656
return
5757

58-
logger.info(f"Downloading FastText model from {download_url} to {save_path}")
58+
logger.info(f"fast-langdetect:Downloading FastText model from {download_url} to {save_path}")
5959
try:
6060
download(
6161
url=download_url,
@@ -66,7 +66,7 @@ def download_model(
6666
timeout=30,
6767
)
6868
except Exception as e:
69-
logger.error(f"Failed to download FastText model from {download_url}: {e}")
69+
logger.error(f"fast-langdetect:Failed to download FastText model from {download_url}: {e}")
7070
raise DetectError(f"Unable to download model from {download_url}")
7171

7272

@@ -94,7 +94,7 @@ def load_fasttext_model(
9494
# Load FastText model
9595
return fasttext.load_model(str(model_path))
9696
except Exception as e:
97-
logger.error(f"Failed to load FastText model from {model_path}: {e}")
97+
logger.error(f"fast-langdetect:Failed to load FastText model from {model_path}: {e}")
9898
raise DetectError(f"Failed to load FastText model: {e}")
9999

100100

@@ -131,13 +131,13 @@ def load_model(
131131
_model_cache.cache_model(cache_key, model)
132132
return model
133133
except Exception as e:
134-
logger.error(f"Failed to load model ({'low' if low_memory else 'high'} memory): {e}")
134+
logger.error(f"fast-langdetect:Failed to load model ({'low' if low_memory else 'high'} memory): {e}")
135135
if use_strict_mode:
136-
raise DetectError("Failed to load FastText model.")
136+
raise DetectError("Failed to load FastText model.") from e
137137
elif not low_memory:
138138
logger.info("Falling back to low-memory model...")
139139
return load_model(low_memory=True, use_strict_mode=True)
140-
raise
140+
raise e
141141

142142

143143
def detect(
@@ -169,7 +169,7 @@ def detect(
169169
confidence_score = min(float(scores[0]), 1.0)
170170
return {"lang": language_label, "score": confidence_score}
171171
except Exception as e:
172-
logger.error(f"Error during language detection: {e}")
172+
logger.error(f"fast-langdetect:Error during language detection: {e}")
173173
raise DetectError("Language detection failed.")
174174

175175

@@ -199,5 +199,5 @@ def detect_multilingual(
199199
]
200200
return sorted(results, key=lambda x: x["score"], reverse=True)
201201
except Exception as e:
202-
logger.error(f"Error during multilingual detection: {e}")
202+
logger.error(f"fast-langdetect:Error during multilingual detection: {e}")
203203
raise DetectError("Multilingual detection failed.")

0 commit comments

Comments
 (0)