# USED BY THE WEB-APP FOR EXTRACTING FEATURES. import logging from typing import Any, Dict from feature_core import extract_features, load_nlp_model logger = logging.getLogger(__name__) logger.setLevel(logging.INFO) if not logger.handlers: handler = logging.StreamHandler() handler.setFormatter(logging.Formatter("%(name)s - %(levelname)s - %(message)s")) logger.addHandler(handler) try: nlp = load_nlp_model("tl_calamancy_md-0.2.0") except Exception as e: logger.error(f"Failed to load CalamanCy: {e}") nlp = None def extract_features_web(text: str) -> Dict[str, Any]: if nlp is None: logger.error("NLP model unavailable") return {} try: return extract_features(text, nlp) except Exception as e: logger.error(f"NLP processing failed: {e}") return {}