AI Slop Code RIsk Monitor

serengil/deepface

A Lightweight Face Recognition and Facial Attribute Analysis (Age, Gender, Emotion and Race) Library for Python

22.7 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for serengil/deepface, a Python project with 23,530 GitHub stars. SynthScan examined 46,170 lines of code across 221 source files, recording 507 pattern matches distributed across 10 syntactic categories. The legacy adjusted pattern signal is 22.7 (Elevated pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

22.7
Adjusted Signal
22.7
Raw Pattern Score
100%
Time Factor
2026-10-09
Last Push
23.5K
Stars
Python
Language
46.2K
Lines of Code
221
Files
507
Pattern Hits
2026-10-12
Scan Date
0.50
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 28.5/100 · MEDIUM

Can maintainers explain intent, assumptions, and trade-offs? 310 finding(s).

Hallucinated Dependency & Supply Chain Risk 0.7/100 · LOW

Are imports declared and package/API names verified? 6 finding(s).

Agent Over-Engineering Ratio 66.6/100 · HIGH

Are wrappers, guards, and repeated structures necessary? 474 finding(s).

PR Review Velocity Impact 71.2/100 · HIGH

Which changes need focused human review? 507 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.

Severity Breakdown

Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.

CRITICAL 0HIGH 110MEDIUM 46LOW 351

Directory Score Breakdown

This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.

Pattern Findings

The scanner identified 507 distinct pattern matches across 10 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.

Cross-File Repetition106 hits · 530 pts
SeverityFileLineSnippetContext
HIGHdeepface/models/demography/onnx/Age.py0predict apparent age(s) for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list of imagSTRING
HIGHdeepface/models/demography/pytorch/Age.py0predict apparent age(s) for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list of imagSTRING
HIGHdeepface/models/demography/tf/Age.py0predict apparent age(s) for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list of imagSTRING
HIGHdeepface/models/demography/onnx/Age.py0download emotion model's onnx graph if necessary and load it returns: model (onnxruntime.inferencesession)STRING
HIGHdeepface/models/demography/onnx/Gender.py0download emotion model's onnx graph if necessary and load it returns: model (onnxruntime.inferencesession)STRING
HIGHdeepface/models/demography/onnx/Race.py0download emotion model's onnx graph if necessary and load it returns: model (onnxruntime.inferencesession)STRING
HIGHdeepface/models/demography/onnx/Emotion.py0download emotion model's onnx graph if necessary and load it returns: model (onnxruntime.inferencesession)STRING
HIGHdeepface/models/demography/onnx/Gender.py0predict gender probabilities for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list ofSTRING
HIGHdeepface/models/demography/pytorch/Gender.py0predict gender probabilities for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list ofSTRING
HIGHdeepface/models/demography/tf/Gender.py0predict gender probabilities for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list ofSTRING
HIGHdeepface/models/demography/onnx/Race.py0predict race probabilities for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list of iSTRING
HIGHdeepface/models/demography/pytorch/Race.py0predict race probabilities for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list of iSTRING
HIGHdeepface/models/demography/tf/Race.py0predict race probabilities for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list of iSTRING
HIGHdeepface/models/demography/onnx/Emotion.py0preprocess single image for emotion detection args: img: input image (224, 224, 3) returns: preprocessed grayscale imageSTRING
HIGHdeepface/models/demography/pytorch/Emotion.py0preprocess single image for emotion detection args: img: input image (224, 224, 3) returns: preprocessed grayscale imageSTRING
HIGHdeepface/models/demography/tf/Emotion.py0preprocess single image for emotion detection args: img: input image (224, 224, 3) returns: preprocessed grayscale imageSTRING
HIGHdeepface/models/demography/onnx/Emotion.py0predict emotion probabilities for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list oSTRING
HIGHdeepface/models/demography/pytorch/Emotion.py0predict emotion probabilities for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list oSTRING
HIGHdeepface/models/demography/tf/Emotion.py0predict emotion probabilities for single or multiple faces args: img: single image as np.ndarray (224, 224, 3) or list oSTRING
HIGHdeepface/models/face_detection/RetinaFace.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/face_detection/FastMtCnn.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/face_detection/MtCnn.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/face_detection/MediaPipe.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/face_detection/Ssd.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/face_detection/CenterFace.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/face_detection/OpenCv.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/face_detection/YuNet.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/face_detection/Yolo.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/face_detection/Dlib.py0detect and align face with dlib args: img (np.ndarray): pre-loaded image as numpy array returns: results (list[facialareSTRING
HIGHdeepface/models/spoofing/onnx/FasNet.py0mini face anti spoofing net library from repo: github.com/minivision-ai/silent-face-anti-spoofing minivision's silent-faSTRING
HIGHdeepface/models/spoofing/pytorch/FasNet.py0mini face anti spoofing net library from repo: github.com/minivision-ai/silent-face-anti-spoofing minivision's silent-faSTRING
HIGHdeepface/models/spoofing/tf/FasNet.py0mini face anti spoofing net library from repo: github.com/minivision-ai/silent-face-anti-spoofing minivision's silent-faSTRING
HIGHdeepface/models/spoofing/onnx/FasNet.py0analyze a given image spoofed or not args: img (np.ndarray): pre loaded image facial_area (list or tuple): facial rectanSTRING
HIGHdeepface/models/spoofing/pytorch/FasNet.py0analyze a given image spoofed or not args: img (np.ndarray): pre loaded image facial_area (list or tuple): facial rectanSTRING
HIGHdeepface/models/spoofing/tf/FasNet.py0analyze a given image spoofed or not args: img (np.ndarray): pre loaded image facial_area (list or tuple): facial rectanSTRING
HIGHdeepface/modules/database/cassandra.py0embeddings are stored as little-endian float64 bytes to keep them lossless.STRING
HIGHdeepface/modules/database/mssql.py0embeddings are stored as little-endian float64 bytes to keep them lossless.STRING
HIGHdeepface/modules/database/sqlite.py0embeddings are stored as little-endian float64 bytes to keep them lossless.STRING
HIGHdeepface/modules/database/db2.py0embeddings are stored as little-endian float64 bytes to keep them lossless.STRING
HIGHdeepface/modules/database/redis.py0embeddings are stored as little-endian float64 bytes to keep them lossless.STRING
HIGHdeepface/modules/database/oracle.py0embeddings are stored as little-endian float64 bytes to keep them lossless.STRING
HIGHdeepface/modules/database/mysql.py0embeddings are stored as little-endian float64 bytes to keep them lossless.STRING
HIGHdeepface/modules/database/cassandra.py0get embeddings index from mysql. args: model_name (str): name of the model. detector_backend (str): name of the detectorSTRING
HIGHdeepface/modules/database/mssql.py0get embeddings index from mysql. args: model_name (str): name of the model. detector_backend (str): name of the detectorSTRING
HIGHdeepface/modules/database/mongo.py0get embeddings index from mysql. args: model_name (str): name of the model. detector_backend (str): name of the detectorSTRING
HIGHdeepface/modules/database/sqlite.py0get embeddings index from mysql. args: model_name (str): name of the model. detector_backend (str): name of the detectorSTRING
HIGHdeepface/modules/database/db2.py0get embeddings index from mysql. args: model_name (str): name of the model. detector_backend (str): name of the detectorSTRING
HIGHdeepface/modules/database/redis.py0get embeddings index from mysql. args: model_name (str): name of the model. detector_backend (str): name of the detectorSTRING
HIGHdeepface/modules/database/postgres.py0get embeddings index from mysql. args: model_name (str): name of the model. detector_backend (str): name of the detectorSTRING
HIGHdeepface/modules/database/oracle.py0get embeddings index from mysql. args: model_name (str): name of the model. detector_backend (str): name of the detectorSTRING
HIGHdeepface/modules/database/mysql.py0get embeddings index from mysql. args: model_name (str): name of the model. detector_backend (str): name of the detectorSTRING
HIGHdeepface/modules/database/cassandra.py0insert multiple embeddings into mysql. args: embeddings (list[dict[str, any]]): list of embeddings to insert. batch_sizeSTRING
HIGHdeepface/modules/database/sqlite.py0insert multiple embeddings into mysql. args: embeddings (list[dict[str, any]]): list of embeddings to insert. batch_sizeSTRING
HIGHdeepface/modules/database/db2.py0insert multiple embeddings into mysql. args: embeddings (list[dict[str, any]]): list of embeddings to insert. batch_sizeSTRING
HIGHdeepface/modules/database/pgvector.py0insert multiple embeddings into mysql. args: embeddings (list[dict[str, any]]): list of embeddings to insert. batch_sizeSTRING
HIGHdeepface/modules/database/postgres.py0insert multiple embeddings into mysql. args: embeddings (list[dict[str, any]]): list of embeddings to insert. batch_sizeSTRING
HIGHdeepface/modules/database/redis.py0insert multiple embeddings into mysql. args: embeddings (list[dict[str, any]]): list of embeddings to insert. batch_sizeSTRING
HIGHdeepface/modules/database/oracle.py0insert multiple embeddings into mysql. args: embeddings (list[dict[str, any]]): list of embeddings to insert. batch_sizeSTRING
HIGHdeepface/modules/database/mysql.py0insert multiple embeddings into mysql. args: embeddings (list[dict[str, any]]): list of embeddings to insert. batch_sizeSTRING
HIGHdeepface/modules/database/cassandra.py0fetch a single embedding record with its vector from mysql. criteria arguments are ignored, because a single table storeSTRING
46 more matches not shown…
Hyper-Verbose Identifiers262 hits · 260 pts
SeverityFileLineSnippetContext
LOWdeepface/commons/image_utils.py135def load_image_from_io_object(obj: IO[bytes]) -> NDArray[Any]:CODE
LOWdeepface/commons/image_utils.py191def load_image_from_file_storage(file: FileStorage) -> NDArray[Any]:CODE
LOWdeepface/commons/weight_utils.py23def download_weights_if_necessary(CODE
LOWdeepface/commons/weight_utils.py95def ensure_source_is_reachable(url: str) -> None:CODE
LOWdeepface/commons/weight_utils.py169def download_all_models_in_one_shot() -> None:CODE
LOWdeepface/commons/package_utils.py64def configure_tensorflow_logging() -> None:CODE
LOWdeepface/commons/package_utils.py90def resolve_dataframe_return_type(return_type: Optional[str]) -> str:CODE
LOWdeepface/models/Demography.py51 def _preprocess_batch_or_single_input(CODE
LOWdeepface/api/src/modules/core/routes.py29def extract_image_from_request(img_key: str) -> Union[str, NDArray[Any]]:CODE
LOWdeepface/modules/verification.py138 def extract_embeddings_and_facial_areas(CODE
LOWdeepface/modules/verification.py249def __extract_faces_and_embeddings(CODE
LOWdeepface/modules/streaming.py228def build_facial_recognition_model(model_name: str) -> None:CODE
LOWdeepface/modules/streaming.py531def perform_facial_recognition(CODE
LOWdeepface/modules/streaming.py588def perform_demography_analysis(CODE
LOWdeepface/modules/normalization.py12def normalize_embedding_minmax(CODE
LOWdeepface/modules/datastore.py1170def __link_verified_identities(CODE
LOWdeepface/modules/database/milvus.py288 def __generate_collection_name(CODE
LOWdeepface/modules/database/qdrant.py253 def __generate_collection_name(CODE
LOWdeepface/modules/database/neo4j.py204 def __link_co_occurring_faces(STRING
LOWdeepface/modules/database/weaviate.py534 def __check_collection_config(self, class_name: str) -> None:CODE
LOWdeepface/modules/database/weaviate.py619def resolve_connection_details(CODE
LOWdeepface/modules/database/weaviate.py706def resolve_collection_options(CODE
LOWdeepface/modules/database/weaviate.py1046def connect_with_legacy_grpc_config(CODE
LOWdeepface/modules/database/weaviate.py1087def legacy_grpc_connection_params_class() -> Any:CODE
LOWtests/unit/test_singleton.py6def test_singleton_same_object():CODE
LOWtests/unit/test_register_connection_cleanup.py59def test_cleanup_for_failures(storage, monkeypatch, owned, stage):CODE
LOWtests/unit/test_register_connection_cleanup.py89def test_success_preserves_payload_and_connection_ownership(storage, owned):CODE
LOWtests/unit/test_register_connection_cleanup.py108def test_connection_creation_failure_is_not_replaced(storage, monkeypatch):CODE
LOWtests/unit/test_register_connection_cleanup.py121def test_repeated_failures_release_every_owned_client(monkeypatch, storage):CODE
LOWtests/unit/test_register_connection_cleanup.py138def test_batch_graph_registration_preserves_nondefault_options(storage, monkeypatch, owned):CODE
LOWtests/unit/test_ssd_opencv_version.py14 def download_weights_if_necessary(**kwargs):CODE
LOWtests/unit/test_datastore_formats.py42def test_datastore_round_trip_is_bit_exact(tmp_path, datastore_format: str, size: int):CODE
LOWtests/unit/test_datastore_formats.py66def test_pyarrow_formats_require_pyarrow(monkeypatch, datastore_format: str):CODE
LOWtests/unit/test_milvus_complete_gallery.py14def test_fetch_all_embeddings_reads_every_page(count, batch_size):CODE
LOWtests/unit/test_milvus_complete_gallery.py33def test_fetch_all_embeddings_closes_iterator_on_query_error():CODE
LOWtests/unit/test_milvus_complete_gallery.py46def test_fetch_all_embeddings_without_registered_collection():CODE
LOW⚡tests/unit/test_return_type.py23def test_default_return_type_is_pandas_if_installed():CODE
LOW⚡tests/unit/test_return_type.py30def test_default_return_type_is_dict_if_pandas_missing(pandas_missing):CODE
LOW⚡tests/unit/test_return_type.py36def test_pandas_return_type_raises_if_pandas_missing(pandas_missing):CODE
LOW⚡tests/unit/test_return_type.py42def test_unsupported_return_type():CODE
LOWtests/unit/test_analyze_numpy_batch.py16def test_analyze_numpy_batch_matches_list_input(monkeypatch, batch_size):CODE
LOWtests/unit/test_analyze_numpy_batch.py31def test_analyze_single_image_keeps_flat_result(monkeypatch):CODE
LOWtests/unit/test_facenet_prewhitening.py14def test_facenet_constant_input(dtype, value):CODE
LOWtests/unit/test_facenet_prewhitening.py23def test_facenet_low_variance_input(dtype):CODE
LOWtests/unit/test_facenet_prewhitening.py35def test_facenet_high_variance_input_is_unchanged(dtype):CODE
LOWtests/unit/test_facenet_prewhitening.py44def test_represent_passes_finite_prewhitened_input_to_model(monkeypatch):CODE
LOWtests/unit/test_api_form_images.py15def test_extract_string_image_from_form(content_type, image):CODE
LOWtests/unit/test_api_form_images.py23def test_extract_string_image_from_json():CODE
LOWtests/unit/test_api_form_images.py34def test_represent_accepts_form_image(monkeypatch, content_type):CODE
LOWtests/unit/test_api_form_images.py52def test_missing_image_in_form(content_type):CODE
LOWtests/unit/test_grpc.py114 def test_represent_bytes_and_path_give_same_embedding(self):CODE
LOWtests/unit/test_grpc.py131 def test_represent_with_png_bytes(self):CODE
LOWtests/unit/test_grpc.py146 def test_represent_bytes_with_many_faces(self):CODE
LOWtests/unit/test_grpc.py160 def test_verify_with_bytes_of_different_persons(self):CODE
LOWtests/unit/test_grpc.py171 def test_verify_with_bytes_and_path(self):CODE
LOWtests/unit/test_opencv_haarcascade.py16def test_haarcascade_files_are_downloaded_if_missing(monkeypatch, tmp_path):CODE
LOWtests/unit/test_opencv_haarcascade.py23 def download_weights_if_necessary(file_name, source_url):CODE
LOWtests/unit/test_opencv_haarcascade.py53def test_haarcascade_files_are_not_downloaded_if_bundled(monkeypatch):CODE
LOWtests/unit/test_opencv_haarcascade.py57 def download_weights_if_necessary(**kwargs):CODE
LOWtests/unit/test_opencv_haarcascade.py69def test_cascade_classifier_is_required(monkeypatch):CODE
202 more matches not shown…
Decorative Section Separators45 hits · 148 pts
SeverityFileLineSnippetContext
MEDIUMdeepface/DeepFace.py48# -----------------------------------COMMENT
MEDIUMdeepface/DeepFace.py63# -----------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/pytorch/Facenet.py33# --------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/pytorch/VGGFace.py20# ---------------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/pytorch/OpenFace.py29# ---------------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/Facenet.py14# --------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/Facenet.py58# --------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/VGGFace.py15# ---------------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/VGGFace.py39# ---------------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/DeepID.py92 # ---------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/FbDeepFace.py8# --------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/FbDeepFace.py84 # ---------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/ArcFace.py14# --------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/ArcFace.py87 # ---------------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/ArcFace.py93 # ---------------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/OpenFace.py35# ---------------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/OpenFace.py391 # -----------------------------------COMMENT
MEDIUMdeepface/models/facial_recognition/tf/OpenFace.py399 # -----------------------------------COMMENT
MEDIUM⚡deepface/models/demography/tf/Age.py81 # --------------------------COMMENT
MEDIUM⚡deepface/models/demography/tf/Age.py89 # --------------------------COMMENT
MEDIUM⚡deepface/models/demography/tf/Age.py93 # --------------------------COMMENT
MEDIUMdeepface/models/demography/tf/Gender.py17# -------------------------------------COMMENT
MEDIUMdeepface/models/demography/tf/Gender.py19# -------------------------------------COMMENT
MEDIUM⚡deepface/models/demography/tf/Gender.py79 # --------------------------COMMENT
MEDIUM⚡deepface/models/demography/tf/Gender.py87 # --------------------------COMMENT
MEDIUM⚡deepface/models/demography/tf/Gender.py91 # --------------------------COMMENT
MEDIUM⚡deepface/models/demography/tf/Race.py75 # --------------------------COMMENT
MEDIUM⚡deepface/models/demography/tf/Race.py83 # --------------------------COMMENT
MEDIUM⚡deepface/models/demography/tf/Race.py87 # --------------------------COMMENT
MEDIUMdeepface/models/demography/tf/Emotion.py125 # ----------------------------COMMENT
MEDIUMdeepface/models/face_detection/OpenCv.py115 # ----------------------------------------------------------------COMMENT
MEDIUMdeepface/models/face_detection/OpenCv.py125 # ----------------------------------------------------------------COMMENT
MEDIUMdeepface/models/face_detection/OpenCv.py139 # -----------------------COMMENT
MEDIUMdeepface/modules/recognition.py320 # ----------------------------COMMENT
MEDIUMdeepface/modules/recognition.py428 # ---------------------------COMMENT
MEDIUMdeepface/modules/recognition.py446 # -----------------------------------COMMENT
MEDIUMdeepface/modules/representation.py143 # ---------------------------------COMMENT
MEDIUMdeepface/modules/demography.py152 # ---------------------------------COMMENT
MEDIUMdeepface/modules/demography.py239 # -----------------------------COMMENT
MEDIUMtests/unit/face-recognition-how.py14# ----------------------------------------------COMMENT
MEDIUMtests/unit/face-recognition-how.py25# ----------------------------------------------COMMENT
MEDIUMtests/unit/face-recognition-how.py41# ----------------------------------------------COMMENT
MEDIUMtests/unit/face-recognition-how.py60# ----------------------------------------------COMMENT
MEDIUMtests/unit/face-recognition-how.py76# ----------------------------------------------COMMENT
MEDIUMtests/unit/face-recognition-how.py107# ----------------------------------------------COMMENT
Excessive Try-Catch Wrapping36 hits · 33 pts
SeverityFileLineSnippetContext
LOWdeepface/commons/weight_utils.py62 except Exception as err: # pylint: disable=broad-exceptCODE
LOWdeepface/commons/weight_utils.py121 except Exception as err:CODE
LOWdeepface/commons/logger.py30 except Exception as err:CODE
LOWdeepface/commons/onnx_utils.py55 except Exception as err:CODE
LOWdeepface/models/facial_recognition/onnx/Buffalo_L.py29 except Exception as err:CODE
LOW…s/facial_recognition/pytorch/TorchFacialRecognition.py81 except Exception as err:CODE
LOWdeepface/models/face_detection/Ssd.py58 except Exception as err:CODE
LOWdeepface/models/face_detection/YuNet.py52 except Exception as err:CODE
LOWdeepface/models/spoofing/pytorch/FasNet.py32 except Exception as err:CODE
LOWdeepface/api/src/grpc_server.py125 except Exception as err:CODE
LOWdeepface/api/src/modules/core/service.py59 except Exception as err:CODE
LOWdeepface/api/src/modules/core/service.py88 except Exception as err:CODE
LOWdeepface/api/src/modules/core/service.py116 except Exception as err:CODE
LOWdeepface/api/src/modules/core/service.py153 except Exception as err:CODE
LOWdeepface/api/src/modules/core/service.py201 except Exception as err:CODE
LOWdeepface/api/src/modules/core/service.py226 except Exception as err:CODE
LOWdeepface/api/src/modules/core/routes.py89 except Exception as err:CODE
LOWdeepface/api/src/modules/core/routes.py122 except Exception as err:CODE
LOWdeepface/api/src/modules/core/routes.py127 except Exception as err:CODE
LOWdeepface/api/src/modules/core/routes.py159 except Exception as err:CODE
LOWdeepface/api/src/modules/core/routes.py211 except Exception as err:CODE
LOWdeepface/api/src/modules/core/routes.py257 except Exception as err:CODE
LOWdeepface/modules/filestore.py139 except Exception as err: # pylint: disable=broad-exceptCODE
MEDIUMdeepface/modules/filestore.py136def validate(self) -> None:CODE
LOWdeepface/modules/streaming.py890 except Exception as err: # pylint: disable=broad-exceptCODE
LOWdeepface/modules/datastore.py1215 except Exception as err: # pylint: disable=broad-exceptCODE
LOWdeepface/modules/database/mssql.py177 except Exception:STRING
LOWdeepface/modules/database/neo4j.py523 except Exception as e: # pylint: disable=broad-exceptSTRING
LOWdeepface/modules/database/db2.py190 except Exception:STRING
LOWdeepface/modules/database/pgvector.py77 except Exception as e:CODE
LOWdeepface/modules/database/pgvector.py148 except Exception as e: # pylint: disable=broad-exceptSTRING
LOWdeepface/modules/database/pgvector.py156 except Exception as e:STRING
LOWdeepface/modules/database/weaviate.py1080 except Exception:CODE
LOWdeepface/modules/database/postgres.py113 except Exception as e:STRING
LOWdeepface/modules/database/oracle.py207 except Exception:STRING
LOWdeepface/modules/database/mysql.py219 except Exception:STRING
AI Structural Patterns21 hits · 21 pts
SeverityFileLineSnippetContext
LOWdeepface/DeepFace.py90CODE
LOWdeepface/DeepFace.py298CODE
LOWdeepface/DeepFace.py465CODE
LOWdeepface/DeepFace.py557CODE
LOWdeepface/DeepFace.py625CODE
LOWdeepface/DeepFace.py758CODE
LOWdeepface/DeepFace.py845CODE
LOWdeepface/DeepFace.py969CODE
LOWdeepface/DeepFace.py1091CODE
LOWdeepface/models/spoofing/pytorch/FasNetBackbone.py519CODE
LOWdeepface/modules/recognition.py41CODE
LOWdeepface/modules/recognition.py562CODE
LOWdeepface/modules/detection.py47CODE
LOWdeepface/modules/verification.py27CODE
LOWdeepface/modules/streaming.py28CODE
LOWdeepface/modules/representation.py21CODE
LOWdeepface/modules/datastore.py47CODE
LOWdeepface/modules/datastore.py232CODE
LOWdeepface/modules/datastore.py611CODE
LOWdeepface/modules/datastore.py840CODE
LOWdeepface/modules/datastore.py1000CODE
Empty Error Handlers4 hits · 20 pts
SeverityFileLineSnippetContext
HIGHdeepface/models/face_detection/OpenCv.py64except:CODE
HIGHtests/integration/test_filestore_find.py59except ftplib.error_perm:CODE
HIGHtests/integration/test_filestore_find.py63except ftplib.error_perm:CODE
HIGHtests/integration/test_filestore_find.py68except ftplib.error_perm:CODE
Deep Nesting19 hits · 19 pts
SeverityFileLineSnippetContext
LOWdeepface/commons/image_utils.py25CODE
LOWdeepface/commons/image_utils.py44CODE
LOWdeepface/commons/weight_utils.py169CODE
LOWdeepface/modules/detection.py47CODE
LOWdeepface/modules/verification.py439CODE
LOWdeepface/modules/preprocessing.py10CODE
LOWdeepface/modules/streaming.py28CODE
LOWdeepface/modules/streaming.py639CODE
LOWdeepface/modules/streaming.py895CODE
LOWdeepface/modules/datastore.py232CODE
LOWdeepface/modules/datastore.py1083CODE
LOWdeepface/modules/demography.py20CODE
LOWdeepface/modules/database/cassandra.py432CODE
LOWdeepface/modules/database/pgvector.py89CODE
LOWdeepface/modules/database/redis.py163CODE
LOWdeepface/modules/database/weaviate.py619CODE
LOWtests/unit/test_verify.py18CODE
LOWtests/unit/test_analyze.py118CODE
LOWtests/integration/test_database_clients.py38CODE
Unused Imports6 hits · 6 pts
SeverityFileLineSnippetContext
LOWdeepface/DeepFace.py40CODE
LOWdeepface/DeepFace.py43CODE
LOWdeepface/modules/modeling.py1CODE
LOWdeepface/modules/database/inventory.py5CODE
LOWtests/unit/test_landmark_sanitization.py2CODE
LOWtests/integration/test_postgres_search.py3CODE
Redundant / Tautological Comments5 hits · 6 pts
SeverityFileLineSnippetContext
LOWdeepface/models/Demography.py39 if not self.model_name: # Check if called from derived classCODE
LOWdeepface/models/demography/onnx/OnnxDemography.py39 if not self.model_name: # Check if called from derived classCODE
LOWdeepface/models/demography/pytorch/TorchDemography.py46 if not self.model_name: # Check if called from derived classCODE
LOWdeepface/api/src/modules/core/routes.py42 # Check if the request is multipart/form-data (file input)COMMENT
LOWdeepface/api/src/modules/core/routes.py57 # Check if the request is coming as base64, file path or url from json or form dataCOMMENT
Over-Commented Block3 hits · 3 pts
SeverityFileLineSnippetContext
LOWtests/unit/stream.py1from deepface import DeepFaceCOMMENT
LOWscripts/dockerize.sh61# docker pull serengil/deepface (or serengil/deepface:pytorch, serengil/deepface:onnx)COMMENT
LOW.github/workflows/tests.yml1name: TestsCOMMENT