Get your documents ready for gen AI
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).
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.
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.
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.
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.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_kserve_v2_binary.py | 14 | def test_bytes_tensor_binary_encoding_round_trip() -> None: | CODE |
| LOW | tests/test_kserve_v2_binary.py | 49 | def test_http_binary_request_serialization() -> None: | CODE |
| LOW | tests/test_kserve_v2_binary.py | 103 | def test_http_binary_response_decoding() -> None: | CODE |
| LOW | tests/test_backend_mets_gbs.py | 81 | def test_max_file_bytes_limit(test_doc_path): | CODE |
| LOW | tests/test_backend_mets_gbs.py | 95 | def test_max_total_bytes_limit(test_doc_path): | CODE |
| LOW | tests/test_backend_mets_gbs.py | 112 | def test_max_member_count_limit(test_doc_path): | CODE |
| LOW | tests/test_backend_mets_gbs.py | 126 | def test_limits_with_valid_values(test_doc_path): | CODE |
| LOW | tests/test_backend_mets_gbs.py | 153 | def test_total_bytes_tracking_across_pages(test_doc_path): | CODE |
| LOW | tests/test_run_pr_fast_checks.py | 46 | def test_collect_targets_limits_scope_to_supported_paths(tmp_path: Path) -> None: | CODE |
| LOW | tests/test_run_pr_fast_checks.py | 95 | def test_collect_targets_uses_smoke_target_for_tooling_only_changes( | CODE |
| LOW | tests/test_run_pr_fast_checks.py | 115 | def test_collect_targets_skips_unrelated_changes(tmp_path: Path) -> None: | CODE |
| LOW | tests/test_run_pr_fast_checks.py | 131 | def test_build_check_units_uses_ty_check(monkeypatch) -> None: | CODE |
| LOW | tests/test_run_pr_fast_checks.py | 153 | def test_git_helpers_accept_synthetic_merge_tree(tmp_path: Path) -> None: | CODE |
| LOW | tests/test_run_pr_fast_checks.py | 196 | def test_log_result_suppresses_success_output(capsys) -> None: | CODE |
| LOW | tests/test_run_pr_fast_checks.py | 214 | def test_log_result_prints_failure_output(capsys) -> None: | CODE |
| LOW | tests/test_run_pr_fast_checks.py | 232 | def test_significant_regression_requires_same_successful_target_set() -> None: | CODE |
| LOW | tests/test_rapid_ocr_lang.py | 34 | def test_rapidocr_uses_english_default_assets(monkeypatch, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_rapid_ocr_lang.py | 56 | def test_rapidocr_defaults_to_chinese_mobile_assets( | CODE |
| LOW | tests/test_rapid_ocr_lang.py | 84 | def test_download_models_uses_default_onnx_paths(monkeypatch, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_rapid_ocr_lang.py | 87 | def fake_download_url_with_progress(url: str, *, progress: bool) -> BytesIO: | CODE |
| LOW | tests/test_rapid_ocr_lang.py | 110 | def test_model_downloader_fetches_both_rapidocr_language_sets( | CODE |
| LOW | tests/test_rapid_ocr_lang.py | 147 | def test_rapidocr_uses_latin_default_assets(monkeypatch, tmp_path: Path) -> None: | CODE |
| LOW | tests/test_rapid_ocr_lang.py | 166 | def test_resolve_language_aliases_and_groups(caplog) -> None: | CODE |
| LOW | tests/test_rapid_ocr_lang.py | 179 | def test_resolve_language_warns_on_silent_fallback(caplog) -> None: | CODE |
| LOW | tests/test_rapid_ocr_lang.py | 195 | def test_rapidocr_passes_lang_type_without_artifacts(monkeypatch) -> None: | CODE |
| LOW⚡ | tests/test_input_doc.py | 33 | def test_in_doc_from_valid_path(): | CODE |
| LOW⚡ | tests/test_input_doc.py | 40 | def test_in_doc_from_invalid_path(): | CODE |
| LOW⚡ | tests/test_input_doc.py | 48 | def test_in_doc_from_valid_buf(): | CODE |
| LOW⚡ | tests/test_input_doc.py | 56 | def test_in_doc_from_invalid_buf(): | CODE |
| LOW⚡ | tests/test_input_doc.py | 64 | def test_in_doc_with_page_range(): | CODE |
| LOW | tests/test_input_doc.py | 98 | def test_in_doc_with_backend_options(): | CODE |
| LOW | tests/test_input_doc.py | 130 | def test_html_backend_options_set_source_uri_per_input(tmp_path): | CODE |
| LOW | tests/test_input_doc.py | 430 | def _make_input_doc_from_stream(doc_stream): | CODE |
| LOW | tests/test_failed_pages.py | 35 | def test_normal_pages_all_present(normal_4pages_path): | CODE |
| LOW | tests/test_failed_pages.py | 169 | def test_failed_pages_have_size_info(skipped_1page_path): | CODE |
| LOW | tests/test_failed_pages.py | 197 | def test_errors_recorded_for_failed_pages(skipped_1page_path): | CODE |
| LOW | tests/test_layout_postprocessor.py | 39 | def test_sort_cells_uses_native_cell_index_order() -> None: | CODE |
| LOW | tests/test_layout_postprocessor.py | 49 | def test_cross_type_overlaps_removes_picture_coinciding_with_table() -> None: | CODE |
| LOW | tests/test_layout_postprocessor.py | 65 | def test_cross_type_overlaps_keeps_picture_not_overlapping_table() -> None: | CODE |
| LOW | tests/test_layout_postprocessor.py | 79 | def test_cross_type_overlaps_keeps_small_picture_inside_table() -> None: | CODE |
| LOW | tests/test_picture_description_vlm_model.py | 86 | def test_legacy_picture_description_vlm_batches_generation() -> None: | CODE |
| LOW | tests/test_picture_description_vlm_model.py | 120 | def test_legacy_picture_description_vlm_skips_empty_batch() -> None: | CODE |
| LOW | tests/test_picture_description_vlm_model.py | 134 | def test_legacy_picture_description_vlm_init_uses_configured_padding_side( | CODE |
| LOW | tests/test_backend_patent_uspto.py | 438 | def test_patent_uspto_grant_aps(patents): | CODE |
| LOW | tests/groundtruth_paths.py | 24 | def get_regular_groundtruth_paths( | CODE |
| LOW | tests/groundtruth_paths.py | 50 | def get_ocr_groundtruth_paths( | CODE |
| LOW | tests/test_table_structure_granite_vision.py | 83 | def test_parse_multiple_rowspan(): | CODE |
| LOW | tests/test_table_structure_granite_vision.py | 171 | def test_model_disabled_skips_pages(): | CODE |
| LOW | tests/test_table_structure_granite_vision.py | 200 | def test_model_invalid_backend_returns_empty_prediction(): | CODE |
| LOW | tests/test_table_structure_granite_vision.py | 247 | def test_parse_ecel_self_closing(): | CODE |
| LOW | tests/test_table_structure_granite_vision.py | 257 | def test_factory_registration(): | CODE |
| LOW | tests/test_heading_hierarchy_pdf.py | 25 | def test_pdf_pipeline_assigns_heading_levels_from_existing_fixture( | CODE |
| LOW | tests/test_dots_vlm.py | 76 | def test_dots_model_image_size_rescaling(): | CODE |
| LOW | tests/test_dots_vlm.py | 131 | def test_dots_bad_bbox_elements(): | CODE |
| LOW | tests/test_dots_vlm.py | 150 | def test_dots_non_dict_elements(): | CODE |
| LOW | tests/test_dots_vlm.py | 162 | def test_dots_all_files_parse(): | CODE |
| LOW | tests/test_options.py | 43 | def get_converters_with_table_options(): | CODE |
| LOW⚡ | tests/test_options.py | 199 | def test_invalid_input_over_max_file_size(test_doc_path): | CODE |
| LOW⚡ | tests/test_options.py | 209 | def test_invalid_input_over_max_num_pages(test_doc_path): | CODE |
| LOW⚡ | tests/test_options.py | 219 | def test_invalid_input_unreadable_source(): | CODE |
| 934 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_run_pr_fast_checks.py | 1 | CODE | |
| LOW | tests/test_deepseekocr_vlm.py | 3 | CODE | |
| LOW | tests/test_deepseekocr_vlm.py | 5 | CODE | |
| LOW | tests/test_deepseekocr_vlm.py | 19 | CODE | |
| LOW | tests/test_deepseekocr_vlm.py | 19 | CODE | |
| LOW | tests/test_backend_webp.py | 6 | CODE | |
| LOW | tests/test_backend_webp.py | 9 | CODE | |
| LOW | tests/test_page_assemble_model.py | 13 | CODE | |
| LOW | tests/test_page_assemble_model.py | 135 | CODE | |
| LOW | tests/test_backend_msexcel.py | 20 | CODE | |
| LOW | tests/test_extraction.py | 12 | CODE | |
| LOW | tests/test_pytest_marker_selection.py | 1 | CODE | |
| LOW | tests/test_asr_mlx_whisper.py | 12 | CODE | |
| LOW | tests/test_asr_mlx_whisper.py | 12 | CODE | |
| LOW | tests/test_asr_mlx_whisper.py | 12 | CODE | |
| LOW | tests/test_api_kserve_v2_engine_scaffolding.py | 3 | CODE | |
| LOW | tests/test_e2e_nemotron_ocr_conversion.py | 42 | CODE | |
| LOW | tests/test_conversion_result_json.py | 1 | CODE | |
| LOW | tests/test_conversion_result_json.py | 4 | CODE | |
| LOW | tests/test_conversion_result_json.py | 6 | CODE | |
| LOW | tests/test_conversion_result_json.py | 10 | CODE | |
| LOW | tests/test_kserve_v2_ocr_integration.py | 4 | CODE | |
| LOW | tests/test_check_needs_results.py | 1 | CODE | |
| LOW | tests/test_heading_hierarchy.py | 11 | CODE | |
| LOW | tests/test_backend_asciidoc.py | 4 | CODE | |
| LOW | tests/test_backend_asciidoc.py | 4 | CODE | |
| LOW | tests/test_backend_asciidoc.py | 13 | CODE | |
| LOW | tests/test_backend_image_native.py | 4 | CODE | |
| LOW | tests/test_threaded_pipeline.py | 1 | CODE | |
| LOW | tests/test_threaded_pipeline.py | 2 | CODE | |
| LOW | tests/test_e2e_ocr_conversion.py | 8 | CODE | |
| LOW | tests/test_vlm_pipeline_status.py | 23 | CODE | |
| LOW | tests/test_asr_pipeline.py | 2 | CODE | |
| LOW | tests/test_backend_docling_parse.py | 10 | CODE | |
| LOW | tests/test_granite_vision_extraction.py | 7 | CODE | |
| LOW | tests/test_backend_pptx.py | 2 | CODE | |
| LOW | tests/test_backend_pptx.py | 7 | CODE | |
| LOW | tests/test_backend_opendocument.py | 10 | CODE | |
| LOW | tests/test_latex/test_basic.py | 5 | CODE | |
| LOW | tests/test_latex/conftest.py | 1 | CODE | |
| LOW | tests/test_latex/conftest.py | 5 | CODE | |
| LOW | tests/test_latex/conftest.py | 5 | CODE | |
| LOW | tests/test_latex/conftest.py | 7 | CODE | |
| LOW | tests/test_latex/conftest.py | 8 | CODE | |
| LOW | tests/test_latex/conftest.py | 9 | CODE | |
| LOW | tests/test_latex/conftest.py | 10 | CODE | |
| LOW | tests/test_latex/conftest.py | 10 | CODE | |
| LOW | tests/test_latex/conftest.py | 10 | CODE | |
| LOW | tests/test_latex/conftest.py | 11 | CODE | |
| LOW | tests/test_latex/conftest.py | 14 | CODE | |
| LOW | tests/test_latex/conftest.py | 14 | CODE | |
| LOW | tests/test_latex/test_macros.py | 5 | CODE | |
| LOW | tests/test_latex/test_macros.py | 6 | CODE | |
| LOW | tests/test_latex/test_macros.py | 9 | CODE | |
| LOW | tests/test_latex/test_macros.py | 11 | CODE | |
| LOW | tests/test_latex/test_macros.py | 11 | CODE | |
| LOW | tests/test_latex/test_macros.py | 12 | CODE | |
| LOW | tests/test_latex/test_macros.py | 15 | CODE | |
| LOW | tests/test_latex/test_macros.py | 15 | CODE | |
| LOW | tests/test_latex/test_tables.py | 4 | CODE | |
| 429 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | pyproject.toml | 75 | # ============================================================================ | COMMENT |
| MEDIUM | pyproject.toml | 77 | # ============================================================================ | COMMENT |
| MEDIUM | pyproject.toml | 90 | # ============================================================================ | COMMENT |
| MEDIUM | pyproject.toml | 92 | # ============================================================================ | COMMENT |
| MEDIUM | pyproject.toml | 177 | # ============================================================================ | COMMENT |
| MEDIUM | pyproject.toml | 179 | # ============================================================================ | COMMENT |
| MEDIUM | pyproject.toml | 210 | # ============================================================================ | COMMENT |
| MEDIUM | pyproject.toml | 212 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | pyproject.toml | 242 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | pyproject.toml | 244 | # ============================================================================ | COMMENT |
| MEDIUM | pyproject.toml | 269 | # ============================================================================ | COMMENT |
| MEDIUM | pyproject.toml | 271 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 44 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 46 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 436 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 438 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 478 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 480 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 590 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 592 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 687 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_vlm_presets_and_runtime_options.py | 689 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_vlm_presets_and_runtime_options.py | 273 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_vlm_presets_and_runtime_options.py | 275 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_service_client_sdk_unit.py | 2651 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_service_client_sdk_unit.py | 2653 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_service_client_sdk_unit.py | 3116 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_service_client_sdk_unit.py | 3118 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_service_client_integration.py | 294 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_service_client_integration.py | 296 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | docling/pipeline/asr_transcriber.py | 612 | # ============================================================ | COMMENT |
| MEDIUM⚡ | docling/pipeline/asr_transcriber.py | 615 | # ============================================================ | COMMENT |
| MEDIUM⚡ | docling/pipeline/asr_transcriber.py | 618 | # ============================================================ | COMMENT |
| MEDIUM⚡ | docling/pipeline/asr_transcriber.py | 620 | # ============================================================ | COMMENT |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 87 | # ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 89 | # ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 562 | # ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 564 | # ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 579 | # ──────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 581 | # ──────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 678 | # ──────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 680 | # ──────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docling/service_client/client.py | 426 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | docling/service_client/client.py | 428 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | docling/datamodel/pipeline_options.py | 1001 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/pipeline_options.py | 1003 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/pipeline_options.py | 1042 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/pipeline_options.py | 1044 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | docling/datamodel/stage_model_specs.py | 915 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | docling/datamodel/stage_model_specs.py | 917 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | docling/datamodel/stage_model_specs.py | 919 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | docling/datamodel/stage_model_specs.py | 921 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | docling/datamodel/stage_model_specs.py | 46 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/stage_model_specs.py | 48 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/stage_model_specs.py | 119 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/stage_model_specs.py | 121 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/stage_model_specs.py | 361 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/stage_model_specs.py | 363 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/stage_model_specs.py | 430 | # ============================================================================= | COMMENT |
| MEDIUM | docling/datamodel/stage_model_specs.py | 432 | # ============================================================================= | COMMENT |
| 51 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .actor/actor.sh | 268 | except Exception as e: | CODE |
| LOW | tests/test_deepseekocr_vlm.py | 107 | except Exception: | CODE |
| LOW | tests/test_options.py | 105 | except Exception as ex: | CODE |
| LOW | tests/test_backend_msexcel.py | 46 | except Exception: | CODE |
| LOW | tests/test_backend_msword.py | 88 | except Exception: | CODE |
| LOW | tests/test_glmocr_vlm.py | 130 | except Exception: | CODE |
| LOW | tests/test_falcon_ocr_vlm.py | 93 | except Exception: | CODE |
| LOW | tests/test_lightonocr_vlm.py | 135 | except Exception: | CODE |
| LOW | tests/test_nanonets_ocr_vlm.py | 144 | except Exception: | CODE |
| LOW | …ified-python/references/advanced/exception-handling.md | 49 | except Exception: | CODE |
| LOW | …ified-python/references/advanced/exception-handling.md | 158 | except Exception: | CODE |
| LOW | …ified-python/references/advanced/exception-handling.md | 167 | except Exception as e: | CODE |
| LOW | …ified-python/references/advanced/exception-handling.md | 178 | except Exception: | CODE |
| LOW | docling/pipeline/asr_transcriber.py | 106 | except Exception as e: | CODE |
| LOW | docling/pipeline/asr_transcriber.py | 264 | except Exception as exc: | CODE |
| LOW | docling/pipeline/asr_transcriber.py | 274 | except Exception as e: | CODE |
| LOW | docling/pipeline/asr_transcriber.py | 376 | except Exception as exc: | CODE |
| LOW | docling/pipeline/asr_transcriber.py | 554 | except Exception as exc: | CODE |
| LOW | docling/pipeline/asr_transcriber.py | 563 | except Exception as e: | CODE |
| LOW | docling/pipeline/base_extraction_pipeline.py | 47 | except Exception as e: | CODE |
| LOW | docling/pipeline/base_pipeline.py | 88 | except Exception as e: | CODE |
| LOW | docling/pipeline/base_pipeline.py | 319 | except Exception as e: | CODE |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 273 | def _run(self) -> None: | CODE |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 811 | def _produce_pages() -> None: | CODE |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 281 | except Exception: # pragma: no cover - top-level guard | CODE |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 368 | except Exception as exc: | CODE |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 530 | except Exception as exc: | CODE |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 823 | except Exception: | CODE |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 835 | except Exception as exc: | CODE |
| LOW | docling/pipeline/extraction_vlm_pipeline.py | 137 | except Exception as e: | CODE |
| LOW | docling/pipeline/extraction_vlm_pipeline.py | 144 | except Exception as e: | CODE |
| LOW | docling/pipeline/extraction_vlm_pipeline.py | 198 | except Exception as e: | CODE |
| LOW | docling/pipeline/extraction_vlm_pipeline.py | 201 | except Exception as e: | CODE |
| LOW | docling/pipeline/vlm_pipeline.py | 418 | except Exception as exc: | CODE |
| LOW | docling/utils/chandra_utils.py | 206 | except Exception as e: | CODE |
| LOW | docling/utils/chandra_utils.py | 217 | except Exception as e: | CODE |
| LOW | docling/utils/glm_utils.py | 32 | except Exception: | CODE |
| LOW | docling/utils/api_image_request.py | 184 | except Exception as e: | CODE |
| LOW | docling/utils/api_image_request.py | 256 | except Exception as e: | CODE |
| LOW | docling/utils/video_frame_sampling.py | 123 | except Exception as exc: # pragma: no cover - defensive | CODE |
| LOW | docling/utils/deepseekocr_utils.py | 117 | except Exception as e: | CODE |
| LOW | docling/backend/webvtt_backend.py | 74 | except Exception as e: | CODE |
| LOW | docling/backend/md_backend.py | 198 | except Exception as e: | CODE |
| LOW | docling/backend/msword_backend.py | 368 | except Exception as e: | CODE |
| LOW | docling/backend/msword_backend.py | 593 | except Exception: | CODE |
| LOW | docling/backend/msword_backend.py | 692 | except Exception: | CODE |
| LOW | docling/backend/msword_backend.py | 799 | except Exception as e: | CODE |
| LOW | docling/backend/msword_backend.py | 891 | except Exception as e: | CODE |
| LOW | docling/backend/msword_backend.py | 1044 | except Exception: | CODE |
| LOW | docling/backend/msword_backend.py | 2563 | except Exception as e: | CODE |
| LOW | docling/backend/msword_backend.py | 2856 | except Exception as e: | CODE |
| LOW | docling/backend/msword_backend.py | 2934 | except Exception as e: | CODE |
| LOW | docling/backend/csv_backend.py | 31 | except Exception as e: | CODE |
| LOW⚡ | docling/backend/msexcel_backend.py | 373 | except Exception as e: | CODE |
| LOW⚡ | docling/backend/msexcel_backend.py | 380 | except Exception as e: | CODE |
| LOW⚡ | docling/backend/msexcel_backend.py | 383 | except Exception as e: | CODE |
| LOW | docling/backend/msexcel_backend.py | 276 | except Exception as e: | CODE |
| LOW | docling/backend/msexcel_backend.py | 324 | except Exception as e: | CODE |
| LOW | docling/backend/msexcel_backend.py | 1153 | except Exception as exc: | CODE |
| LOW | docling/backend/msexcel_backend.py | 1202 | except Exception as exc: | CODE |
| 138 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_backend_html.py | 144 | CODE | |
| LOW | tests/test_backend_html.py | 682 | CODE | |
| LOW | tests/test_backend_msword.py | 148 | CODE | |
| LOW | tests/test_backend_msword.py | 164 | CODE | |
| LOW | tests/test_service_client_sdk_unit.py | 2672 | CODE | |
| LOW | tests/test_video_frame_sampling.py | 174 | CODE | |
| LOW | tests/test_latex/conftest.py | 21 | CODE | |
| LOW | docling/document_extractor.py | 196 | CODE | |
| LOW | docling/document_converter.py | 570 | CODE | |
| LOW | docling/document_converter.py | 644 | CODE | |
| LOW | docling/document_converter.py | 738 | CODE | |
| LOW | docling/pipeline/asr_transcriber.py | 568 | CODE | |
| LOW | docling/pipeline/legacy_standard_pdf_pipeline.py | 162 | CODE | |
| LOW | docling/pipeline/base_pipeline.py | 111 | CODE | |
| LOW | docling/pipeline/base_pipeline.py | 244 | CODE | |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 163 | CODE | |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 184 | CODE | |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 288 | CODE | |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 417 | CODE | |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 764 | CODE | |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 997 | CODE | |
| LOW | docling/pipeline/standard_pdf_pipeline.py | 811 | CODE | |
| LOW | docling/pipeline/extraction_vlm_pipeline.py | 65 | CODE | |
| LOW | docling/pipeline/extraction_vlm_pipeline.py | 168 | CODE | |
| LOW | docling/pipeline/extraction_vlm_pipeline.py | 206 | CODE | |
| LOW | docling/pipeline/vlm_pipeline.py | 134 | CODE | |
| LOW | docling/pipeline/vlm_pipeline.py | 276 | CODE | |
| LOW | docling/pipeline/vlm_pipeline.py | 446 | CODE | |
| LOW | …/experimental/pipeline/threaded_layout_vlm_pipeline.py | 81 | CODE | |
| LOW | …/experimental/pipeline/threaded_layout_vlm_pipeline.py | 238 | CODE | |
| LOW | …/experimental/pipeline/threaded_layout_vlm_pipeline.py | 363 | CODE | |
| LOW | docling/utils/chandra_utils.py | 145 | CODE | |
| LOW | docling/utils/chandra_utils.py | 222 | CODE | |
| LOW | docling/utils/dots_utils.py | 80 | CODE | |
| LOW | docling/utils/orientation.py | 9 | CODE | |
| LOW | docling/utils/accelerator_utils.py | 10 | CODE | |
| LOW | docling/utils/glm_utils.py | 21 | CODE | |
| LOW | docling/utils/glm_utils.py | 70 | CODE | |
| LOW | docling/utils/glm_utils.py | 332 | CODE | |
| LOW | docling/utils/api_image_request.py | 263 | CODE | |
| LOW | docling/utils/layout_postprocessor.py | 319 | CODE | |
| LOW | docling/utils/layout_postprocessor.py | 389 | CODE | |
| LOW | docling/utils/layout_postprocessor.py | 475 | CODE | |
| LOW | docling/utils/pdf_outline.py | 75 | CODE | |
| LOW | docling/utils/deepseekocr_utils.py | 27 | CODE | |
| LOW | docling/utils/deepseekocr_utils.py | 122 | CODE | |
| LOW | docling/utils/deepseekocr_utils.py | 177 | CODE | |
| LOW | docling/utils/deepseekocr_utils.py | 231 | CODE | |
| LOW | docling/backend/webvtt_backend.py | 101 | CODE | |
| LOW | docling/backend/webvtt_backend.py | 117 | CODE | |
| LOW | docling/backend/md_backend.py | 204 | CODE | |
| LOW | docling/backend/md_backend.py | 359 | CODE | |
| LOW | docling/backend/msword_backend.py | 349 | CODE | |
| LOW | docling/backend/msword_backend.py | 497 | CODE | |
| LOW | docling/backend/msword_backend.py | 672 | CODE | |
| LOW | docling/backend/msword_backend.py | 713 | CODE | |
| LOW | docling/backend/msword_backend.py | 996 | CODE | |
| LOW | docling/backend/msword_backend.py | 1301 | CODE | |
| LOW | docling/backend/msword_backend.py | 1371 | CODE | |
| LOW | docling/backend/msword_backend.py | 1431 | CODE | |
| 185 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_backend_jats.py | 204 | "Jane Doe", | CODE |
| LOW | tests/test_backend_jats.py | 212 | "Jane Doe", | CODE |
| LOW⚡ | tests/test_backend_jats.py | 257 | assert "Jane Doe" in md | CODE |
| LOW⚡ | tests/test_backend_opendocument.py | 424 | assert formatted_by_text["Lorem Ipsum is not simply random text"].bold | CODE |
| LOW⚡ | tests/test_backend_opendocument.py | 434 | assert "**Lorem Ipsum is not simply random text**" in markdown | CODE |
| LOW | tests/test_backend_opendocument.py | 715 | and item.text.startswith("Lorem ipsum dolor sit amet") | CODE |
| LOW | tests/test_backend_opendocument.py | 715 | and item.text.startswith("Lorem ipsum dolor sit amet") | CODE |
| LOW | tests/test_latex/test_basic.py | 348 | assert "Jane Doe" in md | STRING |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 237 | "orig": "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the indus | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 238 | "text": "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the indus | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 262 | "orig": "Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical L | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 263 | "text": "Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical L | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 423 | "orig": "Lorem Ipsum is not simply random text", | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 424 | "text": "Lorem Ipsum is not simply random text", | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 473 | "orig": ", looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, ", | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 474 | "text": ", looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, " | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 504 | "orig": ", discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of \"de Finibus | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.json | 505 | "text": ", discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of \"de Finibus | CODE |
| LOW | tests/data/odf/groundtruth/odf_presentation_02.odp.md | 3 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc ac faucibus odio. Vestibulum neque massa, scelerisque sit | CODE |
| LOW | tests/data/odf/groundtruth/odf_presentation_02.odp.md | 3 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc ac faucibus odio. Vestibulum neque massa, scelerisque sit | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.md | 7 | Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.md | 11 | Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.md | 24 | Contrary to popular belief, **Lorem Ipsum is not simply random text** . Richard McClintock, *a Latin professor at Hamp | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.html | 179 | <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standa | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.html | 181 | <p>Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literat | CODE |
| LOW | tests/data/odf/groundtruth/text_document_01.odt.html | 205 | <span class='inline-group'>Contrary to popular belief, <strong>Lorem Ipsum is not simply random text</strong> . Richard | CODE |
| LOW | tests/data/odf/groundtruth/text_document_02.odt.md | 5 | Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard | CODE |
| LOW | tests/data/odf/groundtruth/text_document_02.odt.md | 9 | Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/picture_classification.md | 3 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/picture_classification.md | 3 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/picture_classification.md | 9 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/picture_classification.md | 9 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/picture_classification.md | 11 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/picture_classification.md | 11 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/picture_classification.md | 17 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/picture_classification.md | 17 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 2 | <text><loc_109><loc_95><loc_390><loc_183>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 2 | <text><loc_109><loc_95><loc_390><loc_183>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 3 | <text><loc_109><loc_185><loc_390><loc_213>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 3 | <text><loc_109><loc_185><loc_390><loc_213>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 5 | <text><loc_109><loc_265><loc_390><loc_353>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmo | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 5 | <text><loc_109><loc_265><loc_390><loc_353>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmo | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 6 | <text><loc_109><loc_355><loc_390><loc_383>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 6 | <text><loc_109><loc_355><loc_390><loc_383>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 10 | <text><loc_112><loc_89><loc_401><loc_172>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 10 | <text><loc_112><loc_89><loc_401><loc_172>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 11 | <text><loc_112><loc_174><loc_401><loc_208>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 11 | <text><loc_112><loc_174><loc_401><loc_208>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 13 | <text><loc_112><loc_227><loc_401><loc_311>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmo | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 13 | <text><loc_112><loc_227><loc_401><loc_311>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmo | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 14 | <text><loc_112><loc_313><loc_401><loc_353>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 14 | <text><loc_112><loc_313><loc_401><loc_353>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 15 | <text><loc_112><loc_355><loc_401><loc_396>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.doctags.txt | 15 | <text><loc_112><loc_355><loc_401><loc_396>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.md | 3 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.md | 3 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.md | 5 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.md | 5 | Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nul | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.md | 13 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| LOW⚡ | tests/data/pdf/groundtruth/code_and_formula.md | 13 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magn | CODE |
| 86 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .actor/actor.sh | 19 | # Create a temporary home directory with write permissions | COMMENT |
| MEDIUM | .actor/actor.sh | 183 | # Create a dedicated working directory in /tmp (writable) | COMMENT |
| MEDIUM | .actor/actor.sh | 288 | # Create the request JSON | COMMENT |
| MEDIUM | tests/test_deepseekocr_vlm.py | 42 | # Create a page with the DeepSeek OCR markdown as VLM response | COMMENT |
| MEDIUM | tests/test_backend_webp.py | 29 | # Define the directory you want to search | COMMENT |
| MEDIUM | tests/test_asr_whisper_s2t.py | 394 | # Create a real file so backend initializes | COMMENT |
| MEDIUM | tests/test_backend_msexcel.py | 51 | # Define the directory you want to search | COMMENT |
| MEDIUM | tests/test_backend_msexcel.py | 715 | # Create an InputDocument with the BytesIO stream | COMMENT |
| MEDIUM | tests/test_backend_html.py | 428 | # Define the directory you want to search | COMMENT |
| MEDIUM | tests/test_backend_msword.py | 35 | # Define the directory you want to search | COMMENT |
| MEDIUM | tests/test_backend_msword.py | 363 | # Create a backend instance using any existing docx file | COMMENT |
| MEDIUM | tests/test_e2e_conversion.py | 25 | # Define the directory you want to search | COMMENT |
| MEDIUM | tests/test_backend_epub.py | 37 | # Define the directory you want to search | COMMENT |
| MEDIUM | tests/test_backend_csv.py | 18 | # Define the directory you want to search | COMMENT |
| MEDIUM | tests/test_e2e_ocr_conversion.py | 32 | # Define the directory you want to search | COMMENT |
| MEDIUM⚡ | tests/test_interfaces.py | 118 | # Create an InlineVlmOptions with an invalid enum by patching attribute directly | COMMENT |
| MEDIUM | tests/test_backend_markdown.py | 82 | # Define the directory you want to search | COMMENT |
| MEDIUM | tests/test_asr_pipeline.py | 115 | # Create an empty ConversionResult with proper InputDocument | COMMENT |
| MEDIUM | tests/test_asr_pipeline.py | 152 | # Create a proper NoOpBackend instance | COMMENT |
| MEDIUM | tests/test_asr_pipeline.py | 316 | # Create a real file so backend initializes | COMMENT |
| MEDIUM | tests/test_asr_pipeline.py | 490 | # Create a real file so backend initializes | COMMENT |
| MEDIUM | tests/test_asr_pipeline.py | 542 | # Create a real file so backend initializes | COMMENT |
| MEDIUM⚡ | tests/test_cli.py | 503 | # Create a dummy audio file for testing | COMMENT |
| MEDIUM | tests/test_cli.py | 523 | # Create a dummy audio file for testing | COMMENT |
| MEDIUM | tests/test_backend_pptx.py | 19 | # Define the directory you want to search | COMMENT |
| MEDIUM⚡ | tests/test_latex/test_figures.py | 78 | # Create a temporary directory and test image | COMMENT |
| MEDIUM⚡ | tests/test_latex/test_figures.py | 84 | # Create a simple test image with known DPI | COMMENT |
| MEDIUM | docling/pipeline/standard_pdf_pipeline.py | 622 | # Create a copy to avoid mutating pipeline_options in-place, | COMMENT |
| MEDIUM | docling/utils/visualization.py | 15 | # Create a smaller font for the labels | COMMENT |
| MEDIUM | docling/utils/deepseekocr_utils.py | 281 | # Create a new document | COMMENT |
| MEDIUM | docling/backend/msword_backend.py | 559 | # Create a paragraph-like element to process with standard handler | COMMENT |
| MEDIUM | docling/backend/msword_backend.py | 1439 | # Create a textbox group to contain all text from the textbox | COMMENT |
| MEDIUM | docling/backend/msword_backend.py | 2524 | # Create a temporary document with just these elements | COMMENT |
| MEDIUM | docling/backend/msword_backend.py | 2859 | # Create a group for this comment in NOTES and add the comment there | COMMENT |
| MEDIUM | docling/backend/html_backend.py | 2401 | # Create the list container | COMMENT |
| MEDIUM | docling/backend/opendocument_backend.py | 1858 | # Create a sub-table with just this region | COMMENT |
| MEDIUM | docling/models/stages/layout/layout_model.py | 130 | # Create a deep copy of the original image for both sides | COMMENT |
| MEDIUM | docling/models/stages/vlm_convert/vlm_convert_model.py | 84 | # Create the engine - pass model_spec, let factory handle config generation | COMMENT |
| MEDIUM | …cling/models/stages/chart_extraction/granite_vision.py | 232 | # Create a batch of conversations | COMMENT |
| MEDIUM | …ing/models/inference_engines/vlm/auto_inline_engine.py | 177 | # Create the actual engine | COMMENT |
| MEDIUM | docling/models/inference_engines/vlm/vllm_engine.py | 164 | # Create a temporary mixin instance for downloading | COMMENT |
| MEDIUM | docling/datamodel/pipeline_options.py | 1068 | # Define an enum for the backend options | COMMENT |
| MEDIUM | docling/datamodel/pipeline_options.py | 1130 | # Define an enum for the ocr engines | COMMENT |
| MEDIUM | docling/datamodel/base_models.py | 532 | # Create a type alias for score values | COMMENT |
| MEDIUM⚡ | docling/datamodel/asr_model_specs.py | 304 | # Create the model instance | COMMENT |
| MEDIUM | docling/datamodel/asr_model_specs.py | 89 | # Create the model instance | COMMENT |
| MEDIUM | docling/datamodel/asr_model_specs.py | 132 | # Create the model instance | COMMENT |
| MEDIUM | docling/datamodel/asr_model_specs.py | 175 | # Create the model instance | COMMENT |
| MEDIUM | docling/datamodel/asr_model_specs.py | 218 | # Create the model instance | COMMENT |
| MEDIUM | docling/datamodel/asr_model_specs.py | 261 | # Create the model instance | COMMENT |
| MEDIUM | docling/datamodel/service/options.py | 1 | # Define the input options for the API | COMMENT |
| MEDIUM | docs/examples/enrich_doclingdocument.py | 50 | # The following function is responsible for taking an item and applying the required pre-processing for the model. | COMMENT |
| MEDIUM | docs/examples/legacy/vlm_pipeline_api_model_legacy.py | 266 | # Create the DocumentConverter and launch the conversion. | COMMENT |
| MEDIUM | docs/examples/legacy/minimal_vlm_pipeline_legacy.py | 6 | # This file is kept to validate backward compatibility with the old API. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .actor/actor.sh | 208 | # Check if process is still running | COMMENT |
| LOW | tests/test_deepseekocr_vlm.py | 100 | # Check if ollama is available | COMMENT |
| LOW | tests/test_backend_msword.py | 140 | # Verify if a particular textbox content is extracted | COMMENT |
| LOW⚡ | tests/test_backend_epub.py | 129 | # Check if document has pictures | COMMENT |
| LOW | tests/test_asr_pipeline.py | 57 | # Check if the test audio file exists | COMMENT |
| LOW | tests/test_latex/test_macros.py | 372 | # Check if macros were registered | STRING |
| LOW | docling/pipeline/vlm_pipeline.py | 89 | # Check if using new VlmConvertOptions | COMMENT |
| LOW | docling/utils/layout_postprocessor.py | 450 | # Check if areas are similar (within 20% of each other) | COMMENT |
| LOW | docling/utils/deepseekocr_utils.py | 355 | # Check if NEXT annotation is a caption for this table/figure/image | COMMENT |
| LOW | docling/backend/msword_backend.py | 969 | # Check if this is a heading style | COMMENT |
| LOW | docling/backend/msword_backend.py | 1637 | # Check if this paragraph contains a checkbox | COMMENT |
| LOW | docling/backend/msword_backend.py | 1655 | # Check if this is actually a numbered list by examining the numFmt | COMMENT |
| LOW | docling/backend/msword_backend.py | 2811 | # Check if document has any comments | COMMENT |
| LOW | docling/backend/msexcel_backend.py | 857 | # Check if this is a threaded comment with better data in XML | COMMENT |
| LOW | docling/backend/msexcel_backend.py | 1852 | # Check if cell position is within this item's bounding box | COMMENT |
| LOW⚡ | docling/backend/noop_backend.py | 27 | # Check if stream has content | COMMENT |
| LOW⚡ | docling/backend/noop_backend.py | 33 | # Check if file exists | COMMENT |
| LOW | docling/backend/mspowerpoint_backend.py | 382 | # Check if it's definitely a list item | COMMENT |
| LOW | docling/backend/mspowerpoint_backend.py | 395 | # Check if it's definitely not a list item | COMMENT |
| LOW | docling/backend/mspowerpoint_backend.py | 500 | # Check if master has marker information | COMMENT |
| LOW | docling/backend/html_backend.py | 1463 | # Check if cell is in a column header or row header | COMMENT |
| LOW | docling/backend/html_backend.py | 2554 | # Check if this list has a ul/ol/dl ancestor within the current li | COMMENT |
| LOW | docling/backend/opendocument_backend.py | 180 | # Check if cell has content (value or is part of a span) | COMMENT |
| LOW | docling/backend/opendocument_backend.py | 1717 | # Check if this is a singleton (1x1 table) | COMMENT |
| LOW | docling/backend/opendocument_backend.py | 1777 | # Check if we found any data | COMMENT |
| LOW | docling/backend/opendocument_backend.py | 1943 | # Check if the table has a display attribute indicating it's hidden | COMMENT |
| LOW | docling/backend/xml/xbrl_backend.py | 91 | # Check if arelle is available before proceeding | COMMENT |
| LOW | docling/backend/xml/jats_backend.py | 739 | # Check if cell is in a column header or row header | COMMENT |
| LOW | docling/backend/docx/latex/omml.py | 654 | # Check if base is a known limit function | COMMENT |
| LOW | docling/backend/docx/latex/omml.py | 659 | # Check if base is a grouping function (underbrace, overbrace, etc.) | COMMENT |
| LOW | …/stages/page_preprocessing/page_preprocessing_model.py | 129 | ) # Check if text is mostly slash-number pattern | CODE |
| LOW | docling/models/stages/ocr/tesseract_ocr_model.py | 183 | # Check if the detected language is present in the system | COMMENT |
| LOW | docling/models/stages/ocr/tesseract_ocr_cli_model.py | 252 | # Check if the detected language has been installed | STRING |
| LOW | …models/stages/table_structure/table_structure_model.py | 228 | # Check if word-level cells are available from backend: | COMMENT |
| LOW | …cling/models/stages/chart_extraction/granite_vision.py | 170 | # Check if the value is numeric - non-numeric cells are row headers | COMMENT |
| LOW | …ing/models/inference_engines/vlm/auto_inline_engine.py | 96 | # Check if model has explicit MLX export | COMMENT |
| LOW | …/inference_engines/vlm/api_openai_compatible_engine.py | 171 | # Check if stopped by custom criteria | COMMENT |
| LOW | …ng/models/vlm_pipeline_models/hf_transformers_model.py | 324 | # Check if it's a GenerationStopper class | COMMENT |
| LOW | docling/datamodel/accelerator_options.py | 98 | # Check if to set the num_threads from the alternative envvar | STRING |
| LOW | docling/datamodel/asr_model_specs.py | 39 | # Check if mlx-whisper is available | COMMENT |
| LOW | docling/datamodel/service/options.py | 958 | # Check if using legacy fields with new fields | COMMENT |
| LOW | docling/datamodel/service/options.py | 989 | # Check if using legacy fields with new fields | COMMENT |
| LOW | docs/examples/enrich_simple_pipeline.py | 15 | # Check if running in CI | COMMENT |
| LOW | docs/examples/model_family_engines_example.py | 53 | # Check if running in CI | COMMENT |
| LOW | docs/examples/run_with_formats.py | 50 | # Check if running in CI | COMMENT |
| LOW | docs/examples/minimal_asr_pipeline.py | 66 | # Check if the test audio file exists | COMMENT |
| LOW | docs/examples/chart_extraction.py | 80 | # Check if the picture was classified as a chart. | COMMENT |
| LOW | docs/examples/chart_extraction.py | 86 | # Check if chart data was extracted. | COMMENT |
| LOW | docs/examples/pictures_description_api.py | 101 | # Check if running in CI environment | COMMENT |
| LOW | docs/examples/pictures_description_api.py | 111 | # Check if credentials are available | COMMENT |
| LOW | docs/examples/picture_description_inline.py | 46 | # Check if running in CI | COMMENT |
| LOW | docs/examples/asr_pipeline_performance_comparison.py | 156 | # Check if we're on Apple Silicon | COMMENT |
| LOW | docs/examples/post_process_ocr_with_vlm.py | 674 | # Read file names (strip whitespace, ignore empty lines) | COMMENT |
| LOW | docs/examples/develop_formula_understanding.py | 33 | # Check if running in CI | COMMENT |
| LOW | docs/examples/vlm_pipeline_api_model.py | 54 | # Check if model is already loaded | COMMENT |
| LOW⚡ | docs/examples/vlm_pipeline_api_model.py | 102 | # Check if model exists | COMMENT |
| LOW | docs/examples/vlm_pipeline_api_model.py | 168 | # Check if LM Studio is running | COMMENT |
| LOW | docs/examples/vlm_pipeline_api_model.py | 238 | # Check if Ollama is running | COMMENT |
| LOW | docs/examples/vlm_pipeline_api_model.py | 300 | # Check if VLLM is running | COMMENT |
| LOW | docs/examples/vlm_pipeline_api_model.py | 358 | # Check if running in CI environment | COMMENT |
| 2 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/test_glmocr_vlm.py | 0 | verify preset is registered with correct metadata and model spec. | STRING |
| HIGH | tests/test_falcon_ocr_vlm.py | 0 | verify preset is registered with correct metadata and model spec. | STRING |
| HIGH | tests/test_lightonocr_vlm.py | 0 | verify preset is registered with correct metadata and model spec. | STRING |
| HIGH | tests/test_nanonets_ocr_vlm.py | 0 | verify preset is registered with correct metadata and model spec. | STRING |
| HIGH | tests/test_glmocr_vlm.py | 0 | verify engine overrides propagate correctly through get_engine_config. | STRING |
| HIGH | tests/test_falcon_ocr_vlm.py | 0 | verify engine overrides propagate correctly through get_engine_config. | STRING |
| HIGH | tests/test_lightonocr_vlm.py | 0 | verify engine overrides propagate correctly through get_engine_config. | STRING |
| HIGH | tests/test_nanonets_ocr_vlm.py | 0 | verify engine overrides propagate correctly through get_engine_config. | STRING |
| HIGH | tests/test_glmocr_vlm.py | 0 | verify from_preset produces a usable vlmconvertoptions with engine options. | STRING |
| HIGH | tests/test_falcon_ocr_vlm.py | 0 | verify from_preset produces a usable vlmconvertoptions with engine options. | STRING |
| HIGH | tests/test_lightonocr_vlm.py | 0 | verify from_preset produces a usable vlmconvertoptions with engine options. | STRING |
| HIGH | tests/test_nanonets_ocr_vlm.py | 0 | verify from_preset produces a usable vlmconvertoptions with engine options. | STRING |
| HIGH | tests/test_glmocr_vlm.py | 0 | verify legacy inlinevlmoptions/apivlmoptions specs are consistent. | STRING |
| HIGH | tests/test_lightonocr_vlm.py | 0 | verify legacy inlinevlmoptions/apivlmoptions specs are consistent. | STRING |
| HIGH | tests/test_nanonets_ocr_vlm.py | 0 | verify legacy inlinevlmoptions/apivlmoptions specs are consistent. | STRING |
| HIGH | tests/test_glmocr_vlm.py | 0 | e2e test with vllm server (skipped in ci and when server is unavailable). | STRING |
| HIGH | tests/test_lightonocr_vlm.py | 0 | e2e test with vllm server (skipped in ci and when server is unavailable). | STRING |
| HIGH | tests/test_nanonets_ocr_vlm.py | 0 | e2e test with vllm server (skipped in ci and when server is unavailable). | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docling/document_converter.py | 427 | Convert one document fetched from a file path, URL, or DocumentStream. Note: If the document content is given a | STRING |
| HIGH | docling/document_converter.py | 494 | Convert multiple documents from file paths, URLs, or DocumentStreams. Args: source: Source of input | STRING |
| HIGH | docling/document_converter.py | 576 | Convert a document given as a string using the specified format. Only Markdown (`InputFormat.MD`), HTML (`Input | STRING |
| HIGH | docling/backend/epub_backend.py | 157 | Safely extract EPUB contents with zip-bomb protection. Args: target_dir: Directory to extract files | STRING |
| HIGH | …g/models/stages/code_formula/code_formula_vlm_model.py | 136 | Construct the prompt for the model based on the element type. Args: label: The type of input, eithe | STRING |
| HIGH | docling/models/stages/vlm_convert/vlm_convert_model.py | 220 | Process raw images without page metadata. This method provides a simpler interface for processing images direct | STRING |
| HIGH | docling/models/inference_engines/vlm/factory.py | 35 | Create a VLM inference engine from options. Args: options: Engine configuration options model_spec: | STRING |
| HIGH | docling/models/inference_engines/vlm/_utils.py | 21 | Convert any image format to RGB PIL Image. Args: image: Input image as PIL Image or numpy array Return | STRING |
| HIGH | docling/models/inference_engines/vlm/_utils.py | 99 | Resolve 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.py | 225 | Execute HTTP request with consistent error handling. Args: url: Target URL method: HTTP | STRING |
| HIGH | …ling/models/inference_engines/common/kserve_v2_http.py | 322 | Execute inference request against KServe v2 endpoint. Args: inputs: Mapping of input tensor names t | STRING |
| HIGH | …ling/models/extraction/nuextract_transformers_model.py | 28 | Process vision information from both messages and in-context examples, supporting batch processing. Args: | STRING |
| HIGH | docling/datamodel/pipeline_options.py | 1100 | Normalize deprecated backend enum values to current ones. Args: backend: The PDF backend enum value to norm | STRING |
| HIGH | docling/datamodel/stage_model_specs.py | 302 | Check if this model has an explicit export for the given engine. An explicit export means either: 1. Th | STRING |
| HIGH | docling/datamodel/stage_model_specs.py | 568 | Get a specific preset. Args: preset_id: The preset identifier Returns: The req | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/data/uspto/sources/pftaps057006474.txt | 861 | ##STR83## | COMMENT |
| LOW | tests/data/html/groundtruth/unit_test_01.html.md | 1 | # Title | COMMENT |
| LOW | tests/data/html/groundtruth/hyperlink_02.html.md | 1 | ## [Home](/home.html) | COMMENT |
| LOW | tests/data/pptx/groundtruth/powerpoint_bad_text.pptx.md | 1 | # X-Library The fully customisable and copyright-free standard content template collection exclusively for our customers | COMMENT |
| LOW | docs/examples/granitedocling_repetition_stopping.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/granitedocling_repetition_stopping.py | 81 | # url="http://localhost:8000/v1/chat/completions", # LM studio defaults to port 1234, VLLM to 8000 | COMMENT |
| LOW | docs/examples/granitedocling_repetition_stopping.py | 101 | # ) | COMMENT |
| LOW | docs/examples/inspect_picture_content.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/compare_vlm_models.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/translate.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/picture_description_api_usage.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/picture_description_api_usage.py | 21 | # docs/examples/run_picture_description_api_usage.sh path/to/input.pdf | COMMENT |
| LOW | docs/examples/picture_description_api_usage.py | 41 | # OpenAI-compatible responses. | COMMENT |
| LOW | docs/examples/export_figures.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/enrich_doclingdocument.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/gpu_vlm_pipeline.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/model_family_engines_example.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/run_with_formats.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/minimal_asr_pipeline.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/gpu_standard_pipeline.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/chart_extraction.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/pii_obfuscate.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/pictures_description_api.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/pictures_description_api.py | 181 | # Run watsonx.ai example (skips if in CI or credentials not found) | COMMENT |
| LOW | docs/examples/pictures_description_api.py | 201 | # ### Custom API Configuration | COMMENT |
| LOW | docs/examples/tesseract_lang_detection.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/picture_description_inline.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/picture_description_inline.py | 161 | # %% [markdown] | COMMENT |
| LOW | docs/examples/minimal_vlm_pipeline.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/custom_convert.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/custom_convert.py | 21 | # - If you uncomment a backend or OCR option that is not imported above, also | COMMENT |
| LOW | docs/examples/custom_convert.py | 61 | # The sections below demo combinations of PdfPipelineOptions and backends. | COMMENT |
| LOW | docs/examples/custom_convert.py | 81 | # pipeline_options = PdfPipelineOptions() | COMMENT |
| LOW | docs/examples/custom_convert.py | 121 | COMMENT | |
| LOW | docs/examples/custom_convert.py | 141 | COMMENT | |
| LOW | docs/examples/custom_convert.py | 161 | # pipeline_options.table_structure_options = TableStructureOptions(do_cell_matching=True) | COMMENT |
| LOW | docs/examples/minimal.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/suryaocr_with_custom_models.py | 1 | # Example: Integrating SuryaOCR with Docling for PDF OCR and Markdown Export | COMMENT |
| LOW | docs/examples/rapidocr_with_custom_models.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/granite_vision_table_structure.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/develop_formula_understanding.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/export_tables.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/parquet_images.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/develop_picture_enrichment.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/vlm_pipeline_api_model.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/vlm_pipeline_api_model.py | 481 | # | COMMENT |
| LOW | docs/examples/vlm_pipeline_api_model.py | 501 | # | COMMENT |
| LOW | docs/examples/batch_convert.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/run_with_accelerator.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/run_with_accelerator.py | 41 | COMMENT | |
| LOW | docs/examples/full_page_ocr.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/legacy/vlm_pipeline_api_model_legacy.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/legacy/vlm_pipeline_api_model_legacy.py | 221 | enable_remote_services=True # required when calling remote VLM endpoints | COMMENT |
| LOW | docs/examples/legacy/vlm_pipeline_api_model_legacy.py | 241 | format=ResponseFormat.DOCTAGS, | COMMENT |
| LOW | docs/examples/legacy/pictures_description_api_legacy.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/legacy/pictures_description_api_legacy.py | 141 | COMMENT | |
| LOW | …s/examples/legacy/picture_description_inline_legacy.py | 1 | # %% [markdown] | COMMENT |
| LOW | docs/examples/legacy/minimal_vlm_pipeline_legacy.py | 1 | # %% [markdown] | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | docling/backend/html_backend.py | 734 | const width = rect.width || 0; | STRING |
| HIGH⚡ | docling/backend/html_backend.py | 735 | const height = rect.height || 0; | STRING |
| HIGH⚡ | docling/backend/html_backend.py | 736 | if (width <= 0 && height <= 0) { | STRING |
| HIGH⚡ | docling/backend/html_backend.py | 743 | let textLeft = null; | STRING |
| HIGH⚡ | docling/backend/html_backend.py | 744 | let textTop = null; | STRING |
| HIGH⚡ | docling/backend/html_backend.py | 745 | let textRight = null; | STRING |
| HIGH⚡ | docling/backend/html_backend.py | 746 | let textBottom = null; | STRING |
| HIGH⚡ | docling/backend/html_backend.py | 759 | const tWidth = tRect.width || 0; | STRING |
| HIGH⚡ | docling/backend/html_backend.py | 760 | const tHeight = tRect.height || 0; | STRING |
| HIGH⚡ | docling/backend/html_backend.py | 761 | if (tWidth <= 0 && tHeight <= 0) { | STRING |
| HIGH | docling/datamodel/service/responses.py | 30 | Plain stored floats (NaN coerced to null) rather than a reuse of | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | pyproject.toml | 245 | # Document chunking for RAG applications | COMMENT |
| MEDIUM | tests/data/latex/groundtruth/2310.06825_main.tex.md | 195 | ## Adding guardrails for front-facing applications | COMMENT |
| MEDIUM | tests/data/latex/groundtruth/2310.06825_main.tex.md | 201 | ### System prompt to enforce guardrails | COMMENT |
| MEDIUM | …building-pydantic-ai-agents/references/ARCHITECTURE.md | 11 | - [Choosing a Multi-Agent Pattern](#choosing-a-multi-agent-pattern) | CODE |
| MEDIUM | …ai-agents/references/ORCHESTRATION-AND-INTEGRATIONS.md | 98 | ## Use Embeddings for RAG | COMMENT |
| MEDIUM | docs/usage/processing_audio_media.md | 140 | ### Building a RAG pipeline with LangChain | COMMENT |
| MEDIUM | docs/integrations/nvidia.md | 6 | - [✍️ PDF to Podcast blog post](https://blogs.nvidia.com/blog/agentic-ai-blueprints/) | CODE |
| MEDIUM | docs/examples/post_process_ocr_with_vlm.py | 537 | # The last measure against hallucinations | COMMENT |
| MEDIUM | docs/examples/develop_formula_understanding.py | 2 | # Developing an enrichment model example (formula understanding: scaffold only). | COMMENT |
| MEDIUM | docs/examples/develop_formula_understanding.py | 9 | # - This is a development scaffold; it does not run a real formula understanding model. | COMMENT |
| MEDIUM | docs/examples/develop_picture_enrichment.py | 2 | # Developing a picture enrichment model (classifier scaffold only). | COMMENT |
| MEDIUM | docs/examples/develop_picture_enrichment.py | 9 | # - This is a scaffold for development; it does not run a real classifier. | COMMENT |
| MEDIUM | …les/agent_skill/docling-document-intelligence/SKILL.md | 221 | ### 5. Chunk for RAG (hybrid strategy) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/test_backend_pptx.py | 72 | """Test comprehensive comment extraction including metadata, authors, and slide distribution.""" | STRING |
| MEDIUM | tests/data/uspto/sources/ipg07997973.xml | 3813 | <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 |
| MEDIUM | tests/data/uspto/sources/ipg07997973.xml | 3988 | <li id="ul0012-0008" num="0196"> The various methods of disguising a game described herein may pr | CODE |
| MEDIUM | tests/data/uspto/sources/ipg07997973.xml | 4017 | <li id="ul0002-0035" num="0215"> In various embodiments, the data about the games of a primary player may | CODE |
| MEDIUM | tests/data/uspto/sources/ipg07997973.xml | 4247 | <li id="ul0028-0018" num="0367"> Any physical game described herein may be implemented electronically in | CODE |
| MEDIUM | tests/data/jats/sources/elife-56337.xml | 3 | <article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" article-type="researc | CODE |
| MEDIUM⚡ | tests/data/xbrl/sources/grve_10q_htm.xml | 2459 | <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="From2025-04-01to2025-12-31" id="fid_281"><p style="FO | CODE |
| MEDIUM⚡ | tests/data/xbrl/sources/grve_10q_htm.xml | 2459 | <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="From2025-04-01to2025-12-31" id="fid_281"><p style="FO | CODE |
| MEDIUM⚡ | tests/data/xbrl/sources/grve_10q_htm.xml | 2460 | <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="From2025-04-01to2025-12-31" id="fid_289"><p style="FO | CODE |
| MEDIUM⚡ | tests/data/xbrl/sources/grve_10q_htm.xml | 2460 | <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="From2025-04-01to2025-12-31" id="fid_289"><p style="FO | CODE |
| MEDIUM | tests/data/json_dots/sources/dots_simple.json | 1 | [{"bbox": [29, 435, 74, 1121], "category": "Text", "text": "arXiv:2206.01062v1 [cs.CV] 2 Jun 2022"}, {"bbox": [211, 161, | CODE |
| MEDIUM | docling/backend/epub_backend.py | 385 | # TODO: leverage `self.metadata` once DoclingDocument supports file metadata | COMMENT |
| LOW | docling/backend/html_backend.py | 4431 | # Do not fetch the image, just add a placeholder | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docling/datamodel/backend_options.py | 95 | examples=[{"Authorization": "Bearer TOKEN"}, {"X-API-Key": "your-api-key"}], | CODE |
| HIGH | docs/usage/mcp.md | 37 | export DOCLING_SERVICE_API_KEY=your-api-key # if the service requires one | CODE |
| HIGH | docs/examples/granitedocling_repetition_stopping.py | 89 | # # "Authorization": "Bearer YOUR_API_KEY", # if needed | COMMENT |
| HIGH | docs/examples/service_client/README.md | 14 | DOCLING_SERVICE_API_KEY=your-api-key # omit if the service is unauthenticated | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docling/experimental/models/table_crops_layout_model.py | 21 | __all__ = ["TableCropsLayoutModel"] | CODE |
| LOW | …g/experimental/datamodel/table_crops_layout_options.py | 7 | __all__ = ["TableCropsLayoutOptions"] | CODE |
| LOW | docling/backend/latex_backend.py | 3 | __all__ = ["LatexDocumentBackend"] | CODE |
| LOW | docling/backend/latex/__init__.py | 3 | __all__ = ["LatexDocumentBackend"] | CODE |
| LOW | docling/backend/xml/uspto_backend.py | 137 | def _set_parser(self, doctype: str) -> None: | CODE |
| LOW | …ages/picture_classifier/document_picture_classifier.py | 31 | __all__ = [ | CODE |
| LOW | docling/models/inference_engines/__init__.py | 13 | __all__ = [] | CODE |
| LOW | docling/models/inference_engines/vlm/__init__.py | 21 | __all__ = [ | CODE |
| LOW | docling/models/inference_engines/common/__init__.py | 7 | __all__ = ["HfVisionModelMixin", "KserveV2Client", "KserveV2HttpClient"] | CODE |
| LOW | …/models/inference_engines/object_detection/__init__.py | 14 | __all__ = [ | CODE |
| LOW | …els/inference_engines/image_classification/__init__.py | 14 | __all__ = [ | CODE |
| LOW | docling/models/factories/picture_description_factory.py | 6 | logger = logging.getLogger(__name__) | CODE |
| LOW | docling/models/factories/__init__.py | 11 | logger = logging.getLogger(__name__) | CODE |
| LOW | docling/models/factories/ocr_factory.py | 6 | logger = logging.getLogger(__name__) | CODE |
| LOW | docling/models/factories/base_factory.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | docling/service_client/_async_client.py | 99 | logger = logging.getLogger(__name__) | CODE |
| LOW | docling/service_client/client.py | 106 | logger = logging.getLogger(__name__) | CODE |
| LOW | docling/service_client/__init__.py | 39 | __all__ = [ | CODE |
| LOW | docling/datamodel/service/__init__.py | 82 | __all__ = [ | CODE |
| LOW | docling/datamodel/service/sources.py | 11 | __all__ = ["FileSource", "HttpSource", "S3Coordinates"] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/examples/picture_description_inline.py | 7 | # - Enriches documents with AI-generated image captions | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docling/utils/model_downloader.py | 38 | CODE | |
| LOW | docling/cli/remote.py | 132 | CODE | |
| LOW | docling/cli/main.py | 682 | CODE | |
| LOW | docling/service_client/_async_client.py | 106 | CODE | |
| LOW | docling/service_client/client.py | 214 | CODE | |
| LOW | docling/service_client/client.py | 763 | CODE | |
| LOW | docling/service_client/client.py | 862 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …ata/latex/groundtruth/arXiv-2501.01300v2_main.tex.json | 972 | "orig": "[fig:enhan] are obtained by multiplying continuum extrapolated $\\chi^C_4$ values to ratios $P^C_B/P_C$ a | CODE |
| MEDIUM | …ata/latex/groundtruth/arXiv-2501.01300v2_main.tex.json | 973 | "text": "[fig:enhan] are obtained by multiplying continuum extrapolated $\\chi^C_4$ values to ratios $P^C_B/P_C$ a | CODE |