AI Slop Code RIsk Monitor

RapidAI/RapidOCR

📄 Awesome OCR multiple programing languages toolkits based on ONNX Runtime, OpenVINO, MNN, PaddlePaddle, TensorRT and PyTorch.

14.8 Moderate pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for RapidAI/RapidOCR, a Python project with 8,109 GitHub stars. SynthScan examined 23,839 lines of code across 137 source files, recording 278 pattern matches distributed across 13 syntactic categories. The legacy adjusted pattern signal is 14.8 (Moderate 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.

14.8
Adjusted Signal
14.8
Raw Pattern Score
100%
Time Factor
2026-10-11
Last Push
8.1K
Stars
Python
Language
23.8K
Lines of Code
137
Files
278
Pattern Hits
2026-10-12
Scan Date
0.06
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 33.5/100 · MEDIUM

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

Hallucinated Dependency & Supply Chain Risk 11.4/100 · LOW

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

Agent Over-Engineering Ratio 35.2/100 · MEDIUM

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

PR Review Velocity Impact 51.2/100 · HIGH

Which changes need focused human review? 278 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 8MEDIUM 12LOW 258

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 278 distinct pattern matches across 13 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.

Hyper-Verbose Identifiers85 hits · 88 pts
SeverityFileLineSnippetContext
LOWpython/tools/validate_model_routes.py74def _validate_model_route_list(path: str, routes: Any) -> None:CODE
LOWpython/tests/test_prepare_wheel_assets.py65def test_select_model_info_supports_default_model_specs(CODE
LOWpython/tests/test_input.py137def test_input_memory_image_matches_bytes(engine):CODE
LOWpython/tests/test_input.py154def test_input_memory_image_invalid_address_or_length(address, length):CODE
LOWpython/tests/test_input.py161def test_input_memory_image_invalid_encoded_data():CODE
LOWpython/tests/test_input.py192def test_input_raw_memory_image(engine):CODE
LOWpython/tests/test_input.py214def test_raw_memory_image_converts_to_bgr(pixel_format, source):CODE
LOWpython/tests/test_input.py225def test_raw_memory_image_supports_gray_stride_and_bottom_up():CODE
LOWpython/tests/test_input.py248def test_raw_memory_image_rejects_invalid_metadata(kwargs, error):CODE
LOW⚡python/tests/test_input.py277def test_invalid_init_parameters(params):CODE
LOW⚡python/tests/test_input.py284def test_nested_init_parameters():CODE
LOW⚡python/tests/test_input.py291def test_input_three_ndim_two_channel(engine):CODE
LOW⚡python/tests/test_input.py301def test_input_three_ndim_one_channel(engine):CODE
LOW⚡python/tests/test_model_root_dir.py55def test_rec_dict_is_downloaded_into_model_root_dir(tmp_path, downloads, as_type):CODE
LOW⚡python/tests/test_model_root_dir.py63def test_rec_dict_falls_back_to_package_models_dir(downloads):CODE
LOW⚡python/tests/test_model_root_dir.py69def test_torch_model_path_accepts_str_model_root_dir(tmp_path, monkeypatch):CODE
LOWpython/tests/test_det_preprocess.py31def test_det_preprocess_respects_limit_side_len(CODE
LOWpython/tests/test_image_preprocessing.py13def test_preprocess_img_returns_original_when_disabled(monkeypatch):CODE
LOWpython/tests/test_image_preprocessing.py29def test_detect_and_crop_skips_vertical_padding_when_disabled(monkeypatch):CODE
LOWpython/tests/test_engine_config.py50def test_onnxruntime_provider_config_uses_cpu_by_default(monkeypatch):CODE
LOWpython/tests/test_engine_config.py61def test_onnxruntime_provider_config_prefers_cuda_when_available(monkeypatch):CODE
LOWpython/tests/test_engine_config.py76def test_onnxruntime_provider_config_falls_back_when_cuda_unavailable(monkeypatch):CODE
LOWpython/tests/test_engine_config.py88def test_onnxruntime_provider_config_prefers_directml_on_windows(monkeypatch):CODE
LOWpython/tests/test_engine_config.py104def test_onnxruntime_provider_config_skips_directml_on_non_windows(monkeypatch):CODE
LOWpython/tests/test_engine_config.py116def test_onnxruntime_provider_config_adds_cann_when_available(monkeypatch):CODE
LOWpython/tests/test_engine_config.py130def test_onnxruntime_provider_config_adds_coreml_on_darwin(monkeypatch):CODE
LOWpython/tests/test_engine_config.py145def test_onnxruntime_provider_config_rejects_empty_session_providers(monkeypatch):CODE
LOWpython/tests/test_engine_config.py157def test_openvino_cpu_config_omits_defaults():CODE
LOWpython/tests/test_engine_config.py171def test_openvino_cpu_config_maps_non_default_values(monkeypatch):CODE
LOWpython/tests/test_engine_config.py194def test_openvino_cpu_config_ignores_invalid_thread_count(monkeypatch):CODE
LOWpython/tests/test_default_config.py49def test_default_global_config(default_cfg):CODE
LOWpython/tests/test_default_config.py65def test_default_onnxruntime_engine_config(default_cfg):CODE
LOWpython/tests/test_default_config.py91def test_default_openvino_engine_config(default_cfg):CODE
LOWpython/tests/test_default_config.py103def test_default_other_engine_configs(default_cfg):CODE
LOWpython/tests/test_default_config.py227def test_default_cls_model_config(default_cfg):CODE
LOWpython/tests/test_default_config.py239def test_default_engine_runtime_config(default_engine):CODE
LOWpython/tests/test_default_config.py251def test_update_det_params_before_model_load():CODE
LOWpython/tests/test_default_config.py263def test_update_det_params_after_model_load():CODE
LOWpython/tests/test_default_config.py277def test_default_engine_real_full_pipeline(default_engine):CODE
LOWpython/tests/test_default_config.py285def test_default_engine_real_rec_only(default_engine):CODE
LOWpython/tests/test_tensorrt.py25def install_fake_tensorrt_modules(monkeypatch):CODE
LOWpython/tests/test_tensorrt.py114def test_tensorrt_cache_dir_initializes_model_root_dir_for_build(monkeypatch, tmp_path):CODE
LOWpython/tests/test_tensorrt.py142def test_tensorrt_default_cache_dir_uses_model_root_dir(monkeypatch, tmp_path):CODE
LOWpython/tests/test_tensorrt.py173def test_tensorrt_model_aliases_share_cache_name(monkeypatch, tmp_path):CODE
LOWpython/tests/test_tensorrt.py190def test_tensorrt_close_handles_partially_initialized_session(monkeypatch):CODE
LOWpython/tests/test_tensorrt.py200def test_tensorrt_explicit_model_path_skips_download(monkeypatch, tmp_path):CODE
LOWpython/tests/test_tensorrt.py234def test_tensorrt_loads_cached_engine_without_rebuild(monkeypatch, tmp_path):CODE
LOWpython/tests/test_tensorrt.py261def test_tensorrt_force_rebuild_ignores_cached_engine(monkeypatch, tmp_path):CODE
LOWpython/tests/test_tensorrt.py301def test_tensorrt_falls_back_to_rebuild_when_cached_engine_load_fails(CODE
LOWpython/tests/test_tensorrt.py340def test_tensorrt_context_creation_failure_raises_tensorrt_error(monkeypatch, tmp_path):CODE
LOWpython/tests/test_tensorrt.py372def test_tensorrt_get_dict_key_url_uses_fallback_engines(monkeypatch):CODE
LOWpython/tests/test_return_word.py76def test_en_return_single_char_box(engine):CODE
LOWpython/tests/test_rtl_dependency.py21def test_validate_rtl_dependency_reports_extra(monkeypatch):CODE
LOWpython/tests/test_rtl_dependency.py35def test_reorder_bidi_for_display_uses_bidi_algorithm(monkeypatch):CODE
LOWpython/tests/test_rtl_dependency.py46def test_arabic_dependency_is_checked_before_engine_initialization(monkeypatch):CODE
LOWpython/tests/test_rtl_dependency.py69def test_arabic_enum_is_normalized_for_rtl_detection():CODE
LOWpython/tests/test_cli.py78def test_check_required_files_missing(monkeypatch, tmp_path):CODE
LOWpython/tests/test_cli.py86def test_cli_check_validates_required_files_before_engine(monkeypatch):CODE
LOWpython/tests/test_cli.py130def test_cli_lang_type_passed_to_engine(monkeypatch):CODE
LOWpython/tests/test_cli.py147def test_cli_vis_empty_result(monkeypatch, tmp_path):CODE
25 more matches not shown…
Unused Imports58 hits · 58 pts
SeverityFileLineSnippetContext
LOWpython/rapidocr/__init__.py7CODE
LOWpython/rapidocr/__init__.py7CODE
LOWpython/rapidocr/__init__.py7CODE
LOWpython/rapidocr/__init__.py7CODE
LOWpython/rapidocr/__init__.py7CODE
LOWpython/rapidocr/__init__.py7CODE
LOWpython/rapidocr/__init__.py10CODE
LOWpython/rapidocr/__init__.py11CODE
LOWpython/rapidocr/__init__.py12CODE
LOWpython/rapidocr/__init__.py13CODE
LOWpython/rapidocr/ch_ppocr_rec/__init__.py4CODE
LOWpython/rapidocr/ch_ppocr_rec/__init__.py5CODE
LOWpython/rapidocr/ch_ppocr_rec/__init__.py5CODE
LOWpython/rapidocr/cal_rec_boxes/__init__.py4CODE
LOWpython/rapidocr/ch_ppocr_det/__init__.py4CODE
LOWpython/rapidocr/ch_ppocr_det/__init__.py5CODE
LOW…thon/rapidocr/inference_engine/onnxruntime/__init__.py4CODE
LOW…thon/rapidocr/inference_engine/onnxruntime/__init__.py4CODE
LOWpython/rapidocr/inference_engine/paddle/__init__.py4CODE
LOWpython/rapidocr/inference_engine/paddle/__init__.py4CODE
LOWpython/rapidocr/inference_engine/openvino/__init__.py4CODE
LOWpython/rapidocr/inference_engine/openvino/__init__.py4CODE
LOWpython/rapidocr/inference_engine/mnn/__init__.py4CODE
LOWpython/rapidocr/inference_engine/mnn/__init__.py4CODE
LOWpython/rapidocr/inference_engine/tensorrt/__init__.py4CODE
LOWpython/rapidocr/inference_engine/tensorrt/__init__.py4CODE
LOWpython/rapidocr/inference_engine/pytorch/__init__.py4CODE
LOWpython/rapidocr/inference_engine/pytorch/__init__.py4CODE
LOW…erence_engine/pytorch/networks/heads/rec_multi_head.py6CODE
LOW…cr/inference_engine/pytorch/networks/heads/__init__.py21CODE
LOW…cr/inference_engine/pytorch/networks/heads/__init__.py22CODE
LOW…cr/inference_engine/pytorch/networks/heads/__init__.py22CODE
LOW…cr/inference_engine/pytorch/networks/heads/__init__.py25CODE
LOW…cr/inference_engine/pytorch/networks/heads/__init__.py26CODE
LOW…cr/inference_engine/pytorch/networks/transforms/stn.py5CODE
LOW…cr/inference_engine/pytorch/networks/transforms/stn.py6CODE
LOW…cr/inference_engine/pytorch/networks/transforms/stn.py7CODE
LOW…cr/inference_engine/pytorch/networks/transforms/tps.py1CODE
LOW…cr/inference_engine/pytorch/networks/transforms/tps.py2CODE
LOW…cr/inference_engine/pytorch/networks/transforms/tps.py3CODE
LOW…ference_engine/pytorch/networks/transforms/__init__.py19CODE
LOW…ference_engine/pytorch/networks/transforms/__init__.py20CODE
LOW…ference_engine/pytorch/networks/transforms/__init__.py21CODE
LOW…ference_engine/pytorch/networks/transforms/__init__.py22CODE
LOW…pytorch/networks/transforms/tps_spatial_transformer.py5CODE
LOW…pytorch/networks/transforms/tps_spatial_transformer.py6CODE
LOW…pytorch/networks/transforms/tps_spatial_transformer.py7CODE
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py19CODE
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py19CODE
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py19CODE
LOW…rence_engine/pytorch/networks/backbones/rec_pplcnet.py27CODE
LOW…rence_engine/pytorch/networks/backbones/rec_pplcnet.py27CODE
LOW…rence_engine/pytorch/networks/backbones/rec_pplcnet.py27CODE
LOW…rence_engine/pytorch/networks/backbones/rec_lcnetv3.py15CODE
LOW…rence_engine/pytorch/networks/backbones/rec_lcnetv3.py15CODE
LOW…rence_engine/pytorch/networks/backbones/rec_lcnetv3.py15CODE
LOWpython/rapidocr/ch_ppocr_cls/__init__.py4CODE
LOWpython/rapidocr/ch_ppocr_cls/__init__.py5CODE
Excessive Try-Catch Wrapping29 hits · 34 pts
SeverityFileLineSnippetContext
LOWpython/tests/test_lazy_model_load.py49 except Exception as exc:CODE
MEDIUMpython/tests/test_lazy_model_load.py45def worker():CODE
LOWpython/rapidocr/utils/process_img.py145 except Exception as exc:CODE
LOWpython/rapidocr/utils/process_img.py175 except Exception as exc:CODE
LOWpython/rapidocr/utils/load_image.py96 except Exception as e:CODE
LOWpython/rapidocr/utils/load_image.py102 except Exception as e:CODE
LOWpython/rapidocr/utils/load_image.py119 except Exception as e:CODE
LOWpython/rapidocr/utils/utils.py104 except Exception as e:CODE
MEDIUMpython/rapidocr/utils/utils.py15def validate_rtl_dependency():CODE
LOWpython/rapidocr/ch_ppocr_det/utils.py107 except Exception as exc:CODE
LOWpython/rapidocr/inference_engine/onnxruntime/main.py99 except Exception as e:CODE
LOWpython/rapidocr/inference_engine/paddle/main.py92 except Exception as e:CODE
LOWpython/rapidocr/inference_engine/openvino/main.py72 except Exception as e:CODE
LOWpython/rapidocr/inference_engine/mnn/main.py78 except Exception as e:CODE
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py70 except Exception as e:CODE
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py77 except Exception as e:CODE
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py84 except Exception as e:CODE
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py87 except Exception as e:CODE
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py129 except Exception as e:CODE
LOWpython/rapidocr/inference_engine/tensorrt/main.py189 except Exception as e:CODE
LOWpython/rapidocr/inference_engine/tensorrt/main.py283 except Exception as e:CODE
LOWpython/rapidocr/inference_engine/tensorrt/main.py386 except Exception as e:CODE
MEDIUMpython/rapidocr/inference_engine/tensorrt/main.py175def _get_max_profile_size(self) -> int:CODE
LOW…hon/rapidocr/inference_engine/tensorrt/memory_utils.py160 except Exception:CODE
LOW…hon/rapidocr/inference_engine/tensorrt/memory_utils.py167 except Exception:CODE
LOW…hon/rapidocr/inference_engine/tensorrt/memory_utils.py202 except Exception:CODE
LOW…hon/rapidocr/inference_engine/tensorrt/memory_utils.py218 except Exception:CODE
LOW…hon/rapidocr/inference_engine/tensorrt/memory_utils.py226 except Exception:CODE
LOW…hon/rapidocr/inference_engine/tensorrt/memory_utils.py271 except Exception:CODE
Empty Error Handlers5 hits · 25 pts
SeverityFileLineSnippetContext
HIGH…hon/rapidocr/inference_engine/tensorrt/memory_utils.py226except Exception:CODE
HIGH…hon/rapidocr/inference_engine/tensorrt/memory_utils.py202except Exception:CODE
HIGH…hon/rapidocr/inference_engine/tensorrt/memory_utils.py271except Exception:CODE
HIGH…hon/rapidocr/inference_engine/tensorrt/memory_utils.py160except Exception:CODE
HIGH…hon/rapidocr/inference_engine/tensorrt/memory_utils.py167except Exception:CODE
Over-Commented Block24 hits · 24 pts
SeverityFileLineSnippetContext
LOWpython/tests/__init__.py1# -*- encoding: utf-8 -*-COMMENT
LOWpython/rapidocr/ch_ppocr_rec/main.py1# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.COMMENT
LOWpython/rapidocr/utils/__init__.py1# -*- encoding: utf-8 -*-COMMENT
LOWpython/rapidocr/ch_ppocr_det/main.py1# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.COMMENT
LOWpython/rapidocr/inference_engine/__init__.py1# -*- encoding: utf-8 -*-COMMENT
LOW…rapidocr/inference_engine/pytorch/networks/__init__.py1# -*- encoding: utf-8 -*-COMMENT
LOW…cr/inference_engine/pytorch/networks/necks/__init__.py1# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.COMMENT
LOW…ence_engine/pytorch/networks/architectures/__init__.py1# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.COMMENT
LOW…cr/inference_engine/pytorch/networks/heads/__init__.py1# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.COMMENT
LOW…ce_engine/pytorch/networks/heads/multiheadAttention.py81 q = self._in_proj_q(query)COMMENT
LOW…r/inference_engine/pytorch/networks/transforms/tsrn.py1# copyright (c) 2020 PaddlePaddle Authors. All Rights Reserve.COMMENT
LOW…ference_engine/pytorch/networks/transforms/__init__.py1# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.COMMENT
LOW…/inference_engine/pytorch/networks/transforms/tbsrn.py1# copyright (c) 2022 PaddlePaddle Authors. All Rights Reserve.COMMENT
LOW…rence_engine/pytorch/networks/backbones/rec_lcnetv4.py1# copyright (c) 2021 PaddlePaddle Authors. All Rights Reserve.COMMENT
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py1# copyright (c) 2024 PaddlePaddle Authors. All Rights Reserve.COMMENT
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py841#COMMENT
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py861# N, C, _, _ = x.shapeCOMMENT
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py881#COMMENT
LOW…nference_engine/pytorch/networks/backbones/__init__.py1# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.COMMENT
LOW…rence_engine/pytorch/networks/backbones/rec_pplcnet.py1# copyright (c) 2021 PaddlePaddle Authors. All Rights Reserve.COMMENT
LOW…rence_engine/pytorch/networks/backbones/rec_lcnetv3.py1# copyright (c) 2021 PaddlePaddle Authors. All Rights Reserve.COMMENT
LOW…ce_engine/pytorch/networks/backbones/rec_donut_swin.py1# copyright (c) 2024 PaddlePaddle Authors. All Rights Reserve.COMMENT
LOWpython/rapidocr/ch_ppocr_cls/utils.py1# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.COMMENT
LOWpython/rapidocr/ch_ppocr_cls/main.py1# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.COMMENT
Decorative Section Separators8 hits · 24 pts
SeverityFileLineSnippetContext
MEDIUM…docr/inference_engine/pytorch/networks/necks/db_fpn.py460# ============================================================================COMMENT
MEDIUM…docr/inference_engine/pytorch/networks/necks/db_fpn.py462# ============================================================================COMMENT
MEDIUM…rence_engine/pytorch/networks/backbones/rec_lcnetv4.py22# ---------------------------------------------------------------------------COMMENT
MEDIUM…rence_engine/pytorch/networks/backbones/rec_lcnetv4.py24# ---------------------------------------------------------------------------COMMENT
MEDIUM…rence_engine/pytorch/networks/backbones/rec_lcnetv4.py166# ---------------------------------------------------------------------------COMMENT
MEDIUM…rence_engine/pytorch/networks/backbones/rec_lcnetv4.py168# ---------------------------------------------------------------------------COMMENT
MEDIUM…rence_engine/pytorch/networks/backbones/rec_lcnetv4.py534# ---------------------------------------------------------------------------COMMENT
MEDIUM…rence_engine/pytorch/networks/backbones/rec_lcnetv4.py536# ---------------------------------------------------------------------------COMMENT
AI Structural Patterns19 hits · 19 pts
SeverityFileLineSnippetContext
LOWpython/rapidocr/main.py93CODE
LOW…apidocr/inference_engine/pytorch/networks/necks/rnn.py77CODE
LOW…apidocr/inference_engine/pytorch/networks/necks/rnn.py199CODE
LOW…ce_engine/pytorch/networks/heads/multiheadAttention.py147CODE
LOW…ce_engine/pytorch/networks/heads/multiheadAttention.py155CODE
LOW…ce_engine/pytorch/networks/heads/multiheadAttention.py163CODE
LOW…inference_engine/pytorch/networks/heads/det_db_head.py106CODE
LOW…ference_engine/pytorch/networks/heads/rec_nrtr_head.py34CODE
LOW…r/inference_engine/pytorch/networks/transforms/tsrn.py34CODE
LOW…/inference_engine/pytorch/networks/transforms/tbsrn.py140CODE
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py69CODE
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py1330CODE
LOW…rence_engine/pytorch/networks/backbones/rec_svtrnet.py20CODE
LOW…rence_engine/pytorch/networks/backbones/rec_svtrnet.py52CODE
LOW…rence_engine/pytorch/networks/backbones/rec_svtrnet.py130CODE
LOW…rence_engine/pytorch/networks/backbones/rec_svtrnet.py199CODE
LOW…rence_engine/pytorch/networks/backbones/rec_svtrnet.py404CODE
LOW…ce_engine/pytorch/networks/backbones/rec_donut_swin.py465CODE
LOW…ce_engine/pytorch/networks/backbones/rec_donut_swin.py46CODE
Deep Nesting18 hits · 18 pts
SeverityFileLineSnippetContext
LOWpython/tools/validate_model_routes.py18CODE
LOWpython/tools/prepare_wheel_assets.py146CODE
LOWpython/tools/prepare_wheel_assets.py296CODE
LOWpython/tests/test_model_resolver.py20CODE
LOW…n/rapidocr/inference_engine/tensorrt/engine_builder.py87CODE
LOW…hon/rapidocr/inference_engine/tensorrt/memory_utils.py171CODE
LOW…n/rapidocr/inference_engine/pytorch/networks/common.py51CODE
LOW…docr/inference_engine/pytorch/networks/necks/db_fpn.py480CODE
LOW…apidocr/inference_engine/pytorch/networks/necks/rnn.py139CODE
LOW…ce_engine/pytorch/networks/architectures/base_model.py66CODE
LOW…erence_engine/pytorch/networks/heads/rec_multi_head.py24CODE
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py737CODE
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py775CODE
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py565CODE
LOW…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py1425CODE
LOW…rence_engine/pytorch/networks/backbones/rec_svtrnet.py573CODE
LOW…ference_engine/pytorch/networks/backbones/rec_hgnet.py227CODE
LOW…rence_engine/pytorch/networks/backbones/rec_lcnetv3.py243CODE
Modern Structural Boilerplate16 hits · 16 pts
SeverityFileLineSnippetContext
LOWpython/rapidocr/__init__.py34__all__ = [CODE
LOWpython/rapidocr/ch_ppocr_rec/__init__.py7__all__ = ["TextRecognizer", "TextRecInput", "TextRecOutput"]CODE
LOWpython/rapidocr/cal_rec_boxes/__init__.py6__all__ = ["CalRecBoxes"]CODE
LOWpython/rapidocr/ch_ppocr_det/__init__.py7__all__ = ["TextDetector", "TextDetOutput"]CODE
LOW…thon/rapidocr/inference_engine/onnxruntime/__init__.py6__all__ = ["ONNXRuntimeError", "OrtInferSession"]CODE
LOWpython/rapidocr/inference_engine/paddle/__init__.py6__all__ = ["PaddleInferError", "PaddleInferSession"]CODE
LOWpython/rapidocr/inference_engine/openvino/__init__.py6__all__ = ["OpenVINOError", "OpenVINOInferSession"]CODE
LOWpython/rapidocr/inference_engine/mnn/__init__.py6__all__ = ["MNNError", "MNNInferSession"]CODE
LOWpython/rapidocr/inference_engine/tensorrt/__init__.py6__all__ = ["TensorRTError", "TRTInferSession"]CODE
LOWpython/rapidocr/inference_engine/pytorch/__init__.py6__all__ = ["TorchInferError", "TorchInferSession"]CODE
LOW…cr/inference_engine/pytorch/networks/necks/__init__.py15__all__ = ["build_neck"]CODE
LOW…ence_engine/pytorch/networks/architectures/__init__.py17__all__ = ["build_model"]CODE
LOW…cr/inference_engine/pytorch/networks/heads/__init__.py15__all__ = ["build_head"]CODE
LOW…ference_engine/pytorch/networks/transforms/__init__.py15__all__ = ["build_transform"]CODE
LOW…nference_engine/pytorch/networks/backbones/__init__.py15__all__ = ["build_backbone"]CODE
LOWpython/rapidocr/ch_ppocr_cls/__init__.py7__all__ = ["TextClassifier", "TextClsOutput"]CODE
Docstring Block Structure3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHpython/rapidocr/inference_engine/tensorrt/main.py94Run inference on input data. This method executes the TensorRT engine on the provided input. It uses prSTRING
HIGH…hon/rapidocr/inference_engine/tensorrt/memory_utils.py57Allocate host and device buffers for TensorRT inference. This function allocates memory buffers for all input and oSTRING
HIGH…nce_engine/pytorch/networks/backbones/rec_pphgnetv2.py570use 'handle_func' to modify the sub-layer(s) specified by 'layer_name_pattern'. Args: layer_name_paSTRING
Verbosity Indicators6 hits · 14 pts
SeverityFileLineSnippetContext
LOW⚡python/rapidocr/ch_ppocr_det/main.py81 # Step 1: Stable sort by y (top to bottom)COMMENT
LOW⚡python/rapidocr/ch_ppocr_det/main.py87 # Step 2: Assign line IDs based on adjacent y differencesCOMMENT
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py115 # Step 1: Set input shape for dynamic dimensionsCOMMENT
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py118 # Step 2: Copy input data to GPUCOMMENT
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py121 # Step 3: Execute inferenceCOMMENT
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py124 # Step 4: Copy output back to CPUCOMMENT
Structural Annotation Overuse6 hits · 14 pts
SeverityFileLineSnippetContext
LOW⚡python/rapidocr/ch_ppocr_det/main.py81 # Step 1: Stable sort by y (top to bottom)COMMENT
LOW⚡python/rapidocr/ch_ppocr_det/main.py87 # Step 2: Assign line IDs based on adjacent y differencesCOMMENT
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py115 # Step 1: Set input shape for dynamic dimensionsCOMMENT
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py118 # Step 2: Copy input data to GPUCOMMENT
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py121 # Step 3: Execute inferenceCOMMENT
LOW⚡python/rapidocr/inference_engine/tensorrt/main.py124 # Step 4: Copy output back to CPUCOMMENT
Slop Phrases1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM…ce_engine/pytorch/networks/architectures/base_model.py23 # if you make model differently, you can use transfrom in det and clsCOMMENT