Repository Analysis

docling-project/docling

Get your documents ready for gen AI

6.0 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of docling-project/docling, a Python project with 63,106 GitHub stars. SynthScan v2.0 examined 495,714 lines of code across 1006 source files, recording 2461 pattern matches distributed across 19 syntactic categories. The overall adjusted score of 6.0 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

6.0
Adjusted Score
6.0
Raw Score
100%
Time Factor
2026-07-13
Last Push
63.1K
Stars
Python
Language
495.7K
Lines of Code
1.0K
Files
2.5K
Pattern Hits
2026-07-14
Scan Date
0.05
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 49MEDIUM 211LOW 2201

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 2461 distinct pattern matches across 19 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Hyper-Verbose Identifiers994 hits · 930 pts
SeverityFileLineSnippetContext
LOWtests/test_kserve_v2_binary.py14def test_bytes_tensor_binary_encoding_round_trip() -> None:CODE
LOWtests/test_kserve_v2_binary.py49def test_http_binary_request_serialization() -> None:CODE
LOWtests/test_kserve_v2_binary.py103def test_http_binary_response_decoding() -> None:CODE
LOWtests/test_backend_mets_gbs.py81def test_max_file_bytes_limit(test_doc_path):CODE
LOWtests/test_backend_mets_gbs.py95def test_max_total_bytes_limit(test_doc_path):CODE
LOWtests/test_backend_mets_gbs.py112def test_max_member_count_limit(test_doc_path):CODE
LOWtests/test_backend_mets_gbs.py126def test_limits_with_valid_values(test_doc_path):CODE
LOWtests/test_backend_mets_gbs.py153def test_total_bytes_tracking_across_pages(test_doc_path):CODE
LOWtests/test_run_pr_fast_checks.py46def test_collect_targets_limits_scope_to_supported_paths(tmp_path: Path) -> None:CODE
LOWtests/test_run_pr_fast_checks.py95def test_collect_targets_uses_smoke_target_for_tooling_only_changes(CODE
LOWtests/test_run_pr_fast_checks.py115def test_collect_targets_skips_unrelated_changes(tmp_path: Path) -> None:CODE
LOWtests/test_run_pr_fast_checks.py131def test_build_check_units_uses_ty_check(monkeypatch) -> None:CODE
LOWtests/test_run_pr_fast_checks.py153def test_git_helpers_accept_synthetic_merge_tree(tmp_path: Path) -> None:CODE
LOWtests/test_run_pr_fast_checks.py196def test_log_result_suppresses_success_output(capsys) -> None:CODE
LOWtests/test_run_pr_fast_checks.py214def test_log_result_prints_failure_output(capsys) -> None:CODE
LOWtests/test_run_pr_fast_checks.py232def test_significant_regression_requires_same_successful_target_set() -> None:CODE
LOWtests/test_rapid_ocr_lang.py34def test_rapidocr_uses_english_default_assets(monkeypatch, tmp_path: Path) -> None:CODE
LOWtests/test_rapid_ocr_lang.py56def test_rapidocr_defaults_to_chinese_mobile_assets(CODE
LOWtests/test_rapid_ocr_lang.py84def test_download_models_uses_default_onnx_paths(monkeypatch, tmp_path: Path) -> None:CODE
LOWtests/test_rapid_ocr_lang.py87 def fake_download_url_with_progress(url: str, *, progress: bool) -> BytesIO:CODE
LOWtests/test_rapid_ocr_lang.py110def test_model_downloader_fetches_both_rapidocr_language_sets(CODE
LOWtests/test_rapid_ocr_lang.py147def test_rapidocr_uses_latin_default_assets(monkeypatch, tmp_path: Path) -> None:CODE
LOWtests/test_rapid_ocr_lang.py166def test_resolve_language_aliases_and_groups(caplog) -> None:CODE
LOWtests/test_rapid_ocr_lang.py179def test_resolve_language_warns_on_silent_fallback(caplog) -> None:CODE
LOWtests/test_rapid_ocr_lang.py195def test_rapidocr_passes_lang_type_without_artifacts(monkeypatch) -> None:CODE
LOWtests/test_input_doc.py33def test_in_doc_from_valid_path():CODE
LOWtests/test_input_doc.py40def test_in_doc_from_invalid_path():CODE
LOWtests/test_input_doc.py48def test_in_doc_from_valid_buf():CODE
LOWtests/test_input_doc.py56def test_in_doc_from_invalid_buf():CODE
LOWtests/test_input_doc.py64def test_in_doc_with_page_range():CODE
LOWtests/test_input_doc.py98def test_in_doc_with_backend_options():CODE
LOWtests/test_input_doc.py130def test_html_backend_options_set_source_uri_per_input(tmp_path):CODE
LOWtests/test_input_doc.py430def _make_input_doc_from_stream(doc_stream):CODE
LOWtests/test_failed_pages.py35def test_normal_pages_all_present(normal_4pages_path):CODE
LOWtests/test_failed_pages.py169def test_failed_pages_have_size_info(skipped_1page_path):CODE
LOWtests/test_failed_pages.py197def test_errors_recorded_for_failed_pages(skipped_1page_path):CODE
LOWtests/test_layout_postprocessor.py39def test_sort_cells_uses_native_cell_index_order() -> None:CODE
LOWtests/test_layout_postprocessor.py49def test_cross_type_overlaps_removes_picture_coinciding_with_table() -> None:CODE
LOWtests/test_layout_postprocessor.py65def test_cross_type_overlaps_keeps_picture_not_overlapping_table() -> None:CODE
LOWtests/test_layout_postprocessor.py79def test_cross_type_overlaps_keeps_small_picture_inside_table() -> None:CODE
LOWtests/test_picture_description_vlm_model.py86def test_legacy_picture_description_vlm_batches_generation() -> None:CODE
LOWtests/test_picture_description_vlm_model.py120def test_legacy_picture_description_vlm_skips_empty_batch() -> None:CODE
LOWtests/test_picture_description_vlm_model.py134def test_legacy_picture_description_vlm_init_uses_configured_padding_side(CODE
LOWtests/test_backend_patent_uspto.py438def test_patent_uspto_grant_aps(patents):CODE
LOWtests/groundtruth_paths.py24def get_regular_groundtruth_paths(CODE
LOWtests/groundtruth_paths.py50def get_ocr_groundtruth_paths(CODE
LOWtests/test_table_structure_granite_vision.py83def test_parse_multiple_rowspan():CODE
LOWtests/test_table_structure_granite_vision.py171def test_model_disabled_skips_pages():CODE
LOWtests/test_table_structure_granite_vision.py200def test_model_invalid_backend_returns_empty_prediction():CODE
LOWtests/test_table_structure_granite_vision.py247def test_parse_ecel_self_closing():CODE
LOWtests/test_table_structure_granite_vision.py257def test_factory_registration():CODE
LOWtests/test_heading_hierarchy_pdf.py25def test_pdf_pipeline_assigns_heading_levels_from_existing_fixture(CODE
LOWtests/test_dots_vlm.py76def test_dots_model_image_size_rescaling():CODE
LOWtests/test_dots_vlm.py131def test_dots_bad_bbox_elements():CODE
LOWtests/test_dots_vlm.py150def test_dots_non_dict_elements():CODE
LOWtests/test_dots_vlm.py162def test_dots_all_files_parse():CODE
LOWtests/test_options.py43def get_converters_with_table_options():CODE
LOWtests/test_options.py199def test_invalid_input_over_max_file_size(test_doc_path):CODE
LOWtests/test_options.py209def test_invalid_input_over_max_num_pages(test_doc_path):CODE
LOWtests/test_options.py219def test_invalid_input_unreadable_source():CODE
934 more matches not shown…
Unused Imports489 hits · 436 pts
SeverityFileLineSnippetContext
LOWtests/test_run_pr_fast_checks.py1CODE
LOWtests/test_deepseekocr_vlm.py3CODE
LOWtests/test_deepseekocr_vlm.py5CODE
LOWtests/test_deepseekocr_vlm.py19CODE
LOWtests/test_deepseekocr_vlm.py19CODE
LOWtests/test_backend_webp.py6CODE
LOWtests/test_backend_webp.py9CODE
LOWtests/test_page_assemble_model.py13CODE
LOWtests/test_page_assemble_model.py135CODE
LOWtests/test_backend_msexcel.py20CODE
LOWtests/test_extraction.py12CODE
LOWtests/test_pytest_marker_selection.py1CODE
LOWtests/test_asr_mlx_whisper.py12CODE
LOWtests/test_asr_mlx_whisper.py12CODE
LOWtests/test_asr_mlx_whisper.py12CODE
LOWtests/test_api_kserve_v2_engine_scaffolding.py3CODE
LOWtests/test_e2e_nemotron_ocr_conversion.py42CODE
LOWtests/test_conversion_result_json.py1CODE
LOWtests/test_conversion_result_json.py4CODE
LOWtests/test_conversion_result_json.py6CODE
LOWtests/test_conversion_result_json.py10CODE
LOWtests/test_kserve_v2_ocr_integration.py4CODE
LOWtests/test_check_needs_results.py1CODE
LOWtests/test_heading_hierarchy.py11CODE
LOWtests/test_backend_asciidoc.py4CODE
LOWtests/test_backend_asciidoc.py4CODE
LOWtests/test_backend_asciidoc.py13CODE
LOWtests/test_backend_image_native.py4CODE
LOWtests/test_threaded_pipeline.py1CODE
LOWtests/test_threaded_pipeline.py2CODE
LOWtests/test_e2e_ocr_conversion.py8CODE
LOWtests/test_vlm_pipeline_status.py23CODE
LOWtests/test_asr_pipeline.py2CODE
LOWtests/test_backend_docling_parse.py10CODE
LOWtests/test_granite_vision_extraction.py7CODE
LOWtests/test_backend_pptx.py2CODE
LOWtests/test_backend_pptx.py7CODE
LOWtests/test_backend_opendocument.py10CODE
LOWtests/test_latex/test_basic.py5CODE
LOWtests/test_latex/conftest.py1CODE
LOWtests/test_latex/conftest.py5CODE
LOWtests/test_latex/conftest.py5CODE
LOWtests/test_latex/conftest.py7CODE
LOWtests/test_latex/conftest.py8CODE
LOWtests/test_latex/conftest.py9CODE
LOWtests/test_latex/conftest.py10CODE
LOWtests/test_latex/conftest.py10CODE
LOWtests/test_latex/conftest.py10CODE
LOWtests/test_latex/conftest.py11CODE
LOWtests/test_latex/conftest.py14CODE
LOWtests/test_latex/conftest.py14CODE
LOWtests/test_latex/test_macros.py5CODE
LOWtests/test_latex/test_macros.py6CODE
LOWtests/test_latex/test_macros.py9CODE
LOWtests/test_latex/test_macros.py11CODE
LOWtests/test_latex/test_macros.py11CODE
LOWtests/test_latex/test_macros.py12CODE
LOWtests/test_latex/test_macros.py15CODE
LOWtests/test_latex/test_macros.py15CODE
LOWtests/test_latex/test_tables.py4CODE
429 more matches not shown…
Decorative Section Separators111 hits · 366 pts
SeverityFileLineSnippetContext
MEDIUMpyproject.toml75# ============================================================================COMMENT
MEDIUMpyproject.toml77# ============================================================================COMMENT
MEDIUMpyproject.toml90# ============================================================================COMMENT
MEDIUMpyproject.toml92# ============================================================================COMMENT
MEDIUMpyproject.toml177# ============================================================================COMMENT
MEDIUMpyproject.toml179# ============================================================================COMMENT
MEDIUMpyproject.toml210# ============================================================================COMMENT
MEDIUMpyproject.toml212# ============================================================================COMMENT
MEDIUMpyproject.toml242# ============================================================================COMMENT
MEDIUMpyproject.toml244# ============================================================================COMMENT
MEDIUMpyproject.toml269# ============================================================================COMMENT
MEDIUMpyproject.toml271# ============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py44# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py46# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py436# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py438# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py478# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py480# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py590# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py592# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py687# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py689# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py273# =============================================================================COMMENT
MEDIUMtests/test_vlm_presets_and_runtime_options.py275# =============================================================================COMMENT
MEDIUMtests/test_service_client_sdk_unit.py2651# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_client_sdk_unit.py2653# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_client_sdk_unit.py3116# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_client_sdk_unit.py3118# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_client_integration.py294# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_client_integration.py296# ---------------------------------------------------------------------------COMMENT
MEDIUMdocling/pipeline/asr_transcriber.py612# ============================================================COMMENT
MEDIUMdocling/pipeline/asr_transcriber.py615# ============================================================COMMENT
MEDIUMdocling/pipeline/asr_transcriber.py618# ============================================================COMMENT
MEDIUMdocling/pipeline/asr_transcriber.py620# ============================================================COMMENT
MEDIUMdocling/pipeline/standard_pdf_pipeline.py87# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocling/pipeline/standard_pdf_pipeline.py89# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocling/pipeline/standard_pdf_pipeline.py562# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocling/pipeline/standard_pdf_pipeline.py564# ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocling/pipeline/standard_pdf_pipeline.py579 # ────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocling/pipeline/standard_pdf_pipeline.py581 # ────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocling/pipeline/standard_pdf_pipeline.py678 # ────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocling/pipeline/standard_pdf_pipeline.py680 # ────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMdocling/service_client/client.py426 # ------------------------------------------------------------------COMMENT
MEDIUMdocling/service_client/client.py428 # ------------------------------------------------------------------COMMENT
MEDIUMdocling/datamodel/pipeline_options.py1001# =============================================================================COMMENT
MEDIUMdocling/datamodel/pipeline_options.py1003# =============================================================================COMMENT
MEDIUMdocling/datamodel/pipeline_options.py1042# =============================================================================COMMENT
MEDIUMdocling/datamodel/pipeline_options.py1044# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py915# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py917# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py919# -----------------------------------------------------------------------------COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py921# -----------------------------------------------------------------------------COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py46# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py48# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py119# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py121# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py361# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py363# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py430# =============================================================================COMMENT
MEDIUMdocling/datamodel/stage_model_specs.py432# =============================================================================COMMENT
51 more matches not shown…
Excessive Try-Catch Wrapping198 hits · 215 pts
SeverityFileLineSnippetContext
LOW.actor/actor.sh268 except Exception as e:CODE
LOWtests/test_deepseekocr_vlm.py107 except Exception:CODE
LOWtests/test_options.py105 except Exception as ex:CODE
LOWtests/test_backend_msexcel.py46 except Exception:CODE
LOWtests/test_backend_msword.py88 except Exception:CODE
LOWtests/test_glmocr_vlm.py130 except Exception:CODE
LOWtests/test_falcon_ocr_vlm.py93 except Exception:CODE
LOWtests/test_lightonocr_vlm.py135 except Exception:CODE
LOWtests/test_nanonets_ocr_vlm.py144 except Exception:CODE
LOW…ified-python/references/advanced/exception-handling.md49 except Exception:CODE
LOW…ified-python/references/advanced/exception-handling.md158except Exception:CODE
LOW…ified-python/references/advanced/exception-handling.md167except Exception as e:CODE
LOW…ified-python/references/advanced/exception-handling.md178 except Exception:CODE
LOWdocling/pipeline/asr_transcriber.py106 except Exception as e:CODE
LOWdocling/pipeline/asr_transcriber.py264 except Exception as exc:CODE
LOWdocling/pipeline/asr_transcriber.py274 except Exception as e:CODE
LOWdocling/pipeline/asr_transcriber.py376 except Exception as exc:CODE
LOWdocling/pipeline/asr_transcriber.py554 except Exception as exc:CODE
LOWdocling/pipeline/asr_transcriber.py563 except Exception as e:CODE
LOWdocling/pipeline/base_extraction_pipeline.py47 except Exception as e:CODE
LOWdocling/pipeline/base_pipeline.py88 except Exception as e:CODE
LOWdocling/pipeline/base_pipeline.py319 except Exception as e:CODE
MEDIUMdocling/pipeline/standard_pdf_pipeline.py273def _run(self) -> None:CODE
MEDIUMdocling/pipeline/standard_pdf_pipeline.py811def _produce_pages() -> None:CODE
LOWdocling/pipeline/standard_pdf_pipeline.py281 except Exception: # pragma: no cover - top-level guardCODE
LOWdocling/pipeline/standard_pdf_pipeline.py368 except Exception as exc:CODE
LOWdocling/pipeline/standard_pdf_pipeline.py530 except Exception as exc:CODE
LOWdocling/pipeline/standard_pdf_pipeline.py823 except Exception:CODE
LOWdocling/pipeline/standard_pdf_pipeline.py835 except Exception as exc:CODE
LOWdocling/pipeline/extraction_vlm_pipeline.py137 except Exception as e:CODE
LOWdocling/pipeline/extraction_vlm_pipeline.py144 except Exception as e:CODE
LOWdocling/pipeline/extraction_vlm_pipeline.py198 except Exception as e:CODE
LOWdocling/pipeline/extraction_vlm_pipeline.py201 except Exception as e:CODE
LOWdocling/pipeline/vlm_pipeline.py418 except Exception as exc:CODE
LOWdocling/utils/chandra_utils.py206 except Exception as e:CODE
LOWdocling/utils/chandra_utils.py217 except Exception as e:CODE
LOWdocling/utils/glm_utils.py32 except Exception:CODE
LOWdocling/utils/api_image_request.py184 except Exception as e:CODE
LOWdocling/utils/api_image_request.py256 except Exception as e:CODE
LOWdocling/utils/video_frame_sampling.py123 except Exception as exc: # pragma: no cover - defensiveCODE
LOWdocling/utils/deepseekocr_utils.py117 except Exception as e:CODE
LOWdocling/backend/webvtt_backend.py74 except Exception as e:CODE
LOWdocling/backend/md_backend.py198 except Exception as e:CODE
LOWdocling/backend/msword_backend.py368 except Exception as e:CODE
LOWdocling/backend/msword_backend.py593 except Exception:CODE
LOWdocling/backend/msword_backend.py692 except Exception:CODE
LOWdocling/backend/msword_backend.py799 except Exception as e:CODE
LOWdocling/backend/msword_backend.py891 except Exception as e:CODE
LOWdocling/backend/msword_backend.py1044 except Exception:CODE
LOWdocling/backend/msword_backend.py2563 except Exception as e:CODE
LOWdocling/backend/msword_backend.py2856 except Exception as e:CODE
LOWdocling/backend/msword_backend.py2934 except Exception as e:CODE
LOWdocling/backend/csv_backend.py31 except Exception as e:CODE
LOWdocling/backend/msexcel_backend.py373 except Exception as e:CODE
LOWdocling/backend/msexcel_backend.py380 except Exception as e:CODE
LOWdocling/backend/msexcel_backend.py383 except Exception as e:CODE
LOWdocling/backend/msexcel_backend.py276 except Exception as e:CODE
LOWdocling/backend/msexcel_backend.py324 except Exception as e:CODE
LOWdocling/backend/msexcel_backend.py1153 except Exception as exc:CODE
LOWdocling/backend/msexcel_backend.py1202 except Exception as exc:CODE
138 more matches not shown…
Deep Nesting245 hits · 205 pts
SeverityFileLineSnippetContext
LOWtests/test_backend_html.py144CODE
LOWtests/test_backend_html.py682CODE
LOWtests/test_backend_msword.py148CODE
LOWtests/test_backend_msword.py164CODE
LOWtests/test_service_client_sdk_unit.py2672CODE
LOWtests/test_video_frame_sampling.py174CODE
LOWtests/test_latex/conftest.py21CODE
LOWdocling/document_extractor.py196CODE
LOWdocling/document_converter.py570CODE
LOWdocling/document_converter.py644CODE
LOWdocling/document_converter.py738CODE
LOWdocling/pipeline/asr_transcriber.py568CODE
LOWdocling/pipeline/legacy_standard_pdf_pipeline.py162CODE
LOWdocling/pipeline/base_pipeline.py111CODE
LOWdocling/pipeline/base_pipeline.py244CODE
LOWdocling/pipeline/standard_pdf_pipeline.py163CODE
LOWdocling/pipeline/standard_pdf_pipeline.py184CODE
LOWdocling/pipeline/standard_pdf_pipeline.py288CODE
LOWdocling/pipeline/standard_pdf_pipeline.py417CODE
LOWdocling/pipeline/standard_pdf_pipeline.py764CODE
LOWdocling/pipeline/standard_pdf_pipeline.py997CODE
LOWdocling/pipeline/standard_pdf_pipeline.py811CODE
LOWdocling/pipeline/extraction_vlm_pipeline.py65CODE
LOWdocling/pipeline/extraction_vlm_pipeline.py168CODE
LOWdocling/pipeline/extraction_vlm_pipeline.py206CODE
LOWdocling/pipeline/vlm_pipeline.py134CODE
LOWdocling/pipeline/vlm_pipeline.py276CODE
LOWdocling/pipeline/vlm_pipeline.py446CODE
LOW…/experimental/pipeline/threaded_layout_vlm_pipeline.py81CODE
LOW…/experimental/pipeline/threaded_layout_vlm_pipeline.py238CODE
LOW…/experimental/pipeline/threaded_layout_vlm_pipeline.py363CODE
LOWdocling/utils/chandra_utils.py145CODE
LOWdocling/utils/chandra_utils.py222CODE
LOWdocling/utils/dots_utils.py80CODE
LOWdocling/utils/orientation.py9CODE
LOWdocling/utils/accelerator_utils.py10CODE
LOWdocling/utils/glm_utils.py21CODE
LOWdocling/utils/glm_utils.py70CODE
LOWdocling/utils/glm_utils.py332CODE
LOWdocling/utils/api_image_request.py263CODE
LOWdocling/utils/layout_postprocessor.py319CODE
LOWdocling/utils/layout_postprocessor.py389CODE
LOWdocling/utils/layout_postprocessor.py475CODE
LOWdocling/utils/pdf_outline.py75CODE
LOWdocling/utils/deepseekocr_utils.py27CODE
LOWdocling/utils/deepseekocr_utils.py122CODE
LOWdocling/utils/deepseekocr_utils.py177CODE
LOWdocling/utils/deepseekocr_utils.py231CODE
LOWdocling/backend/webvtt_backend.py101CODE
LOWdocling/backend/webvtt_backend.py117CODE
LOWdocling/backend/md_backend.py204CODE
LOWdocling/backend/md_backend.py359CODE
LOWdocling/backend/msword_backend.py349CODE
LOWdocling/backend/msword_backend.py497CODE
LOWdocling/backend/msword_backend.py672CODE
LOWdocling/backend/msword_backend.py713CODE
LOWdocling/backend/msword_backend.py996CODE
LOWdocling/backend/msword_backend.py1301CODE
LOWdocling/backend/msword_backend.py1371CODE
LOWdocling/backend/msword_backend.py1431CODE
185 more matches not shown…
Fake / Example Data146 hits · 188 pts
SeverityFileLineSnippetContext
LOWtests/test_backend_jats.py204 "Jane Doe",CODE
LOWtests/test_backend_jats.py212 "Jane Doe",CODE
LOWtests/test_backend_jats.py257 assert "Jane Doe" in mdCODE
LOWtests/test_backend_opendocument.py424 assert formatted_by_text["Lorem Ipsum is not simply random text"].boldCODE
LOWtests/test_backend_opendocument.py434 assert "**Lorem Ipsum is not simply random text**" in markdownCODE
LOWtests/test_backend_opendocument.py715 and item.text.startswith("Lorem ipsum dolor sit amet")CODE
LOWtests/test_backend_opendocument.py715 and item.text.startswith("Lorem ipsum dolor sit amet")CODE
LOWtests/test_latex/test_basic.py348 assert "Jane Doe" in mdSTRING
LOWtests/data/odf/groundtruth/text_document_01.odt.json237 "orig": "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the indusCODE
LOWtests/data/odf/groundtruth/text_document_01.odt.json238 "text": "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the indusCODE
LOWtests/data/odf/groundtruth/text_document_01.odt.json262 "orig": "Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical LCODE
LOWtests/data/odf/groundtruth/text_document_01.odt.json263 "text": "Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical LCODE
LOWtests/data/odf/groundtruth/text_document_01.odt.json423 "orig": "Lorem Ipsum is not simply random text",CODE
LOWtests/data/odf/groundtruth/text_document_01.odt.json424 "text": "Lorem Ipsum is not simply random text",CODE
LOWtests/data/odf/groundtruth/text_document_01.odt.json473 "orig": ", looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, ",CODE
LOWtests/data/odf/groundtruth/text_document_01.odt.json474 "text": ", looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, "CODE
LOWtests/data/odf/groundtruth/text_document_01.odt.json504 "orig": ", discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of \"de Finibus CODE
LOWtests/data/odf/groundtruth/text_document_01.odt.json505 "text": ", discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of \"de Finibus CODE
LOWtests/data/odf/groundtruth/odf_presentation_02.odp.md3Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc ac faucibus odio. Vestibulum neque massa, scelerisque sit CODE
LOWtests/data/odf/groundtruth/odf_presentation_02.odp.md3Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc ac faucibus odio. Vestibulum neque massa, scelerisque sit CODE
LOWtests/data/odf/groundtruth/text_document_01.odt.md7Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard CODE
LOWtests/data/odf/groundtruth/text_document_01.odt.md11Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literatureCODE
LOWtests/data/odf/groundtruth/text_document_01.odt.md24Contrary to popular belief, **Lorem Ipsum is not simply random text** . Richard McClintock, *a Latin professor at HampCODE
LOWtests/data/odf/groundtruth/text_document_01.odt.html179<p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standaCODE
LOWtests/data/odf/groundtruth/text_document_01.odt.html181<p>Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literatCODE
LOWtests/data/odf/groundtruth/text_document_01.odt.html205<span class='inline-group'>Contrary to popular belief, <strong>Lorem Ipsum is not simply random text</strong> . RichardCODE
LOWtests/data/odf/groundtruth/text_document_02.odt.md5Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard CODE
LOWtests/data/odf/groundtruth/text_document_02.odt.md9Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literatureCODE
LOWtests/data/pdf/groundtruth/picture_classification.md3Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/picture_classification.md3Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/picture_classification.md9Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/picture_classification.md9Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/picture_classification.md11Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/picture_classification.md11Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/picture_classification.md17Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/picture_classification.md17Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt2<text><loc_109><loc_95><loc_390><loc_183>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmodCODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt2<text><loc_109><loc_95><loc_390><loc_183>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmodCODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt3<text><loc_109><loc_185><loc_390><loc_213>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt3<text><loc_109><loc_185><loc_390><loc_213>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt5<text><loc_109><loc_265><loc_390><loc_353>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmoCODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt5<text><loc_109><loc_265><loc_390><loc_353>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmoCODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt6<text><loc_109><loc_355><loc_390><loc_383>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt6<text><loc_109><loc_355><loc_390><loc_383>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt10<text><loc_112><loc_89><loc_401><loc_172>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmodCODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt10<text><loc_112><loc_89><loc_401><loc_172>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmodCODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt11<text><loc_112><loc_174><loc_401><loc_208>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt11<text><loc_112><loc_174><loc_401><loc_208>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt13<text><loc_112><loc_227><loc_401><loc_311>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmoCODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt13<text><loc_112><loc_227><loc_401><loc_311>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmoCODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt14<text><loc_112><loc_313><loc_401><loc_353>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt14<text><loc_112><loc_313><loc_401><loc_353>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt15<text><loc_112><loc_355><loc_401><loc_396>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.doctags.txt15<text><loc_112><loc_355><loc_401><loc_396>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie CODE
LOWtests/data/pdf/groundtruth/code_and_formula.md3Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/code_and_formula.md3Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/code_and_formula.md5Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulCODE
LOWtests/data/pdf/groundtruth/code_and_formula.md5Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulCODE
LOWtests/data/pdf/groundtruth/code_and_formula.md13Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
LOWtests/data/pdf/groundtruth/code_and_formula.md13Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magnCODE
86 more matches not shown…
Self-Referential Comments54 hits · 170 pts
SeverityFileLineSnippetContext
MEDIUM.actor/actor.sh19 # Create a temporary home directory with write permissionsCOMMENT
MEDIUM.actor/actor.sh183# Create a dedicated working directory in /tmp (writable)COMMENT
MEDIUM.actor/actor.sh288# Create the request JSONCOMMENT
MEDIUMtests/test_deepseekocr_vlm.py42 # Create a page with the DeepSeek OCR markdown as VLM responseCOMMENT
MEDIUMtests/test_backend_webp.py29 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_asr_whisper_s2t.py394 # Create a real file so backend initializesCOMMENT
MEDIUMtests/test_backend_msexcel.py51 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_backend_msexcel.py715 # Create an InputDocument with the BytesIO streamCOMMENT
MEDIUMtests/test_backend_html.py428 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_backend_msword.py35 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_backend_msword.py363 # Create a backend instance using any existing docx fileCOMMENT
MEDIUMtests/test_e2e_conversion.py25 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_backend_epub.py37 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_backend_csv.py18 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_e2e_ocr_conversion.py32 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_interfaces.py118 # Create an InlineVlmOptions with an invalid enum by patching attribute directlyCOMMENT
MEDIUMtests/test_backend_markdown.py82 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_asr_pipeline.py115 # Create an empty ConversionResult with proper InputDocumentCOMMENT
MEDIUMtests/test_asr_pipeline.py152 # Create a proper NoOpBackend instanceCOMMENT
MEDIUMtests/test_asr_pipeline.py316 # Create a real file so backend initializesCOMMENT
MEDIUMtests/test_asr_pipeline.py490 # Create a real file so backend initializesCOMMENT
MEDIUMtests/test_asr_pipeline.py542 # Create a real file so backend initializesCOMMENT
MEDIUMtests/test_cli.py503 # Create a dummy audio file for testingCOMMENT
MEDIUMtests/test_cli.py523 # Create a dummy audio file for testingCOMMENT
MEDIUMtests/test_backend_pptx.py19 # Define the directory you want to searchCOMMENT
MEDIUMtests/test_latex/test_figures.py78 # Create a temporary directory and test imageCOMMENT
MEDIUMtests/test_latex/test_figures.py84 # Create a simple test image with known DPICOMMENT
MEDIUMdocling/pipeline/standard_pdf_pipeline.py622 # Create a copy to avoid mutating pipeline_options in-place,COMMENT
MEDIUMdocling/utils/visualization.py15 # Create a smaller font for the labelsCOMMENT
MEDIUMdocling/utils/deepseekocr_utils.py281 # Create a new documentCOMMENT
MEDIUMdocling/backend/msword_backend.py559 # Create a paragraph-like element to process with standard handlerCOMMENT
MEDIUMdocling/backend/msword_backend.py1439 # Create a textbox group to contain all text from the textboxCOMMENT
MEDIUMdocling/backend/msword_backend.py2524 # Create a temporary document with just these elementsCOMMENT
MEDIUMdocling/backend/msword_backend.py2859 # Create a group for this comment in NOTES and add the comment thereCOMMENT
MEDIUMdocling/backend/html_backend.py2401 # Create the list containerCOMMENT
MEDIUMdocling/backend/opendocument_backend.py1858 # Create a sub-table with just this regionCOMMENT
MEDIUMdocling/models/stages/layout/layout_model.py130 # Create a deep copy of the original image for both sidesCOMMENT
MEDIUMdocling/models/stages/vlm_convert/vlm_convert_model.py84 # Create the engine - pass model_spec, let factory handle config generationCOMMENT
MEDIUM…cling/models/stages/chart_extraction/granite_vision.py232 # Create a batch of conversationsCOMMENT
MEDIUM…ing/models/inference_engines/vlm/auto_inline_engine.py177 # Create the actual engineCOMMENT
MEDIUMdocling/models/inference_engines/vlm/vllm_engine.py164 # Create a temporary mixin instance for downloadingCOMMENT
MEDIUMdocling/datamodel/pipeline_options.py1068# Define an enum for the backend optionsCOMMENT
MEDIUMdocling/datamodel/pipeline_options.py1130# Define an enum for the ocr enginesCOMMENT
MEDIUMdocling/datamodel/base_models.py532# Create a type alias for score valuesCOMMENT
MEDIUMdocling/datamodel/asr_model_specs.py304# Create the model instanceCOMMENT
MEDIUMdocling/datamodel/asr_model_specs.py89# Create the model instanceCOMMENT
MEDIUMdocling/datamodel/asr_model_specs.py132# Create the model instanceCOMMENT
MEDIUMdocling/datamodel/asr_model_specs.py175# Create the model instanceCOMMENT
MEDIUMdocling/datamodel/asr_model_specs.py218# Create the model instanceCOMMENT
MEDIUMdocling/datamodel/asr_model_specs.py261# Create the model instanceCOMMENT
MEDIUMdocling/datamodel/service/options.py1# Define the input options for the APICOMMENT
MEDIUMdocs/examples/enrich_doclingdocument.py50# The following function is responsible for taking an item and applying the required pre-processing for the model.COMMENT
MEDIUMdocs/examples/legacy/vlm_pipeline_api_model_legacy.py266 # Create the DocumentConverter and launch the conversion.COMMENT
MEDIUMdocs/examples/legacy/minimal_vlm_pipeline_legacy.py6# This file is kept to validate backward compatibility with the old API.COMMENT
Redundant / Tautological Comments62 hits · 92 pts
SeverityFileLineSnippetContext
LOW.actor/actor.sh208 # Check if process is still runningCOMMENT
LOWtests/test_deepseekocr_vlm.py100 # Check if ollama is availableCOMMENT
LOWtests/test_backend_msword.py140 # Verify if a particular textbox content is extractedCOMMENT
LOWtests/test_backend_epub.py129 # Check if document has picturesCOMMENT
LOWtests/test_asr_pipeline.py57 # Check if the test audio file existsCOMMENT
LOWtests/test_latex/test_macros.py372 # Check if macros were registeredSTRING
LOWdocling/pipeline/vlm_pipeline.py89 # Check if using new VlmConvertOptionsCOMMENT
LOWdocling/utils/layout_postprocessor.py450 # Check if areas are similar (within 20% of each other)COMMENT
LOWdocling/utils/deepseekocr_utils.py355 # Check if NEXT annotation is a caption for this table/figure/imageCOMMENT
LOWdocling/backend/msword_backend.py969 # Check if this is a heading styleCOMMENT
LOWdocling/backend/msword_backend.py1637 # Check if this paragraph contains a checkboxCOMMENT
LOWdocling/backend/msword_backend.py1655 # Check if this is actually a numbered list by examining the numFmtCOMMENT
LOWdocling/backend/msword_backend.py2811 # Check if document has any commentsCOMMENT
LOWdocling/backend/msexcel_backend.py857 # Check if this is a threaded comment with better data in XMLCOMMENT
LOWdocling/backend/msexcel_backend.py1852 # Check if cell position is within this item's bounding boxCOMMENT
LOWdocling/backend/noop_backend.py27 # Check if stream has contentCOMMENT
LOWdocling/backend/noop_backend.py33 # Check if file existsCOMMENT
LOWdocling/backend/mspowerpoint_backend.py382 # Check if it's definitely a list itemCOMMENT
LOWdocling/backend/mspowerpoint_backend.py395 # Check if it's definitely not a list itemCOMMENT
LOWdocling/backend/mspowerpoint_backend.py500 # Check if master has marker informationCOMMENT
LOWdocling/backend/html_backend.py1463 # Check if cell is in a column header or row headerCOMMENT
LOWdocling/backend/html_backend.py2554 # Check if this list has a ul/ol/dl ancestor within the current liCOMMENT
LOWdocling/backend/opendocument_backend.py180 # Check if cell has content (value or is part of a span)COMMENT
LOWdocling/backend/opendocument_backend.py1717 # Check if this is a singleton (1x1 table)COMMENT
LOWdocling/backend/opendocument_backend.py1777 # Check if we found any dataCOMMENT
LOWdocling/backend/opendocument_backend.py1943 # Check if the table has a display attribute indicating it's hiddenCOMMENT
LOWdocling/backend/xml/xbrl_backend.py91 # Check if arelle is available before proceedingCOMMENT
LOWdocling/backend/xml/jats_backend.py739 # Check if cell is in a column header or row headerCOMMENT
LOWdocling/backend/docx/latex/omml.py654 # Check if base is a known limit functionCOMMENT
LOWdocling/backend/docx/latex/omml.py659 # Check if base is a grouping function (underbrace, overbrace, etc.)COMMENT
LOW…/stages/page_preprocessing/page_preprocessing_model.py129 ) # Check if text is mostly slash-number patternCODE
LOWdocling/models/stages/ocr/tesseract_ocr_model.py183 # Check if the detected language is present in the systemCOMMENT
LOWdocling/models/stages/ocr/tesseract_ocr_cli_model.py252 # Check if the detected language has been installedSTRING
LOW…models/stages/table_structure/table_structure_model.py228 # Check if word-level cells are available from backend:COMMENT
LOW…cling/models/stages/chart_extraction/granite_vision.py170 # Check if the value is numeric - non-numeric cells are row headersCOMMENT
LOW…ing/models/inference_engines/vlm/auto_inline_engine.py96 # Check if model has explicit MLX exportCOMMENT
LOW…/inference_engines/vlm/api_openai_compatible_engine.py171 # Check if stopped by custom criteriaCOMMENT
LOW…ng/models/vlm_pipeline_models/hf_transformers_model.py324 # Check if it's a GenerationStopper classCOMMENT
LOWdocling/datamodel/accelerator_options.py98 # Check if to set the num_threads from the alternative envvarSTRING
LOWdocling/datamodel/asr_model_specs.py39 # Check if mlx-whisper is availableCOMMENT
LOWdocling/datamodel/service/options.py958 # Check if using legacy fields with new fieldsCOMMENT
LOWdocling/datamodel/service/options.py989 # Check if using legacy fields with new fieldsCOMMENT
LOWdocs/examples/enrich_simple_pipeline.py15# Check if running in CICOMMENT
LOWdocs/examples/model_family_engines_example.py53# Check if running in CICOMMENT
LOWdocs/examples/run_with_formats.py50# Check if running in CICOMMENT
LOWdocs/examples/minimal_asr_pipeline.py66 # Check if the test audio file existsCOMMENT
LOWdocs/examples/chart_extraction.py80 # Check if the picture was classified as a chart.COMMENT
LOWdocs/examples/chart_extraction.py86 # Check if chart data was extracted.COMMENT
LOWdocs/examples/pictures_description_api.py101 # Check if running in CI environmentCOMMENT
LOWdocs/examples/pictures_description_api.py111 # Check if credentials are availableCOMMENT
LOWdocs/examples/picture_description_inline.py46# Check if running in CICOMMENT
LOWdocs/examples/asr_pipeline_performance_comparison.py156 # Check if we're on Apple SiliconCOMMENT
LOWdocs/examples/post_process_ocr_with_vlm.py674 # Read file names (strip whitespace, ignore empty lines)COMMENT
LOWdocs/examples/develop_formula_understanding.py33# Check if running in CICOMMENT
LOWdocs/examples/vlm_pipeline_api_model.py54 # Check if model is already loadedCOMMENT
LOWdocs/examples/vlm_pipeline_api_model.py102 # Check if model existsCOMMENT
LOWdocs/examples/vlm_pipeline_api_model.py168 # Check if LM Studio is runningCOMMENT
LOWdocs/examples/vlm_pipeline_api_model.py238 # Check if Ollama is runningCOMMENT
LOWdocs/examples/vlm_pipeline_api_model.py300 # Check if VLLM is runningCOMMENT
LOWdocs/examples/vlm_pipeline_api_model.py358 # Check if running in CI environmentCOMMENT
2 more matches not shown…
Cross-File Repetition18 hits · 90 pts
SeverityFileLineSnippetContext
HIGHtests/test_glmocr_vlm.py0verify preset is registered with correct metadata and model spec.STRING
HIGHtests/test_falcon_ocr_vlm.py0verify preset is registered with correct metadata and model spec.STRING
HIGHtests/test_lightonocr_vlm.py0verify preset is registered with correct metadata and model spec.STRING
HIGHtests/test_nanonets_ocr_vlm.py0verify preset is registered with correct metadata and model spec.STRING
HIGHtests/test_glmocr_vlm.py0verify engine overrides propagate correctly through get_engine_config.STRING
HIGHtests/test_falcon_ocr_vlm.py0verify engine overrides propagate correctly through get_engine_config.STRING
HIGHtests/test_lightonocr_vlm.py0verify engine overrides propagate correctly through get_engine_config.STRING
HIGHtests/test_nanonets_ocr_vlm.py0verify engine overrides propagate correctly through get_engine_config.STRING
HIGHtests/test_glmocr_vlm.py0verify from_preset produces a usable vlmconvertoptions with engine options.STRING
HIGHtests/test_falcon_ocr_vlm.py0verify from_preset produces a usable vlmconvertoptions with engine options.STRING
HIGHtests/test_lightonocr_vlm.py0verify from_preset produces a usable vlmconvertoptions with engine options.STRING
HIGHtests/test_nanonets_ocr_vlm.py0verify from_preset produces a usable vlmconvertoptions with engine options.STRING
HIGHtests/test_glmocr_vlm.py0verify legacy inlinevlmoptions/apivlmoptions specs are consistent.STRING
HIGHtests/test_lightonocr_vlm.py0verify legacy inlinevlmoptions/apivlmoptions specs are consistent.STRING
HIGHtests/test_nanonets_ocr_vlm.py0verify legacy inlinevlmoptions/apivlmoptions specs are consistent.STRING
HIGHtests/test_glmocr_vlm.py0e2e test with vllm server (skipped in ci and when server is unavailable).STRING
HIGHtests/test_lightonocr_vlm.py0e2e test with vllm server (skipped in ci and when server is unavailable).STRING
HIGHtests/test_nanonets_ocr_vlm.py0e2e test with vllm server (skipped in ci and when server is unavailable).STRING
Docstring Block Structure15 hits · 75 pts
SeverityFileLineSnippetContext
HIGHdocling/document_converter.py427Convert one document fetched from a file path, URL, or DocumentStream. Note: If the document content is given aSTRING
HIGHdocling/document_converter.py494Convert multiple documents from file paths, URLs, or DocumentStreams. Args: source: Source of inputSTRING
HIGHdocling/document_converter.py576Convert a document given as a string using the specified format. Only Markdown (`InputFormat.MD`), HTML (`InputSTRING
HIGHdocling/backend/epub_backend.py157Safely extract EPUB contents with zip-bomb protection. Args: target_dir: Directory to extract filesSTRING
HIGH…g/models/stages/code_formula/code_formula_vlm_model.py136Construct the prompt for the model based on the element type. Args: label: The type of input, eitheSTRING
HIGHdocling/models/stages/vlm_convert/vlm_convert_model.py220Process raw images without page metadata. This method provides a simpler interface for processing images directSTRING
HIGHdocling/models/inference_engines/vlm/factory.py35Create a VLM inference engine from options. Args: options: Engine configuration options model_spec:STRING
HIGHdocling/models/inference_engines/vlm/_utils.py21Convert any image format to RGB PIL Image. Args: image: Input image as PIL Image or numpy array ReturnSTRING
HIGHdocling/models/inference_engines/vlm/_utils.py99Resolve the path to model artifacts, downloading if needed. This standardizes the logic for finding or downloading STRING
HIGH…ling/models/inference_engines/common/kserve_v2_http.py225Execute HTTP request with consistent error handling. Args: url: Target URL method: HTTPSTRING
HIGH…ling/models/inference_engines/common/kserve_v2_http.py322Execute inference request against KServe v2 endpoint. Args: inputs: Mapping of input tensor names tSTRING
HIGH…ling/models/extraction/nuextract_transformers_model.py28 Process vision information from both messages and in-context examples, supporting batch processing. Args: STRING
HIGHdocling/datamodel/pipeline_options.py1100Normalize deprecated backend enum values to current ones. Args: backend: The PDF backend enum value to normSTRING
HIGHdocling/datamodel/stage_model_specs.py302Check if this model has an explicit export for the given engine. An explicit export means either: 1. ThSTRING
HIGHdocling/datamodel/stage_model_specs.py568Get a specific preset. Args: preset_id: The preset identifier Returns: The reqSTRING
Over-Commented Block58 hits · 58 pts
SeverityFileLineSnippetContext
LOWtests/data/uspto/sources/pftaps057006474.txt861 ##STR83##COMMENT
LOWtests/data/html/groundtruth/unit_test_01.html.md1# TitleCOMMENT
LOWtests/data/html/groundtruth/hyperlink_02.html.md1## [Home](/home.html)COMMENT
LOWtests/data/pptx/groundtruth/powerpoint_bad_text.pptx.md1# X-Library The fully customisable and copyright-free standard content template collection exclusively for our customersCOMMENT
LOWdocs/examples/granitedocling_repetition_stopping.py1# %% [markdown]COMMENT
LOWdocs/examples/granitedocling_repetition_stopping.py81# url="http://localhost:8000/v1/chat/completions", # LM studio defaults to port 1234, VLLM to 8000COMMENT
LOWdocs/examples/granitedocling_repetition_stopping.py101# )COMMENT
LOWdocs/examples/inspect_picture_content.py1# %% [markdown]COMMENT
LOWdocs/examples/compare_vlm_models.py1# %% [markdown]COMMENT
LOWdocs/examples/translate.py1# %% [markdown]COMMENT
LOWdocs/examples/picture_description_api_usage.py1# %% [markdown]COMMENT
LOWdocs/examples/picture_description_api_usage.py21# docs/examples/run_picture_description_api_usage.sh path/to/input.pdfCOMMENT
LOWdocs/examples/picture_description_api_usage.py41# OpenAI-compatible responses.COMMENT
LOWdocs/examples/export_figures.py1# %% [markdown]COMMENT
LOWdocs/examples/enrich_doclingdocument.py1# %% [markdown]COMMENT
LOWdocs/examples/gpu_vlm_pipeline.py1# %% [markdown]COMMENT
LOWdocs/examples/model_family_engines_example.py1# %% [markdown]COMMENT
LOWdocs/examples/run_with_formats.py1# %% [markdown]COMMENT
LOWdocs/examples/minimal_asr_pipeline.py1# %% [markdown]COMMENT
LOWdocs/examples/gpu_standard_pipeline.py1# %% [markdown]COMMENT
LOWdocs/examples/chart_extraction.py1# %% [markdown]COMMENT
LOWdocs/examples/pii_obfuscate.py1# %% [markdown]COMMENT
LOWdocs/examples/pictures_description_api.py1# %% [markdown]COMMENT
LOWdocs/examples/pictures_description_api.py181 # Run watsonx.ai example (skips if in CI or credentials not found)COMMENT
LOWdocs/examples/pictures_description_api.py201# ### Custom API ConfigurationCOMMENT
LOWdocs/examples/tesseract_lang_detection.py1# %% [markdown]COMMENT
LOWdocs/examples/picture_description_inline.py1# %% [markdown]COMMENT
LOWdocs/examples/picture_description_inline.py161# %% [markdown]COMMENT
LOWdocs/examples/minimal_vlm_pipeline.py1# %% [markdown]COMMENT
LOWdocs/examples/custom_convert.py1# %% [markdown]COMMENT
LOWdocs/examples/custom_convert.py21# - If you uncomment a backend or OCR option that is not imported above, alsoCOMMENT
LOWdocs/examples/custom_convert.py61 # The sections below demo combinations of PdfPipelineOptions and backends.COMMENT
LOWdocs/examples/custom_convert.py81 # pipeline_options = PdfPipelineOptions()COMMENT
LOWdocs/examples/custom_convert.py121COMMENT
LOWdocs/examples/custom_convert.py141COMMENT
LOWdocs/examples/custom_convert.py161 # pipeline_options.table_structure_options = TableStructureOptions(do_cell_matching=True)COMMENT
LOWdocs/examples/minimal.py1# %% [markdown]COMMENT
LOWdocs/examples/suryaocr_with_custom_models.py1# Example: Integrating SuryaOCR with Docling for PDF OCR and Markdown ExportCOMMENT
LOWdocs/examples/rapidocr_with_custom_models.py1# %% [markdown]COMMENT
LOWdocs/examples/granite_vision_table_structure.py1# %% [markdown]COMMENT
LOWdocs/examples/develop_formula_understanding.py1# %% [markdown]COMMENT
LOWdocs/examples/export_tables.py1# %% [markdown]COMMENT
LOWdocs/examples/parquet_images.py1# %% [markdown]COMMENT
LOWdocs/examples/develop_picture_enrichment.py1# %% [markdown]COMMENT
LOWdocs/examples/vlm_pipeline_api_model.py1# %% [markdown]COMMENT
LOWdocs/examples/vlm_pipeline_api_model.py481#COMMENT
LOWdocs/examples/vlm_pipeline_api_model.py501#COMMENT
LOWdocs/examples/batch_convert.py1# %% [markdown]COMMENT
LOWdocs/examples/run_with_accelerator.py1# %% [markdown]COMMENT
LOWdocs/examples/run_with_accelerator.py41COMMENT
LOWdocs/examples/full_page_ocr.py1# %% [markdown]COMMENT
LOWdocs/examples/legacy/vlm_pipeline_api_model_legacy.py1# %% [markdown]COMMENT
LOWdocs/examples/legacy/vlm_pipeline_api_model_legacy.py221 enable_remote_services=True # required when calling remote VLM endpointsCOMMENT
LOWdocs/examples/legacy/vlm_pipeline_api_model_legacy.py241 format=ResponseFormat.DOCTAGS,COMMENT
LOWdocs/examples/legacy/pictures_description_api_legacy.py1# %% [markdown]COMMENT
LOWdocs/examples/legacy/pictures_description_api_legacy.py141COMMENT
LOW…s/examples/legacy/picture_description_inline_legacy.py1# %% [markdown]COMMENT
LOWdocs/examples/legacy/minimal_vlm_pipeline_legacy.py1# %% [markdown]COMMENT
Cross-Language Confusion11 hits · 40 pts
SeverityFileLineSnippetContext
HIGHdocling/backend/html_backend.py734 const width = rect.width || 0;STRING
HIGHdocling/backend/html_backend.py735 const height = rect.height || 0;STRING
HIGHdocling/backend/html_backend.py736 if (width <= 0 && height <= 0) {STRING
HIGHdocling/backend/html_backend.py743 let textLeft = null;STRING
HIGHdocling/backend/html_backend.py744 let textTop = null;STRING
HIGHdocling/backend/html_backend.py745 let textRight = null;STRING
HIGHdocling/backend/html_backend.py746 let textBottom = null;STRING
HIGHdocling/backend/html_backend.py759 const tWidth = tRect.width || 0;STRING
HIGHdocling/backend/html_backend.py760 const tHeight = tRect.height || 0;STRING
HIGHdocling/backend/html_backend.py761 if (tWidth <= 0 && tHeight <= 0) {STRING
HIGHdocling/datamodel/service/responses.py30 Plain stored floats (NaN coerced to null) rather than a reuse ofSTRING
Modern AI Meta-Vocabulary13 hits · 38 pts
SeverityFileLineSnippetContext
MEDIUMpyproject.toml245# Document chunking for RAG applicationsCOMMENT
MEDIUMtests/data/latex/groundtruth/2310.06825_main.tex.md195## Adding guardrails for front-facing applicationsCOMMENT
MEDIUMtests/data/latex/groundtruth/2310.06825_main.tex.md201### System prompt to enforce guardrailsCOMMENT
MEDIUM…building-pydantic-ai-agents/references/ARCHITECTURE.md11 - [Choosing a Multi-Agent Pattern](#choosing-a-multi-agent-pattern)CODE
MEDIUM…ai-agents/references/ORCHESTRATION-AND-INTEGRATIONS.md98## Use Embeddings for RAGCOMMENT
MEDIUMdocs/usage/processing_audio_media.md140### Building a RAG pipeline with LangChainCOMMENT
MEDIUMdocs/integrations/nvidia.md6- [✍️ PDF to Podcast blog post](https://blogs.nvidia.com/blog/agentic-ai-blueprints/)CODE
MEDIUMdocs/examples/post_process_ocr_with_vlm.py537 # The last measure against hallucinationsCOMMENT
MEDIUMdocs/examples/develop_formula_understanding.py2# Developing an enrichment model example (formula understanding: scaffold only).COMMENT
MEDIUMdocs/examples/develop_formula_understanding.py9# - This is a development scaffold; it does not run a real formula understanding model.COMMENT
MEDIUMdocs/examples/develop_picture_enrichment.py2# Developing a picture enrichment model (classifier scaffold only).COMMENT
MEDIUMdocs/examples/develop_picture_enrichment.py9# - This is a scaffold for development; it does not run a real classifier.COMMENT
MEDIUM…les/agent_skill/docling-document-intelligence/SKILL.md221### 5. Chunk for RAG (hybrid strategy)COMMENT
AI Slop Vocabulary13 hits · 29 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_backend_pptx.py72 """Test comprehensive comment extraction including metadata, authors, and slide distribution."""STRING
MEDIUMtests/data/uspto/sources/ipg07997973.xml3813<p id="p-0056" num="0055">An enumerated list of items (which may or may not be numbered) does not imply that any or all CODE
MEDIUMtests/data/uspto/sources/ipg07997973.xml3988 <li id="ul0012-0008" num="0196">&#x2003;The various methods of disguising a game described herein may prCODE
MEDIUMtests/data/uspto/sources/ipg07997973.xml4017 <li id="ul0002-0035" num="0215">&#x2003;In various embodiments, the data about the games of a primary player mayCODE
MEDIUMtests/data/uspto/sources/ipg07997973.xml4247 <li id="ul0028-0018" num="0367">&#x2003;Any physical game described herein may be implemented electronically in CODE
MEDIUMtests/data/jats/sources/elife-56337.xml3<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" article-type="researcCODE
MEDIUMtests/data/xbrl/sources/grve_10q_htm.xml2459 <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="From2025-04-01to2025-12-31" id="fid_281">&lt;p style="FOCODE
MEDIUMtests/data/xbrl/sources/grve_10q_htm.xml2459 <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="From2025-04-01to2025-12-31" id="fid_281">&lt;p style="FOCODE
MEDIUMtests/data/xbrl/sources/grve_10q_htm.xml2460 <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="From2025-04-01to2025-12-31" id="fid_289">&lt;p style="FOCODE
MEDIUMtests/data/xbrl/sources/grve_10q_htm.xml2460 <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="From2025-04-01to2025-12-31" id="fid_289">&lt;p style="FOCODE
MEDIUMtests/data/json_dots/sources/dots_simple.json1[{"bbox": [29, 435, 74, 1121], "category": "Text", "text": "arXiv:2206.01062v1 [cs.CV] 2 Jun 2022"}, {"bbox": [211, 161,CODE
MEDIUMdocling/backend/epub_backend.py385 # TODO: leverage `self.metadata` once DoclingDocument supports file metadataCOMMENT
LOWdocling/backend/html_backend.py4431 # Do not fetch the image, just add a placeholderCOMMENT
Magic Placeholder Names4 hits · 22 pts
SeverityFileLineSnippetContext
HIGHdocling/datamodel/backend_options.py95 examples=[{"Authorization": "Bearer TOKEN"}, {"X-API-Key": "your-api-key"}],CODE
HIGHdocs/usage/mcp.md37export DOCLING_SERVICE_API_KEY=your-api-key # if the service requires oneCODE
HIGHdocs/examples/granitedocling_repetition_stopping.py89# # "Authorization": "Bearer YOUR_API_KEY", # if neededCOMMENT
HIGHdocs/examples/service_client/README.md14DOCLING_SERVICE_API_KEY=your-api-key # omit if the service is unauthenticatedCODE
Modern Structural Boilerplate20 hits · 20 pts
SeverityFileLineSnippetContext
LOWdocling/experimental/models/table_crops_layout_model.py21__all__ = ["TableCropsLayoutModel"]CODE
LOW…g/experimental/datamodel/table_crops_layout_options.py7__all__ = ["TableCropsLayoutOptions"]CODE
LOWdocling/backend/latex_backend.py3__all__ = ["LatexDocumentBackend"]CODE
LOWdocling/backend/latex/__init__.py3__all__ = ["LatexDocumentBackend"]CODE
LOWdocling/backend/xml/uspto_backend.py137 def _set_parser(self, doctype: str) -> None:CODE
LOW…ages/picture_classifier/document_picture_classifier.py31__all__ = [CODE
LOWdocling/models/inference_engines/__init__.py13__all__ = []CODE
LOWdocling/models/inference_engines/vlm/__init__.py21__all__ = [CODE
LOWdocling/models/inference_engines/common/__init__.py7__all__ = ["HfVisionModelMixin", "KserveV2Client", "KserveV2HttpClient"]CODE
LOW…/models/inference_engines/object_detection/__init__.py14__all__ = [CODE
LOW…els/inference_engines/image_classification/__init__.py14__all__ = [CODE
LOWdocling/models/factories/picture_description_factory.py6logger = logging.getLogger(__name__)CODE
LOWdocling/models/factories/__init__.py11logger = logging.getLogger(__name__)CODE
LOWdocling/models/factories/ocr_factory.py6logger = logging.getLogger(__name__)CODE
LOWdocling/models/factories/base_factory.py15logger = logging.getLogger(__name__)CODE
LOWdocling/service_client/_async_client.py99logger = logging.getLogger(__name__)CODE
LOWdocling/service_client/client.py106logger = logging.getLogger(__name__)CODE
LOWdocling/service_client/__init__.py39__all__ = [CODE
LOWdocling/datamodel/service/__init__.py82__all__ = [CODE
LOWdocling/datamodel/service/sources.py11__all__ = ["FileSource", "HttpSource", "S3Coordinates"]CODE
Synthetic Comment Markers1 hit · 8 pts
SeverityFileLineSnippetContext
HIGHdocs/examples/picture_description_inline.py7# - Enriches documents with AI-generated image captionsCOMMENT
AI Structural Patterns7 hits · 5 pts
SeverityFileLineSnippetContext
LOWdocling/utils/model_downloader.py38CODE
LOWdocling/cli/remote.py132CODE
LOWdocling/cli/main.py682CODE
LOWdocling/service_client/_async_client.py106CODE
LOWdocling/service_client/client.py214CODE
LOWdocling/service_client/client.py763CODE
LOWdocling/service_client/client.py862CODE
Slop Phrases2 hits · 4 pts
SeverityFileLineSnippetContext
MEDIUM…ata/latex/groundtruth/arXiv-2501.01300v2_main.tex.json972 "orig": "[fig:enhan] are obtained by multiplying continuum extrapolated $\\chi^C_4$ values to ratios $P^C_B/P_C$ aCODE
MEDIUM…ata/latex/groundtruth/arXiv-2501.01300v2_main.tex.json973 "text": "[fig:enhan] are obtained by multiplying continuum extrapolated $\\chi^C_4$ values to ratios $P^C_B/P_C$ aCODE