From 3f679793e831bc55d151d9c90c1dc6d3ae3a5220 Mon Sep 17 00:00:00 2001 From: wehub-resource-sync Date: Mon, 13 Jul 2026 12:40:50 +0800 Subject: [PATCH] chore: import upstream snapshot with attribution --- .github/ISSUE_TEMPLATE/bug_report.yml | 61 + .github/ISSUE_TEMPLATE/config.yml | 1 + .github/ISSUE_TEMPLATE/feature_request.yml | 26 + .github/ISSUE_TEMPLATE/question.yml | 26 + .github/dependabot.yml | 11 + .github/pull_request_template.md | 32 + .github/workflows/linting.yaml | 36 + .github/workflows/pypi-publish.yml | 52 + .github/workflows/test.yaml | 34 + .gitignore | 80 + .pre-commit-config.yaml | 21 + LICENSE | 21 + MANIFEST.in | 9 + README.md | 1326 ++++++++++ README.wehub.md | 7 + README_zh.md | 1286 +++++++++ SECURITY.md | 39 + assets/LiteWrite.png | Bin 0 -> 510236 bytes assets/logo.png | Bin 0 -> 1632426 bytes assets/rag_anything_framework.png | Bin 0 -> 664341 bytes docs/batch_processing.md | 375 +++ docs/context_aware_processing.md | 375 +++ docs/enhanced_markdown.md | 552 ++++ docs/multimodal_rag_failure_modes.md | 84 + docs/offline_setup.md | 78 + docs/vllm_integration.md | 244 ++ env.example | 211 ++ examples/batch_dry_run_example.py | 63 + examples/batch_processing_example.py | 561 ++++ examples/enhanced_markdown_example.py | 1055 ++++++++ examples/image_format_test.py | 234 ++ examples/insert_content_list_example.py | 440 +++ examples/lmstudio_integration_example.py | 334 +++ examples/minimax_integration_example.py | 323 +++ examples/modalprocessors_example.py | 236 ++ examples/office_document_test.py | 201 ++ examples/ollama_integration_example.py | 282 ++ examples/raganything_example.py | 339 +++ examples/text_format_test.py | 198 ++ examples/vllm_integration_example.py | 356 +++ pyproject.toml | 86 + raganything/__init__.py | 114 + raganything/asset_urls.py | 117 + raganything/base.py | 12 + raganything/batch.py | 441 +++ raganything/batch_parser.py | 660 +++++ raganything/callbacks.py | 377 +++ raganything/config.py | 158 ++ raganything/enhanced_markdown.py | 534 ++++ raganything/modalprocessors.py | 1614 +++++++++++ raganything/omml_extractor.py | 758 ++++++ raganything/parser.py | 2794 ++++++++++++++++++++ raganything/processor.py | 2258 ++++++++++++++++ raganything/prompt.py | 414 +++ raganything/prompt_manager.py | 156 ++ raganything/prompts_zh.py | 345 +++ raganything/query.py | 868 ++++++ raganything/raganything.py | 646 +++++ raganything/resilience.py | 397 +++ raganything/utils.py | 472 ++++ reproduce/env.example | 44 + reproduce/index.py | 284 ++ reproduce/llm_answer_evaluator.py | 1876 +++++++++++++ reproduce/query.py | 337 +++ requirements.txt | 16 + scripts/create_tiktoken_cache.py | 17 + setup.py | 116 + tests/testbatch_incremental.py | 221 ++ tests/testpaddleocr_parser.py | 164 ++ tests/testparser_kwargs.py | 362 +++ tests/testparser_wiring.py | 132 + 71 files changed, 26399 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml create mode 100644 .github/ISSUE_TEMPLATE/question.yml create mode 100644 .github/dependabot.yml create mode 100644 .github/pull_request_template.md create mode 100644 .github/workflows/linting.yaml create mode 100644 .github/workflows/pypi-publish.yml create mode 100644 .github/workflows/test.yaml create mode 100644 .gitignore create mode 100644 .pre-commit-config.yaml create mode 100644 LICENSE create mode 100644 MANIFEST.in create mode 100644 README.md create mode 100644 README.wehub.md create mode 100644 README_zh.md create mode 100644 SECURITY.md create mode 100644 assets/LiteWrite.png create mode 100644 assets/logo.png create mode 100644 assets/rag_anything_framework.png create mode 100644 docs/batch_processing.md create mode 100644 docs/context_aware_processing.md create mode 100644 docs/enhanced_markdown.md create mode 100644 docs/multimodal_rag_failure_modes.md create mode 100644 docs/offline_setup.md create mode 100644 docs/vllm_integration.md create mode 100644 env.example create mode 100644 examples/batch_dry_run_example.py create mode 100644 examples/batch_processing_example.py create mode 100644 examples/enhanced_markdown_example.py create mode 100644 examples/image_format_test.py create mode 100644 examples/insert_content_list_example.py create mode 100644 examples/lmstudio_integration_example.py create mode 100644 examples/minimax_integration_example.py create mode 100644 examples/modalprocessors_example.py create mode 100644 examples/office_document_test.py create mode 100644 examples/ollama_integration_example.py create mode 100644 examples/raganything_example.py create mode 100644 examples/text_format_test.py create mode 100644 examples/vllm_integration_example.py create mode 100644 pyproject.toml create mode 100644 raganything/__init__.py create mode 100644 raganything/asset_urls.py create mode 100644 raganything/base.py create mode 100644 raganything/batch.py create mode 100644 raganything/batch_parser.py create mode 100644 raganything/callbacks.py create mode 100644 raganything/config.py create mode 100644 raganything/enhanced_markdown.py create mode 100644 raganything/modalprocessors.py create mode 100644 raganything/omml_extractor.py create mode 100644 raganything/parser.py create mode 100644 raganything/processor.py create mode 100644 raganything/prompt.py create mode 100644 raganything/prompt_manager.py create mode 100644 raganything/prompts_zh.py create mode 100644 raganything/query.py create mode 100644 raganything/raganything.py create mode 100644 raganything/resilience.py create mode 100644 raganything/utils.py create mode 100644 reproduce/env.example create mode 100644 reproduce/index.py create mode 100644 reproduce/llm_answer_evaluator.py create mode 100644 reproduce/query.py create mode 100644 requirements.txt create mode 100644 scripts/create_tiktoken_cache.py create mode 100644 setup.py create mode 100644 tests/testbatch_incremental.py create mode 100644 tests/testpaddleocr_parser.py create mode 100644 tests/testparser_kwargs.py create mode 100644 tests/testparser_wiring.py diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..780a200 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,61 @@ +name: Bug Report +description: File a bug report +title: "[Bug]:" +labels: ["bug", "triage"] + +body: + - type: checkboxes + id: existingcheck + attributes: + label: Do you need to file an issue? + description: Please help us manage our time by avoiding duplicates and common bugs with the steps below. + options: + - label: I have searched the existing issues and this bug is not already filed. + - label: I believe this is a legitimate bug, not just a question or feature request. + - type: textarea + id: description + attributes: + label: Describe the bug + description: A clear and concise description of what the bug is. + placeholder: What went wrong? + - type: textarea + id: reproduce + attributes: + label: Steps to reproduce + description: Steps to reproduce the behavior. + placeholder: How can we replicate the issue? + - type: textarea + id: expected_behavior + attributes: + label: Expected Behavior + description: A clear and concise description of what you expected to happen. + placeholder: What should have happened? + - type: textarea + id: configused + attributes: + label: LightRAG Config Used + description: The LightRAG configuration used for the run. + placeholder: The settings content or LightRAG configuration + value: | + # Paste your config here + - type: textarea + id: screenshotslogs + attributes: + label: Logs and screenshots + description: If applicable, add screenshots and logs to help explain your problem. + placeholder: Add logs and screenshots here + - type: textarea + id: additional_information + attributes: + label: Additional Information + description: | + - LightRAG Version: e.g., v0.1.1 + - Operating System: e.g., Windows 10, Ubuntu 20.04 + - Python Version: e.g., 3.8 + - Related Issues: e.g., #1 + - Any other relevant information. + value: | + - LightRAG Version: + - Operating System: + - Python Version: + - Related Issues: diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..3ba13e0 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1 @@ +blank_issues_enabled: false diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..3c127d5 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,26 @@ +name: Feature Request +description: File a feature request +labels: ["enhancement"] +title: "[Feature Request]:" + +body: + - type: checkboxes + id: existingcheck + attributes: + label: Do you need to file a feature request? + description: Please help us manage our time by avoiding duplicates and common feature request with the steps below. + options: + - label: I have searched the existing feature request and this feature request is not already filed. + - label: I believe this is a legitimate feature request, not just a question or bug. + - type: textarea + id: feature_request_description + attributes: + label: Feature Request Description + description: A clear and concise description of the feature request you would like. + placeholder: What this feature request add more or improve? + - type: textarea + id: additional_context + attributes: + label: Additional Context + description: Add any other context or screenshots about the feature request here. + placeholder: Any additional information diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml new file mode 100644 index 0000000..26fed23 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/question.yml @@ -0,0 +1,26 @@ +name: Question +description: Ask a general question +labels: ["question"] +title: "[Question]:" + +body: + - type: checkboxes + id: existingcheck + attributes: + label: Do you need to ask a question? + description: Please help us manage our time by avoiding duplicates and common questions with the steps below. + options: + - label: I have searched the existing question and discussions and this question is not already answered. + - label: I believe this is a legitimate question, not just a bug or feature request. + - type: textarea + id: question + attributes: + label: Your Question + description: A clear and concise description of your question. + placeholder: What is your question? + - type: textarea + id: context + attributes: + label: Additional Context + description: Provide any additional context or details that might help us understand your question better. + placeholder: Add any relevant information here diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..9d866e3 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file + +version: 2 +updates: + - package-ecosystem: "pip" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "weekly" diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..5f04b7e --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,32 @@ + + +## Description + +[Briefly describe the changes made in this pull request.] + +## Related Issues + +[Reference any related issues or tasks addressed by this pull request.] + +## Changes Made + +[List the specific changes made in this pull request.] + +## Checklist + +- [ ] Changes tested locally +- [ ] Code reviewed +- [ ] Documentation updated (if necessary) +- [ ] Unit tests added (if applicable) + +## Additional Notes + +[Add any additional notes or context for the reviewer(s).] diff --git a/.github/workflows/linting.yaml b/.github/workflows/linting.yaml new file mode 100644 index 0000000..a7799fa --- /dev/null +++ b/.github/workflows/linting.yaml @@ -0,0 +1,36 @@ +name: Linting and Formatting + +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + lint-and-format: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.x' + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install pre-commit + + - name: Run pre-commit + run: pre-commit run --all-files --show-diff-on-failure + + - name: Commit lint changes + uses: stefanzweifel/git-auto-commit-action@v5 + with: + commit_message: "chore: apply linting and formatting" + branch: ${{ github.head_ref }} diff --git a/.github/workflows/pypi-publish.yml b/.github/workflows/pypi-publish.yml new file mode 100644 index 0000000..57a1c7c --- /dev/null +++ b/.github/workflows/pypi-publish.yml @@ -0,0 +1,52 @@ +name: Upload RAGAnything Package + +on: + release: + types: [published] + +permissions: + contents: read + +jobs: + release-build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - uses: actions/setup-python@v5 + with: + python-version: "3.x" + + - name: Build release distributions + run: | + python -m pip install build + python -m build + + - name: Upload distributions + uses: actions/upload-artifact@v4 + with: + name: release-dists + path: dist/ + + pypi-publish: + runs-on: ubuntu-latest + needs: + - release-build + permissions: + id-token: write + + environment: + name: pypi + + steps: + - name: Retrieve release distributions + uses: actions/download-artifact@v4 + with: + name: release-dists + path: dist/ + + - name: Publish release distributions to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + packages-dir: dist/ diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml new file mode 100644 index 0000000..ede4d9f --- /dev/null +++ b/.github/workflows/test.yaml @@ -0,0 +1,34 @@ +name: Tests + +on: + push: + branches: + - main + pull_request: + branches: + - main + +jobs: + test: + runs-on: ubuntu-latest + strategy: + matrix: + python-version: ['3.10', '3.11', '3.12'] + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -e ".[all]" + pip install pytest pytest-asyncio + + - name: Run tests + run: pytest tests/ -v diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a10d056 --- /dev/null +++ b/.gitignore @@ -0,0 +1,80 @@ +# Python-related files +__pycache__/ +*.py[cod] +*.egg-info/ +.eggs/ +*.tgz +*.tar.gz +*.ini + +# Virtual Environment +.venv/ +env/ +venv/ + +*.env* +.env_example + +# Build / Distribution +dist/ +build/ +site/ + +# Logs / Reports +*.log +*.log.* +*.logfire +*.coverage/ +log/ + +# Caches +.cache/ +.mypy_cache/ +.pytest_cache/ +.ruff_cache/ +.gradio/ +.history/ +temp/ + +# IDE / Editor Files +.idea/ +.vscode/ +.vscode/settings.json + +# Framework-specific files +local_neo4jWorkDir/ +neo4jWorkDir/ + +# Data & Storage +inputs/ +rag_storage*/ +examples/input/ +examples/output/ +output*/ + +# Miscellaneous +.DS_Store +TODO.md +ignore_this.txt +*.ignore.* + +# Project-specific files +dickens*/ +book.txt +LightRAG.pdf +LightRAG_2-4.pdf +download_models_hf.py +lightrag-dev/ +gui/ +tiktoken_cache/ + +# unit-test files +test_* + +# Cline files +memory-bank/ + +# AI +.claude/ +.cursor/ +CLAUDE.md diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..b7dbe5b --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,21 @@ +repos: + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v5.0.0 + hooks: + - id: trailing-whitespace + - id: end-of-file-fixer + - id: requirements-txt-fixer + + - repo: https://github.com/astral-sh/ruff-pre-commit + rev: v0.6.4 + hooks: + - id: ruff-format + - id: ruff + args: [--fix, --ignore=E402] + + + - repo: https://github.com/mgedmin/check-manifest + rev: "0.49" + hooks: + - id: check-manifest + stages: [manual] diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..b3ba37c --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2025 ✨Data Intelligence Lab@HKU✨ + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 0000000..838e252 --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1,9 @@ +include requirements.txt +include README.md +include README_zh.md +include LICENSE +recursive-include raganything *.py +recursive-include examples *.py +global-exclude *.pyc +global-exclude __pycache__ +global-exclude *.egg-info diff --git a/README.md b/README.md new file mode 100644 index 0000000..01d5de7 --- /dev/null +++ b/README.md @@ -0,0 +1,1326 @@ +
+ +
+ RAG-Anything Logo +
+ +# 🚀 RAG-Anything: All-in-One RAG Framework + +HKUDS%2FRAG-Anything | Trendshift + +
+ Typing Animation +
+ +
+
+

+ + + +

+

+ + + + +

+

+ + +

+

+ + +

+

+ +

+
+
+ +
+ +
+
+
+ +
+ + + +
+ +--- + +
+ + + + + +
+ LiteWrite + + + + +
+
+ +--- + +## 🎉 News +- [X] [2026.06]🎯📢 🎉 [LightRAG](https://github.com/HKUDS/LightRAG) enables multimodal RAG through native integration of RAG-Anything. +- [X] [2025.10]🎯📢 🚀 We have released the technical report of [RAG-Anything](http://arxiv.org/abs/2510.12323). Access it now to explore our latest research findings. +- [X] [2025.08]🎯📢 🔍 RAG-Anything now features **VLM-Enhanced Query** mode! When documents include images, the system seamlessly integrates them into VLM for advanced multimodal analysis, combining visual and textual context for deeper insights. +- [X] [2025.07]🎯📢 RAG-Anything now features a [context configuration module](docs/context_aware_processing.md), enabling intelligent integration of relevant contextual information to enhance multimodal content processing. +- [X] [2025.07]🎯📢 🚀 RAG-Anything now supports multimodal query capabilities, enabling enhanced RAG with seamless processing of text, images, tables, and equations. +- [X] [2025.07]🎯📢 🎉 RAG-Anything has reached 1k🌟 stars on GitHub! Thank you for your incredible support and valuable contributions to the project. + +--- + +## 🌟 System Overview + +*Next-Generation Multimodal Intelligence* + +
+ +Modern documents increasingly contain diverse multimodal content—text, images, tables, equations, charts, and multimedia—that traditional text-focused RAG systems cannot effectively process. **RAG-Anything** addresses this challenge as a comprehensive **All-in-One Multimodal Document Processing RAG system** built on [LightRAG](https://github.com/HKUDS/LightRAG). + +As a unified solution, RAG-Anything **eliminates the need for multiple specialized tools**. It provides **seamless processing and querying across all content modalities** within a single integrated framework. Unlike conventional RAG approaches that struggle with non-textual elements, our all-in-one system delivers **comprehensive multimodal retrieval capabilities**. + +Users can query documents containing **interleaved text**, **visual diagrams**, **structured tables**, and **mathematical formulations** through **one cohesive interface**. This consolidated approach makes RAG-Anything particularly valuable for academic research, technical documentation, financial reports, and enterprise knowledge management where rich, mixed-content documents demand a **unified processing framework**. + +RAG-Anything + +
+ +### 🎯 Key Features + +
+ +- **🔄 End-to-End Multimodal Pipeline** - Complete workflow from document ingestion and parsing to intelligent multimodal query answering +- **📄 Universal Document Support** - Seamless processing of PDFs, Office documents, images, and diverse file formats +- **🧠 Specialized Content Analysis** - Dedicated processors for images, tables, mathematical equations, and heterogeneous content types +- **🔗 Multimodal Knowledge Graph** - Automatic entity extraction and cross-modal relationship discovery for enhanced understanding +- **⚡ Adaptive Processing Modes** - Flexible MinerU-based parsing or direct multimodal content injection workflows +- **📋 Direct Content List Insertion** - Bypass document parsing by directly inserting pre-parsed content lists from external sources +- **🎯 Hybrid Intelligent Retrieval** - Advanced search capabilities spanning textual and multimodal content with contextual understanding + +
+ +--- + +## 🏗️ Algorithm & Architecture + +
+ +### Core Algorithm + +**RAG-Anything** implements an effective **multi-stage multimodal pipeline** that fundamentally extends traditional RAG architectures to seamlessly handle diverse content modalities through intelligent orchestration and cross-modal understanding. + +
+ +
+
+
+
+
📄
+
Document Parsing
+
+
+
+
🧠
+
Content Analysis
+
+
+
+
🔍
+
Knowledge Graph
+
+
+
+
🎯
+
Intelligent Retrieval
+
+
+
+
+ +### 1. Document Parsing Stage + +
+ +The system provides high-fidelity document extraction through adaptive content decomposition. It intelligently segments heterogeneous elements while preserving contextual relationships. Universal format compatibility is achieved via specialized optimized parsers. + +**Key Components:** + +- **⚙️ MinerU Integration**: Leverages [MinerU](https://github.com/opendatalab/MinerU) for high-fidelity document structure extraction and semantic preservation across complex layouts. + +- **🧩 Adaptive Content Decomposition**: Automatically segments documents into coherent text blocks, visual elements, structured tables, mathematical equations, and specialized content types while preserving contextual relationships. + +- **📁 Universal Format Support**: Provides comprehensive handling of PDFs, Office documents (DOC/DOCX/PPT/PPTX/XLS/XLSX), images, and emerging formats through specialized parsers with format-specific optimization. + +
+ +### 2. Multi-Modal Content Understanding & Processing + +
+ +The system automatically categorizes and routes content through optimized channels. It uses concurrent pipelines for parallel text and multimodal processing. Document hierarchy and relationships are preserved during transformation. + +**Key Components:** + +- **🎯 Autonomous Content Categorization and Routing**: Automatically identify, categorize, and route different content types through optimized execution channels. + +- **⚡ Concurrent Multi-Pipeline Architecture**: Implements concurrent execution of textual and multimodal content through dedicated processing pipelines. This approach maximizes throughput efficiency while preserving content integrity. + +- **🏗️ Document Hierarchy Extraction**: Extracts and preserves original document hierarchy and inter-element relationships during content transformation. + +
+ +### 3. Multimodal Analysis Engine + +
+ +The system deploys modality-aware processing units for heterogeneous data modalities: + +**Specialized Analyzers:** + +- **🔍 Visual Content Analyzer**: + - Integrate vision model for image analysis. + - Generates context-aware descriptive captions based on visual semantics. + - Extracts spatial relationships and hierarchical structures between visual elements. + +- **📊 Structured Data Interpreter**: + - Performs systematic interpretation of tabular and structured data formats. + - Implements statistical pattern recognition algorithms for data trend analysis. + - Identifies semantic relationships and dependencies across multiple tabular datasets. + +- **📐 Mathematical Expression Parser**: + - Parses complex mathematical expressions and formulas with high accuracy. + - Provides native LaTeX format support for seamless integration with academic workflows. + - Establishes conceptual mappings between mathematical equations and domain-specific knowledge bases. + +- **🔧 Extensible Modality Handler**: + - Provides configurable processing framework for custom and emerging content types. + - Enables dynamic integration of new modality processors through plugin architecture. + - Supports runtime configuration of processing pipelines for specialized use cases. + +
+ +### 4. Multimodal Knowledge Graph Index + +
+ +The multi-modal knowledge graph construction module transforms document content into structured semantic representations. It extracts multimodal entities, establishes cross-modal relationships, and preserves hierarchical organization. The system applies weighted relevance scoring for optimized knowledge retrieval. + +**Core Functions:** + +- **🔍 Multi-Modal Entity Extraction**: Transforms significant multimodal elements into structured knowledge graph entities. The process includes semantic annotations and metadata preservation. + +- **🔗 Cross-Modal Relationship Mapping**: Establishes semantic connections and dependencies between textual entities and multimodal components. This is achieved through automated relationship inference algorithms. + +- **🏗️ Hierarchical Structure Preservation**: Maintains original document organization through "belongs_to" relationship chains. These chains preserve logical content hierarchy and sectional dependencies. + +- **⚖️ Weighted Relationship Scoring**: Assigns quantitative relevance scores to relationship types. Scoring is based on semantic proximity and contextual significance within the document structure. + +
+ +### 5. Modality-Aware Retrieval + +
+ +The hybrid retrieval system combines vector similarity search with graph traversal algorithms for comprehensive content retrieval. It implements modality-aware ranking mechanisms and maintains relational coherence between retrieved elements to ensure contextually integrated information delivery. + +**Retrieval Mechanisms:** + +- **🔀 Vector-Graph Fusion**: Integrates vector similarity search with graph traversal algorithms. This approach leverages both semantic embeddings and structural relationships for comprehensive content retrieval. + +- **📊 Modality-Aware Ranking**: Implements adaptive scoring mechanisms that weight retrieval results based on content type relevance. The system adjusts rankings according to query-specific modality preferences. + +- **🔗 Relational Coherence Maintenance**: Maintains semantic and structural relationships between retrieved elements. This ensures coherent information delivery and contextual integrity. + +
+ +--- + +## 🚀 Quick Start + +*Initialize Your AI Journey* + +
+ +
+ +### Installation + +#### Option 1: Install from PyPI (Recommended) + +```bash +# Basic installation +pip install raganything + +# With optional dependencies for extended format support: +pip install 'raganything[all]' # All optional features +pip install 'raganything[image]' # Image format conversion (BMP, TIFF, GIF, WebP) +pip install 'raganything[text]' # Text file processing (TXT, MD) +pip install 'raganything[image,text]' # Multiple features +``` + +#### Option 2: Install from Source +```bash +# Install uv (if not already installed) +curl -LsSf https://astral.sh/uv/install.sh | sh + +# Clone and setup the project with uv +git clone https://github.com/HKUDS/RAG-Anything.git +cd RAG-Anything + +# Install the package and dependencies in a virtual environment +uv sync + +# If you encounter network timeouts (especially for opencv packages): +# UV_HTTP_TIMEOUT=120 uv sync + +# Run commands directly with uv (recommended approach) +uv run python examples/raganything_example.py --help + +# Install with optional dependencies +uv sync --extra image --extra text # Specific extras +uv sync --all-extras # All optional features +``` + +#### Optional Dependencies + +- **`[image]`** - Enables processing of BMP, TIFF, GIF, WebP image formats (requires Pillow) +- **`[text]`** - Enables processing of TXT and MD files (requires ReportLab) +- **`[all]`** - Includes all Python optional dependencies + +> **⚠️ Office Document Processing Requirements:** +> - Office documents (.doc, .docx, .ppt, .pptx, .xls, .xlsx) require **LibreOffice** installation +> - Download from [LibreOffice official website](https://www.libreoffice.org/download/download/) +> - **Windows**: Download installer from official website +> - **macOS**: `brew install --cask libreoffice` +> - **Ubuntu/Debian**: `sudo apt-get install libreoffice` +> - **CentOS/RHEL**: `sudo yum install libreoffice` + +**Check MinerU installation:** + +```bash +# Verify installation +mineru --version + +# Check if properly configured +python -c "from raganything import RAGAnything; rag = RAGAnything(); print('✅ MinerU installed properly' if rag.check_parser_installation() else '❌ MinerU installation issue')" +``` + +Models are downloaded automatically on first use. For manual download, refer to [MinerU Model Source Configuration](https://github.com/opendatalab/MinerU/blob/master/README.md#22-model-source-configuration). + +### Usage Examples + +#### 1. End-to-End Document Processing + +```python +import asyncio +from functools import partial +from raganything import RAGAnything, RAGAnythingConfig +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc + +async def main(): + # Set up API configuration + api_key = "your-api-key" + base_url = "your-base-url" # Optional + + # Create RAGAnything configuration + config = RAGAnythingConfig( + working_dir="./rag_storage", + parser="mineru", # Parser selection: mineru, docling, or paddleocr + parse_method="auto", # Parse method: auto, ocr, or txt + enable_image_processing=True, + enable_table_processing=True, + enable_equation_processing=True, + ) + + # Define LLM model function + def llm_model_func(prompt, system_prompt=None, history_messages=[], **kwargs): + return openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + + # Define vision model function for image processing + def vision_model_func( + prompt, system_prompt=None, history_messages=[], image_data=None, messages=None, **kwargs + ): + # If messages format is provided (for multimodal VLM enhanced query), use it directly + if messages: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Traditional single image format + elif image_data: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} + if system_prompt + else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{image_data}" + }, + }, + ], + } + if image_data + else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Pure text format + else: + return llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + # Define embedding function + embedding_func = EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=partial( + openai_embed.func, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + + # Initialize RAGAnything + rag = RAGAnything( + config=config, + llm_model_func=llm_model_func, + vision_model_func=vision_model_func, + embedding_func=embedding_func, + ) + + # Process a document + await rag.process_document_complete( + file_path="path/to/your/document.pdf", + output_dir="./output", + parse_method="auto" + ) + + # Query the processed content + # Pure text query - for basic knowledge base search + text_result = await rag.aquery( + "What are the main findings shown in the figures and tables?", + mode="hybrid" + ) + print("Text query result:", text_result) + + # Multimodal query with specific multimodal content + multimodal_result = await rag.aquery_with_multimodal( + "Explain this formula and its relevance to the document content", + multimodal_content=[{ + "type": "equation", + "latex": "P(d|q) = \\frac{P(q|d) \\cdot P(d)}{P(q)}", + "equation_caption": "Document relevance probability" + }], + mode="hybrid" +) + print("Multimodal query result:", multimodal_result) + +if __name__ == "__main__": + asyncio.run(main()) +``` + +#### 2. Direct Multimodal Content Processing + +```python +import asyncio +from functools import partial +from lightrag import LightRAG +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc +from raganything.modalprocessors import ImageModalProcessor, TableModalProcessor + +async def process_multimodal_content(): + # Set up API configuration + api_key = "your-api-key" + base_url = "your-base-url" # Optional + + # Initialize LightRAG + rag = LightRAG( + working_dir="./rag_storage", + llm_model_func=lambda prompt, system_prompt=None, history_messages=[], **kwargs: openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ), + embedding_func=EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=partial( + openai_embed.func, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + ) + await rag.initialize_storages() + + # Process an image + image_processor = ImageModalProcessor( + lightrag=rag, + modal_caption_func=lambda prompt, system_prompt=None, history_messages=[], image_data=None, **kwargs: openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} if system_prompt else None, + {"role": "user", "content": [ + {"type": "text", "text": prompt}, + {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image_data}"}} + ]} if image_data else {"role": "user", "content": prompt} + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) if image_data else openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + ) + + image_content = { + "img_path": "path/to/image.jpg", + "image_caption": ["Figure 1: Experimental results"], + "image_footnote": ["Data collected in 2024"] + } + + description, entity_info = await image_processor.process_multimodal_content( + modal_content=image_content, + content_type="image", + file_path="research_paper.pdf", + entity_name="Experimental Results Figure" + ) + + # Process a table + table_processor = TableModalProcessor( + lightrag=rag, + modal_caption_func=lambda prompt, system_prompt=None, history_messages=[], **kwargs: openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + ) + + table_content = { + "table_body": """ + | Method | Accuracy | F1-Score | + |--------|----------|----------| + | RAGAnything | 95.2% | 0.94 | + | Baseline | 87.3% | 0.85 | + """, + "table_caption": ["Performance Comparison"], + "table_footnote": ["Results on test dataset"] + } + + description, entity_info = await table_processor.process_multimodal_content( + modal_content=table_content, + content_type="table", + file_path="research_paper.pdf", + entity_name="Performance Results Table" + ) + +if __name__ == "__main__": + asyncio.run(process_multimodal_content()) +``` + +#### 3. Batch Processing + +```python +# Process multiple documents +await rag.process_folder_complete( + folder_path="./documents", + output_dir="./output", + file_extensions=[".pdf", ".docx", ".pptx"], + recursive=True, + max_workers=4 +) +``` + +#### 4. Custom Modal Processors + +```python +from raganything.modalprocessors import GenericModalProcessor + +class CustomModalProcessor(GenericModalProcessor): + async def process_multimodal_content(self, modal_content, content_type, file_path, entity_name): + # Your custom processing logic + enhanced_description = await self.analyze_custom_content(modal_content) + entity_info = self.create_custom_entity(enhanced_description, entity_name) + return await self._create_entity_and_chunk(enhanced_description, entity_info, file_path) +``` + +#### 5. Query Options + +RAG-Anything provides three types of query methods: + +**Pure Text Queries** - Direct knowledge base search using LightRAG: +```python +# Different query modes for text queries +text_result_hybrid = await rag.aquery("Your question", mode="hybrid") +text_result_local = await rag.aquery("Your question", mode="local") +text_result_global = await rag.aquery("Your question", mode="global") +text_result_naive = await rag.aquery("Your question", mode="naive") + +# Synchronous version +sync_text_result = rag.query("Your question", mode="hybrid") +``` + +**VLM Enhanced Queries** - Automatically analyze images in retrieved context using VLM: +```python +# VLM enhanced query (automatically enabled when vision_model_func is provided) +vlm_result = await rag.aquery( + "Analyze the charts and figures in the document", + mode="hybrid" + # vlm_enhanced=True is automatically set when vision_model_func is available +) + +# Manually control VLM enhancement +vlm_enabled = await rag.aquery( + "What do the images show in this document?", + mode="hybrid", + vlm_enhanced=True # Force enable VLM enhancement +) + +vlm_disabled = await rag.aquery( + "What do the images show in this document?", + mode="hybrid", + vlm_enhanced=False # Force disable VLM enhancement +) + +# When documents contain images, VLM can see and analyze them directly +# The system will automatically: +# 1. Retrieve relevant context containing image paths +# 2. Load and encode images as base64 +# 3. Send both text context and images to VLM for comprehensive analysis +``` + +**Multimodal Queries** - Enhanced queries with specific multimodal content analysis: +```python +# Query with table data +table_result = await rag.aquery_with_multimodal( + "Compare these performance metrics with the document content", + multimodal_content=[{ + "type": "table", + "table_data": """Method,Accuracy,Speed + RAGAnything,95.2%,120ms + Traditional,87.3%,180ms""", + "table_caption": "Performance comparison" + }], + mode="hybrid" +) + +# Query with equation content +equation_result = await rag.aquery_with_multimodal( + "Explain this formula and its relevance to the document content", + multimodal_content=[{ + "type": "equation", + "latex": "P(d|q) = \\frac{P(q|d) \\cdot P(d)}{P(q)}", + "equation_caption": "Document relevance probability" + }], + mode="hybrid" +) +``` + +#### 6. Loading Existing LightRAG Instance + +```python +import asyncio +from functools import partial +from raganything import RAGAnything, RAGAnythingConfig +from lightrag import LightRAG +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.kg.shared_storage import initialize_pipeline_status +from lightrag.utils import EmbeddingFunc +import os + +async def load_existing_lightrag(): + # Set up API configuration + api_key = "your-api-key" + base_url = "your-base-url" # Optional + + # First, create or load existing LightRAG instance + lightrag_working_dir = "./existing_lightrag_storage" + + # Check if previous LightRAG instance exists + if os.path.exists(lightrag_working_dir) and os.listdir(lightrag_working_dir): + print("✅ Found existing LightRAG instance, loading...") + else: + print("❌ No existing LightRAG instance found, will create new one") + + # Create/load LightRAG instance with your configuration + lightrag_instance = LightRAG( + working_dir=lightrag_working_dir, + llm_model_func=lambda prompt, system_prompt=None, history_messages=[], **kwargs: openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ), + embedding_func=EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=partial( + openai_embed.func, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + ) + + # Initialize storage (this will load existing data if available) + await lightrag_instance.initialize_storages() + await initialize_pipeline_status() + + # Define vision model function for image processing + def vision_model_func( + prompt, system_prompt=None, history_messages=[], image_data=None, messages=None, **kwargs + ): + # If messages format is provided (for multimodal VLM enhanced query), use it directly + if messages: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Traditional single image format + elif image_data: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} + if system_prompt + else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{image_data}" + }, + }, + ], + } + if image_data + else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Pure text format + else: + return lightrag_instance.llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + # Now use existing LightRAG instance to initialize RAGAnything + rag = RAGAnything( + lightrag=lightrag_instance, # Pass existing LightRAG instance + vision_model_func=vision_model_func, + # Note: working_dir, llm_model_func, embedding_func, etc. are inherited from lightrag_instance + ) + + # Query existing knowledge base + result = await rag.aquery( + "What data has been processed in this LightRAG instance?", + mode="hybrid" + ) + print("Query result:", result) + + # Add new multimodal document to existing LightRAG instance + await rag.process_document_complete( + file_path="path/to/new/multimodal_document.pdf", + output_dir="./output" + ) + +if __name__ == "__main__": + asyncio.run(load_existing_lightrag()) +``` + +#### 7. Direct Content List Insertion + +For scenarios where you already have a pre-parsed content list (e.g., from external parsers or previous processing), you can directly insert it into RAGAnything without document parsing: + +```python +import asyncio +from functools import partial +from raganything import RAGAnything, RAGAnythingConfig +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc + +async def insert_content_list_example(): + # Set up API configuration + api_key = "your-api-key" + base_url = "your-base-url" # Optional + + # Create RAGAnything configuration + config = RAGAnythingConfig( + working_dir="./rag_storage", + enable_image_processing=True, + enable_table_processing=True, + enable_equation_processing=True, + ) + + # Define model functions + def llm_model_func(prompt, system_prompt=None, history_messages=[], **kwargs): + return openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + + def vision_model_func(prompt, system_prompt=None, history_messages=[], image_data=None, messages=None, **kwargs): + # If messages format is provided (for multimodal VLM enhanced query), use it directly + if messages: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Traditional single image format + elif image_data: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} if system_prompt else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image_data}"}} + ], + } if image_data else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Pure text format + else: + return llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + embedding_func = EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=partial( + openai_embed.func, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + + # Initialize RAGAnything + rag = RAGAnything( + config=config, + llm_model_func=llm_model_func, + vision_model_func=vision_model_func, + embedding_func=embedding_func, + ) + + # Example: Pre-parsed content list from external source + content_list = [ + { + "type": "text", + "text": "This is the introduction section of our research paper.", + "page_idx": 0 # Page number where this content appears + }, + { + "type": "image", + "img_path": "/absolute/path/to/figure1.jpg", # IMPORTANT: Use absolute path + "image_caption": ["Figure 1: System Architecture"], + "image_footnote": ["Source: Authors' original design"], + "page_idx": 1 # Page number where this image appears + }, + { + "type": "table", + "table_body": "| Method | Accuracy | F1-Score |\n|--------|----------|----------|\n| Ours | 95.2% | 0.94 |\n| Baseline | 87.3% | 0.85 |", + "table_caption": ["Table 1: Performance Comparison"], + "table_footnote": ["Results on test dataset"], + "page_idx": 2 # Page number where this table appears + }, + { + "type": "equation", + "latex": "P(d|q) = \\frac{P(q|d) \\cdot P(d)}{P(q)}", + "text": "Document relevance probability formula", + "page_idx": 3 # Page number where this equation appears + }, + { + "type": "text", + "text": "In conclusion, our method demonstrates superior performance across all metrics.", + "page_idx": 4 # Page number where this content appears + } + ] + + # Insert the content list directly + await rag.insert_content_list( + content_list=content_list, + file_path="research_paper.pdf", # Reference file name for citation + split_by_character=None, # Optional text splitting + split_by_character_only=False, # Optional text splitting mode + doc_id=None, # Optional custom document ID (will be auto-generated if not provided) + display_stats=True # Show content statistics + ) + + # Query the inserted content + result = await rag.aquery( + "What are the key findings and performance metrics mentioned in the research?", + mode="hybrid" + ) + print("Query result:", result) + + # You can also insert multiple content lists with different document IDs + another_content_list = [ + { + "type": "text", + "text": "This is content from another document.", + "page_idx": 0 # Page number where this content appears + }, + { + "type": "table", + "table_body": "| Feature | Value |\n|---------|-------|\n| Speed | Fast |\n| Accuracy | High |", + "table_caption": ["Feature Comparison"], + "page_idx": 1 # Page number where this table appears + } + ] + + await rag.insert_content_list( + content_list=another_content_list, + file_path="another_document.pdf", + doc_id="custom-doc-id-123" # Custom document ID + ) + +if __name__ == "__main__": + asyncio.run(insert_content_list_example()) +``` + +**Content List Format:** + +The `content_list` should follow the standard format with each item being a dictionary containing: + +- **Text content**: `{"type": "text", "text": "content text", "page_idx": 0}` +- **Image content**: `{"type": "image", "img_path": "/absolute/path/to/image.jpg", "image_caption": ["caption"], "image_footnote": ["note"], "page_idx": 1}` +- **Table content**: `{"type": "table", "table_body": "markdown table", "table_caption": ["caption"], "table_footnote": ["note"], "page_idx": 2}` +- **Equation content**: `{"type": "equation", "latex": "LaTeX formula", "text": "description", "page_idx": 3}` +- **Generic content**: `{"type": "custom_type", "content": "any content", "page_idx": 4}` + +**Important Notes:** +- **`img_path`**: Must be an absolute path to the image file (e.g., `/home/user/images/chart.jpg` or `C:\Users\user\images\chart.jpg`) +- **`page_idx`**: Represents the page number where the content appears in the original document (0-based indexing) +- **Content ordering**: Items are processed in the order they appear in the list + +This method is particularly useful when: +- You have content from external parsers (non-MinerU/Docling) +- You want to process programmatically generated content +- You need to insert content from multiple sources into a single knowledge base +- You have cached parsing results that you want to reuse + +--- + +## 🛠️ Examples + +*Practical Implementation Demos* + +
+ +
+ +The `examples/` directory contains comprehensive usage examples: + +- **`raganything_example.py`**: End-to-end document processing with MinerU +- **`modalprocessors_example.py`**: Direct multimodal content processing +- **`office_document_test.py`**: Office document parsing test with MinerU (no API key required) +- **`image_format_test.py`**: Image format parsing test with MinerU (no API key required) +- **`text_format_test.py`**: Text format parsing test with MinerU (no API key required) + +**Run examples:** + +```bash +# End-to-end processing with parser selection +python examples/raganything_example.py path/to/document.pdf --api-key YOUR_API_KEY --parser mineru + +# Direct modal processing +python examples/modalprocessors_example.py --api-key YOUR_API_KEY + +# Office document parsing test (MinerU only) +python examples/office_document_test.py --file path/to/document.docx + +# Image format parsing test (MinerU only) +python examples/image_format_test.py --file path/to/image.bmp + +# Text format parsing test (MinerU only) +python examples/text_format_test.py --file path/to/document.md + +# Check LibreOffice installation +python examples/office_document_test.py --check-libreoffice --file dummy + +# Check PIL/Pillow installation +python examples/image_format_test.py --check-pillow --file dummy + +# Check ReportLab installation +python examples/text_format_test.py --check-reportlab --file dummy +``` + +--- + +## 🔧 Configuration + +*System Optimization Parameters* + +### Environment Variables + +Create a `.env` file (refer to `.env.example`): + +```bash +OPENAI_API_KEY=your_openai_api_key +OPENAI_BASE_URL=your_base_url # Optional +OUTPUT_DIR=./output # Default output directory for parsed documents +PARSER=mineru # Parser selection: mineru, docling, or paddleocr +PARSE_METHOD=auto # Parse method: auto, ocr, or txt +``` + +**Note:** For backward compatibility, legacy environment variable names are still supported: +- `MINERU_PARSE_METHOD` is deprecated, please use `PARSE_METHOD` + +> **Note**: API keys are only required for full RAG processing with LLM integration. The parsing test files (`office_document_test.py` and `image_format_test.py`) only test parser functionality and do not require API keys. + +### Troubleshooting and multimodal checklist + +- See **[docs/multimodal_rag_failure_modes.md](docs/multimodal_rag_failure_modes.md)** for a short checklist of common pipeline issues (OCR, tables, retrieval bias, debugging tips). Related: [#207](https://github.com/HKUDS/RAG-Anything/issues/207), [#213](https://github.com/HKUDS/RAG-Anything/issues/213). + +### Public media URLs (CDN / object storage) + +When ingestion runs on a server but your UI or another service needs **HTTPS** (or S3-style) links to figures, set: + +```bash +# Base URL for assets (no trailing slash required) +RAGANYTHING_PUBLIC_ASSET_BASE_URL=https://my-bucket.s3.us-east-1.amazonaws.com/prefix +# Filesystem root that should be stripped from absolute paths under that tree +RAGANYTHING_PUBLIC_ASSET_STRIP_PREFIX=/var/rag/output +``` + +After parsing, each non-empty `img_path`, `table_img_path`, or `equation_img_path` may gain a sibling field `*_public_url` while the original path stays on disk for local processing. See [#272](https://github.com/HKUDS/RAG-Anything/issues/272). + +> **Scope today**: this mapping runs in the MinerU parser path only. Other parsers (e.g. Docling) keep working but will not produce `*_public_url` fields until the helper is wired into their content_list post-processing as well. If only one of the two env vars is set, RAG-Anything logs a warning and skips URL attachment. + +### Parser Configuration + +RAGAnything now supports multiple parsers, each with specific advantages: + +#### MinerU Parser +- Supports PDF, images, Office documents, and more formats +- Powerful OCR and table extraction capabilities +- GPU acceleration support + +#### Docling Parser +- Optimized for Office documents and HTML files +- Better document structure preservation +- Native support for multiple Office formats + +#### PaddleOCR Parser +- OCR-focused parser for images and PDFs +- Produces text blocks compatible with existing `content_list` processing +- Supports optional Office/TXT/MD parsing by converting to PDF first + +Install PaddleOCR parser extras: + +```bash +pip install -e ".[paddleocr]" +# or +uv sync --extra paddleocr +``` + +> **Note**: PaddleOCR also requires `paddlepaddle` (CPU/GPU package varies by platform). Install it with the official guide: https://www.paddlepaddle.org.cn/install/quick + +### MinerU Configuration + +```bash +# MinerU 2.0 uses command-line parameters instead of config files +# Check available options: +mineru --help + +# Common configurations: +mineru -p input.pdf -o output_dir -m auto # Automatic parsing mode +mineru -p input.pdf -o output_dir -m ocr # OCR-focused parsing +mineru -p input.pdf -o output_dir -b pipeline --device cuda # GPU acceleration +``` + +You can also configure parsing through RAGAnything parameters: + +```python +# Basic parsing configuration with parser selection +await rag.process_document_complete( + file_path="document.pdf", + output_dir="./output/", + parse_method="auto", # or "ocr", "txt" + parser="mineru" # Optional: "mineru", "docling", or "paddleocr" +) + +# Advanced parsing configuration with special parameters +await rag.process_document_complete( + file_path="document.pdf", + output_dir="./output/", + parse_method="auto", # Parsing method: "auto", "ocr", "txt" + parser="mineru", # Parser selection: "mineru", "docling", or "paddleocr" + + # MinerU special parameters - all supported kwargs: + lang="ch", # Document language for OCR optimization (e.g., "ch", "en", "ja") + device="cuda:0", # Inference device: "cpu", "cuda", "cuda:0", "npu", "mps" + start_page=0, # Starting page number (0-based, for PDF) + end_page=10, # Ending page number (0-based, for PDF) + formula=True, # Enable formula parsing + table=True, # Enable table parsing + backend="pipeline", # Parsing backend: pipeline|hybrid-auto-engine|hybrid-http-client|vlm-auto-engine|vlm-http-client. + source="huggingface", # Model source: "huggingface", "modelscope", "local" + # vlm_url="http://127.0.0.1:3000" # Service address when using backend=vlm-http-client + + # Standard RAGAnything parameters + display_stats=True, # Display content statistics + split_by_character=None, # Optional character to split text by + doc_id=None # Optional document ID +) +``` + +> **Note**: MinerU 2.0 no longer uses the `magic-pdf.json` configuration file. All settings are now passed as command-line parameters or function arguments. RAG-Anything supports multiple document parsers, including MinerU, Docling, and PaddleOCR. + +### Processing Requirements + +Different content types require specific optional dependencies: + +- **Office Documents** (.doc, .docx, .ppt, .pptx, .xls, .xlsx): Install [LibreOffice](https://www.libreoffice.org/download/download/) +- **Extended Image Formats** (.bmp, .tiff, .gif, .webp): Install with `pip install raganything[image]` +- **Text Files** (.txt, .md): Install with `pip install raganything[text]` +- **PaddleOCR Parser** (`parser="paddleocr"`): Install with `pip install raganything[paddleocr]`, then install `paddlepaddle` for your platform + +> **📋 Quick Install**: Use `pip install raganything[all]` to enable all format support (Python dependencies only - LibreOffice still needs separate installation) + +--- + +## 🧪 Supported Content Types + +### Document Formats + +- **PDFs** - Research papers, reports, presentations +- **Office Documents** - DOC, DOCX, PPT, PPTX, XLS, XLSX +- **Images** - JPG, PNG, BMP, TIFF, GIF, WebP +- **Text Files** - TXT, MD + +### Multimodal Elements + +- **Images** - Photographs, diagrams, charts, screenshots +- **Tables** - Data tables, comparison charts, statistical summaries +- **Equations** - Mathematical formulas in LaTeX format +- **Generic Content** - Custom content types via extensible processors + +*For installation of format-specific dependencies, see the [Configuration](#-configuration) section.* + +--- + +## 📖 Citation + +*Academic Reference* + +
+
+
+
📖
+
+
+
+
+ +If you find RAG-Anything useful in your research, please cite our paper: + +```bibtex +@misc{guo2025raganythingallinoneragframework, + title={RAG-Anything: All-in-One RAG Framework}, + author={Zirui Guo and Xubin Ren and Lingrui Xu and Jiahao Zhang and Chao Huang}, + year={2025}, + eprint={2510.12323}, + archivePrefix={arXiv}, + primaryClass={cs.AI}, + url={https://arxiv.org/abs/2510.12323}, +} +``` + +--- + +## 🔗 Related Projects + +*Ecosystem & Extensions* + +
+ + + + + + +
+ +
+ +
+ LightRAG
+ Simple and Fast RAG +
+
+ +
+ 🎥 +
+ VideoRAG
+ Extreme Long-Context Video RAG +
+
+ +
+ +
+ MiniRAG
+ Extremely Simple RAG +
+
+
+ +--- + +## ⭐ Star History + +*Community Growth Trajectory* + +
+ + + + + Star History Chart + + +
+ +--- + +## 🤝 Contribution + +*Join the Innovation* + +
+ We thank all our contributors for their valuable contributions. +
+ +
+ + + +
+ +--- + +
+
+ +
+
+ + + + + + + + + +
+
+ +
+
+
+ + Thank you for visiting RAG-Anything! + +
+
Building the Future of Multimodal AI
+
+
diff --git a/README.wehub.md b/README.wehub.md new file mode 100644 index 0000000..5c01941 --- /dev/null +++ b/README.wehub.md @@ -0,0 +1,7 @@ +# WeHub 来源说明 + +- 原始项目:`HKUDS/RAG-Anything` +- 原始仓库:https://github.com/HKUDS/RAG-Anything +- 导入方式:上游默认分支的最新快照 +- 原作者、版权和许可证信息以原始仓库及本仓库 LICENSE 为准 +- 本文件仅用于记录来源,不代表 WeHub 是原项目作者 diff --git a/README_zh.md b/README_zh.md new file mode 100644 index 0000000..eb5448e --- /dev/null +++ b/README_zh.md @@ -0,0 +1,1286 @@ +
+ +
+ RAG-Anything Logo +
+ +# 🚀 RAG-Anything: All-in-One RAG System + +
+
+
+ +
+
+

+ + + +

+

+ + + +

+

+ + +

+

+ + +

+
+
+ +
+ +
+ +
+ +
+ + + +
+ +--- + +
+ + + + + +
+ LiteWrite + + + + +
+
+ +--- + +## 🎉 新闻 +- [X] [2026.06]🎯📢 🎉 [LightRAG](https://github.com/HKUDS/LightRAG) 通过原生集成 RAG-Anything 实现多模态 RAG。 +- [X] [2025.10]🎯📢 🚀 我们已发布 [RAG-Anything] 的技术报告(http://arxiv.org/abs/2510.12323),立即访问以了解我们的最新研究成果。 +- [X] [2025.08.12]🎯📢 🔍 RAGAnything 现在支持 **VLM增强查询** 模式!当文档包含图片时,系统可以自动将图片与文本上下文一起直接传递给VLM进行综合多模态分析。 +- [X] [2025.07.05]🎯📢 RAGAnything 新增[上下文配置模块](docs/context_aware_processing.md),支持为多模态内容处理添加相关上下文信息。 +- [X] [2025.07.04]🎯📢 RAGAnything 现在支持多模态内容查询,实现了集成文本、图像、表格和公式处理的增强检索生成功能。 +- [X] [2025.07.03]🎯📢 RAGAnything 在GitHub上达到了1K星标🌟!感谢您的支持和贡献。 + +--- + +## 🌟 系统概述 + +*下一代多模态智能* + +
+ +**RAG-Anything**是一个综合性多模态文档处理RAG系统。该系统能够无缝处理和查询包含文本、图像、表格、公式等多模态内容的复杂文档,提供完整的检索增强(RAG)生成解决方案。 + +RAG-Anything + +
+ +### 🎯 核心特性 + +
+ +- **🔄 端到端多模态处理流水线** - 提供从文档解析到多模态查询响应的完整处理链路,确保系统的一体化运行 +- **📄 多格式文档支持** - 支持PDF、Office文档(DOC/DOCX/PPT/PPTX/XLS/XLSX)、图像等主流文档格式的统一处理和解析 +- **🧠 多模态内容分析引擎** - 针对图像、表格、公式和通用文本内容部署专门的处理器,确保各类内容的精准解析 +- **🔗 基于知识图谱索引** - 实现自动化实体提取和关系构建,建立跨模态的语义连接网络 +- **⚡ 灵活的处理架构** - 支持基于MinerU的智能解析模式和直接多模态内容插入模式,满足不同应用场景需求 +- **📋 直接内容列表插入** - 跳过文档解析,直接插入来自外部源的预解析内容列表,支持多种数据来源整合 +- **🎯 跨模态检索机制** - 实现跨文本和多模态内容的智能检索,提供精准的信息定位和匹配能力 + +
+ +--- + +## 🏗️ 算法原理与架构 + +
+ +### 核心算法 + +**RAG-Anything** 采用灵活的分层架构设计,实现多阶段多模态处理流水线,将传统RAG系统扩展为支持异构内容类型的综合处理平台。 + +
+ +
+
+
+
+
📄
+
文档解析
+
+
+
+
🧠
+
内容分析
+
+
+
+
🔍
+
知识图谱
+
+
+
+
🎯
+
智能检索
+
+
+
+
+ +### 1. 文档解析阶段 + +
+ +该系统构建了高精度文档解析平台,通过结构化提取引擎实现多模态元素的完整识别与提取。系统采用自适应内容分解机制,智能分离文档中的文本、图像、表格、公式等异构内容,并保持其语义关联性。同时支持PDF、Office文档、图像等主流格式的统一处理,提供标准化的多模态内容输出。 + +**核心组件:** + +- **⚙️ 结构化提取引擎**:集成 [MinerU](https://github.com/opendatalab/MinerU) 文档解析框架,实现精确的文档结构识别与内容提取,确保多模态元素的完整性和准确性。 + +- **🧩 自适应内容分解机制**:建立智能内容分离系统,自动识别并提取文档中的文本块、图像、表格、公式等异构元素,保持元素间的语义关联关系。 + +- **📁 多格式兼容处理**:部署专业化解析器矩阵,支持PDF、Office文档系列(DOC/DOCX/PPT/PPTX/XLS/XLSX)、图像等主流格式的统一处理与标准化输出。 + +
+ +### 2. 多模态内容理解与处理 + +
+ +该多模态内容处理系统通过自主分类路由机制实现异构内容的智能识别与优化分发。系统采用并发多流水线架构,确保文本和多模态内容的高效并行处理,在最大化吞吐量的同时保持内容完整性,并能完整提取和保持原始文档的层次结构与元素关联关系。 + +**核心组件:** + +- **🎯 自主内容分类与路由**:自动识别、分类并将不同内容类型路由至优化的执行通道。 + +- **⚡ 并发多流水线架构**:通过专用处理流水线实现文本和多模态内容的并发执行。这种方法在保持内容完整性的同时最大化吞吐效率。 + +- **🏗️ 文档层次结构提取**:在内容转换过程中提取并保持原始文档的层次结构和元素间关系。 + +
+ +### 3. 多模态分析引擎 + +
+ +系统部署了面向异构数据模态的模态感知处理单元: + +**专用分析器:** + +- **🔍 视觉内容分析器**: + - 集成视觉模型进行图像分析和内容识别 + - 基于视觉语义生成上下文感知的描述性标题 + - 提取视觉元素间的空间关系和层次结构 + +- **📊 结构化数据解释器**: + - 对表格和结构化数据格式进行系统性解释 + - 实现数据趋势分析的统计模式识别算法 + - 识别多个表格数据集间的语义关系和依赖性 + +- **📐 数学表达式解析器**: + - 高精度解析复杂数学表达式和公式 + - 提供原生LaTeX格式支持以实现与学术工作流的无缝集成 + - 建立数学方程与领域特定知识库间的概念映射 + +- **🔧 可扩展模态处理器**: + - 为自定义和新兴内容类型提供可配置的处理框架 + - 通过插件架构实现新模态处理器的动态集成 + - 支持专用场景下处理流水线的运行时配置 + +
+ +### 4. 多模态知识图谱索引 + +
+ +多模态知识图谱构建模块将文档内容转换为结构化语义表示。系统提取多模态实体,建立跨模态关系,并保持层次化组织结构。通过加权相关性评分实现优化的知识检索。 + +**核心功能:** + +- **🔍 多模态实体提取**:将重要的多模态元素转换为结构化知识图谱实体。该过程包括语义标注和元数据保存。 + +- **🔗 跨模态关系映射**:在文本实体和多模态组件之间建立语义连接和依赖关系。通过自动化关系推理算法实现这一功能。 + +- **🏗️ 层次结构保持**:通过"归属于"关系链维护原始文档组织结构。这些关系链保持逻辑内容层次和章节依赖关系。 + +- **⚖️ 加权关系评分**:为关系类型分配定量相关性分数。评分基于语义邻近性和文档结构内的上下文重要性。 + +
+ +### 5. 模态感知检索 + +
+ +混合检索系统结合向量相似性搜索与图遍历算法,实现全面的内容检索。系统实现模态感知排序机制,并维护检索元素间的关系一致性,确保上下文集成的信息传递。 + +**检索机制:** + +- **🔀 向量-图谱融合**:集成向量相似性搜索与图遍历算法。该方法同时利用语义嵌入和结构关系实现全面的内容检索。 + +- **📊 模态感知排序**:实现基于内容类型相关性的自适应评分机制。系统根据查询特定的模态偏好调整排序结果。 + +- **🔗 关系一致性维护**:维护检索元素间的语义和结构关系。确保信息传递的连贯性和上下文完整性。 + +
+ +--- + +## 🚀 快速开始 + +*启动您的AI之旅* + +
+ +
+ +### 安装 + +#### 选项1:从PyPI安装(推荐) + +```bash +# 基础安装 +pip install raganything + +# 安装包含扩展格式支持的可选依赖: +pip install 'raganything[all]' # 所有可选功能 +pip install 'raganything[image]' # 图像格式转换 (BMP, TIFF, GIF, WebP) +pip install 'raganything[text]' # 文本文件处理 (TXT, MD) +pip install 'raganything[image,text]' # 多个功能组合 +``` + +#### 选项2:从源码安装 + +```bash +git clone https://github.com/HKUDS/RAG-Anything.git +cd RAG-Anything +pip install -e . + +# 安装可选依赖 +pip install -e '.[all]' +``` + +#### 可选依赖 + +- **`[image]`** - 启用BMP、TIFF、GIF、WebP图像格式处理(需要Pillow) +- **`[text]`** - 启用TXT和MD文件处理(需要ReportLab) +- **`[all]`** - 包含所有Python可选依赖 + +> **⚠️ Office文档处理配置要求:** +> - Office文档 (.doc, .docx, .ppt, .pptx, .xls, .xlsx) 需要安装 **LibreOffice** +> - 从[LibreOffice官网](https://www.libreoffice.org/download/download/)下载安装 +> - **Windows**:从官网下载安装包 +> - **macOS**:`brew install --cask libreoffice` +> - **Ubuntu/Debian**:`sudo apt-get install libreoffice` +> - **CentOS/RHEL**:`sudo yum install libreoffice` + +**检查MinerU安装:** + +```bash +# 验证安装 +mineru --version + +# 检查是否正确配置 +python -c "from raganything import RAGAnything; rag = RAGAnything(); print('✅ MinerU安装正常' if rag.check_parser_installation() else '❌ MinerU安装有问题')" +``` + +模型在首次使用时自动下载。手动下载参考[MinerU模型源配置](https://github.com/opendatalab/MinerU/blob/master/README_zh-CN.md#22-%E6%A8%A1%E5%9E%8B%E6%BA%90%E9%85%8D%E7%BD%AE): + +### 使用示例 + +#### 1. 端到端文档处理 + +```python +import asyncio +from functools import partial +from raganything import RAGAnything, RAGAnythingConfig +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc + +async def main(): + # 设置 API 配置 + api_key = "your-api-key" + base_url = "your-base-url" # 可选 + + # 创建 RAGAnything 配置 + config = RAGAnythingConfig( + working_dir="./rag_storage", + parser="mineru", # 选择解析器:mineru 或 docling + parse_method="auto", # 解析方法:auto, ocr 或 txt + enable_image_processing=True, + enable_table_processing=True, + enable_equation_processing=True, + ) + + # 定义 LLM 模型函数 + def llm_model_func(prompt, system_prompt=None, history_messages=[], **kwargs): + return openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + + # 定义视觉模型函数用于图像处理 + def vision_model_func( + prompt, system_prompt=None, history_messages=[], image_data=None, messages=None, **kwargs + ): + # 如果提供了messages格式(用于多模态VLM增强查询),直接使用 + if messages: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # 传统单图片格式 + elif image_data: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} + if system_prompt + else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{image_data}" + }, + }, + ], + } + if image_data + else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # 纯文本格式 + else: + return llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + # 定义嵌入函数 + embedding_func = EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=partial( + openai_embed.func, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + + # 初始化 RAGAnything + rag = RAGAnything( + config=config, + llm_model_func=llm_model_func, + vision_model_func=vision_model_func, + embedding_func=embedding_func, + ) + + # 处理文档 + await rag.process_document_complete( + file_path="path/to/your/document.pdf", + output_dir="./output", + parse_method="auto" + ) + + # 查询处理后的内容 + # 纯文本查询 - 基本知识库搜索 + text_result = await rag.aquery( + "文档的主要内容是什么?", + mode="hybrid" + ) + print("文本查询结果:", text_result) + + # 多模态查询 - 包含具体多模态内容的查询 + multimodal_result = await rag.aquery_with_multimodal( + "分析这个性能数据并解释与现有文档内容的关系", + multimodal_content=[{ + "type": "table", + "table_data": """系统,准确率,F1分数 + RAGAnything,95.2%,0.94 + 基准方法,87.3%,0.85""", + "table_caption": "性能对比结果" + }], + mode="hybrid" + ) + print("多模态查询结果:", multimodal_result) + +if __name__ == "__main__": + asyncio.run(main()) +``` + +#### 2. 直接多模态内容处理 + +```python +import asyncio +from functools import partial +from lightrag import LightRAG +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc +from raganything.modalprocessors import ImageModalProcessor, TableModalProcessor + +async def process_multimodal_content(): + # 设置 API 配置 + api_key = "your-api-key" + base_url = "your-base-url" # 可选 + + # 初始化 LightRAG + rag = LightRAG( + working_dir="./rag_storage", + llm_model_func=lambda prompt, system_prompt=None, history_messages=[], **kwargs: openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ), + embedding_func=EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=partial( + openai_embed.func, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + ) + await rag.initialize_storages() + + # 处理图像 + image_processor = ImageModalProcessor( + lightrag=rag, + modal_caption_func=lambda prompt, system_prompt=None, history_messages=[], image_data=None, **kwargs: openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} if system_prompt else None, + {"role": "user", "content": [ + {"type": "text", "text": prompt}, + {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image_data}"}} + ]} if image_data else {"role": "user", "content": prompt} + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) if image_data else openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + ) + + image_content = { + "img_path": "path/to/image.jpg", + "image_caption": ["图1:实验结果"], + "image_footnote": ["数据收集于2024年"] + } + + description, entity_info = await image_processor.process_multimodal_content( + modal_content=image_content, + content_type="image", + file_path="research_paper.pdf", + entity_name="实验结果图表" + ) + + # 处理表格 + table_processor = TableModalProcessor( + lightrag=rag, + modal_caption_func=lambda prompt, system_prompt=None, history_messages=[], **kwargs: openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + ) + + table_content = { + "table_body": """ + | 方法 | 准确率 | F1分数 | + |------|--------|--------| + | RAGAnything | 95.2% | 0.94 | + | 基准方法 | 87.3% | 0.85 | + """, + "table_caption": ["性能对比"], + "table_footnote": ["测试数据集结果"] + } + + description, entity_info = await table_processor.process_multimodal_content( + modal_content=table_content, + content_type="table", + file_path="research_paper.pdf", + entity_name="性能结果表格" + ) + +if __name__ == "__main__": + asyncio.run(process_multimodal_content()) +``` + +#### 3. 批量处理 + +```python +# 处理多个文档 +await rag.process_folder_complete( + folder_path="./documents", + output_dir="./output", + file_extensions=[".pdf", ".docx", ".pptx"], + recursive=True, + max_workers=4 +) +``` + +#### 4. 自定义模态处理器 + +```python +from raganything.modalprocessors import GenericModalProcessor + +class CustomModalProcessor(GenericModalProcessor): + async def process_multimodal_content(self, modal_content, content_type, file_path, entity_name): + # 你的自定义处理逻辑 + enhanced_description = await self.analyze_custom_content(modal_content) + entity_info = self.create_custom_entity(enhanced_description, entity_name) + return await self._create_entity_and_chunk(enhanced_description, entity_info, file_path) +``` + +#### 5. 查询选项 + +RAG-Anything 提供三种类型的查询方法: + +**纯文本查询** - 使用LightRAG直接进行知识库搜索: +```python +# 文本查询的不同模式 +text_result_hybrid = await rag.aquery("你的问题", mode="hybrid") +text_result_local = await rag.aquery("你的问题", mode="local") +text_result_global = await rag.aquery("你的问题", mode="global") +text_result_naive = await rag.aquery("你的问题", mode="naive") + +# 同步版本 +sync_text_result = rag.query("你的问题", mode="hybrid") +``` + +**VLM增强查询** - 使用VLM自动分析检索上下文中的图像: +```python +# VLM增强查询(当提供vision_model_func时自动启用) +vlm_result = await rag.aquery( + "分析文档中的图表和数据", + mode="hybrid" + # vlm_enhanced=True 当vision_model_func可用时自动设置 +) + +# 手动控制VLM增强 +vlm_enabled = await rag.aquery( + "这个文档中的图片显示了什么内容?", + mode="hybrid", + vlm_enhanced=True # 强制启用VLM增强 +) + +vlm_disabled = await rag.aquery( + "这个文档中的图片显示了什么内容?", + mode="hybrid", + vlm_enhanced=False # 强制禁用VLM增强 +) + +# 当文档包含图片时,VLM可以直接查看和分析图片 +# 系统将自动: +# 1. 检索包含图片路径的相关上下文 +# 2. 加载图片并编码为base64格式 +# 3. 将文本上下文和图片一起发送给VLM进行综合分析 +``` + +**多模态查询** - 包含特定多模态内容分析的增强查询: +```python +# 包含表格数据的查询 +table_result = await rag.aquery_with_multimodal( + "比较这些性能指标与文档内容", + multimodal_content=[{ + "type": "table", + "table_data": """方法,准确率,速度 + LightRAG,95.2%,120ms + 传统方法,87.3%,180ms""", + "table_caption": "性能对比" + }], + mode="hybrid" +) + +# 包含公式内容的查询 +equation_result = await rag.aquery_with_multimodal( + "解释这个公式及其与文档内容的相关性", + multimodal_content=[{ + "type": "equation", + "latex": "P(d|q) = \\frac{P(q|d) \\cdot P(d)}{P(q)}", + "equation_caption": "文档相关性概率" + }], + mode="hybrid" +) +``` + +#### 6. 加载已存在的LightRAG实例 + +```python +import asyncio +from functools import partial +from raganything import RAGAnything +from lightrag import LightRAG +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc +import os + +async def load_existing_lightrag(): + # 设置 API 配置 + api_key = "your-api-key" + base_url = "your-base-url" # 可选 + + # 首先,创建或加载已存在的 LightRAG 实例 + lightrag_working_dir = "./existing_lightrag_storage" + + # 检查是否存在之前的 LightRAG 实例 + if os.path.exists(lightrag_working_dir) and os.listdir(lightrag_working_dir): + print("✅ 发现已存在的 LightRAG 实例,正在加载...") + else: + print("❌ 未找到已存在的 LightRAG 实例,将创建新实例") + + # 使用您的配置创建/加载 LightRAG 实例 + lightrag_instance = LightRAG( + working_dir=lightrag_working_dir, + llm_model_func=lambda prompt, system_prompt=None, history_messages=[], **kwargs: openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ), + embedding_func=EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=partial( + openai_embed.func, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + ) + + # 初始化存储(如果有现有数据,这将加载它们) + await lightrag_instance.initialize_storages() + await initialize_pipeline_status() + + # 定义视觉模型函数用于图像处理 + def vision_model_func( + prompt, system_prompt=None, history_messages=[], image_data=None, messages=None, **kwargs + ): + # 如果提供了messages格式(用于多模态VLM增强查询),直接使用 + if messages: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # 传统单图片格式 + elif image_data: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} + if system_prompt + else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{image_data}" + }, + }, + ], + } + if image_data + else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # 纯文本格式 + else: + return lightrag_instance.llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + # 现在使用已存在的 LightRAG 实例初始化 RAGAnything + rag = RAGAnything( + lightrag=lightrag_instance, # 传入已存在的 LightRAG 实例 + vision_model_func=vision_model_func, + # 注意:working_dir、llm_model_func、embedding_func 等都从 lightrag_instance 继承 + ) + + # 查询已存在的知识库 + result = await rag.aquery( + "这个 LightRAG 实例中处理了哪些数据?", + mode="hybrid" + ) + print("查询结果:", result) + + # 向已存在的 LightRAG 实例添加新的多模态文档 + await rag.process_document_complete( + file_path="path/to/new/multimodal_document.pdf", + output_dir="./output" + ) + +if __name__ == "__main__": + asyncio.run(load_existing_lightrag()) +``` + +#### 7. 直接插入内容列表 + +当您已经有预解析的内容列表(例如,来自外部解析器或之前的处理结果)时,可以直接插入到 RAGAnything 中而无需文档解析: + +```python +import asyncio +from functools import partial +from raganything import RAGAnything, RAGAnythingConfig +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc + +async def insert_content_list_example(): + # 设置 API 配置 + api_key = "your-api-key" + base_url = "your-base-url" # 可选 + + # 创建 RAGAnything 配置 + config = RAGAnythingConfig( + working_dir="./rag_storage", + enable_image_processing=True, + enable_table_processing=True, + enable_equation_processing=True, + ) + + # 定义模型函数 + def llm_model_func(prompt, system_prompt=None, history_messages=[], **kwargs): + return openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + + def vision_model_func(prompt, system_prompt=None, history_messages=[], image_data=None, messages=None, **kwargs): + # 如果提供了messages格式(用于多模态VLM增强查询),直接使用 + if messages: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # 传统单图片格式 + elif image_data: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} if system_prompt else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image_data}"}} + ], + } if image_data else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # 纯文本格式 + else: + return llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + embedding_func = EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=partial( + openai_embed.func, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + + # 初始化 RAGAnything + rag = RAGAnything( + config=config, + llm_model_func=llm_model_func, + vision_model_func=vision_model_func, + embedding_func=embedding_func, + ) + + # 示例:来自外部源的预解析内容列表 + content_list = [ + { + "type": "text", + "text": "这是我们研究论文的引言部分。", + "page_idx": 0 # 此内容出现的页码 + }, + { + "type": "image", + "img_path": "/absolute/path/to/figure1.jpg", # 重要:使用绝对路径 + "image_caption": ["图1:系统架构"], + "image_footnote": ["来源:作者原创设计"], + "page_idx": 1 # 此图像出现的页码 + }, + { + "type": "table", + "table_body": "| 方法 | 准确率 | F1分数 |\n|------|--------|--------|\n| 我们的方法 | 95.2% | 0.94 |\n| 基准方法 | 87.3% | 0.85 |", + "table_caption": ["表1:性能对比"], + "table_footnote": ["测试数据集结果"], + "page_idx": 2 # 此表格出现的页码 + }, + { + "type": "equation", + "latex": "P(d|q) = \\frac{P(q|d) \\cdot P(d)}{P(q)}", + "text": "文档相关性概率公式", + "page_idx": 3 # 此公式出现的页码 + }, + { + "type": "text", + "text": "总之,我们的方法在所有指标上都表现出优越的性能。", + "page_idx": 4 # 此内容出现的页码 + } + ] + + # 直接插入内容列表 + await rag.insert_content_list( + content_list=content_list, + file_path="research_paper.pdf", # 用于引用的参考文件名 + split_by_character=None, # 可选的文本分割 + split_by_character_only=False, # 可选的文本分割模式 + doc_id=None, # 可选的自定义文档ID(如果未提供将自动生成) + display_stats=True # 显示内容统计信息 + ) + + # 查询插入的内容 + result = await rag.aquery( + "研究中提到的主要发现和性能指标是什么?", + mode="hybrid" + ) + print("查询结果:", result) + + # 您也可以使用不同的文档ID插入多个内容列表 + another_content_list = [ + { + "type": "text", + "text": "这是来自另一个文档的内容。", + "page_idx": 0 # 此内容出现的页码 + }, + { + "type": "table", + "table_body": "| 特性 | 值 |\n|------|----|\n| 速度 | 快速 |\n| 准确性 | 高 |", + "table_caption": ["特性对比"], + "page_idx": 1 # 此表格出现的页码 + } + ] + + await rag.insert_content_list( + content_list=another_content_list, + file_path="another_document.pdf", + doc_id="custom-doc-id-123" # 自定义文档ID + ) + +if __name__ == "__main__": + asyncio.run(insert_content_list_example()) +``` + +**内容列表格式:** + +`content_list` 应遵循标准格式,每个项目都是包含以下内容的字典: + +- **文本内容**: `{"type": "text", "text": "内容文本", "page_idx": 0}` +- **图像内容**: `{"type": "image", "img_path": "/absolute/path/to/image.jpg", "image_caption": ["标题"], "image_footnote": ["注释"], "page_idx": 1}` +- **表格内容**: `{"type": "table", "table_body": "markdown表格", "table_caption": ["标题"], "table_footnote": ["注释"], "page_idx": 2}` +- **公式内容**: `{"type": "equation", "latex": "LaTeX公式", "text": "描述", "page_idx": 3}` +- **通用内容**: `{"type": "custom_type", "content": "任何内容", "page_idx": 4}` + +**重要说明:** +- **`img_path`**: 必须是图像文件的绝对路径(例如:`/home/user/images/chart.jpg` 或 `C:\Users\user\images\chart.jpg`) +- **`page_idx`**: 表示内容在原始文档中出现的页码(从0开始的索引) +- **内容顺序**: 项目按照在列表中出现的顺序进行处理 + +此方法在以下情况下特别有用: +- 您有来自外部解析器的内容(非MinerU/Docling) +- 您想要处理程序化生成的内容 +- 您需要将来自多个源的内容插入到单个知识库中 +- 您有想要重用的缓存解析结果 + +--- + +## 🛠️ 示例 + +*实际应用演示* + +
+ +
+ +`examples/` 目录包含完整的使用示例: + +- **`raganything_example.py`**:基于MinerU的端到端文档处理 +- **`modalprocessors_example.py`**:直接多模态内容处理 +- **`office_document_test.py`**:Office文档解析测试(无需API密钥) +- **`image_format_test.py`**:图像格式解析测试(无需API密钥) +- **`text_format_test.py`**:文本格式解析测试(无需API密钥) + +**运行示例:** + +```bash +# 端到端处理(包含解析器选择) +python examples/raganything_example.py path/to/document.pdf --api-key YOUR_API_KEY --parser mineru + +# 直接模态处理 +python examples/modalprocessors_example.py --api-key YOUR_API_KEY + +# Office文档解析测试(仅MinerU功能) +python examples/office_document_test.py --file path/to/document.docx + +# 图像格式解析测试(仅MinerU功能) +python examples/image_format_test.py --file path/to/image.bmp + +# 文本格式解析测试(仅MinerU功能) +python examples/text_format_test.py --file path/to/document.md + +# 检查LibreOffice安装 +python examples/office_document_test.py --check-libreoffice --file dummy + +# 检查PIL/Pillow安装 +python examples/image_format_test.py --check-pillow --file dummy + +# 检查ReportLab安装 +python examples/text_format_test.py --check-reportlab --file dummy +``` + +> **注意**:API密钥仅在完整RAG处理和LLM集成时需要。解析测试文件(`office_document_test.py`、`image_format_test.py` 和 `text_format_test.py`)仅测试MinerU功能,无需API密钥。 + +--- + +## 🔧 配置 + +*系统优化参数* + +### 环境变量 + +创建 `.env` 文件(参考 `.env.example`): + +```bash +OPENAI_API_KEY=your_openai_api_key +OPENAI_BASE_URL=your_base_url # 可选 +OUTPUT_DIR=./output # 解析文档的默认输出目录 +PARSER=mineru # 解析器选择:mineru 或 docling +PARSE_METHOD=auto # 解析方法:auto, ocr 或 txt +``` + +**注意:** 为了向后兼容,旧的环境变量名称仍然有效: +- `MINERU_PARSE_METHOD` 已弃用,请使用 `PARSE_METHOD` + +### 解析器配置 + +RAGAnything 现在支持多种解析器,每种解析器都有其特定的优势: + +#### MinerU 解析器 +- 支持PDF、图像、Office文档等多种格式 +- 强大的OCR和表格提取能力 +- 支持GPU加速 + +#### Docling 解析器 +- 专门优化Office文档和HTML文件的解析 +- 更好的文档结构保持 +- 原生支持多种Office格式 + +### MinerU配置 + +```bash +# MinerU 2.0使用命令行参数而不是配置文件 +# 查看可用选项: +mineru --help + +# 常用配置: +mineru -p input.pdf -o output_dir -m auto # 自动解析模式 +mineru -p input.pdf -o output_dir -m ocr # OCR重点解析 +mineru -p input.pdf -o output_dir -b pipeline --device cuda # GPU加速 +``` + +你也可以通过RAGAnything参数配置解析: + +```python +# 基础解析配置和解析器选择 +await rag.process_document_complete( + file_path="document.pdf", + output_dir="./output/", + parse_method="auto", # 或 "ocr", "txt" + parser="mineru" # 可选:"mineru" 或 "docling" +) + +# 高级解析配置(包含特殊参数) +await rag.process_document_complete( + file_path="document.pdf", + output_dir="./output/", + parse_method="auto", # 解析方法:"auto", "ocr", "txt" + parser="mineru", # 解析器选择:"mineru" 或 "docling" + + # MinerU特殊参数 - 支持的所有kwargs: + lang="ch", # 文档语言优化(如:"ch", "en", "ja") + device="cuda:0", # 推理设备:"cpu", "cuda", "cuda:0", "npu", "mps" + start_page=0, # 起始页码(0为基准,适用于PDF) + end_page=10, # 结束页码(0为基准,适用于PDF) + formula=True, # 启用公式解析 + table=True, # 启用表格解析 + backend="pipeline", # 解析后端:pipeline|hybrid-auto-engine|hybrid-http-client|vlm-auto-engine|vlm-http-client + source="huggingface", # 模型源:"huggingface", "modelscope", "local" + # vlm_url="http://127.0.0.1:3000" # 当backend=vlm-http-client时,需指定服务地址 + + # RAGAnything标准参数 + display_stats=True, # 显示内容统计信息 + split_by_character=None, # 可选的文本分割字符 + doc_id=None # 可选的文档ID +) +``` + +> **注意**:MinerU 2.0不再使用 `magic-pdf.json` 配置文件。所有设置现在通过命令行参数或函数参数传递。RAG-Anything现在支持多种文档解析器 - 你可以根据需要在MinerU和Docling之间选择。 + +### 处理要求 + +不同内容类型需要特定的可选依赖: + +- **Office文档** (.doc, .docx, .ppt, .pptx, .xls, .xlsx): 安装并配置 [LibreOffice](https://www.libreoffice.org/download/download/) +- **扩展图像格式** (.bmp, .tiff, .gif, .webp): 使用 `pip install raganything[image]` 安装 +- **文本文件** (.txt, .md): 使用 `pip install raganything[text]` 安装 + +> **📋 快速安装**: 使用 `pip install raganything[all]` 启用所有格式支持(仅Python依赖 - LibreOffice仍需单独安装) + +--- + +## 🧪 支持的内容类型 + +### 文档格式 + +- **PDF** - 研究论文、报告、演示文稿 +- **Office文档** - DOC、DOCX、PPT、PPTX、XLS、XLSX +- **图像** - JPG、PNG、BMP、TIFF、GIF、WebP +- **文本文件** - TXT、MD + +### 多模态元素 + +- **图像** - 照片、图表、示意图、截图 +- **表格** - 数据表、对比图、统计摘要 +- **公式** - LaTeX格式的数学公式 +- **通用内容** - 通过可扩展处理器支持的自定义内容类型 + +*格式特定依赖的安装说明请参见[配置](#-配置)部分。* + +--- + +## 📖 引用 + +*学术参考* + +
+
+
+
📖
+
+
+
+
+ +```bibtex +@misc{guo2025raganythingallinoneragframework, + title={RAG-Anything: All-in-One RAG Framework}, + author={Zirui Guo and Xubin Ren and Lingrui Xu and Jiahao Zhang and Chao Huang}, + year={2025}, + eprint={2510.12323}, + archivePrefix={arXiv}, + primaryClass={cs.AI}, + url={https://arxiv.org/abs/2510.12323}, +} +``` + +--- + +## 🔗 相关项目 + +*生态系统与扩展* + +
+ + + + + + +
+ +
+ +
+ LightRAG
+ 简单快速的RAG系统 +
+
+ +
+ 🎥 +
+ VideoRAG
+ 超长上下文视频RAG系统 +
+
+ +
+ +
+ MiniRAG
+ 极简RAG系统 +
+
+
+ +--- + +## ⭐ Star History + +*社区增长轨迹* + +
+ + + + + Star History Chart + + +
+ +--- + +## 🤝 贡献者 + +*加入创新* + +
+ 感谢所有贡献者! +
+ +
+ + + +
+ +--- + +
+
+ +
+
+ + + + + + + + + +
+
+ +
+
+
+ + 感谢您访问RAG-Anything! + +
+
构建多模态AI的未来
+
+
+ +
+ Closing Animation +
+ + diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..ef55fb7 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,39 @@ +# Security Policy + +## Supported Versions + +Security fixes are applied to the latest released version of RAG-Anything. +We recommend always running the most recent release. + +| Version | Supported | +| ------- | ------------------ | +| 1.3.x | :white_check_mark: | +| < 1.3 | :x: | + +## Reporting a Vulnerability + +**Please do not report security vulnerabilities through public GitHub +issues, discussions, or pull requests.** + +Instead, report them privately through GitHub's built-in +[private vulnerability reporting](https://github.com/HKUDS/RAG-Anything/security/advisories/new). +This opens a confidential channel visible only to the maintainers. + +When reporting, please include as much of the following as you can: + +- A description of the vulnerability and its impact. +- The affected version(s) and, where relevant, the component + (e.g. document parsing, a specific modal processor, batch processing). +- Steps to reproduce, or a proof-of-concept. +- Any known mitigations or workarounds. + +## What to Expect + +- **Acknowledgement:** we aim to acknowledge new reports within 5 business days. +- **Assessment:** we will investigate, confirm the issue, and keep you + updated on our progress. +- **Fix & disclosure:** once a fix is ready we will release it and, with your + agreement, publicly credit your contribution. Please give us a reasonable + window to ship the fix before any public disclosure. + +Thank you for helping keep RAG-Anything and its users safe. diff --git a/assets/LiteWrite.png b/assets/LiteWrite.png new file mode 100644 index 0000000000000000000000000000000000000000..cd4d8eee029f062db394b1a419275ef23d0b5fdd GIT binary patch literal 510236 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%0A*sASLC2I@JF7>kaX=v9U4Z04*q`ydn!TU#%p9 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%0Dtnfn=czatF3Kgg*iWlo1JB&lOLMGfD7llkC_ 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∨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

FI+lKKG~om@g$l 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

|GdZka5HfZ!jfHgK}X{4$bSl6K4Vr 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 z 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�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

$zK0llvrw!5TKezq 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ÙTQz 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

_`g=bWBZ0z) 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�v;cA% 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�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≷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
>CQ`n;`7_E9ki) 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�esr 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 D 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%0DK9RFisBUngd7~bNw`a5fFeL;wrntgrFrG! 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 literal 0 HcmV?d00001 diff --git a/assets/rag_anything_framework.png b/assets/rag_anything_framework.png new file mode 100644 index 0000000000000000000000000000000000000000..84d0cf1a72020adce63fd489ab086a6d7aa9188d GIT binary patch literal 664341 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

e1+MDx^pl!tn=if(M9lH<#Mfr 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­$?PiF{14D;p{m7W>F`> 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�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

    ~PbS^_0*68Ee(cLsZX3&6 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%0A((Ig%cP~KLFfjg{uu#t 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 str: # Human-readable summary + def success_rate(self) -> float: # Success rate as percentage +``` + +### BatchParser Methods + +```python +class BatchParser: + def __init__(self, parser_type: str = "mineru", max_workers: int = 4, ...): + """Initialize batch parser""" + + def get_supported_extensions(self) -> List[str]: + """Get list of supported file extensions""" + + def filter_supported_files(self, file_paths: List[str], recursive: bool = True) -> List[str]: + """Filter files to only supported types""" + + def process_batch(self, file_paths: List[str], output_dir: str, ...) -> BatchProcessingResult: + """Process files in batch""" + + async def process_batch_async(self, file_paths: List[str], output_dir: str, ...) -> BatchProcessingResult: + """Process files in batch asynchronously""" +``` + +## Performance Considerations + +### Memory Usage +- Each worker uses additional memory +- Recommended: 2-4 workers for most systems +- Monitor memory usage with large files + +### CPU Usage +- Parallel processing utilizes multiple cores +- Optimal worker count depends on CPU cores and file sizes +- I/O may become bottleneck with many small files + +### Recommended Settings +- **Small files** (< 1MB): Higher worker count (6-8) +- **Large files** (> 100MB): Lower worker count (2-3) +- **Mixed sizes**: Start with 4 workers and adjust + +## Troubleshooting + +### Common Issues + +#### Memory Errors +```python +# Solution: Reduce max_workers +batch_parser = BatchParser(max_workers=2) +``` + +#### Timeout Errors +```python +# Solution: Increase timeout_per_file +batch_parser = BatchParser(timeout_per_file=600) # 10 minutes +``` + +#### Parser Installation Issues +```python +# Solution: Skip installation check +batch_parser = BatchParser(skip_installation_check=True) +``` + +#### File Not Found Errors +- Check file paths and permissions +- Ensure input files exist +- Verify directory access rights + +### Debug Mode + +Enable debug logging for detailed information: + +```python +import logging +logging.basicConfig(level=logging.DEBUG) + +# Create batch parser with debug logging +batch_parser = BatchParser(parser_type="mineru", max_workers=2) +``` + +### Error Handling + +The batch processor provides comprehensive error handling: + +```python +result = batch_parser.process_batch(file_paths=["doc1.pdf", "doc2.docx"]) + +# Check for errors +if result.failed_files: + print("Failed files:") + for file_path in result.failed_files: + error_message = result.errors.get(file_path, "Unknown error") + print(f" - {file_path}: {error_message}") + +# Process only successful files +for file_path in result.successful_files: + print(f"Successfully processed: {file_path}") +``` + +## Examples + +### Process Entire Directory + +```python +from pathlib import Path + +# Process all supported files in a directory +batch_parser = BatchParser(max_workers=4) +directory_path = Path("./documents") + +result = batch_parser.process_batch( + file_paths=[str(directory_path)], + output_dir="./processed", + recursive=True # Include subdirectories +) + +print(f"Processed {len(result.successful_files)} out of {result.total_files} files") +``` + +### Filter Files Before Processing + +```python +# Get all files in directory +all_files = ["doc1.pdf", "image.png", "spreadsheet.xlsx", "unsupported.xyz"] + +# Filter to supported files only +supported_files = batch_parser.filter_supported_files(all_files) +print(f"Will process {len(supported_files)} out of {len(all_files)} files") + +# Process only supported files +result = batch_parser.process_batch( + file_paths=supported_files, + output_dir="./output" +) +``` + +### Custom Error Handling + +```python +def process_with_retry(file_paths, max_retries=3): + """Process files with retry logic""" + + for attempt in range(max_retries): + result = batch_parser.process_batch(file_paths, "./output") + + if not result.failed_files: + break # All files processed successfully + + print(f"Attempt {attempt + 1}: {len(result.failed_files)} files failed") + file_paths = result.failed_files # Retry failed files + + return result +``` + +## Best Practices + +1. **Start with default settings** and adjust based on performance +2. **Monitor system resources** during batch processing +3. **Use appropriate worker counts** for your hardware +4. **Handle errors gracefully** with retry logic +5. **Test with small batches** before processing large collections +6. **Use skip_installation_check** if facing parser installation issues +7. **Enable progress tracking** for long-running operations +8. **Set appropriate timeouts** based on expected file processing times + +## Conclusion + +The batch processing feature significantly improves RAG-Anything's throughput for large document collections. It provides flexible configuration options, comprehensive error handling, and seamless integration with the existing RAG-Anything pipeline. diff --git a/docs/context_aware_processing.md b/docs/context_aware_processing.md new file mode 100644 index 0000000..579ebbb --- /dev/null +++ b/docs/context_aware_processing.md @@ -0,0 +1,375 @@ +# Context-Aware Multimodal Processing in RAGAnything + +This document describes the context-aware multimodal processing feature in RAGAnything, which provides surrounding content information to LLMs when analyzing images, tables, equations, and other multimodal content for enhanced accuracy and relevance. + +## Overview + +The context-aware feature enables RAGAnything to automatically extract and provide surrounding text content as context when processing multimodal content. This leads to more accurate and contextually relevant analysis by giving AI models additional information about where the content appears in the document structure. + +### Key Benefits + +- **Enhanced Accuracy**: Context helps AI understand the purpose and meaning of multimodal content +- **Semantic Coherence**: Generated descriptions align with document context and terminology +- **Automated Integration**: Context extraction is automatically enabled during document processing +- **Flexible Configuration**: Multiple extraction modes and filtering options + +## Key Features + +### 1. Configuration Support +- **Integrated Configuration**: Complete context options in `RAGAnythingConfig` +- **Environment Variables**: Configure all context parameters via environment variables +- **Dynamic Updates**: Runtime configuration updates supported +- **Content Format Control**: Configurable content source format detection + +### 2. Automated Integration +- **Auto-Initialization**: Modal processors automatically receive tokenizer and context configuration +- **Content Source Setup**: Document processing automatically sets content sources for context extraction +- **Position Information**: Automatic position info (page_idx, index) passed to processors +- **Batch Processing**: Context-aware batch processing for efficient document handling + +### 3. Advanced Token Management +- **Accurate Token Counting**: Uses LightRAG's tokenizer for precise token calculation +- **Smart Boundary Preservation**: Truncates at sentence/paragraph boundaries +- **Backward Compatibility**: Fallback to character truncation when tokenizer unavailable + +### 4. Universal Context Extraction +- **Multiple Formats**: Support for MinerU, plain text, custom formats +- **Flexible Modes**: Page-based and chunk-based context extraction +- **Content Filtering**: Configurable content type filtering +- **Header Support**: Optional inclusion of document headers and structure + +## Configuration + +### RAGAnythingConfig Parameters + +```python +# Context Extraction Configuration +context_window: int = 1 # Context window size (pages/chunks) +context_mode: str = "page" # Context mode ("page" or "chunk") +max_context_tokens: int = 2000 # Maximum context tokens +include_headers: bool = True # Include document headers +include_captions: bool = True # Include image/table captions +context_filter_content_types: List[str] = ["text"] # Content types to include +content_format: str = "minerU" # Default content format for context extraction +``` + +### Environment Variables + +```bash +# Context extraction settings +CONTEXT_WINDOW=2 +CONTEXT_MODE=page +MAX_CONTEXT_TOKENS=3000 +INCLUDE_HEADERS=true +INCLUDE_CAPTIONS=true +CONTEXT_FILTER_CONTENT_TYPES=text,image +CONTENT_FORMAT=minerU +``` + +## Usage Guide + +### 1. Basic Configuration + +```python +from raganything import RAGAnything, RAGAnythingConfig + +# Create configuration with context settings +config = RAGAnythingConfig( + context_window=2, + context_mode="page", + max_context_tokens=3000, + include_headers=True, + include_captions=True, + context_filter_content_types=["text", "image"], + content_format="minerU" +) + +# Create RAGAnything instance +rag_anything = RAGAnything( + config=config, + llm_model_func=your_llm_function, + embedding_func=your_embedding_function +) +``` + +### 2. Automatic Document Processing + +```python +# Context is automatically enabled during document processing +await rag_anything.process_document_complete("document.pdf") +``` + +### 3. Manual Content Source Configuration + +```python +# Set content source for specific content lists +rag_anything.set_content_source_for_context(content_list, "minerU") + +# Update context configuration at runtime +rag_anything.update_context_config( + context_window=1, + max_context_tokens=1500, + include_captions=False +) +``` + +### 4. Direct Modal Processor Usage + +```python +from raganything.modalprocessors import ( + ContextExtractor, + ContextConfig, + ImageModalProcessor +) + +# Configure context extraction +config = ContextConfig( + context_window=1, + context_mode="page", + max_context_tokens=2000, + include_headers=True, + include_captions=True, + filter_content_types=["text"] +) + +# Initialize context extractor +context_extractor = ContextExtractor(config) + +# Initialize modal processor with context support +processor = ImageModalProcessor(lightrag, caption_func, context_extractor) + +# Set content source +processor.set_content_source(content_list, "minerU") + +# Process with context +item_info = { + "page_idx": 2, + "index": 5, + "type": "image" +} + +result = await processor.process_multimodal_content( + modal_content=image_data, + content_type="image", + file_path="document.pdf", + entity_name="Architecture Diagram", + item_info=item_info +) +``` + +## Context Modes + +### Page-Based Context (`context_mode="page"`) +- Extracts context based on page boundaries +- Uses `page_idx` field from content items +- Suitable for document-structured content +- Example: Include text from 2 pages before and after current image + +### Chunk-Based Context (`context_mode="chunk"`) +- Extracts context based on content item positions +- Uses sequential position in content list +- Suitable for fine-grained control +- Example: Include 5 content items before and after current table + +## Processing Workflow + +### 1. Document Parsing +``` +Document Input → MinerU Parsing → content_list Generation +``` + +### 2. Context Setup +``` +content_list → Set as Context Source → All Modal Processors Gain Context Capability +``` + +### 3. Multimodal Processing +``` +Multimodal Content → Extract Surrounding Context → Enhanced LLM Analysis → More Accurate Results +``` + +## Content Source Formats + +### MinerU Format +```json +[ + { + "type": "text", + "text": "Document content here...", + "text_level": 1, + "page_idx": 0 + }, + { + "type": "image", + "img_path": "images/figure1.jpg", + "image_caption": ["Figure 1: Architecture"], + "image_footnote": [], + "page_idx": 1 + } +] +``` + +### Custom Text Chunks +```python +text_chunks = [ + "First chunk of text content...", + "Second chunk of text content...", + "Third chunk of text content..." +] +``` + +### Plain Text +```python +full_document = "Complete document text with all content..." +``` + +## Configuration Examples + +### High-Precision Context +For focused analysis with minimal context: +```python +config = RAGAnythingConfig( + context_window=1, + context_mode="page", + max_context_tokens=1000, + include_headers=True, + include_captions=False, + context_filter_content_types=["text"] +) +``` + +### Comprehensive Context +For broad analysis with rich context: +```python +config = RAGAnythingConfig( + context_window=2, + context_mode="page", + max_context_tokens=3000, + include_headers=True, + include_captions=True, + context_filter_content_types=["text", "image", "table"] +) +``` + +### Chunk-Based Analysis +For fine-grained sequential context: +```python +config = RAGAnythingConfig( + context_window=5, + context_mode="chunk", + max_context_tokens=2000, + include_headers=False, + include_captions=False, + context_filter_content_types=["text"] +) +``` + +## Performance Optimization + +### 1. Accurate Token Control +- Uses real tokenizer for precise token counting +- Avoids exceeding LLM token limits +- Provides consistent performance + +### 2. Smart Truncation +- Truncates at sentence boundaries +- Maintains semantic integrity +- Adds truncation indicators + +### 3. Caching Optimization +- Context extraction results can be reused +- Reduces redundant computation overhead + +## Advanced Features + +### Context Truncation +The system automatically truncates context to fit within token limits: +- Uses actual tokenizer for accurate token counting +- Attempts to end at sentence boundaries (periods) +- Falls back to line boundaries if needed +- Adds "..." indicator for truncated content + +### Header Formatting +When `include_headers=True`, headers are formatted with markdown-style prefixes: +``` +# Level 1 Header +## Level 2 Header +### Level 3 Header +``` + +### Caption Integration +When `include_captions=True`, image and table captions are included as: +``` +[Image: Figure 1 caption text] +[Table: Table 1 caption text] +``` + +## Integration with RAGAnything + +The context-aware feature is seamlessly integrated into RAGAnything's workflow: + +1. **Automatic Setup**: Context extractors are automatically created and configured +2. **Content Source Management**: Document processing automatically sets content sources +3. **Processor Integration**: All modal processors receive context capabilities +4. **Configuration Consistency**: Single configuration system for all context settings + +## Error Handling + +The system includes robust error handling: +- Gracefully handles missing or invalid content sources +- Returns empty context for unsupported formats +- Logs warnings for configuration issues +- Continues processing even if context extraction fails + +## Compatibility + +- **Backward Compatible**: Existing code works without modification +- **Optional Feature**: Context can be selectively enabled/disabled +- **Flexible Configuration**: Supports multiple configuration combinations + +## Best Practices + +1. **Token Limits**: Ensure `max_context_tokens` doesn't exceed LLM context limits +2. **Performance Impact**: Larger context windows increase processing time +3. **Content Quality**: Context quality directly affects analysis accuracy +4. **Window Size**: Match window size to content structure (documents vs articles) +5. **Content Filtering**: Use `context_filter_content_types` to reduce noise + +## Troubleshooting + +### Common Issues + +**Context Not Extracted** +- Check if `set_content_source_for_context()` was called +- Verify `item_info` contains required fields (`page_idx`, `index`) +- Confirm content source format is correct + +**Context Too Long/Short** +- Adjust `max_context_tokens` setting +- Modify `context_window` size +- Check `context_filter_content_types` configuration + +**Irrelevant Context** +- Refine `context_filter_content_types` to exclude noise +- Reduce `context_window` size +- Set `include_captions=False` if captions are not helpful + +**Configuration Issues** +- Verify environment variables are set correctly +- Check RAGAnythingConfig parameter names +- Ensure content_format matches your data source + +## Examples + +Check out these example files for complete usage demonstrations: + +- **Configuration Examples**: See how to set up different context configurations +- **Integration Examples**: Learn how to integrate context-aware processing into your workflow +- **Custom Processors**: Examples of creating custom modal processors with context support + +## API Reference + +For detailed API documentation, see the docstrings in: +- `raganything/modalprocessors.py` - Context extraction and modal processors +- `raganything/config.py` - Configuration options +- `raganything/raganything.py` - Main RAGAnything class integration diff --git a/docs/enhanced_markdown.md b/docs/enhanced_markdown.md new file mode 100644 index 0000000..0efa7a0 --- /dev/null +++ b/docs/enhanced_markdown.md @@ -0,0 +1,552 @@ +# Enhanced Markdown Conversion + +This document describes the enhanced markdown conversion feature for RAG-Anything, which provides high-quality PDF generation from markdown files with multiple backend options and advanced styling. + +## Overview + +The enhanced markdown conversion feature provides professional-quality PDF generation from markdown files. It supports multiple conversion backends, advanced styling options, syntax highlighting, and seamless integration with RAG-Anything's document processing pipeline. + +## Key Features + +- **Multiple Backends**: WeasyPrint, Pandoc, and automatic backend selection +- **Advanced Styling**: Custom CSS, syntax highlighting, and professional layouts +- **Image Support**: Embedded images with proper scaling and positioning +- **Table Support**: Formatted tables with borders and professional styling +- **Code Highlighting**: Syntax highlighting for code blocks using Pygments +- **Custom Templates**: Support for custom CSS and document templates +- **Table of Contents**: Automatic TOC generation with navigation links +- **Professional Typography**: High-quality fonts and spacing + +## Installation + +### Required Dependencies + +```bash +# Basic installation +pip install raganything[all] + +# Required for enhanced markdown conversion +pip install markdown weasyprint pygments +``` + +### Optional Dependencies + +```bash +# For Pandoc backend (system installation required) +# Ubuntu/Debian: +sudo apt-get install pandoc wkhtmltopdf + +# macOS: +brew install pandoc wkhtmltopdf + +# Or using conda: +conda install -c conda-forge pandoc wkhtmltopdf +``` + +### Backend-Specific Installation + +#### WeasyPrint (Recommended) +```bash +# Install WeasyPrint with system dependencies +pip install weasyprint + +# Ubuntu/Debian system dependencies: +sudo apt-get install -y build-essential python3-dev python3-pip \ + python3-setuptools python3-wheel python3-cffi libcairo2 \ + libpango-1.0-0 libpangocairo-1.0-0 libgdk-pixbuf2.0-0 \ + libffi-dev shared-mime-info +``` + +#### Pandoc +- Download from: https://pandoc.org/installing.html +- Requires system-wide installation +- Used for complex document structures and LaTeX-quality output + +## Usage + +### Basic Conversion + +```python +from raganything.enhanced_markdown import EnhancedMarkdownConverter, MarkdownConfig + +# Create converter with default settings +converter = EnhancedMarkdownConverter() + +# Convert markdown file to PDF +success = converter.convert_file_to_pdf( + input_path="document.md", + output_path="document.pdf", + method="auto" # Automatically select best available backend +) + +if success: + print("✅ Conversion successful!") +else: + print("❌ Conversion failed") +``` + +### Advanced Configuration + +```python +# Create custom configuration +config = MarkdownConfig( + page_size="A4", # A4, Letter, Legal, etc. + margin="1in", # CSS-style margins + font_size="12pt", # Base font size + line_height="1.5", # Line spacing + include_toc=True, # Generate table of contents + syntax_highlighting=True, # Enable code syntax highlighting + + # Custom CSS styling + custom_css=""" + body { + font-family: 'Georgia', serif; + color: #333; + } + h1 { + color: #2c3e50; + border-bottom: 2px solid #3498db; + padding-bottom: 0.3em; + } + code { + background-color: #f8f9fa; + padding: 2px 4px; + border-radius: 3px; + } + pre { + background-color: #f8f9fa; + border-left: 4px solid #3498db; + padding: 15px; + border-radius: 5px; + } + table { + border-collapse: collapse; + width: 100%; + margin: 1em 0; + } + th, td { + border: 1px solid #ddd; + padding: 8px 12px; + text-align: left; + } + th { + background-color: #f2f2f2; + font-weight: bold; + } + """ +) + +converter = EnhancedMarkdownConverter(config) +``` + +### Backend Selection + +```python +# Check available backends +converter = EnhancedMarkdownConverter() +backend_info = converter.get_backend_info() + +print("Available backends:") +for backend, available in backend_info["available_backends"].items(): + status = "✅" if available else "❌" + print(f" {status} {backend}") + +print(f"Recommended backend: {backend_info['recommended_backend']}") + +# Use specific backend +converter.convert_file_to_pdf( + input_path="document.md", + output_path="document.pdf", + method="weasyprint" # or "pandoc", "pandoc_system", "auto" +) +``` + +### Content Conversion + +```python +# Convert markdown content directly (not from file) +markdown_content = """ +# Sample Document + +## Introduction +This is a **bold** statement with *italic* text. + +## Code Example +```python +def hello_world(): + print("Hello, World!") + return "Success" +``` + +## Table +| Feature | Status | Notes | +|---------|--------|-------| +| PDF Generation | ✅ | Working | +| Syntax Highlighting | ✅ | Pygments | +| Custom CSS | ✅ | Full support | +""" + +success = converter.convert_markdown_to_pdf( + markdown_content=markdown_content, + output_path="sample.pdf", + method="auto" +) +``` + +### Command Line Interface + +```bash +# Basic conversion +python -m raganything.enhanced_markdown document.md --output document.pdf + +# With specific backend +python -m raganything.enhanced_markdown document.md --method weasyprint + +# With custom CSS file +python -m raganything.enhanced_markdown document.md --css custom_style.css + +# Show backend information +python -m raganything.enhanced_markdown --info + +# Help +python -m raganything.enhanced_markdown --help +``` + +## Backend Comparison + +| Backend | Pros | Cons | Best For | Quality | +|---------|------|------|----------|---------| +| **WeasyPrint** | • Excellent CSS support
    • Fast rendering
    • Great web-style layouts
    • Python-based | • Limited LaTeX features
    • Requires system deps | • Web-style documents
    • Custom styling
    • Fast conversion | ⭐⭐⭐⭐ | +| **Pandoc** | • Extensive features
    • LaTeX-quality output
    • Academic formatting
    • Many input/output formats | • Slower conversion
    • System installation
    • Complex setup | • Academic papers
    • Complex documents
    • Publication quality | ⭐⭐⭐⭐⭐ | +| **Auto** | • Automatic selection
    • Fallback support
    • User-friendly | • May not use optimal backend | • General use
    • Quick setup
    • Development | ⭐⭐⭐⭐ | + +## Configuration Options + +### MarkdownConfig Parameters + +```python +@dataclass +class MarkdownConfig: + # Page layout + page_size: str = "A4" # A4, Letter, Legal, A3, etc. + margin: str = "1in" # CSS margin format + font_size: str = "12pt" # Base font size + line_height: str = "1.5" # Line spacing multiplier + + # Content options + include_toc: bool = True # Generate table of contents + syntax_highlighting: bool = True # Enable code highlighting + image_max_width: str = "100%" # Maximum image width + table_style: str = "..." # Default table CSS + + # Styling + css_file: Optional[str] = None # External CSS file path + custom_css: Optional[str] = None # Inline CSS content + template_file: Optional[str] = None # Custom HTML template + + # Output options + output_format: str = "pdf" # Currently only PDF supported + output_dir: Optional[str] = None # Output directory + + # Metadata + metadata: Optional[Dict[str, str]] = None # Document metadata +``` + +### Supported Markdown Features + +#### Basic Formatting +- **Headers**: `# ## ### #### ##### ######` +- **Emphasis**: `*italic*`, `**bold**`, `***bold italic***` +- **Links**: `[text](url)`, `[text][ref]` +- **Images**: `![alt](url)`, `![alt][ref]` +- **Lists**: Ordered and unordered, nested +- **Blockquotes**: `> quote` +- **Line breaks**: Double space or `\n\n` + +#### Advanced Features +- **Tables**: GitHub-style tables with alignment +- **Code blocks**: Fenced code blocks with language specification +- **Inline code**: `backtick code` +- **Horizontal rules**: `---` or `***` +- **Footnotes**: `[^1]` references +- **Definition lists**: Term and definition pairs +- **Attributes**: `{#id .class key=value}` + +#### Code Highlighting + +```markdown +```python +def example_function(): + """This will be syntax highlighted""" + return "Hello, World!" +``` + +```javascript +function exampleFunction() { + // This will also be highlighted + return "Hello, World!"; +} +``` +``` + +## Integration with RAG-Anything + +The enhanced markdown conversion integrates seamlessly with RAG-Anything: + +```python +from raganything import RAGAnything + +# Initialize RAG-Anything +rag = RAGAnything() + +# Process markdown files - enhanced conversion is used automatically +await rag.process_document_complete("document.md") + +# Batch processing with enhanced markdown conversion +result = rag.process_documents_batch( + file_paths=["doc1.md", "doc2.md", "doc3.md"], + output_dir="./output" +) + +# The .md files will be converted to PDF using enhanced conversion +# before being processed by the RAG system +``` + +## Performance Considerations + +### Conversion Speed +- **WeasyPrint**: ~1-3 seconds for typical documents +- **Pandoc**: ~3-10 seconds for typical documents +- **Large documents**: Time scales roughly linearly with content + +### Memory Usage +- **WeasyPrint**: ~50-100MB per conversion +- **Pandoc**: ~100-200MB per conversion +- **Images**: Large images increase memory usage significantly + +### Optimization Tips +1. **Resize large images** before embedding +2. **Use compressed images** (JPEG for photos, PNG for graphics) +3. **Limit concurrent conversions** to avoid memory issues +4. **Cache converted content** when processing multiple times + +## Examples + +### Sample Markdown Document + +```markdown +# Technical Documentation + +## Table of Contents +[TOC] + +## Overview +This document provides comprehensive technical specifications. + +## Architecture + +### System Components +1. **Parser Engine**: Handles document processing +2. **Storage Layer**: Manages data persistence +3. **Query Interface**: Provides search capabilities + +### Code Implementation +```python +from raganything import RAGAnything + +# Initialize system +rag = RAGAnything(config={ + "working_dir": "./storage", + "enable_image_processing": True +}) + +# Process document +await rag.process_document_complete("document.pdf") +``` + +### Performance Metrics + +| Component | Throughput | Latency | Memory | +|-----------|------------|---------|--------| +| Parser | 100 docs/hour | 36s avg | 2.5 GB | +| Storage | 1000 ops/sec | 1ms avg | 512 MB | +| Query | 50 queries/sec | 20ms avg | 1 GB | + +## Integration Notes + +> **Important**: Always validate input before processing. + +## Conclusion +The enhanced system provides excellent performance for document processing workflows. +``` + +### Generated PDF Features + +The enhanced markdown converter produces PDFs with: + +- **Professional typography** with proper font selection and spacing +- **Syntax-highlighted code blocks** using Pygments +- **Formatted tables** with borders and alternating row colors +- **Clickable table of contents** with navigation links +- **Responsive images** that scale appropriately +- **Custom styling** through CSS +- **Proper page breaks** and margins +- **Document metadata** and properties + +## Troubleshooting + +### Common Issues + +#### WeasyPrint Installation Problems +```bash +# Ubuntu/Debian: Install system dependencies +sudo apt-get update +sudo apt-get install -y build-essential python3-dev libcairo2 \ + libpango-1.0-0 libpangocairo-1.0-0 libgdk-pixbuf2.0-0 \ + libffi-dev shared-mime-info + +# Then reinstall WeasyPrint +pip install --force-reinstall weasyprint +``` + +#### Pandoc Not Found +```bash +# Check if Pandoc is installed +pandoc --version + +# Install Pandoc (Ubuntu/Debian) +sudo apt-get install pandoc wkhtmltopdf + +# Or download from: https://pandoc.org/installing.html +``` + +#### CSS Issues +- Check CSS syntax in custom_css +- Verify CSS file paths exist +- Test CSS with simple HTML first +- Use browser developer tools to debug styling + +#### Image Problems +- Ensure images are accessible (correct paths) +- Check image file formats (PNG, JPEG, GIF supported) +- Verify image file permissions +- Consider image size and format optimization + +#### Font Issues +```python +# Use web-safe fonts +config = MarkdownConfig( + custom_css=""" + body { + font-family: 'Arial', 'Helvetica', sans-serif; + } + """ +) +``` + +### Debug Mode + +Enable detailed logging for troubleshooting: + +```python +import logging + +# Enable debug logging +logging.basicConfig( + level=logging.DEBUG, + format='%(asctime)s - %(name)s - %(levelname)s - %(message)s' +) + +# Create converter with debug logging +converter = EnhancedMarkdownConverter() +result = converter.convert_file_to_pdf("test.md", "test.pdf") +``` + +### Error Handling + +```python +def robust_conversion(input_path, output_path): + """Convert with fallback backends""" + converter = EnhancedMarkdownConverter() + + # Try backends in order of preference + backends = ["weasyprint", "pandoc", "auto"] + + for backend in backends: + try: + success = converter.convert_file_to_pdf( + input_path=input_path, + output_path=output_path, + method=backend + ) + if success: + print(f"✅ Conversion successful with {backend}") + return True + except Exception as e: + print(f"❌ {backend} failed: {str(e)}") + continue + + print("❌ All backends failed") + return False +``` + +## API Reference + +### EnhancedMarkdownConverter + +```python +class EnhancedMarkdownConverter: + def __init__(self, config: Optional[MarkdownConfig] = None): + """Initialize converter with optional configuration""" + + def convert_file_to_pdf(self, input_path: str, output_path: str, method: str = "auto") -> bool: + """Convert markdown file to PDF""" + + def convert_markdown_to_pdf(self, markdown_content: str, output_path: str, method: str = "auto") -> bool: + """Convert markdown content to PDF""" + + def get_backend_info(self) -> Dict[str, Any]: + """Get information about available backends""" + + def convert_with_weasyprint(self, markdown_content: str, output_path: str) -> bool: + """Convert using WeasyPrint backend""" + + def convert_with_pandoc(self, markdown_content: str, output_path: str) -> bool: + """Convert using Pandoc backend""" +``` + +## Best Practices + +1. **Choose the right backend** for your use case: + - **WeasyPrint** for web-style documents and custom CSS + - **Pandoc** for academic papers and complex formatting + - **Auto** for general use and development + +2. **Optimize images** before embedding: + - Use appropriate formats (JPEG for photos, PNG for graphics) + - Compress images to reduce file size + - Set reasonable maximum widths + +3. **Design responsive layouts**: + - Use relative units (%, em) instead of absolute (px) + - Test with different page sizes + - Consider print-specific CSS + +4. **Test your styling**: + - Start with default styling and incrementally customize + - Test with sample content before production use + - Validate CSS syntax + +5. **Handle errors gracefully**: + - Implement fallback backends + - Provide meaningful error messages + - Log conversion attempts for debugging + +6. **Performance optimization**: + - Cache converted content when possible + - Process large batches with appropriate worker counts + - Monitor memory usage with large documents + +## Conclusion + +The enhanced markdown conversion feature provides professional-quality PDF generation with flexible styling options and multiple backend support. It seamlessly integrates with RAG-Anything's document processing pipeline while offering standalone functionality for markdown-to-PDF conversion needs. diff --git a/docs/multimodal_rag_failure_modes.md b/docs/multimodal_rag_failure_modes.md new file mode 100644 index 0000000..18a2dab --- /dev/null +++ b/docs/multimodal_rag_failure_modes.md @@ -0,0 +1,84 @@ +# Multimodal RAG: common failure modes and quick checks + +Real-world PDFs and Office files are noisy. RAG-Anything (MinerU / Docling / etc.) usually does the right thing, but when something feels “off”, this page is a **short sanity checklist** before opening an issue. + +It is meant to stay small and easy to maintain (see discussion in [#207](https://github.com/HKUDS/RAG-Anything/issues/207) and [#213](https://github.com/HKUDS/RAG-Anything/issues/213)). + +--- + +## 1. OCR or layout silently corrupts text + +**Symptoms:** answers quote nonsense, wrong numbers, or mixed columns. + +**Quick checks:** + +- Open the parser’s Markdown or `*_content_list.json` for the same page and eyeball a few paragraphs. +- Compare with the source PDF zoomed in (sometimes OCR confuses `l`/`1`, ligatures, or watermarks). + +--- + +## 2. Table structure lost during preprocessing + +**Symptoms:** merged cells, tables shown as plain lines, or wrong row order. + +**Quick checks:** + +- Find the `type: table` blocks in `content_list` and see if `table_body` / structure fields look plausible. +- If you only need retrieval, sometimes a **flattened** table is acceptable; if you need exact structure, try another parse method or parser (`PARSE_METHOD`, `PARSER` in `.env`). + +--- + +## 3. Image ↔ caption misalignment + +**Symptoms:** captions match the wrong figure, or images appear in the wrong order. + +**Quick checks:** + +- Confirm `img_path` / captions exist in `content_list` and that page indices look consistent. +- For DOCX pipelines, remember that exporting to PDF for OCR can **drop inline math**; OMML helpers in recent versions exist specifically to recover equations from the original Word file. + +--- + +## 4. Retrieval biased toward text (image/table ignored) + +**Symptoms:** the answer clearly needs a figure or table, but only text chunks rank high. + +**Quick checks:** + +- Run a **probe question** that can only be answered from an image or table (not from surrounding text). +- Inspect whether multimodal stages ran (`ENABLE_*_PROCESSING` flags) and whether your embedding path actually sees the enriched text (not only raw OCR). + +--- + +## 5. “Everything’s slow” vs “stuck” + +**Symptoms:** long runs, high CPU/GPU. + +**Quick checks:** + +- [#48](https://github.com/HKUDS/RAG-Anything/issues/48) style: large PDFs and OCR are inherently heavy—batch size and hardware matter. +- Distinguish **slow but progressing** from a **hang** (then check subprocess timeouts, MinerU/Docling logs, and disk space). + +--- + +## 6. Images not loading in your UI after indexing + +**Symptoms:** chunks reference paths that only exist on the machine that ingested the data. + +**Quick checks:** + +- Absolute local paths are normal for processing on one host. For a browser or another server, set **public URL mapping** (environment variables `RAGANYTHING_PUBLIC_ASSET_BASE_URL` and `RAGANYTHING_PUBLIC_ASSET_STRIP_PREFIX` — see the main [README](../README.md)) so each chunk can carry an `*_public_url` field alongside the local path. Today this mapping only runs in the MinerU parser path; other parsers will not yet produce `*_public_url`. + +--- + +## When you open an issue + +Including the items below speeds up triage: + +- Which **modality** failed (text / image / table / equation). +- Which **parser** and **`PARSE_METHOD`** you used. +- A **minimal** file (or a redacted excerpt) and one **query** that misbehaves. + +--- + +*This document is intentionally short. If you expand it, prefer adding links to reproducible examples rather than long narratives.* diff --git a/docs/offline_setup.md b/docs/offline_setup.md new file mode 100644 index 0000000..2e5c16f --- /dev/null +++ b/docs/offline_setup.md @@ -0,0 +1,78 @@ +# Running RAG-Anything in an Offline Environment + +This document explains a critical consideration for running the RAG-Anything project in an environment with no internet access. + +## The Network Dependency: `LightRAG` and `tiktoken` + +The `RAGAnything` core engine relies on the `LightRAG` library for its primary functionality. `LightRAG`, in turn, uses OpenAI's `tiktoken` library for text tokenization. + +By default, the `tiktoken` library has a network dependency. On its first use, it attempts to download tokenizer models from OpenAI's public servers (`openaipublic.blob.core.windows.net`). If the application is running in an offline or network-restricted environment, this download will fail, causing the `LightRAG` instance to fail to initialize. + +This results in an error similar to the following: + +``` +Failed to initialize LightRAG instance: HTTPSConnectionPool(host='openaipublic.blob.core.windows.net', port=443): Max retries exceeded with url: /encodings/o200k_ba +``` + +This dependency is indirect. The `RAG-Anything` codebase itself does not directly import or call `tiktoken`. The call is made from within the `lightrag` library. + +## The Solution: Using a Local `tiktoken` Cache + +To resolve this issue and enable fully offline operation, you must provide a local cache for the `tiktoken` models. This is achieved by setting the `TIKTOKEN_CACHE_DIR` environment variable **before** the application starts. + +When this environment variable is set, `tiktoken` will look for its model files in the specified local directory instead of attempting to download them from the internet. + +### Steps to Implement the Solution: + +1. **Create a Model Cache:** In an environment *with* internet access, run the provided script to download and cache the necessary `tiktoken` models. + + ```bash + # Run the cache creation script + uv run scripts/create_tiktoken_cache.py + ``` + + This will create a `tiktoken_cache` directory in your project root containing the required model files. + +2. **Configure the Environment Variable:** Add the following line to your `.env` file: + + ```bash + TIKTOKEN_CACHE_DIR=./tiktoken_cache + ``` + + **Important:** You should ensure that the `.env` file is loaded **before** `LightRAG` imports `tiktoken`, making this configuration effective. + + ```python + import os + from typing import Dict, Any, Optional, Callable + import sys + import asyncio + import atexit + from dataclasses import dataclass, field + from pathlib import Path + from dotenv import load_dotenv + + # Add project root directory to Python path + sys.path.insert(0, str(Path(__file__).parent.parent)) + + # Load environment variables FIRST - before any imports that use tiktoken + load_dotenv(dotenv_path=".env", override=False) + + # Now import LightRAG (which will import tiktoken with the correct env var set) + from lightrag import LightRAG + from lightrag.utils import logger + + # Rest of the code... + ``` + +### Testing the Offline Setup + +1. **Create a `tiktoken_cache` directory:** If you don't have one already, create a directory named `tiktoken_cache` in the project root. +2. **Populate the cache:** Run the `scripts/create_tiktoken_cache.py` script to download the necessary tiktoken models into the `tiktoken_cache` directory. +3. **Set the `TIKTOKEN_CACHE_DIR` environment variable:** Add the line `TIKTOKEN_CACHE_DIR=./tiktoken_cache` to your `.env` file. +4. **Disconnect from the internet:** Disable your internet connection or put your machine in airplane mode. +5. **Run the application:** Start the `RAG-Anything` application. For example: + ``` + uv run examples/raganything_example.py requirements.txt + ``` + +By following these steps, you can eliminate the network dependency and run the `RAG-Anything` project successfully in a fully offline environment. diff --git a/docs/vllm_integration.md b/docs/vllm_integration.md new file mode 100644 index 0000000..f2d2c41 --- /dev/null +++ b/docs/vllm_integration.md @@ -0,0 +1,244 @@ +# vLLM Integration Guide for RAG-Anything + +[vLLM](https://github.com/vllm-project/vllm) is a high-throughput, memory-efficient inference engine for LLMs. It exposes an OpenAI-compatible API, making it a drop-in backend for RAG-Anything in production environments. + +## Why vLLM? + +| Feature | vLLM | Ollama | LM Studio | +|---------|------|--------|-----------| +| **Continuous batching** | ✅ | ❌ | ❌ | +| **PagedAttention** | ✅ | ❌ | ❌ | +| **Tensor parallelism** | ✅ | ❌ | ❌ | +| **Production throughput** | ✅ High | Moderate | Low | +| **Quantization (AWQ/GPTQ/FP8)** | ✅ | ✅ (GGUF) | ✅ (GGUF) | +| **Multi-GPU support** | ✅ Native | Limited | ❌ | +| **Ease of setup** | Moderate | Easy | Easy | +| **GUI** | ❌ | ❌ | ✅ | + +**Choose vLLM when:** You need production-grade throughput, serve multiple concurrent users, or run large models across multiple GPUs. + +## Prerequisites + +1. **NVIDIA GPU(s)** with CUDA support (compute capability ≥ 7.0) +2. **Python 3.9+** +3. **vLLM installed:** + ```bash + pip install vllm + ``` +4. **RAG-Anything installed:** + ```bash + pip install raganything + ``` + +## Quick Start + +### 1. Start vLLM Server + +**Chat/Completion model:** +```bash +vllm serve Qwen/Qwen2.5-72B-Instruct \ + --tensor-parallel-size 4 \ + --max-model-len 32768 \ + --port 8000 +``` + +**Embedding model** (separate process, different port): +```bash +vllm serve BAAI/bge-m3 \ + --task embedding \ + --port 8001 +``` + +### 2. Configure Environment + +Create a `.env` file: + +```bash +### vLLM Configuration +LLM_BINDING=vllm +LLM_MODEL=Qwen/Qwen2.5-72B-Instruct +LLM_BINDING_HOST=http://localhost:8000/v1 +LLM_BINDING_API_KEY=token-abc123 + +### Embedding via vLLM +EMBEDDING_BINDING=vllm +EMBEDDING_MODEL=BAAI/bge-m3 +EMBEDDING_DIM=1024 +EMBEDDING_BINDING_HOST=http://localhost:8001/v1 +EMBEDDING_BINDING_API_KEY=token-abc123 +``` + +### 3. Run the Example + +```bash +cd examples +python vllm_integration_example.py +``` + +## Environment Variables + +| Variable | Default | Description | +|----------|---------|-------------| +| `LLM_BINDING` | — | Set to `vllm` | +| `LLM_MODEL` | `Qwen/Qwen2.5-72B-Instruct` | Model name (must match what vLLM is serving) | +| `LLM_BINDING_HOST` | `http://localhost:8000/v1` | vLLM API base URL | +| `LLM_BINDING_API_KEY` | `token-abc123` | API key (vLLM default: any non-empty string) | +| `EMBEDDING_BINDING` | — | Set to `vllm` | +| `EMBEDDING_MODEL` | `BAAI/bge-m3` | Embedding model name | +| `EMBEDDING_DIM` | `1024` | Embedding dimensions | +| `EMBEDDING_BINDING_HOST` | `http://localhost:8001/v1` | Embedding endpoint URL | +| `EMBEDDING_BINDING_API_KEY` | `token-abc123` | Embedding API key | + +## Model Configurations + +### Qwen 2.5 (Recommended for RAG) +```bash +vllm serve Qwen/Qwen2.5-72B-Instruct \ + --tensor-parallel-size 4 \ + --max-model-len 32768 +``` + +### Mistral / Mixtral +```bash +vllm serve mistralai/Mixtral-8x7B-Instruct-v0.1 \ + --tensor-parallel-size 2 \ + --max-model-len 32768 +``` + +### Llama 3.1 70B +```bash +vllm serve meta-llama/Llama-3.1-70B-Instruct \ + --tensor-parallel-size 4 \ + --max-model-len 8192 +``` + +### With AWQ Quantization (reduced memory) +```bash +vllm serve Qwen/Qwen2.5-72B-Instruct-AWQ \ + --tensor-parallel-size 2 \ + --quantization awq \ + --max-model-len 32768 +``` + +### With GPTQ Quantization +```bash +vllm serve TheBloke/Mixtral-8x7B-Instruct-v0.1-GPTQ \ + --tensor-parallel-size 2 \ + --quantization gptq +``` + +## Performance Tips + +### Tensor Parallelism +Distribute large models across GPUs. Set `--tensor-parallel-size` to the number of GPUs: +```bash +# 4x A100 80GB → can serve 72B models in full precision +vllm serve Qwen/Qwen2.5-72B-Instruct --tensor-parallel-size 4 +``` + +### GPU Memory Utilization +Increase if you have headroom (default 0.9): +```bash +vllm serve ... --gpu-memory-utilization 0.95 +``` + +### Max Model Length +Reduce if you don't need full context (saves memory): +```bash +# RAG chunks are typically <4K tokens; 8192 is often sufficient +vllm serve ... --max-model-len 8192 +``` + +### Concurrency +vLLM handles batching automatically. On the RAG-Anything side, increase `MAX_ASYNC` in your `.env`: +```bash +MAX_ASYNC=16 # vLLM handles concurrent requests efficiently +``` + +### Speculative Decoding (vLLM ≥ 0.4) +Use a small draft model to speed up generation: +```bash +vllm serve Qwen/Qwen2.5-72B-Instruct \ + --speculative-model Qwen/Qwen2.5-0.5B-Instruct \ + --num-speculative-tokens 5 \ + --tensor-parallel-size 4 +``` + +## Embedding Options + +### Option A: vLLM Embedding Server (Recommended) +Run a dedicated vLLM instance for embeddings: +```bash +vllm serve BAAI/bge-m3 --task embedding --port 8001 +``` + +### Option B: Use Ollama for Embeddings +If you already run Ollama, you can mix backends: +```bash +EMBEDDING_BINDING=ollama +EMBEDDING_MODEL=bge-m3:latest +EMBEDDING_BINDING_HOST=http://localhost:11434 +``` + +### Option C: OpenAI Embeddings +Use OpenAI's embedding API alongside vLLM for chat: +```bash +EMBEDDING_BINDING=openai +EMBEDDING_MODEL=text-embedding-3-large +EMBEDDING_DIM=3072 +EMBEDDING_BINDING_HOST=https://api.openai.com/v1 +EMBEDDING_BINDING_API_KEY=sk-... +``` + +## Architecture + +``` +┌──────────────────────┐ +│ RAG-Anything │ +│ (Document Processing│ +│ + Query Engine) │ +└──────┬───────────────┘ + │ OpenAI-compatible API + ▼ +┌──────────────────────┐ ┌──────────────────────┐ +│ vLLM Chat Server │ │ vLLM Embedding Server│ +│ :8000/v1 │ │ :8001/v1 │ +│ (Qwen-72B, etc.) │ │ (bge-m3, etc.) │ +└──────────────────────┘ └──────────────────────┘ + │ │ + ▼ ▼ +┌──────────────────────────────────────────────┐ +│ GPU Cluster │ +│ PagedAttention · Continuous Batching │ +│ Tensor Parallelism · Quantization │ +└──────────────────────────────────────────────┘ +``` + +## Troubleshooting + +### Connection Refused +``` +❌ Connection failed: Connection refused +``` +- Ensure vLLM is running: `curl http://localhost:8000/v1/models` +- Check the port matches your `LLM_BINDING_HOST` +- Wait for model loading to complete (large models can take minutes) + +### Out of Memory +``` +torch.cuda.OutOfMemoryError +``` +- Use quantized models (`--quantization awq` or `gptq`) +- Reduce `--max-model-len` +- Increase `--tensor-parallel-size` (more GPUs) +- Lower `--gpu-memory-utilization` + +### Model Not Found +``` +Model 'xxx' not found +``` +- `LLM_MODEL` must match the model name vLLM is serving exactly +- Check available models: `curl http://localhost:8000/v1/models` + +### Slow First Request +This is normal — vLLM compiles CUDA kernels on first use. Subsequent requests are fast. diff --git a/env.example b/env.example new file mode 100644 index 0000000..84d7749 --- /dev/null +++ b/env.example @@ -0,0 +1,211 @@ +### This is sample file of .env + + +### Server Configuration +HOST=0.0.0.0 +PORT=9621 +WEBUI_TITLE='My Graph KB' +WEBUI_DESCRIPTION="Simple and Fast Graph Based RAG System" +OLLAMA_EMULATING_MODEL_TAG=latest +# WORKERS=2 +# CORS_ORIGINS=http://localhost:3000,http://localhost:8080 + +### Tiktoken Cache Configuration (for offline deployment) +### Set this to a local directory containing cached tiktoken models +### This prevents tiktoken from downloading models from the internet on initialization +### See docs/offline_setup.md for setup instructions +# TIKTOKEN_CACHE_DIR=./tiktoken_cache + +### Login Configuration +# AUTH_ACCOUNTS='admin:admin123,user1:pass456' +# TOKEN_SECRET=Your-Key-For-LightRAG-API-Server +# TOKEN_EXPIRE_HOURS=48 +# GUEST_TOKEN_EXPIRE_HOURS=24 +# JWT_ALGORITHM=HS256 + +### API-Key to access LightRAG Server API +# LIGHTRAG_API_KEY=your-secure-api-key-here +# WHITELIST_PATHS=/health,/api/* + +### Optional SSL Configuration +# SSL=true +# SSL_CERTFILE=/path/to/cert.pem +# SSL_KEYFILE=/path/to/key.pem + +### Directory Configuration (defaults to current working directory) +### Should not be set if deploy by docker (Set by Dockerfile instead of .env) +### Default value is ./inputs and ./rag_storage +# INPUT_DIR= + +### RAGAnything Configuration (Multimodal Document Processing) +### --- +### Parser Configuration +# PARSE_METHOD=auto +# OUTPUT_DIR=./output +# PARSER=mineru # Options: mineru, docling, paddleocr +# DISPLAY_CONTENT_STATS=true + +### Multimodal Processing Configuration +# ENABLE_IMAGE_PROCESSING=true +# ENABLE_TABLE_PROCESSING=true +# ENABLE_EQUATION_PROCESSING=true + +### Batch Processing Configuration +# MAX_CONCURRENT_FILES=1 +# SUPPORTED_FILE_EXTENSIONS=.pdf,.jpg,.jpeg,.png,.bmp,.tiff,.tif,.gif,.webp,.doc,.docx,.ppt,.pptx,.xls,.xlsx,.txt,.md +# RECURSIVE_FOLDER_PROCESSING=true + +### Context Extraction Configuration +# CONTEXT_WINDOW=1 +# CONTEXT_MODE=page +# MAX_CONTEXT_TOKENS=2000 +# INCLUDE_HEADERS=true +# INCLUDE_CAPTIONS=true +# CONTEXT_FILTER_CONTENT_TYPES=text +# CONTENT_FORMAT=minerU + +### Public media URLs (optional, for CDNs or S3-hosted assets after ingest) +# Set both so parsed content_list items get *_public_url fields alongside local img_path. +# RAGANYTHING_PUBLIC_ASSET_BASE_URL=https://my-bucket.s3.amazonaws.com/prefix +# RAGANYTHING_PUBLIC_ASSET_STRIP_PREFIX=/absolute/path/to/sync/root + +### Max nodes return from grap retrieval +# MAX_GRAPH_NODES=1000 + +### Logging level +# LOG_LEVEL=INFO +# VERBOSE=False +# LOG_MAX_BYTES=10485760 +# LOG_BACKUP_COUNT=5 +### Logfile location (defaults to current working directory) +# LOG_DIR=/path/to/log/directory + +### Settings for RAG query +# HISTORY_TURNS=3 +# COSINE_THRESHOLD=0.2 +# TOP_K=60 +# MAX_TOKEN_TEXT_CHUNK=4000 +# MAX_TOKEN_RELATION_DESC=4000 +# MAX_TOKEN_ENTITY_DESC=4000 + +### Entity and relation summarization configuration +### Language: English, Chinese, French, German ... +SUMMARY_LANGUAGE=English +### Number of duplicated entities/edges to trigger LLM re-summary on merge ( at least 3 is recommented) +# FORCE_LLM_SUMMARY_ON_MERGE=6 +### Max tokens for entity/relations description after merge +# MAX_TOKEN_SUMMARY=500 + +### Number of parallel processing documents(Less than MAX_ASYNC/2 is recommended) +# MAX_PARALLEL_INSERT=2 +### Chunk size for document splitting, 500~1500 is recommended +# CHUNK_SIZE=1200 +# CHUNK_OVERLAP_SIZE=100 + +### LLM Configuration +ENABLE_LLM_CACHE=true +ENABLE_LLM_CACHE_FOR_EXTRACT=true +### Time out in seconds for LLM, None for infinite timeout +TIMEOUT=240 +### Some models like o1-mini require temperature to be set to 1 +TEMPERATURE=0 +### Max concurrency requests of LLM +MAX_ASYNC=4 +### MAX_TOKENS: max tokens send to LLM for entity relation summaries (less than context size of the model) +### MAX_TOKENS: set as num_ctx option for Ollama by API Server +MAX_TOKENS=32768 +### LLM Binding type: openai, ollama, lollms, azure_openai, lmstudio, vllm +LLM_BINDING=openai +LLM_MODEL=gpt-4o +VISION_MODEL=gpt-4o +LLM_BINDING_HOST=https://api.openai.com/v1 +LLM_BINDING_API_KEY=your_api_key +### Optional for Azure +# AZURE_OPENAI_API_VERSION=2024-08-01-preview +# AZURE_OPENAI_DEPLOYMENT=gpt-4o + +### vLLM Configuration (high-throughput production inference) +### See docs/vllm_integration.md for setup guide +# LLM_BINDING=vllm +# LLM_MODEL=Qwen/Qwen2.5-72B-Instruct +# LLM_BINDING_HOST=http://localhost:8000/v1 +# LLM_BINDING_API_KEY=token-abc123 + +### Embedding Configuration +### Embedding Binding type: openai, ollama, lollms, azure_openai, lmstudio, vllm +EMBEDDING_BINDING=ollama +EMBEDDING_MODEL=bge-m3:latest +EMBEDDING_DIM=1024 +EMBEDDING_BINDING_API_KEY=your_api_key +# If the embedding service is deployed within the same Docker stack, use host.docker.internal instead of localhost +EMBEDDING_BINDING_HOST=http://localhost:11434 +### Num of chunks send to Embedding in single request +# EMBEDDING_BATCH_NUM=32 +### Max concurrency requests for Embedding +# EMBEDDING_FUNC_MAX_ASYNC=16 +### Maximum tokens sent to Embedding for each chunk (no longer in use?) +# MAX_EMBED_TOKENS=8192 +### Optional for Azure +# AZURE_EMBEDDING_DEPLOYMENT=text-embedding-3-large +# AZURE_EMBEDDING_API_VERSION=2023-05-15 + +### Data storage selection +# LIGHTRAG_KV_STORAGE=PGKVStorage +# LIGHTRAG_VECTOR_STORAGE=PGVectorStorage +# LIGHTRAG_DOC_STATUS_STORAGE=PGDocStatusStorage +# LIGHTRAG_GRAPH_STORAGE=Neo4JStorage + +### TiDB Configuration (Deprecated) +# TIDB_HOST=localhost +# TIDB_PORT=4000 +# TIDB_USER=your_username +# TIDB_PASSWORD='your_password' +# TIDB_DATABASE=your_database +### separating all data from difference Lightrag instances(deprecating) +# TIDB_WORKSPACE=default + +### PostgreSQL Configuration +POSTGRES_HOST=localhost +POSTGRES_PORT=5432 +POSTGRES_USER=your_username +POSTGRES_PASSWORD='your_password' +POSTGRES_DATABASE=your_database +POSTGRES_MAX_CONNECTIONS=12 +### separating all data from difference Lightrag instances(deprecating) +# POSTGRES_WORKSPACE=default + +### Neo4j Configuration +NEO4J_URI=neo4j+s://xxxxxxxx.databases.neo4j.io +NEO4J_USERNAME=neo4j +NEO4J_PASSWORD='your_password' + +### Independent AGM Configuration(not for AMG embedded in PostgreSQL) +# AGE_POSTGRES_DB= +# AGE_POSTGRES_USER= +# AGE_POSTGRES_PASSWORD= +# AGE_POSTGRES_HOST= +# AGE_POSTGRES_PORT=8529 + +# AGE Graph Name(apply to PostgreSQL and independent AGM) +### AGE_GRAPH_NAME is deprecated +# AGE_GRAPH_NAME=lightrag + +### MongoDB Configuration +MONGO_URI=mongodb://root:root@localhost:27017/ +MONGO_DATABASE=LightRAG +### separating all data from difference Lightrag instances(deprecating) +# MONGODB_GRAPH=false + +### Milvus Configuration +MILVUS_URI=http://localhost:19530 +MILVUS_DB_NAME=lightrag +# MILVUS_USER=root +# MILVUS_PASSWORD=your_password +# MILVUS_TOKEN=your_token + +### Qdrant +QDRANT_URL=http://localhost:16333 +# QDRANT_API_KEY=your-api-key + +### Redis +REDIS_URI=redis://localhost:6379 diff --git a/examples/batch_dry_run_example.py b/examples/batch_dry_run_example.py new file mode 100644 index 0000000..35d229f --- /dev/null +++ b/examples/batch_dry_run_example.py @@ -0,0 +1,63 @@ +""" +Dry-run batch parsing example. + +Lists supported files without running any parser. + +Usage: + - pip install: + python examples/batch_dry_run_example.py examples/sample_docs --parser mineru + python examples/batch_dry_run_example.py examples/sample_docs/projects examples/sample_docs/web --parser docling + python examples/batch_dry_run_example.py examples/sample_docs --parser paddleocr + - uv install: + uv run python examples/batch_dry_run_example.py examples/sample_docs --parser mineru --recursive + uv run python examples/batch_dry_run_example.py examples/sample_docs --parser mineru --no-recursive +""" + +import argparse + +from raganything.batch_parser import BatchParser + + +def main() -> int: + parser = argparse.ArgumentParser(description="Dry-run batch parsing example") + parser.add_argument("paths", nargs="+", help="File paths or directories to scan") + parser.add_argument( + "--parser", + choices=["mineru", "docling", "paddleocr"], + default="mineru", + help="Parser to use for file-type support", + ) + parser.add_argument( + "--output", + default="./batch_output", + help="Output directory (unused in dry-run, but required by API)", + ) + parser.add_argument( + "--recursive", + action=argparse.BooleanOptionalAction, + default=True, + help="Search directories recursively", + ) + args = parser.parse_args() + + batch_parser = BatchParser(parser_type=args.parser, show_progress=False) + result = batch_parser.process_batch( + file_paths=args.paths, + output_dir=args.output, + recursive=args.recursive, + dry_run=True, + ) + + print(result.summary()) + if result.successful_files: + print("\nDry run: files that would be processed:") + for file_path in result.successful_files: + print(f" - {file_path}") + else: + print("\nDry run: no supported files found.") + + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/examples/batch_processing_example.py b/examples/batch_processing_example.py new file mode 100644 index 0000000..c83911c --- /dev/null +++ b/examples/batch_processing_example.py @@ -0,0 +1,561 @@ +#!/usr/bin/env python +""" +Batch Processing Example for RAG-Anything + +This example demonstrates how to use the batch processing capabilities +to process multiple documents in parallel for improved throughput. + +Features demonstrated: +- Basic batch processing with BatchParser +- Asynchronous batch processing +- Integration with RAG-Anything +- Error handling and progress tracking +- File filtering and directory processing +""" + +import asyncio +import logging +from pathlib import Path +import tempfile +import time + +# Add project root directory to Python path +import sys + +sys.path.append(str(Path(__file__).parent.parent)) + +from raganything import RAGAnything, RAGAnythingConfig +from raganything.batch_parser import BatchParser + + +def create_sample_documents(): + """Create sample documents for batch processing testing""" + temp_dir = Path(tempfile.mkdtemp()) + sample_files = [] + + # Create various document types + documents = { + "document1.txt": "This is a simple text document for testing batch processing.", + "document2.txt": "Another text document with different content.", + "document3.md": """# Markdown Document + +## Introduction +This is a markdown document for testing. + +### Features +- Markdown formatting +- Code blocks +- Lists + +```python +def example(): + return "Hello from markdown" +``` +""", + "report.txt": """Business Report + +Executive Summary: +This report demonstrates batch processing capabilities. + +Key Findings: +1. Parallel processing improves throughput +2. Progress tracking enhances user experience +3. Error handling ensures reliability + +Conclusion: +Batch processing is essential for large-scale document processing. +""", + "notes.md": """# Meeting Notes + +## Date: 2024-01-15 + +### Attendees +- Alice Johnson +- Bob Smith +- Carol Williams + +### Discussion Topics +1. **Batch Processing Implementation** + - Parallel document processing + - Progress tracking + - Error handling strategies + +2. **Performance Metrics** + - Target: 100 documents/hour + - Memory usage: < 4GB + - Success rate: > 95% + +### Action Items +- [ ] Implement batch processing +- [ ] Add progress bars +- [ ] Test with large document sets +- [ ] Optimize memory usage + +### Next Steps +Continue development and testing of batch processing features. +""", + } + + # Create files + for filename, content in documents.items(): + file_path = temp_dir / filename + with open(file_path, "w", encoding="utf-8") as f: + f.write(content) + sample_files.append(str(file_path)) + + return sample_files, temp_dir + + +def demonstrate_basic_batch_processing(): + """Demonstrate basic batch processing functionality""" + print("\n" + "=" * 60) + print("BASIC BATCH PROCESSING DEMONSTRATION") + print("=" * 60) + + # Create sample documents + sample_files, temp_dir = create_sample_documents() + + try: + print(f"Created {len(sample_files)} sample documents in: {temp_dir}") + for file_path in sample_files: + print(f" - {Path(file_path).name}") + + # Create batch parser + batch_parser = BatchParser( + parser_type="mineru", + max_workers=3, + show_progress=True, + timeout_per_file=60, + skip_installation_check=True, # Skip installation check for demo + ) + + print("\nBatch parser configured:") + print(" - Parser type: mineru") + print(" - Max workers: 3") + print(" - Progress tracking: enabled") + print(" - Timeout per file: 60 seconds") + + # Check supported extensions + supported_extensions = batch_parser.get_supported_extensions() + print(f" - Supported extensions: {supported_extensions}") + + # Filter files to supported types + supported_files = batch_parser.filter_supported_files(sample_files) + print("\nFile filtering results:") + print(f" - Total files: {len(sample_files)}") + print(f" - Supported files: {len(supported_files)}") + + # Process batch + output_dir = temp_dir / "batch_output" + print("\nStarting batch processing...") + print(f"Output directory: {output_dir}") + + start_time = time.time() + result = batch_parser.process_batch( + file_paths=supported_files, + output_dir=str(output_dir), + parse_method="auto", + recursive=False, + ) + processing_time = time.time() - start_time + + # Display results + print("\n" + "-" * 40) + print("BATCH PROCESSING RESULTS") + print("-" * 40) + print(result.summary()) + print(f"Total processing time: {processing_time:.2f} seconds") + print(f"Success rate: {result.success_rate:.1f}%") + + if result.successful_files: + print("\nSuccessfully processed files:") + for file_path in result.successful_files: + print(f" ✅ {Path(file_path).name}") + + if result.failed_files: + print("\nFailed files:") + for file_path in result.failed_files: + error = result.errors.get(file_path, "Unknown error") + print(f" ❌ {Path(file_path).name}: {error}") + + return result + + except Exception as e: + print(f"❌ Batch processing demonstration failed: {str(e)}") + return None + + +async def demonstrate_async_batch_processing(): + """Demonstrate asynchronous batch processing""" + print("\n" + "=" * 60) + print("ASYNCHRONOUS BATCH PROCESSING DEMONSTRATION") + print("=" * 60) + + # Create sample documents + sample_files, temp_dir = create_sample_documents() + + try: + print(f"Processing {len(sample_files)} documents asynchronously...") + + # Create batch parser + batch_parser = BatchParser( + parser_type="mineru", + max_workers=2, + show_progress=True, + skip_installation_check=True, + ) + + # Process batch asynchronously + output_dir = temp_dir / "async_output" + + start_time = time.time() + result = await batch_parser.process_batch_async( + file_paths=sample_files, + output_dir=str(output_dir), + parse_method="auto", + recursive=False, + ) + processing_time = time.time() - start_time + + # Display results + print("\n" + "-" * 40) + print("ASYNC BATCH PROCESSING RESULTS") + print("-" * 40) + print(result.summary()) + print(f"Async processing time: {processing_time:.2f} seconds") + print(f"Success rate: {result.success_rate:.1f}%") + + return result + + except Exception as e: + print(f"❌ Async batch processing demonstration failed: {str(e)}") + return None + + +async def demonstrate_rag_integration(): + """Demonstrate batch processing integration with RAG-Anything""" + print("\n" + "=" * 60) + print("RAG-ANYTHING BATCH INTEGRATION DEMONSTRATION") + print("=" * 60) + + # Create sample documents + sample_files, temp_dir = create_sample_documents() + + try: + # Initialize RAG-Anything with temporary storage + config = RAGAnythingConfig( + working_dir=str(temp_dir / "rag_storage"), + enable_image_processing=True, + enable_table_processing=True, + enable_equation_processing=True, + max_concurrent_files=2, + ) + + rag = RAGAnything(config=config) + + print("RAG-Anything initialized with batch processing capabilities") + + # Show available batch methods + batch_methods = [method for method in dir(rag) if "batch" in method.lower()] + print(f"Available batch methods: {batch_methods}") + + # Demonstrate batch processing with RAG integration + print(f"\nProcessing {len(sample_files)} documents with RAG integration...") + + # Use the RAG-integrated batch processing + try: + # Process documents in batch + result = rag.process_documents_batch( + file_paths=sample_files, + output_dir=str(temp_dir / "rag_batch_output"), + max_workers=2, + show_progress=True, + ) + + print("\n" + "-" * 40) + print("RAG BATCH PROCESSING RESULTS") + print("-" * 40) + print(result.summary()) + print(f"Success rate: {result.success_rate:.1f}%") + + # Demonstrate batch processing with full RAG integration + print("\nProcessing documents with full RAG integration...") + + rag_result = await rag.process_documents_with_rag_batch( + file_paths=sample_files[:2], # Process subset for demo + output_dir=str(temp_dir / "rag_full_output"), + max_workers=1, + show_progress=True, + ) + + print("\n" + "-" * 40) + print("FULL RAG INTEGRATION RESULTS") + print("-" * 40) + print(f"Parse result: {rag_result['parse_result'].summary()}") + print( + f"RAG processing time: {rag_result['total_processing_time']:.2f} seconds" + ) + print( + f"Successfully processed with RAG: {rag_result['successful_rag_files']}" + ) + print(f"Failed RAG processing: {rag_result['failed_rag_files']}") + + return rag_result + + except Exception as e: + print(f"⚠️ RAG integration demo completed with limitations: {str(e)}") + print( + "Note: This is expected in environments without full API configuration" + ) + return None + + except Exception as e: + print(f"❌ RAG integration demonstration failed: {str(e)}") + return None + + +def demonstrate_directory_processing(): + """Demonstrate processing entire directories""" + print("\n" + "=" * 60) + print("DIRECTORY PROCESSING DEMONSTRATION") + print("=" * 60) + + # Create a directory structure with nested files + temp_dir = Path(tempfile.mkdtemp()) + + # Create main directory files + main_files = { + "overview.txt": "Main directory overview document", + "readme.md": "# Project README\n\nThis is the main project documentation.", + } + + # Create subdirectory + sub_dir = temp_dir / "subdirectory" + sub_dir.mkdir() + + sub_files = { + "details.txt": "Detailed information in subdirectory", + "notes.md": "# Notes\n\nAdditional notes and information.", + } + + # Write all files + all_files = [] + for filename, content in main_files.items(): + file_path = temp_dir / filename + with open(file_path, "w", encoding="utf-8") as f: + f.write(content) + all_files.append(str(file_path)) + + for filename, content in sub_files.items(): + file_path = sub_dir / filename + with open(file_path, "w", encoding="utf-8") as f: + f.write(content) + all_files.append(str(file_path)) + + try: + print("Created directory structure:") + print(f" Main directory: {temp_dir}") + print(f" Files in main: {list(main_files.keys())}") + print(f" Subdirectory: {sub_dir}") + print(f" Files in sub: {list(sub_files.keys())}") + + # Create batch parser + batch_parser = BatchParser( + parser_type="mineru", + max_workers=2, + show_progress=True, + skip_installation_check=True, + ) + + # Process entire directory recursively + print("\nProcessing entire directory recursively...") + + result = batch_parser.process_batch( + file_paths=[str(temp_dir)], # Pass directory path + output_dir=str(temp_dir / "directory_output"), + parse_method="auto", + recursive=True, # Include subdirectories + ) + + print("\n" + "-" * 40) + print("DIRECTORY PROCESSING RESULTS") + print("-" * 40) + print(result.summary()) + print(f"Total files found and processed: {result.total_files}") + print(f"Success rate: {result.success_rate:.1f}%") + + if result.successful_files: + print("\nSuccessfully processed:") + for file_path in result.successful_files: + relative_path = Path(file_path).relative_to(temp_dir) + print(f" ✅ {relative_path}") + + return result + + except Exception as e: + print(f"❌ Directory processing demonstration failed: {str(e)}") + return None + + +def demonstrate_error_handling(): + """Demonstrate error handling and recovery""" + print("\n" + "=" * 60) + print("ERROR HANDLING DEMONSTRATION") + print("=" * 60) + + temp_dir = Path(tempfile.mkdtemp()) + + # Create files with various issues + files_with_issues = { + "valid_file.txt": "This is a valid file that should process successfully.", + "empty_file.txt": "", # Empty file + "large_file.txt": "x" * 1000000, # Large file (1MB of 'x') + } + + created_files = [] + for filename, content in files_with_issues.items(): + file_path = temp_dir / filename + with open(file_path, "w", encoding="utf-8") as f: + f.write(content) + created_files.append(str(file_path)) + + # Add a non-existent file to the list + created_files.append(str(temp_dir / "non_existent_file.txt")) + + try: + print(f"Testing error handling with {len(created_files)} files:") + for file_path in created_files: + name = Path(file_path).name + exists = Path(file_path).exists() + size = Path(file_path).stat().st_size if exists else 0 + print(f" - {name}: {'exists' if exists else 'missing'}, {size} bytes") + + # Create batch parser with short timeout for demonstration + batch_parser = BatchParser( + parser_type="mineru", + max_workers=2, + show_progress=True, + timeout_per_file=30, # Short timeout for demo + skip_installation_check=True, + ) + + # Process files and handle errors + result = batch_parser.process_batch( + file_paths=created_files, + output_dir=str(temp_dir / "error_test_output"), + parse_method="auto", + ) + + print("\n" + "-" * 40) + print("ERROR HANDLING RESULTS") + print("-" * 40) + print(result.summary()) + + if result.successful_files: + print("\nSuccessful files:") + for file_path in result.successful_files: + print(f" ✅ {Path(file_path).name}") + + if result.failed_files: + print("\nFailed files with error details:") + for file_path in result.failed_files: + error = result.errors.get(file_path, "Unknown error") + print(f" ❌ {Path(file_path).name}: {error}") + + # Demonstrate retry logic + if result.failed_files: + print( + f"\nDemonstrating retry logic for {len(result.failed_files)} failed files..." + ) + + # Retry only the failed files + retry_result = batch_parser.process_batch( + file_paths=result.failed_files, + output_dir=str(temp_dir / "retry_output"), + parse_method="auto", + ) + + print(f"Retry results: {retry_result.summary()}") + + return result + + except Exception as e: + print(f"❌ Error handling demonstration failed: {str(e)}") + return None + + +async def main(): + """Main demonstration function""" + # Configure logging + logging.basicConfig( + level=logging.INFO, + format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", + ) + + print("RAG-Anything Batch Processing Demonstration") + print("=" * 70) + print("This example demonstrates various batch processing capabilities:") + print(" - Basic batch processing with progress tracking") + print(" - Asynchronous processing for improved performance") + print(" - Integration with RAG-Anything pipeline") + print(" - Directory processing with recursive file discovery") + print(" - Comprehensive error handling and recovery") + + results = {} + + # Run demonstrations + print("\n🚀 Starting demonstrations...") + + # Basic batch processing + results["basic"] = demonstrate_basic_batch_processing() + + # Asynchronous processing + results["async"] = await demonstrate_async_batch_processing() + + # RAG integration + results["rag"] = await demonstrate_rag_integration() + + # Directory processing + results["directory"] = demonstrate_directory_processing() + + # Error handling + results["error_handling"] = demonstrate_error_handling() + + # Summary + print("\n" + "=" * 70) + print("DEMONSTRATION SUMMARY") + print("=" * 70) + + for demo_name, result in results.items(): + if result: + if hasattr(result, "success_rate"): + print( + f"✅ {demo_name.upper()}: {result.success_rate:.1f}% success rate" + ) + else: + print(f"✅ {demo_name.upper()}: Completed successfully") + else: + print(f"❌ {demo_name.upper()}: Failed or had limitations") + + print("\n📊 Key Features Demonstrated:") + print(" - Parallel document processing with configurable worker counts") + print(" - Real-time progress tracking with tqdm progress bars") + print(" - Comprehensive error handling and reporting") + print(" - File filtering based on supported document types") + print(" - Directory processing with recursive file discovery") + print(" - Asynchronous processing for improved performance") + print(" - Integration with RAG-Anything document pipeline") + print(" - Retry logic for failed documents") + print(" - Detailed processing statistics and timing") + + print("\n💡 Best Practices Highlighted:") + print(" - Use appropriate worker counts for your system") + print(" - Enable progress tracking for long-running operations") + print(" - Handle errors gracefully with retry mechanisms") + print(" - Filter files to supported types before processing") + print(" - Set reasonable timeouts for document processing") + print(" - Use skip_installation_check for environments with conflicts") + + +if __name__ == "__main__": + asyncio.run(main()) diff --git a/examples/enhanced_markdown_example.py b/examples/enhanced_markdown_example.py new file mode 100644 index 0000000..9b650db --- /dev/null +++ b/examples/enhanced_markdown_example.py @@ -0,0 +1,1055 @@ +#!/usr/bin/env python +""" +Enhanced Markdown Conversion Example for RAG-Anything + +This example demonstrates the enhanced markdown to PDF conversion capabilities +with multiple backends, advanced styling, and professional formatting. + +Features demonstrated: +- Basic markdown to PDF conversion +- Multiple conversion backends (WeasyPrint, Pandoc) +- Custom CSS styling and configuration +- Backend detection and selection +- Error handling and fallback mechanisms +- Command-line interface usage +""" + +import logging +from pathlib import Path +import tempfile + +# Add project root directory to Python path +import sys + +sys.path.append(str(Path(__file__).parent.parent)) + +from raganything.enhanced_markdown import EnhancedMarkdownConverter, MarkdownConfig + + +def create_sample_markdown_content(): + """Create comprehensive sample markdown content for testing""" + + # Basic sample + basic_content = """# Basic Markdown Sample + +## Introduction +This is a simple markdown document demonstrating basic formatting. + +### Text Formatting +- **Bold text** and *italic text* +- `Inline code` examples +- [Links to external sites](https://github.com) + +### Lists +1. First ordered item +2. Second ordered item +3. Third ordered item + +- Unordered item +- Another unordered item + - Nested item + - Another nested item + +### Blockquotes +> This is a blockquote with important information. +> It can span multiple lines. + +### Code Block +```python +def hello_world(): + print("Hello, World!") + return "Success" +``` +""" + + # Technical documentation sample + technical_content = """# Technical Documentation + +## Table of Contents +- [Overview](#overview) +- [Architecture](#architecture) +- [Implementation](#implementation) +- [Performance](#performance) + +## Overview +This document provides comprehensive technical specifications for the enhanced markdown conversion system. + +## Architecture + +### Core Components +1. **Markdown Parser**: Processes markdown syntax +2. **CSS Engine**: Applies styling and layout +3. **PDF Generator**: Creates final PDF output +4. **Backend Manager**: Handles multiple conversion engines + +### Data Flow +```mermaid +graph LR + A[Markdown Input] --> B[Parser] + B --> C[CSS Processor] + C --> D[PDF Generator] + D --> E[PDF Output] +``` + +## Implementation + +### Python Code Example +```python +from raganything.enhanced_markdown import EnhancedMarkdownConverter, MarkdownConfig + +# Configure converter +config = MarkdownConfig( + page_size="A4", + margin="1in", + include_toc=True, + syntax_highlighting=True +) + +# Create converter +converter = EnhancedMarkdownConverter(config) + +# Convert to PDF +success = converter.convert_file_to_pdf( + input_path="document.md", + output_path="output.pdf", + method="weasyprint" +) +``` + +### Configuration Options +```yaml +converter: + page_size: A4 + margin: 1in + font_size: 12pt + include_toc: true + syntax_highlighting: true + backend: weasyprint +``` + +## Performance + +### Benchmark Results +| Backend | Speed | Quality | Features | +|---------|-------|---------|----------| +| WeasyPrint | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | +| Pandoc | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | + +### Processing Times +- **Small documents** (< 10 pages): 1-3 seconds +- **Medium documents** (10-50 pages): 3-10 seconds +- **Large documents** (> 50 pages): 10-30 seconds + +## Advanced Features + +### Custom CSS Styling +The system supports advanced CSS customization: + +```css +body { + font-family: 'Georgia', serif; + line-height: 1.6; + color: #333; +} + +h1 { + color: #2c3e50; + border-bottom: 2px solid #3498db; + padding-bottom: 0.3em; +} + +code { + background-color: #f8f9fa; + padding: 2px 4px; + border-radius: 3px; + font-family: 'Courier New', monospace; +} + +pre { + background-color: #f8f9fa; + border-left: 4px solid #3498db; + padding: 15px; + border-radius: 5px; + overflow-x: auto; +} + +table { + border-collapse: collapse; + width: 100%; + margin: 1em 0; +} + +th, td { + border: 1px solid #ddd; + padding: 8px 12px; + text-align: left; +} + +th { + background-color: #f2f2f2; + font-weight: bold; +} +``` + +### Image Support +![Sample Image](https://via.placeholder.com/400x200/3498db/ffffff?text=Sample+Image) + +Images are automatically scaled and positioned appropriately in the PDF output. + +## Conclusion +The enhanced markdown conversion system provides professional-quality PDF generation with extensive customization options and multiple backend support. + +--- + +*Generated on: 2024-01-15* +*Version: 1.0.0* +""" + + # Academic paper sample + academic_content = """# Research Paper: Advanced Document Processing + +**Authors:** Alice Johnson¹, Bob Smith², Carol Williams¹ +**Affiliations:** +¹ University of Technology +² Research Institute + +## Abstract + +This paper presents a comprehensive analysis of advanced document processing techniques using enhanced markdown conversion. Our research demonstrates significant improvements in processing speed and output quality through optimized backend selection and custom styling approaches. + +**Keywords:** document processing, markdown conversion, PDF generation, performance optimization + +## 1. Introduction + +Document processing has become increasingly important in modern information systems. The ability to convert markdown documents to high-quality PDF outputs with professional formatting is crucial for academic, technical, and business applications. + +### 1.1 Research Objectives + +1. Evaluate different markdown conversion backends +2. Analyze performance characteristics of each approach +3. Develop optimization strategies for large-scale processing +4. Design flexible configuration systems for diverse use cases + +### 1.2 Contributions + +This work makes the following contributions: +- Comprehensive comparison of markdown conversion backends +- Performance optimization techniques for large documents +- Flexible configuration framework for customization +- Integration patterns for document processing pipelines + +## 2. Methodology + +### 2.1 Experimental Setup + +We conducted experiments using the following configuration: + +```python +# Experimental configuration +config = MarkdownConfig( + page_size="A4", + margin="1in", + font_size="11pt", + line_height="1.4", + include_toc=True, + syntax_highlighting=True +) +``` + +### 2.2 Test Documents + +| Category | Count | Avg Size | Complexity | +|----------|-------|----------|------------| +| Simple | 100 | 2 pages | Low | +| Medium | 50 | 10 pages | Medium | +| Complex | 25 | 25 pages | High | + +### 2.3 Metrics + +We evaluated performance using the following metrics: +- **Conversion Speed**: Time to generate PDF (seconds) +- **Memory Usage**: Peak memory consumption (MB) +- **Output Quality**: Visual assessment score (1-10) +- **Feature Support**: Number of supported markdown features + +## 3. Results + +### 3.1 Performance Comparison + +The following table summarizes our performance results: + +| Backend | Speed (s) | Memory (MB) | Quality | Features | +|---------|-----------|-------------|---------|----------| +| WeasyPrint | 2.3 ± 0.5 | 85 ± 15 | 8.5 | 85% | +| Pandoc | 4.7 ± 1.2 | 120 ± 25 | 9.2 | 95% | + +### 3.2 Quality Analysis + +#### 3.2.1 Typography +WeasyPrint excels in web-style typography with excellent CSS support, while Pandoc provides superior academic formatting with LaTeX-quality output. + +#### 3.2.2 Code Highlighting +Both backends support syntax highlighting through Pygments: + +```python +def analyze_performance(backend, documents): + '''Analyze conversion performance for given backend''' + results = [] + + for doc in documents: + start_time = time.time() + success = backend.convert(doc) + end_time = time.time() + + results.append({ + 'document': doc, + 'time': end_time - start_time, + 'success': success + }) + + return results +``` + +### 3.3 Scalability + +Our scalability analysis shows: +- Linear scaling with document size for both backends +- Memory usage proportional to content complexity +- Optimal batch sizes of 10-20 documents for parallel processing + +## 4. Discussion + +### 4.1 Backend Selection Guidelines + +Choose **WeasyPrint** for: +- Web-style documents with custom CSS +- Fast conversion requirements +- Simple to medium complexity documents + +Choose **Pandoc** for: +- Academic papers and publications +- Complex document structures +- Maximum feature support requirements + +### 4.2 Optimization Strategies + +1. **Image Optimization**: Compress images before embedding +2. **CSS Minimization**: Use efficient CSS selectors +3. **Content Chunking**: Process large documents in sections +4. **Caching**: Cache converted content for repeated use + +## 5. Conclusion + +This research demonstrates that enhanced markdown conversion provides significant benefits for document processing workflows. The choice between WeasyPrint and Pandoc depends on specific requirements for speed, quality, and features. + +### 5.1 Future Work + +- Integration with cloud processing services +- Real-time collaborative editing support +- Advanced template systems +- Performance optimization for very large documents + +## References + +1. Johnson, A. et al. (2024). "Advanced Document Processing Techniques." *Journal of Information Systems*, 15(3), 45-62. +2. Smith, B. (2023). "PDF Generation Optimization." *Technical Computing Review*, 8(2), 12-28. +3. Williams, C. (2024). "Markdown Processing Frameworks." *Software Engineering Quarterly*, 22(1), 78-95. + +--- + +**Manuscript received:** January 10, 2024 +**Accepted for publication:** January 15, 2024 +**Published online:** January 20, 2024 +""" + + return { + "basic": basic_content, + "technical": technical_content, + "academic": academic_content, + } + + +def demonstrate_basic_conversion(): + """Demonstrate basic markdown to PDF conversion""" + print("\n" + "=" * 60) + print("BASIC MARKDOWN CONVERSION DEMONSTRATION") + print("=" * 60) + + try: + # Create converter with default settings + converter = EnhancedMarkdownConverter() + + # Show backend information + backend_info = converter.get_backend_info() + print("Available conversion backends:") + for backend, available in backend_info["available_backends"].items(): + status = "✅" if available else "❌" + print(f" {status} {backend}") + print(f"Recommended backend: {backend_info['recommended_backend']}") + + # Get sample content + samples = create_sample_markdown_content() + temp_dir = Path(tempfile.mkdtemp()) + + # Convert basic sample + basic_md_path = temp_dir / "basic_sample.md" + with open(basic_md_path, "w", encoding="utf-8") as f: + f.write(samples["basic"]) + + print(f"\nConverting basic sample: {basic_md_path}") + + success = converter.convert_file_to_pdf( + input_path=str(basic_md_path), + output_path=str(temp_dir / "basic_sample.pdf"), + method="auto", # Let the system choose the best backend + ) + + if success: + print("✅ Basic conversion successful!") + print(f" Output: {temp_dir / 'basic_sample.pdf'}") + else: + print("❌ Basic conversion failed") + + return success, temp_dir + + except Exception as e: + print(f"❌ Basic conversion demonstration failed: {str(e)}") + return False, None + + +def demonstrate_backend_comparison(): + """Demonstrate different conversion backends""" + print("\n" + "=" * 60) + print("BACKEND COMPARISON DEMONSTRATION") + print("=" * 60) + + try: + samples = create_sample_markdown_content() + temp_dir = Path(tempfile.mkdtemp()) + + # Create technical document + tech_md_path = temp_dir / "technical.md" + with open(tech_md_path, "w", encoding="utf-8") as f: + f.write(samples["technical"]) + + print("Testing different backends with technical document...") + + # Test different backends + backends = ["auto", "weasyprint", "pandoc"] + results = {} + + for backend in backends: + try: + print(f"\nTesting {backend} backend...") + + converter = EnhancedMarkdownConverter() + output_path = temp_dir / f"technical_{backend}.pdf" + + import time + + start_time = time.time() + + success = converter.convert_file_to_pdf( + input_path=str(tech_md_path), + output_path=str(output_path), + method=backend, + ) + + end_time = time.time() + conversion_time = end_time - start_time + + if success: + file_size = ( + output_path.stat().st_size if output_path.exists() else 0 + ) + print( + f" ✅ {backend}: Success in {conversion_time:.2f}s, {file_size} bytes" + ) + results[backend] = { + "success": True, + "time": conversion_time, + "size": file_size, + "output": str(output_path), + } + else: + print(f" ❌ {backend}: Failed") + results[backend] = {"success": False, "time": conversion_time} + + except Exception as e: + print(f" ❌ {backend}: Error - {str(e)}") + results[backend] = {"success": False, "error": str(e)} + + # Summary + print("\n" + "-" * 40) + print("BACKEND COMPARISON SUMMARY") + print("-" * 40) + successful_backends = [b for b, r in results.items() if r.get("success", False)] + print(f"Successful backends: {successful_backends}") + + if successful_backends: + fastest = min(successful_backends, key=lambda b: results[b]["time"]) + print(f"Fastest backend: {fastest} ({results[fastest]['time']:.2f}s)") + + return results, temp_dir + + except Exception as e: + print(f"❌ Backend comparison demonstration failed: {str(e)}") + return None, None + + +def demonstrate_custom_styling(): + """Demonstrate custom CSS styling and configuration""" + print("\n" + "=" * 60) + print("CUSTOM STYLING DEMONSTRATION") + print("=" * 60) + + try: + samples = create_sample_markdown_content() + temp_dir = Path(tempfile.mkdtemp()) + + # Create custom CSS + custom_css = """ + body { + font-family: 'Times New Roman', serif; + font-size: 11pt; + line-height: 1.4; + color: #2c3e50; + max-width: 800px; + margin: 0 auto; + padding: 20px; + } + + h1 { + color: #c0392b; + font-size: 2.2em; + border-bottom: 3px solid #e74c3c; + padding-bottom: 0.5em; + margin-top: 2em; + } + + h2 { + color: #8e44ad; + font-size: 1.6em; + border-bottom: 2px solid #9b59b6; + padding-bottom: 0.3em; + margin-top: 1.5em; + } + + h3 { + color: #2980b9; + font-size: 1.3em; + margin-top: 1.2em; + } + + code { + background-color: #ecf0f1; + color: #e74c3c; + padding: 3px 6px; + border-radius: 4px; + font-family: 'Courier New', monospace; + font-size: 0.9em; + } + + pre { + background-color: #2c3e50; + color: #ecf0f1; + padding: 20px; + border-radius: 8px; + border-left: 5px solid #3498db; + overflow-x: auto; + font-size: 0.9em; + } + + pre code { + background-color: transparent; + color: inherit; + padding: 0; + } + + blockquote { + background-color: #f8f9fa; + border-left: 5px solid #3498db; + margin: 1em 0; + padding: 15px 20px; + font-style: italic; + color: #555; + } + + table { + border-collapse: collapse; + width: 100%; + margin: 1.5em 0; + background-color: white; + border-radius: 8px; + overflow: hidden; + box-shadow: 0 2px 4px rgba(0,0,0,0.1); + } + + th { + background-color: #3498db; + color: white; + padding: 12px 15px; + text-align: left; + font-weight: bold; + } + + td { + padding: 10px 15px; + border-bottom: 1px solid #ecf0f1; + } + + tr:nth-child(even) { + background-color: #f8f9fa; + } + + tr:hover { + background-color: #e8f4fd; + } + + ul, ol { + margin-bottom: 1em; + padding-left: 2em; + } + + li { + margin-bottom: 0.5em; + line-height: 1.6; + } + + a { + color: #3498db; + text-decoration: none; + border-bottom: 1px dotted #3498db; + } + + a:hover { + color: #2980b9; + border-bottom: 1px solid #2980b9; + } + + .toc { + background-color: #f8f9fa; + border: 2px solid #e9ecef; + border-radius: 8px; + padding: 20px; + margin: 2em 0; + } + + .toc h2 { + color: #2c3e50; + margin-top: 0; + border-bottom: none; + } + + .toc ul { + list-style-type: none; + padding-left: 0; + } + + .toc li { + margin-bottom: 0.8em; + } + + .toc a { + color: #2c3e50; + font-weight: 500; + border-bottom: none; + } + """ + + # Create custom configuration + config = MarkdownConfig( + page_size="A4", + margin="0.8in", + font_size="11pt", + line_height="1.4", + include_toc=True, + syntax_highlighting=True, + custom_css=custom_css, + ) + + converter = EnhancedMarkdownConverter(config) + + # Convert academic sample with custom styling + academic_md_path = temp_dir / "academic_styled.md" + with open(academic_md_path, "w", encoding="utf-8") as f: + f.write(samples["academic"]) + + print("Converting academic paper with custom styling...") + print("Custom styling features:") + print(" - Custom color scheme (reds, purples, blues)") + print(" - Times New Roman serif font") + print(" - Enhanced table styling with hover effects") + print(" - Styled code blocks with dark theme") + print(" - Custom blockquote styling") + print(" - Professional header styling") + + success = converter.convert_file_to_pdf( + input_path=str(academic_md_path), + output_path=str(temp_dir / "academic_styled.pdf"), + method="weasyprint", # WeasyPrint is best for custom CSS + ) + + if success: + print("✅ Custom styling conversion successful!") + print(f" Output: {temp_dir / 'academic_styled.pdf'}") + + # Also create a default version for comparison + default_converter = EnhancedMarkdownConverter() + default_success = default_converter.convert_file_to_pdf( + input_path=str(academic_md_path), + output_path=str(temp_dir / "academic_default.pdf"), + method="weasyprint", + ) + + if default_success: + print(f" Comparison (default): {temp_dir / 'academic_default.pdf'}") + else: + print("❌ Custom styling conversion failed") + + return success, temp_dir + + except Exception as e: + print(f"❌ Custom styling demonstration failed: {str(e)}") + return False, None + + +def demonstrate_content_conversion(): + """Demonstrate converting markdown content directly (not from file)""" + print("\n" + "=" * 60) + print("CONTENT CONVERSION DEMONSTRATION") + print("=" * 60) + + try: + # Create markdown content programmatically + dynamic_content = f"""# Dynamic Content Example + +## Generated Information +This document was generated programmatically on {Path(__file__).name}. + +## System Information +- **Python Path**: {sys.executable} +- **Script Location**: {Path(__file__).absolute()} +- **Working Directory**: {Path.cwd()} + +## Dynamic Table +| Property | Value | +|----------|-------| +| Script Name | {Path(__file__).name} | +| Python Version | {sys.version.split()[0]} | +| Platform | {sys.platform} | + +## Code Example +```python +# This content was generated dynamically +import sys +from pathlib import Path + +def generate_report(): + return f"Report generated from {{Path(__file__).name}}" + +print(generate_report()) +``` + +## Features Demonstrated +This example shows how to: +1. Generate markdown content programmatically +2. Convert content directly without saving to file first +3. Include dynamic information in documents +4. Use different conversion methods + +> **Note**: This content was created in memory and converted directly to PDF +> without intermediate file storage. + +## Conclusion +Direct content conversion is useful for: +- Dynamic report generation +- Programmatic document creation +- API-based document services +- Real-time content processing +""" + + temp_dir = Path(tempfile.mkdtemp()) + converter = EnhancedMarkdownConverter() + + print("Converting dynamically generated markdown content...") + print("Content includes:") + print(" - System information") + print(" - Dynamic tables with current values") + print(" - Generated timestamps") + print(" - Programmatic examples") + + # Convert content directly to PDF + output_path = temp_dir / "dynamic_content.pdf" + + success = converter.convert_markdown_to_pdf( + markdown_content=dynamic_content, + output_path=str(output_path), + method="auto", + ) + + if success: + print("✅ Content conversion successful!") + print(f" Output: {output_path}") + + # Show file size + file_size = output_path.stat().st_size + print(f" Generated PDF size: {file_size} bytes") + else: + print("❌ Content conversion failed") + + return success, temp_dir + + except Exception as e: + print(f"❌ Content conversion demonstration failed: {str(e)}") + return False, None + + +def demonstrate_error_handling(): + """Demonstrate error handling and fallback mechanisms""" + print("\n" + "=" * 60) + print("ERROR HANDLING DEMONSTRATION") + print("=" * 60) + + try: + temp_dir = Path(tempfile.mkdtemp()) + + # Test cases with various issues + test_cases = { + "invalid_markdown": """# Invalid Markdown + +This markdown has some {{invalid}} syntax and [broken links](http://nonexistent.invalid). + +```unknown_language +This code block uses an unknown language +``` + +![Missing Image](nonexistent_image.png) +""", + "complex_content": """# Complex Content Test + +## Mathematical Expressions +This tests content that might be challenging for some backends: + +$$ E = mc^2 $$ + +$$\\sum_{i=1}^{n} x_i = \\frac{n(n+1)}{2}$$ + +## Complex Tables +| A | B | C | D | E | F | G | +|---|---|---|---|---|---|---| +| Very long content that might wrap | Short | Medium length content | X | Y | Z | End | +| Another row with different lengths | A | B | C | D | E | F | + +## Special Characters +Unicode: α, β, γ, δ, ε, ζ, η, θ, ι, κ, λ, μ, ν, ξ, ο, π, ρ, σ, τ, υ, φ, χ, ψ, ω +Symbols: ♠ ♣ ♥ ♦ ☀ ☁ ☂ ☃ ☄ ★ ☆ ☉ ☊ ☋ ☌ ☍ ☎ ☏ +Arrows: ← ↑ → ↓ ↔ ↕ ↖ ↗ ↘ ↙ +""", + "empty_content": "", + "minimal_content": "# Just a title", + } + + print("Testing error handling with various content types...") + + results = {} + + for test_name, content in test_cases.items(): + print(f"\nTesting: {test_name}") + + try: + # Try multiple backends for each test case + for backend in ["auto", "weasyprint", "pandoc"]: + try: + converter = EnhancedMarkdownConverter() + output_path = temp_dir / f"{test_name}_{backend}.pdf" + + success = converter.convert_markdown_to_pdf( + markdown_content=content, + output_path=str(output_path), + method=backend, + ) + + if success: + file_size = ( + output_path.stat().st_size + if output_path.exists() + else 0 + ) + print(f" ✅ {backend}: Success ({file_size} bytes)") + results[f"{test_name}_{backend}"] = { + "success": True, + "size": file_size, + } + else: + print(f" ❌ {backend}: Failed") + results[f"{test_name}_{backend}"] = {"success": False} + + except Exception as e: + print(f" ❌ {backend}: Error - {str(e)[:60]}...") + results[f"{test_name}_{backend}"] = { + "success": False, + "error": str(e), + } + + except Exception as e: + print(f" ❌ Test case failed: {str(e)}") + + # Demonstrate robust conversion with fallbacks + print("\nDemonstrating robust conversion with fallback logic...") + + def robust_convert(content, output_path): + """Convert with multiple backend fallbacks""" + backends = ["weasyprint", "pandoc", "auto"] + + for backend in backends: + try: + converter = EnhancedMarkdownConverter() + success = converter.convert_markdown_to_pdf( + markdown_content=content, + output_path=output_path, + method=backend, + ) + if success: + return backend, True + except Exception: + continue + + return None, False + + # Test robust conversion + test_content = test_cases["complex_content"] + robust_output = temp_dir / "robust_conversion.pdf" + + successful_backend, success = robust_convert(test_content, str(robust_output)) + + if success: + print(f"✅ Robust conversion successful using {successful_backend}") + print(f" Output: {robust_output}") + else: + print("❌ All backends failed for robust conversion") + + # Summary + print("\n" + "-" * 40) + print("ERROR HANDLING SUMMARY") + print("-" * 40) + successful_conversions = sum( + 1 for r in results.values() if r.get("success", False) + ) + total_attempts = len(results) + success_rate = ( + (successful_conversions / total_attempts * 100) if total_attempts > 0 else 0 + ) + + print(f"Total conversion attempts: {total_attempts}") + print(f"Successful conversions: {successful_conversions}") + print(f"Success rate: {success_rate:.1f}%") + + return results, temp_dir + + except Exception as e: + print(f"❌ Error handling demonstration failed: {str(e)}") + return None, None + + +def main(): + """Main demonstration function""" + # Configure logging + logging.basicConfig( + level=logging.INFO, + format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", + ) + + print("RAG-Anything Enhanced Markdown Conversion Demonstration") + print("=" * 70) + print( + "This example demonstrates various enhanced markdown conversion capabilities:" + ) + print(" - Basic markdown to PDF conversion") + print(" - Multiple backend comparison (WeasyPrint vs Pandoc)") + print(" - Custom CSS styling and professional formatting") + print(" - Direct content conversion without file I/O") + print(" - Comprehensive error handling and fallback mechanisms") + + results = {} + + # Run demonstrations + print("\n🚀 Starting demonstrations...") + + # Basic conversion + success, temp_dir = demonstrate_basic_conversion() + results["basic"] = success + + # Backend comparison + backend_results, _ = demonstrate_backend_comparison() + results["backends"] = backend_results + + # Custom styling + styling_success, _ = demonstrate_custom_styling() + results["styling"] = styling_success + + # Content conversion + content_success, _ = demonstrate_content_conversion() + results["content"] = content_success + + # Error handling + error_results, _ = demonstrate_error_handling() + results["error_handling"] = error_results + + # Summary + print("\n" + "=" * 70) + print("DEMONSTRATION SUMMARY") + print("=" * 70) + + print("✅ Features Successfully Demonstrated:") + if results["basic"]: + print(" - Basic markdown to PDF conversion") + if results["backends"]: + successful_backends = [ + b for b, r in results["backends"].items() if r.get("success", False) + ] + print(f" - Multiple backends: {successful_backends}") + if results["styling"]: + print(" - Custom CSS styling and professional formatting") + if results["content"]: + print(" - Direct content conversion without file I/O") + if results["error_handling"]: + success_rate = ( + sum( + 1 for r in results["error_handling"].values() if r.get("success", False) + ) + / len(results["error_handling"]) + * 100 + ) + print(f" - Error handling with {success_rate:.1f}% overall success rate") + + print("\n📊 Key Capabilities Highlighted:") + print(" - Professional PDF generation with high-quality typography") + print(" - Multiple conversion backends with automatic selection") + print(" - Extensive CSS customization for branded documents") + print(" - Syntax highlighting for code blocks using Pygments") + print(" - Table formatting with professional styling") + print(" - Image embedding with proper scaling") + print(" - Table of contents generation with navigation") + print(" - Comprehensive error handling and fallback mechanisms") + + print("\n💡 Best Practices Demonstrated:") + print(" - Choose WeasyPrint for web-style documents and custom CSS") + print(" - Choose Pandoc for academic papers and complex formatting") + print(" - Use 'auto' method for general-purpose conversion") + print(" - Implement fallback logic for robust conversion") + print(" - Optimize images before embedding in documents") + print(" - Test custom CSS with simple content first") + print(" - Handle errors gracefully with multiple backend attempts") + print(" - Use appropriate page sizes and margins for target use case") + + print("\n🎯 Integration Patterns:") + print(" - Standalone conversion for document generation") + print(" - Integration with RAG-Anything document pipeline") + print(" - API-based document services") + print(" - Batch processing for multiple documents") + print(" - Dynamic content generation from templates") + + +if __name__ == "__main__": + main() diff --git a/examples/image_format_test.py b/examples/image_format_test.py new file mode 100644 index 0000000..5baf740 --- /dev/null +++ b/examples/image_format_test.py @@ -0,0 +1,234 @@ +#!/usr/bin/env python3 +""" +Image Format Parsing Test Script for RAG-Anything + +This script demonstrates how to parse various image formats +using MinerU, including JPG, PNG, BMP, TIFF, GIF, and WebP files. + +Requirements: +- PIL/Pillow library for format conversion +- RAG-Anything package + +Usage: + python image_format_test.py --file path/to/image.bmp +""" + +import argparse +import asyncio +import sys +from pathlib import Path +from raganything import RAGAnything + + +def check_pillow_installation(): + """Check if PIL/Pillow is installed and available""" + try: + from PIL import Image + + print( + f"✅ PIL/Pillow found: PIL version {Image.__version__ if hasattr(Image, '__version__') else 'Unknown'}" + ) + return True + except ImportError: + print("❌ PIL/Pillow not found. Please install Pillow:") + print(" pip install Pillow") + return False + + +def get_image_info(image_path: Path): + """Get detailed image information""" + try: + from PIL import Image + + with Image.open(image_path) as img: + return { + "format": img.format, + "mode": img.mode, + "size": img.size, + "has_transparency": img.mode in ("RGBA", "LA") + or "transparency" in img.info, + } + except Exception as e: + return {"error": str(e)} + + +async def test_image_format_parsing(file_path: str): + """Test image format parsing with MinerU""" + + print(f"🧪 Testing image format parsing: {file_path}") + + # Check if file exists and is a supported image format + file_path = Path(file_path) + if not file_path.exists(): + print(f"❌ File does not exist: {file_path}") + return False + + supported_extensions = { + ".jpg", + ".jpeg", + ".png", + ".bmp", + ".tiff", + ".tif", + ".gif", + ".webp", + } + if file_path.suffix.lower() not in supported_extensions: + print(f"❌ Unsupported file format: {file_path.suffix}") + print(f" Supported formats: {', '.join(supported_extensions)}") + return False + + print(f"📸 File format: {file_path.suffix.upper()}") + print(f"📏 File size: {file_path.stat().st_size / 1024:.1f} KB") + + # Get detailed image information + img_info = get_image_info(file_path) + if "error" not in img_info: + print("🖼️ Image info:") + print(f" • Format: {img_info['format']}") + print(f" • Mode: {img_info['mode']}") + print(f" • Size: {img_info['size'][0]}x{img_info['size'][1]}") + print(f" • Has transparency: {img_info['has_transparency']}") + + # Check format compatibility with MinerU + mineru_native_formats = {".jpg", ".jpeg", ".png"} + needs_conversion = file_path.suffix.lower() not in mineru_native_formats + + if needs_conversion: + print( + f"ℹ️ Format {file_path.suffix.upper()} will be converted to PNG for MinerU compatibility" + ) + else: + print(f"✅ Format {file_path.suffix.upper()} is natively supported by MinerU") + + # Initialize RAGAnything (only for parsing functionality) + rag = RAGAnything() + + try: + # Test image parsing with MinerU + print("\n🔄 Testing image parsing with MinerU...") + content_list, md_content = await rag.parse_document( + file_path=str(file_path), + output_dir="./test_output", + parse_method="ocr", # Images use OCR method + display_stats=True, + ) + + print("✅ Parsing successful!") + print(f" 📊 Content blocks: {len(content_list)}") + print(f" 📝 Markdown length: {len(md_content)} characters") + + # Analyze content types + content_types = {} + for item in content_list: + if isinstance(item, dict): + content_type = item.get("type", "unknown") + content_types[content_type] = content_types.get(content_type, 0) + 1 + + if content_types: + print(" 📋 Content distribution:") + for content_type, count in sorted(content_types.items()): + print(f" • {content_type}: {count}") + + # Display extracted text (if any) + if md_content.strip(): + print("\n📄 Extracted text preview (first 500 characters):") + preview = md_content.strip()[:500] + print(f" {preview}{'...' if len(md_content) > 500 else ''}") + else: + print("\n📄 No text extracted from the image") + + # Display image processing results + image_items = [ + item + for item in content_list + if isinstance(item, dict) and item.get("type") == "image" + ] + if image_items: + print(f"\n🖼️ Found {len(image_items)} processed image(s):") + for i, item in enumerate(image_items, 1): + print(f" {i}. Image path: {item.get('img_path', 'N/A')}") + caption = item.get("image_caption", item.get("img_caption", [])) + if caption: + print(f" Caption: {caption[0] if caption else 'N/A'}") + + # Display text blocks (OCR results) + text_items = [ + item + for item in content_list + if isinstance(item, dict) and item.get("type") == "text" + ] + if text_items: + print("\n📝 OCR text blocks found:") + for i, item in enumerate(text_items, 1): + text_content = item.get("text", "") + if text_content.strip(): + preview = text_content.strip()[:200] + print( + f" {i}. {preview}{'...' if len(text_content) > 200 else ''}" + ) + + # Check for any tables detected in the image + table_items = [ + item + for item in content_list + if isinstance(item, dict) and item.get("type") == "table" + ] + if table_items: + print(f"\n📊 Found {len(table_items)} table(s) in image:") + for i, item in enumerate(table_items, 1): + print(f" {i}. Table detected with content") + + print("\n🎉 Image format parsing test completed successfully!") + print("📁 Output files saved to: ./test_output") + return True + + except Exception as e: + print(f"\n❌ Image format parsing failed: {str(e)}") + import traceback + + print(f" Full error: {traceback.format_exc()}") + return False + + +def main(): + """Main function""" + parser = argparse.ArgumentParser( + description="Test image format parsing with MinerU" + ) + parser.add_argument("--file", help="Path to the image file to test") + parser.add_argument( + "--check-pillow", action="store_true", help="Only check PIL/Pillow installation" + ) + + args = parser.parse_args() + + # Check PIL/Pillow installation + print("🔧 Checking PIL/Pillow installation...") + if not check_pillow_installation(): + return 1 + + if args.check_pillow: + print("✅ PIL/Pillow installation check passed!") + return 0 + + # If not just checking dependencies, file argument is required + if not args.file: + print("❌ Error: --file argument is required when not using --check-pillow") + parser.print_help() + return 1 + + # Run the parsing test + try: + success = asyncio.run(test_image_format_parsing(args.file)) + return 0 if success else 1 + except KeyboardInterrupt: + print("\n⏹️ Test interrupted by user") + return 1 + except Exception as e: + print(f"\n❌ Unexpected error: {str(e)}") + return 1 + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/examples/insert_content_list_example.py b/examples/insert_content_list_example.py new file mode 100644 index 0000000..a7b22c3 --- /dev/null +++ b/examples/insert_content_list_example.py @@ -0,0 +1,440 @@ +#!/usr/bin/env python +""" +Example script demonstrating direct content list insertion with RAGAnything + +This example shows how to: +1. Create a simple content list with different content types +2. Insert content list directly without document parsing using insert_content_list() method +3. Perform pure text queries using aquery() method +4. Perform multimodal queries with specific multimodal content using aquery_with_multimodal() method +5. Handle different types of multimodal content in the inserted knowledge base +""" + +import os +import argparse +import asyncio +import logging +import logging.config +from functools import partial +from pathlib import Path + +# Add project root directory to Python path +import sys + +sys.path.append(str(Path(__file__).parent.parent)) + +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc, logger, set_verbose_debug +from raganything import RAGAnything, RAGAnythingConfig + +from dotenv import load_dotenv + +load_dotenv(dotenv_path=".env", override=False) + + +def configure_logging(): + """Configure logging for the application""" + # Get log directory path from environment variable or use current directory + log_dir = os.getenv("LOG_DIR", os.getcwd()) + log_file_path = os.path.abspath( + os.path.join(log_dir, "insert_content_list_example.log") + ) + + print(f"\nInsert Content List example log file: {log_file_path}\n") + os.makedirs(os.path.dirname(log_dir), exist_ok=True) + + # Get log file max size and backup count from environment variables + log_max_bytes = int(os.getenv("LOG_MAX_BYTES", 10485760)) # Default 10MB + log_backup_count = int(os.getenv("LOG_BACKUP_COUNT", 5)) # Default 5 backups + + logging.config.dictConfig( + { + "version": 1, + "disable_existing_loggers": False, + "formatters": { + "default": { + "format": "%(levelname)s: %(message)s", + }, + "detailed": { + "format": "%(asctime)s - %(name)s - %(levelname)s - %(message)s", + }, + }, + "handlers": { + "console": { + "formatter": "default", + "class": "logging.StreamHandler", + "stream": "ext://sys.stderr", + }, + "file": { + "formatter": "detailed", + "class": "logging.handlers.RotatingFileHandler", + "filename": log_file_path, + "maxBytes": log_max_bytes, + "backupCount": log_backup_count, + "encoding": "utf-8", + }, + }, + "loggers": { + "lightrag": { + "handlers": ["console", "file"], + "level": "INFO", + "propagate": False, + }, + }, + } + ) + + # Set the logger level to INFO + logger.setLevel(logging.INFO) + # Enable verbose debug if needed + set_verbose_debug(os.getenv("VERBOSE", "false").lower() == "true") + + +def create_sample_content_list(): + """ + Create a simple content list for testing insert_content_list functionality + + Returns: + List[Dict]: Sample content list with various content types + + Note: + - img_path should be absolute path to the image file + - page_idx represents the page number where the content appears (0-based) + """ + content_list = [ + # Introduction text + { + "type": "text", + "text": "Welcome to the RAGAnything System Documentation. This guide covers the advanced multimodal document processing capabilities and features of our comprehensive RAG system.", + "page_idx": 0, # Page number where this content appears + }, + # System architecture image + { + "type": "image", + "img_path": "/absolute/path/to/system_architecture.jpg", # IMPORTANT: Use absolute path to image file + "image_caption": ["Figure 1: RAGAnything System Architecture"], + "image_footnote": [ + "The architecture shows the complete pipeline from document parsing to multimodal query processing" + ], + "page_idx": 1, # Page number where this image appears + }, + # Performance comparison table + { + "type": "table", + "table_body": """| System | Accuracy | Processing Speed | Memory Usage | + |--------|----------|------------------|--------------| + | RAGAnything | 95.2% | 120ms | 2.1GB | + | Traditional RAG | 87.3% | 180ms | 3.2GB | + | Baseline System | 82.1% | 220ms | 4.1GB | + | Simple Retrieval | 76.5% | 95ms | 1.8GB |""", + "table_caption": [ + "Table 1: Performance Comparison of Different RAG Systems" + ], + "table_footnote": [ + "All tests conducted on the same hardware with identical test datasets" + ], + "page_idx": 2, # Page number where this table appears + }, + # Mathematical formula + { + "type": "equation", + "latex": "Relevance(d, q) = \\sum_{i=1}^{n} w_i \\cdot sim(t_i^d, t_i^q) \\cdot \\alpha_i", + "text": "Document relevance scoring formula where w_i are term weights, sim() is similarity function, and α_i are modality importance factors", + "page_idx": 3, # Page number where this equation appears + }, + # Feature description + { + "type": "text", + "text": "The system supports multiple content modalities including text, images, tables, and mathematical equations. Each modality is processed using specialized processors optimized for that content type.", + "page_idx": 4, # Page number where this content appears + }, + # Technical specifications table + { + "type": "table", + "table_body": """| Feature | Specification | + |---------|---------------| + | Supported Formats | PDF, DOCX, PPTX, XLSX, Images | + | Max Document Size | 100MB | + | Concurrent Processing | Up to 8 documents | + | Query Response Time | <200ms average | + | Knowledge Graph Nodes | Up to 1M entities |""", + "table_caption": ["Table 2: Technical Specifications"], + "table_footnote": [ + "Specifications may vary based on hardware configuration" + ], + "page_idx": 5, # Page number where this table appears + }, + # Conclusion + { + "type": "text", + "text": "RAGAnything represents a significant advancement in multimodal document processing, providing comprehensive solutions for complex knowledge extraction and retrieval tasks.", + "page_idx": 6, # Page number where this content appears + }, + ] + + return content_list + + +async def demo_insert_content_list( + api_key: str, + base_url: str = None, + working_dir: str = None, +): + """ + Demonstrate content list insertion and querying with RAGAnything + + Args: + api_key: OpenAI API key + base_url: Optional base URL for API + working_dir: Working directory for RAG storage + """ + try: + # Create RAGAnything configuration + config = RAGAnythingConfig( + working_dir=working_dir or "./rag_storage", + enable_image_processing=True, + enable_table_processing=True, + enable_equation_processing=True, + display_content_stats=True, # Show content statistics + ) + + # Define LLM model function + def llm_model_func(prompt, system_prompt=None, history_messages=[], **kwargs): + return openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + + # Define vision model function for image processing + def vision_model_func( + prompt, + system_prompt=None, + history_messages=[], + image_data=None, + messages=None, + **kwargs, + ): + # If pre-built messages are provided (VLM enhanced query path), use them directly + if messages: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + elif image_data: + return openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} + if system_prompt + else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{image_data}" + }, + }, + ], + } + if image_data + else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + else: + return llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + # Define embedding function - using environment variables for configuration + embedding_dim = int(os.getenv("EMBEDDING_DIM", "3072")) + embedding_model = os.getenv("EMBEDDING_MODEL", "text-embedding-3-large") + + embedding_func = EmbeddingFunc( + embedding_dim=embedding_dim, + max_token_size=8192, + func=partial( + openai_embed.func, + model=embedding_model, + api_key=api_key, + base_url=base_url, + ), + ) + + # Initialize RAGAnything + rag = RAGAnything( + config=config, + llm_model_func=llm_model_func, + vision_model_func=vision_model_func, + embedding_func=embedding_func, + ) + + # Create sample content list + logger.info("Creating sample content list...") + content_list = create_sample_content_list() + logger.info(f"Created content list with {len(content_list)} items") + + # Insert content list directly + logger.info("\nInserting content list into RAGAnything...") + await rag.insert_content_list( + content_list=content_list, + file_path="raganything_documentation.pdf", # Reference file name for citation + split_by_character=None, # Optional text splitting + split_by_character_only=False, # Optional text splitting mode + doc_id="demo-doc-001", # Custom document ID + display_stats=True, # Show content statistics + ) + logger.info("Content list insertion completed!") + + # Example queries - demonstrating different query approaches + logger.info("\nQuerying inserted content:") + + # 1. Pure text queries using aquery() + text_queries = [ + "What is RAGAnything and what are its main features?", + "How does RAGAnything compare to traditional RAG systems?", + "What are the technical specifications of the system?", + ] + + for query in text_queries: + logger.info(f"\n[Text Query]: {query}") + result = await rag.aquery(query, mode="hybrid") + logger.info(f"Answer: {result}") + + # 2. Multimodal query with specific multimodal content using aquery_with_multimodal() + logger.info( + "\n[Multimodal Query]: Analyzing new performance data against existing benchmarks" + ) + multimodal_result = await rag.aquery_with_multimodal( + "Compare this new performance data with the existing benchmark results in the documentation", + multimodal_content=[ + { + "type": "table", + "table_data": """Method,Accuracy,Speed,Memory + New_Approach,97.1%,110ms,1.9GB + Enhanced_RAG,91.4%,140ms,2.5GB""", + "table_caption": "Latest experimental results", + } + ], + mode="hybrid", + ) + logger.info(f"Answer: {multimodal_result}") + + # 3. Another multimodal query with equation content + logger.info("\n[Multimodal Query]: Mathematical formula analysis") + equation_result = await rag.aquery_with_multimodal( + "How does this similarity formula relate to the relevance scoring mentioned in the documentation?", + multimodal_content=[ + { + "type": "equation", + "latex": "sim(a, b) = \\frac{a \\cdot b}{||a|| \\times ||b||} + \\beta \\cdot context\\_weight", + "equation_caption": "Enhanced cosine similarity with context weighting", + } + ], + mode="hybrid", + ) + logger.info(f"Answer: {equation_result}") + + # 4. Insert another content list with different document ID + logger.info("\nInserting additional content list...") + additional_content = [ + { + "type": "text", + "text": "This is additional documentation about advanced features and configuration options.", + "page_idx": 0, # Page number where this content appears + }, + { + "type": "table", + "table_body": """| Configuration | Default Value | Range | + |---------------|---------------|-------| + | Chunk Size | 512 tokens | 128-2048 | + | Context Window | 4096 tokens | 1024-8192 | + | Batch Size | 32 | 1-128 |""", + "table_caption": ["Advanced Configuration Parameters"], + "page_idx": 1, # Page number where this table appears + }, + ] + + await rag.insert_content_list( + content_list=additional_content, + file_path="advanced_configuration.pdf", + doc_id="demo-doc-002", # Different document ID + ) + + # Query combined knowledge base + logger.info("\n[Combined Query]: What configuration options are available?") + combined_result = await rag.aquery( + "What configuration options are available and what are their default values?", + mode="hybrid", + ) + logger.info(f"Answer: {combined_result}") + + except Exception as e: + logger.error(f"Error in content list insertion demo: {str(e)}") + import traceback + + logger.error(traceback.format_exc()) + + +def main(): + """Main function to run the example""" + parser = argparse.ArgumentParser(description="Insert Content List Example") + parser.add_argument( + "--working_dir", "-w", default="./rag_storage", help="Working directory path" + ) + parser.add_argument( + "--api-key", + default=os.getenv("LLM_BINDING_API_KEY"), + help="OpenAI API key (defaults to LLM_BINDING_API_KEY env var)", + ) + parser.add_argument( + "--base-url", + default=os.getenv("LLM_BINDING_HOST"), + help="Optional base URL for API", + ) + + args = parser.parse_args() + + # Check if API key is provided + if not args.api_key: + logger.error("Error: OpenAI API key is required") + logger.error("Set api key environment variable or use --api-key option") + return + + # Run the demo + asyncio.run( + demo_insert_content_list( + args.api_key, + args.base_url, + args.working_dir, + ) + ) + + +if __name__ == "__main__": + # Configure logging first + configure_logging() + + print("RAGAnything Insert Content List Example") + print("=" * 45) + print("Demonstrating direct content list insertion without document parsing") + print("=" * 45) + + main() diff --git a/examples/lmstudio_integration_example.py b/examples/lmstudio_integration_example.py new file mode 100644 index 0000000..68777fd --- /dev/null +++ b/examples/lmstudio_integration_example.py @@ -0,0 +1,334 @@ +""" +LM Studio Integration Example with RAG-Anything + +This example demonstrates how to integrate LM Studio with RAG-Anything for local +text document processing and querying. + +Requirements: +- LM Studio running locally with server enabled +- OpenAI Python package: pip install openai +- RAG-Anything installed: pip install raganything + +Environment Setup: +Create a .env file with: +LLM_BINDING=lmstudio +LLM_MODEL=openai/gpt-oss-20b +LLM_BINDING_HOST=http://localhost:1234/v1 +LLM_BINDING_API_KEY=lm-studio +EMBEDDING_BINDING=lmstudio +EMBEDDING_MODEL=text-embedding-nomic-embed-text-v1.5 +EMBEDDING_BINDING_HOST=http://localhost:1234/v1 +EMBEDDING_BINDING_API_KEY=lm-studio +""" + +import os +import uuid +import asyncio +from typing import List, Dict, Optional +from dotenv import load_dotenv +from openai import AsyncOpenAI + +# Load environment variables +load_dotenv() + +# RAG-Anything imports +from raganything import RAGAnything, RAGAnythingConfig +from lightrag.utils import EmbeddingFunc +from lightrag.llm.openai import openai_complete_if_cache + +LM_BASE_URL = os.getenv("LLM_BINDING_HOST", "http://localhost:1234/v1") +LM_API_KEY = os.getenv("LLM_BINDING_API_KEY", "lm-studio") +LM_MODEL_NAME = os.getenv("LLM_MODEL", "openai/gpt-oss-20b") +LM_EMBED_MODEL = os.getenv("EMBEDDING_MODEL", "text-embedding-nomic-embed-text-v1.5") + + +async def lmstudio_llm_model_func( + prompt: str, + system_prompt: Optional[str] = None, + history_messages: List[Dict] = None, + **kwargs, +) -> str: + """Top-level LLM function for LightRAG (pickle-safe).""" + return await openai_complete_if_cache( + model=LM_MODEL_NAME, + prompt=prompt, + system_prompt=system_prompt, + history_messages=history_messages or [], + base_url=LM_BASE_URL, + api_key=LM_API_KEY, + **kwargs, + ) + + +async def lmstudio_embedding_async(texts: List[str]) -> List[List[float]]: + """Top-level embedding function for LightRAG (pickle-safe).""" + from lightrag.llm.openai import openai_embed + + embeddings = await openai_embed( + texts=texts, + model=LM_EMBED_MODEL, + base_url=LM_BASE_URL, + api_key=LM_API_KEY, + ) + return embeddings.tolist() + + +class LMStudioRAGIntegration: + """Integration class for LM Studio with RAG-Anything.""" + + def __init__(self): + # LM Studio configuration using standard LLM_BINDING variables + self.base_url = os.getenv("LLM_BINDING_HOST", "http://localhost:1234/v1") + self.api_key = os.getenv("LLM_BINDING_API_KEY", "lm-studio") + self.model_name = os.getenv("LLM_MODEL", "openai/gpt-oss-20b") + self.embedding_model = os.getenv( + "EMBEDDING_MODEL", "text-embedding-nomic-embed-text-v1.5" + ) + + # RAG-Anything configuration + # Use a fresh working directory each run to avoid legacy doc_status schema conflicts + self.config = RAGAnythingConfig( + working_dir=f"./rag_storage_lmstudio/{uuid.uuid4()}", + parser="mineru", + parse_method="auto", + enable_image_processing=False, + enable_table_processing=True, + enable_equation_processing=True, + ) + print(f"📁 Using working_dir: {self.config.working_dir}") + + self.rag = None + + async def test_connection(self) -> bool: + """Test LM Studio connection.""" + try: + print(f"🔌 Testing LM Studio connection at: {self.base_url}") + client = AsyncOpenAI(base_url=self.base_url, api_key=self.api_key) + models = await client.models.list() + print(f"✅ Connected successfully! Found {len(models.data)} models") + + # Show available models + print("📊 Available models:") + for i, model in enumerate(models.data[:5]): + marker = "🎯" if model.id == self.model_name else " " + print(f"{marker} {i+1}. {model.id}") + + if len(models.data) > 5: + print(f" ... and {len(models.data) - 5} more models") + + return True + except Exception as e: + print(f"❌ Connection failed: {str(e)}") + print("\n💡 Troubleshooting tips:") + print("1. Ensure LM Studio is running") + print("2. Start the local server in LM Studio") + print("3. Load a model or enable just-in-time loading") + print(f"4. Verify server address: {self.base_url}") + return False + finally: + try: + await client.close() + except Exception: + pass + + async def test_chat_completion(self) -> bool: + """Test basic chat functionality.""" + try: + print(f"💬 Testing chat with model: {self.model_name}") + client = AsyncOpenAI(base_url=self.base_url, api_key=self.api_key) + response = await client.chat.completions.create( + model=self.model_name, + messages=[ + {"role": "system", "content": "You are a helpful AI assistant."}, + { + "role": "user", + "content": "Hello! Please confirm you're working and tell me your capabilities.", + }, + ], + max_tokens=100, + temperature=0.7, + ) + + result = response.choices[0].message.content.strip() + print("✅ Chat test successful!") + print(f"Response: {result}") + return True + except Exception as e: + print(f"❌ Chat test failed: {str(e)}") + return False + finally: + try: + await client.close() + except Exception: + pass + + # Deprecated factory helpers removed to reduce redundancy + + def embedding_func_factory(self): + """Create a completely serializable embedding function.""" + return EmbeddingFunc( + embedding_dim=768, # nomic-embed-text-v1.5 default dimension + max_token_size=8192, # nomic-embed-text-v1.5 context length + func=lmstudio_embedding_async, + ) + + async def initialize_rag(self): + """Initialize RAG-Anything with LM Studio functions.""" + print("Initializing RAG-Anything with LM Studio...") + + try: + self.rag = RAGAnything( + config=self.config, + llm_model_func=lmstudio_llm_model_func, + embedding_func=self.embedding_func_factory(), + ) + + # Compatibility: avoid writing unknown field 'multimodal_processed' to LightRAG doc_status + # Older LightRAG versions may not accept this extra field in DocProcessingStatus + async def _noop_mark_multimodal(doc_id: str): + return None + + self.rag._mark_multimodal_processing_complete = _noop_mark_multimodal + + print("✅ RAG-Anything initialized successfully!") + return True + except Exception as e: + print(f"❌ RAG initialization failed: {str(e)}") + return False + + async def process_document_example(self, file_path: str): + """Example: Process a document with LM Studio backend.""" + if not self.rag: + print("❌ RAG not initialized. Call initialize_rag() first.") + return + + try: + print(f"📄 Processing document: {file_path}") + await self.rag.process_document_complete( + file_path=file_path, + output_dir="./output_lmstudio", + parse_method="auto", + display_stats=True, + ) + print("✅ Document processing completed!") + except Exception as e: + print(f"❌ Document processing failed: {str(e)}") + + async def query_examples(self): + """Example queries with different modes.""" + if not self.rag: + print("❌ RAG not initialized. Call initialize_rag() first.") + return + + # Example queries + queries = [ + ("What are the main topics in the processed documents?", "hybrid"), + ("Summarize any tables or data found in the documents", "local"), + ("What images or figures are mentioned?", "global"), + ] + + print("\n🔍 Running example queries...") + for query, mode in queries: + try: + print(f"\nQuery ({mode}): {query}") + result = await self.rag.aquery(query, mode=mode) + print(f"Answer: {result[:200]}...") + except Exception as e: + print(f"❌ Query failed: {str(e)}") + + async def simple_query_example(self): + """Example basic text query with sample content.""" + if not self.rag: + print("❌ RAG not initialized") + return + + try: + print("\nAdding sample content for testing...") + + # Create content list in the format expected by RAGAnything + content_list = [ + { + "type": "text", + "text": """LM Studio Integration with RAG-Anything + +This integration demonstrates how to connect LM Studio's local AI models with RAG-Anything's document processing capabilities. The system uses: + +- LM Studio for local LLM inference +- nomic-embed-text-v1.5 for embeddings (768 dimensions) +- RAG-Anything for document processing and retrieval + +Key benefits include: +- Privacy: All processing happens locally +- Performance: Direct API access to local models +- Flexibility: Support for various document formats +- Cost-effective: No external API usage""", + "page_idx": 0, + } + ] + + # Insert the content list using the correct method + await self.rag.insert_content_list( + content_list=content_list, + file_path="lmstudio_integration_demo.txt", + # Use a unique doc_id to avoid collisions and doc_status reuse across runs + doc_id=f"demo-content-{uuid.uuid4()}", + display_stats=True, + ) + print("✅ Sample content added to knowledge base") + + print("\nTesting basic text query...") + + # Simple text query example + result = await self.rag.aquery( + "What are the key benefits of this LM Studio integration?", + mode="hybrid", + ) + print(f"✅ Query result: {result[:300]}...") + + except Exception as e: + print(f"❌ Query failed: {str(e)}") + + +async def main(): + """Main example function.""" + print("=" * 70) + print("LM Studio + RAG-Anything Integration Example") + print("=" * 70) + + # Initialize integration + integration = LMStudioRAGIntegration() + + # Test connection + if not await integration.test_connection(): + return False + + print() + if not await integration.test_chat_completion(): + return False + + # Initialize RAG + print("\n" + "─" * 50) + if not await integration.initialize_rag(): + return False + + # Example document processing (uncomment and provide a real file path) + # await integration.process_document_example("path/to/your/document.pdf") + + # Example queries (uncomment after processing documents) + # await integration.query_examples() + + # Example basic query + await integration.simple_query_example() + + print("\n" + "=" * 70) + print("Integration example completed successfully!") + print("=" * 70) + + return True + + +if __name__ == "__main__": + print("🚀 Starting LM Studio integration example...") + success = asyncio.run(main()) + + exit(0 if success else 1) diff --git a/examples/minimax_integration_example.py b/examples/minimax_integration_example.py new file mode 100644 index 0000000..d6ed6f7 --- /dev/null +++ b/examples/minimax_integration_example.py @@ -0,0 +1,323 @@ +""" +MiniMax Integration Example with RAG-Anything + +This example demonstrates how to integrate MiniMax with RAG-Anything for +cloud-based text document processing and querying using MiniMax's +OpenAI-compatible API. + +MiniMax provides high-quality language models accessible via an API that is +fully compatible with the OpenAI chat completions protocol. + +Requirements: +- RAG-Anything installed: pip install raganything +- A MiniMax API key (https://www.minimaxi.com/) +- An embedding service (OpenAI, Ollama, or any OpenAI-compatible endpoint) + Note: MiniMax does not provide an embedding model, so a separate embedding + service is required. + +Environment Setup: +Create a .env file with: +MINIMAX_API_KEY=your-minimax-api-key + +# For embeddings, use any OpenAI-compatible service, e.g.: +EMBEDDING_BINDING_HOST=https://api.openai.com/v1 +EMBEDDING_BINDING_API_KEY=your-openai-api-key +EMBEDDING_MODEL=text-embedding-3-small +EMBEDDING_DIM=1536 + +Quick start: + export MINIMAX_API_KEY=your-api-key + python examples/minimax_integration_example.py + +API Reference: +- Chat (OpenAI Compatible): https://platform.minimax.io/docs/api-reference/text-openai-api +""" + +import os +import uuid +import asyncio +import inspect +from typing import Dict, List, Optional + +from dotenv import load_dotenv + +# RAG-Anything imports +from raganything import RAGAnything, RAGAnythingConfig +from lightrag.utils import EmbeddingFunc +from lightrag.llm.openai import openai_complete_if_cache, openai_embed + +# Load environment variables +load_dotenv() + +# MiniMax configuration +MINIMAX_BASE_URL = os.getenv("MINIMAX_BASE_URL", "https://api.minimax.io/v1") +MINIMAX_API_KEY = os.getenv("MINIMAX_API_KEY", "") +MINIMAX_LLM_MODEL = os.getenv("MINIMAX_LLM_MODEL", "MiniMax-M3") + +# Embedding configuration (MiniMax does not provide an embedding model; +# configure a separate embedding service below) +EMBEDDING_BASE_URL = os.getenv("EMBEDDING_BINDING_HOST", "https://api.openai.com/v1") +EMBEDDING_API_KEY = os.getenv( + "EMBEDDING_BINDING_API_KEY", os.getenv("OPENAI_API_KEY", "") +) +EMBEDDING_MODEL = os.getenv("EMBEDDING_MODEL", "text-embedding-3-small") +EMBEDDING_DIM = int(os.getenv("EMBEDDING_DIM", "1536")) + + +def _require_minimax_api_key() -> str: + """Return the MiniMax API key or fail before LightRAG falls back to OpenAI.""" + if not MINIMAX_API_KEY: + raise ValueError( + "MINIMAX_API_KEY is required for MiniMax. " + "Set it with: export MINIMAX_API_KEY=your-api-key" + ) + return MINIMAX_API_KEY + + +def _normalize_minimax_temperature(value): + """MiniMax accepts temperatures in (0.0, 1.0]; use 1.0 for invalid values.""" + if value is None: + return 1.0 + try: + if value <= 0 or value > 1: + return 1.0 + except TypeError: + return 1.0 + return value + + +async def minimax_llm_model_func( + prompt: str, + system_prompt: Optional[str] = None, + history_messages: List[Dict] = None, + **kwargs, +) -> str: + """Top-level LLM function using MiniMax's OpenAI-compatible endpoint. + + MiniMax temperature must be in (0.0, 1.0]; defaults to 1.0. + """ + # Ensure temperature is within MiniMax's accepted range (0.0, 1.0] + kwargs["temperature"] = _normalize_minimax_temperature(kwargs.get("temperature")) + kwargs.setdefault("temperature", 1.0) + + return await openai_complete_if_cache( + model=MINIMAX_LLM_MODEL, + prompt=prompt, + system_prompt=system_prompt, + history_messages=history_messages or [], + base_url=MINIMAX_BASE_URL, + api_key=_require_minimax_api_key(), + **kwargs, + ) + + +async def embedding_func_async(texts: List[str]) -> List[List[float]]: + """Top-level embedding function (pickle-safe). + + Uses a separate OpenAI-compatible embedding service since MiniMax + does not provide an embedding model. + """ + embeddings = await openai_embed( + texts=texts, + model=EMBEDDING_MODEL, + base_url=EMBEDDING_BASE_URL, + api_key=EMBEDDING_API_KEY, + ) + return embeddings.tolist() + + +class MiniMaxRAGIntegration: + """Integration class for MiniMax with RAG-Anything.""" + + def __init__(self): + self.base_url = MINIMAX_BASE_URL + self.api_key = MINIMAX_API_KEY + self.model_name = MINIMAX_LLM_MODEL + + # RAG-Anything configuration + self.config = RAGAnythingConfig( + working_dir=f"./rag_storage_minimax/{uuid.uuid4()}", + parser="mineru", + parse_method="auto", + enable_image_processing=False, + enable_table_processing=True, + enable_equation_processing=True, + ) + print(f"📁 Using working_dir: {self.config.working_dir}") + + self.rag = None + + async def test_connection(self) -> bool: + """Best-effort MiniMax API key and endpoint check.""" + if not self.api_key: + print("❌ MINIMAX_API_KEY is not set") + print(" Set it with: export MINIMAX_API_KEY=your-api-key") + return False + + try: + from openai import AsyncOpenAI + + print(f"🔌 Testing MiniMax endpoint at: {self.base_url}") + client = AsyncOpenAI(base_url=self.base_url, api_key=self.api_key) + try: + models = await client.models.list() + except Exception as model_error: + print( + "⚠️ Could not list MiniMax models; continuing because many " + f"OpenAI-compatible providers do not expose /v1/models: {model_error}" + ) + else: + available = [m.id for m in models.data] + print(f"✅ Model endpoint returned {len(available)} model(s)") + for model_id in available[:5]: + marker = "🎯" if model_id == self.model_name else " " + print(f"{marker} {model_id}") + if len(available) > 5: + print(f" ... and {len(available) - 5} more") + finally: + close = getattr(client, "close", None) or getattr( + client, "aclose", None + ) + if close: + close_result = close() + if inspect.isawaitable(close_result): + await close_result + + print( + "✅ MiniMax API key is configured; chat completion will verify access." + ) + return True + except Exception as e: + print(f"❌ Connection failed: {e}") + print("💡 Check your MINIMAX_API_KEY and network access to api.minimax.io") + return False + + async def test_chat_completion(self) -> bool: + """Test a basic chat completion with MiniMax.""" + try: + print(f"💬 Testing chat with model: {self.model_name}") + result = await minimax_llm_model_func( + "Say 'RAG-Anything MiniMax integration test passed' in one sentence." + ) + print("✅ Chat test successful!") + print(f" Response: {result.strip()[:120]}") + return True + except Exception as e: + print(f"❌ Chat test failed: {e}") + return False + + def _make_embedding_func(self) -> EmbeddingFunc: + return EmbeddingFunc( + embedding_dim=EMBEDDING_DIM, + max_token_size=8192, + func=embedding_func_async, + ) + + async def initialize_rag(self) -> bool: + """Initialize RAG-Anything with MiniMax as the LLM backend.""" + print("\nInitializing RAG-Anything with MiniMax ...") + try: + self.rag = RAGAnything( + config=self.config, + llm_model_func=minimax_llm_model_func, + embedding_func=self._make_embedding_func(), + ) + print("✅ RAG-Anything initialized successfully!") + return True + except Exception as e: + print(f"❌ Initialization failed: {e}") + return False + + async def process_document(self, file_path: str): + """Process a document using MiniMax as the LLM backend.""" + if not self.rag: + print("❌ Call initialize_rag() first") + return + + print(f"📄 Processing document: {file_path}") + await self.rag.process_document_complete( + file_path=file_path, + output_dir="./output_minimax", + parse_method="auto", + display_stats=True, + ) + print("✅ Document processing complete") + + async def simple_query_example(self): + """Insert sample text and run a demonstration query.""" + if not self.rag: + print("❌ Call initialize_rag() first") + return + + content_list = [ + { + "type": "text", + "text": ( + "MiniMax Integration with RAG-Anything\n\n" + "This integration connects MiniMax's powerful language models " + "with RAG-Anything's multimodal document processing pipeline.\n\n" + "Key features:\n" + "- MiniMax-M3: The latest flagship model and current default.\n" + "- MiniMax-M2.7: Previous generation, available as alternative.\n" + "- MiniMax-M2.7-highspeed: Same as M2.7, faster and more agile.\n" + "- OpenAI-compatible API — no SDK changes required.\n" + "- Supports text, table, and equation modalities.\n\n" + "Configuration:\n" + " MINIMAX_API_KEY=your-api-key\n" + " MINIMAX_BASE_URL=https://api.minimax.io/v1 (default)\n" + " MINIMAX_LLM_MODEL=MiniMax-M3 (default)\n" + ), + "page_idx": 0, + } + ] + + print("\nInserting sample content ...") + await self.rag.insert_content_list( + content_list=content_list, + file_path="minimax_integration_demo.txt", + doc_id=f"demo-{uuid.uuid4()}", + display_stats=True, + ) + print("✅ Content inserted") + + print("\n🔍 Running sample query ...") + result = await self.rag.aquery( + "What MiniMax models are available and what are their characteristics?", + mode="hybrid", + ) + print(f"Answer: {result[:400]}") + + +async def main(): + print("=" * 70) + print("MiniMax + RAG-Anything Integration Example") + print("=" * 70) + + integration = MiniMaxRAGIntegration() + + if not await integration.test_connection(): + return False + + print() + if not await integration.test_chat_completion(): + return False + + print("\n" + "─" * 50) + if not await integration.initialize_rag(): + return False + + # Uncomment to process a real document: + # await integration.process_document("path/to/your/document.pdf") + + await integration.simple_query_example() + + print("\n" + "=" * 70) + print("Integration example completed successfully!") + print("=" * 70) + return True + + +if __name__ == "__main__": + print("🚀 Starting MiniMax integration example ...") + success = asyncio.run(main()) + exit(0 if success else 1) diff --git a/examples/modalprocessors_example.py b/examples/modalprocessors_example.py new file mode 100644 index 0000000..cb82107 --- /dev/null +++ b/examples/modalprocessors_example.py @@ -0,0 +1,236 @@ +""" +Example of directly using modal processors + +This example demonstrates how to use RAG-Anything's modal processors directly without going through MinerU. +""" + +import asyncio +import argparse +from functools import partial +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc +from lightrag.kg.shared_storage import initialize_pipeline_status +from lightrag import LightRAG +from raganything.modalprocessors import ( + ImageModalProcessor, + TableModalProcessor, + EquationModalProcessor, +) + +WORKING_DIR = "./rag_storage" + + +def get_llm_model_func(api_key: str, base_url: str = None): + return ( + lambda prompt, + system_prompt=None, + history_messages=[], + **kwargs: openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + ) + + +def get_vision_model_func(api_key: str, base_url: str = None): + return ( + lambda prompt, + system_prompt=None, + history_messages=[], + image_data=None, + **kwargs: openai_complete_if_cache( + "gpt-4o", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} if system_prompt else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{image_data}" + }, + }, + ], + } + if image_data + else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + if image_data + else openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + ) + + +async def process_image_example(lightrag: LightRAG, vision_model_func): + """Example of processing an image""" + # Create image processor + image_processor = ImageModalProcessor( + lightrag=lightrag, modal_caption_func=vision_model_func + ) + + # Prepare image content + image_content = { + "img_path": "image.jpg", + "image_caption": ["Example image caption"], + "image_footnote": ["Example image footnote"], + } + + # Process image + (description, entity_info, _) = await image_processor.process_multimodal_content( + modal_content=image_content, + content_type="image", + file_path="image_example.jpg", + entity_name="Example Image", + ) + + print("Image Processing Results:") + print(f"Description: {description}") + print(f"Entity Info: {entity_info}") + + +async def process_table_example(lightrag: LightRAG, llm_model_func): + """Example of processing a table""" + # Create table processor + table_processor = TableModalProcessor( + lightrag=lightrag, modal_caption_func=llm_model_func + ) + + # Prepare table content + table_content = { + "table_body": """ + | Name | Age | Occupation | + |------|-----|------------| + | John | 25 | Engineer | + | Mary | 30 | Designer | + """, + "table_caption": ["Employee Information Table"], + "table_footnote": ["Data updated as of 2024"], + } + + # Process table + (description, entity_info, _) = await table_processor.process_multimodal_content( + modal_content=table_content, + content_type="table", + file_path="table_example.md", + entity_name="Employee Table", + ) + + print("\nTable Processing Results:") + print(f"Description: {description}") + print(f"Entity Info: {entity_info}") + + +async def process_equation_example(lightrag: LightRAG, llm_model_func): + """Example of processing a mathematical equation""" + # Create equation processor + equation_processor = EquationModalProcessor( + lightrag=lightrag, modal_caption_func=llm_model_func + ) + + # Prepare equation content + equation_content = {"text": "E = mc^2", "text_format": "LaTeX"} + + # Process equation + (description, entity_info, _) = await equation_processor.process_multimodal_content( + modal_content=equation_content, + content_type="equation", + file_path="equation_example.txt", + entity_name="Mass-Energy Equivalence", + ) + + print("\nEquation Processing Results:") + print(f"Description: {description}") + print(f"Entity Info: {entity_info}") + + +async def initialize_rag(api_key: str, base_url: str = None): + # Use environment variables for embedding configuration + import os + + embedding_dim = int(os.getenv("EMBEDDING_DIM", "3072")) + embedding_model = os.getenv("EMBEDDING_MODEL", "text-embedding-3-large") + + rag = LightRAG( + working_dir=WORKING_DIR, + embedding_func=EmbeddingFunc( + embedding_dim=embedding_dim, + max_token_size=8192, + func=partial( + openai_embed.func, + model=embedding_model, + api_key=api_key, + base_url=base_url, + ), + ), + llm_model_func=lambda prompt, + system_prompt=None, + history_messages=[], + **kwargs: openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ), + ) + + await rag.initialize_storages() + await initialize_pipeline_status() + + return rag + + +def main(): + """Main function to run the example""" + parser = argparse.ArgumentParser(description="Modal Processors Example") + parser.add_argument("--api-key", required=True, help="OpenAI API key") + parser.add_argument("--base-url", help="Optional base URL for API") + parser.add_argument( + "--working-dir", "-w", default=WORKING_DIR, help="Working directory path" + ) + + args = parser.parse_args() + + # Run examples + asyncio.run(main_async(args.api_key, args.base_url)) + + +async def main_async(api_key: str, base_url: str = None): + # Initialize LightRAG + lightrag = await initialize_rag(api_key, base_url) + + # Get model functions + llm_model_func = get_llm_model_func(api_key, base_url) + vision_model_func = get_vision_model_func(api_key, base_url) + + # Run examples + await process_image_example(lightrag, vision_model_func) + await process_table_example(lightrag, llm_model_func) + await process_equation_example(lightrag, llm_model_func) + + +if __name__ == "__main__": + main() diff --git a/examples/office_document_test.py b/examples/office_document_test.py new file mode 100644 index 0000000..3b83502 --- /dev/null +++ b/examples/office_document_test.py @@ -0,0 +1,201 @@ +#!/usr/bin/env python3 +""" +Office Document Parsing Test Script for RAG-Anything + +This script demonstrates how to parse various Office document formats +using MinerU, including DOC, DOCX, PPT, PPTX, XLS, and XLSX files. + +Requirements: +- LibreOffice installed on the system +- RAG-Anything package + +Usage: + python office_document_test.py --file path/to/office/document.docx +""" + +import argparse +import asyncio +import sys +from pathlib import Path +from raganything import RAGAnything +from raganything.parser import Parser + + +def check_libreoffice_installation(): + """Check if LibreOffice is installed and available""" + import subprocess + + for cmd in Parser._libreoffice_command_candidates(): + try: + result = subprocess.run( + [cmd, "--version"], capture_output=True, check=True, timeout=10 + ) + print(f"✅ LibreOffice found: {result.stdout.decode().strip()}") + return True + except ( + subprocess.CalledProcessError, + FileNotFoundError, + subprocess.TimeoutExpired, + ): + continue + + print("❌ LibreOffice not found. Please install LibreOffice:") + print(" - Windows: Download from https://www.libreoffice.org/download/download/") + print(" - macOS: brew install --cask libreoffice") + print(" - Ubuntu/Debian: sudo apt-get install libreoffice") + print(" - CentOS/RHEL: sudo yum install libreoffice") + return False + + +async def test_office_document_parsing(file_path: str): + """Test Office document parsing with MinerU""" + + print(f"🧪 Testing Office document parsing: {file_path}") + + # Check if file exists and is a supported Office format + file_path = Path(file_path) + if not file_path.exists(): + print(f"❌ File does not exist: {file_path}") + return False + + supported_extensions = {".doc", ".docx", ".ppt", ".pptx", ".xls", ".xlsx"} + if file_path.suffix.lower() not in supported_extensions: + print(f"❌ Unsupported file format: {file_path.suffix}") + print(f" Supported formats: {', '.join(supported_extensions)}") + return False + + print(f"📄 File format: {file_path.suffix.upper()}") + print(f"📏 File size: {file_path.stat().st_size / 1024:.1f} KB") + + # Initialize RAGAnything (only for parsing functionality) + rag = RAGAnything() + + try: + # Test document parsing with MinerU + print("\n🔄 Testing document parsing with MinerU...") + content_list, md_content = await rag.parse_document( + file_path=str(file_path), + output_dir="./test_output", + parse_method="auto", + display_stats=True, + ) + + print("✅ Parsing successful!") + print(f" 📊 Content blocks: {len(content_list)}") + print(f" 📝 Markdown length: {len(md_content)} characters") + + # Analyze content types + content_types = {} + for item in content_list: + if isinstance(item, dict): + content_type = item.get("type", "unknown") + content_types[content_type] = content_types.get(content_type, 0) + 1 + + if content_types: + print(" 📋 Content distribution:") + for content_type, count in sorted(content_types.items()): + print(f" • {content_type}: {count}") + + # Display some parsed content preview + if md_content.strip(): + print("\n📄 Parsed content preview (first 500 characters):") + preview = md_content.strip()[:500] + print(f" {preview}{'...' if len(md_content) > 500 else ''}") + + # Display some structured content examples + text_items = [ + item + for item in content_list + if isinstance(item, dict) and item.get("type") == "text" + ] + if text_items: + print("\n📝 Sample text blocks:") + for i, item in enumerate(text_items[:3], 1): + text_content = item.get("text", "") + if text_content.strip(): + preview = text_content.strip()[:200] + print( + f" {i}. {preview}{'...' if len(text_content) > 200 else ''}" + ) + + # Check for images + image_items = [ + item + for item in content_list + if isinstance(item, dict) and item.get("type") == "image" + ] + if image_items: + print(f"\n🖼️ Found {len(image_items)} image(s):") + for i, item in enumerate(image_items, 1): + print(f" {i}. Image path: {item.get('img_path', 'N/A')}") + + # Check for tables + table_items = [ + item + for item in content_list + if isinstance(item, dict) and item.get("type") == "table" + ] + if table_items: + print(f"\n📊 Found {len(table_items)} table(s):") + for i, item in enumerate(table_items, 1): + table_body = item.get("table_body", "") + row_count = len(table_body.split("\n")) + print(f" {i}. Table with {row_count} rows") + + print("\n🎉 Office document parsing test completed successfully!") + print("📁 Output files saved to: ./test_output") + return True + + except Exception as e: + print(f"\n❌ Office document parsing failed: {str(e)}") + import traceback + + print(f" Full error: {traceback.format_exc()}") + return False + + +def main(): + """Main function""" + parser = argparse.ArgumentParser( + description="Test Office document parsing with MinerU" + ) + parser.add_argument("--file", help="Path to the Office document to test") + parser.add_argument( + "--check-libreoffice", + action="store_true", + help="Only check LibreOffice installation", + ) + + args = parser.parse_args() + + # Check LibreOffice installation + print("🔧 Checking LibreOffice installation...") + if not check_libreoffice_installation(): + return 1 + + if args.check_libreoffice: + print("✅ LibreOffice installation check passed!") + return 0 + + # If not just checking dependencies, file argument is required + if not args.file: + print( + "❌ Error: --file argument is required when not using --check-libreoffice" + ) + parser.print_help() + return 1 + + # Run the parsing test + try: + success = asyncio.run(test_office_document_parsing(args.file)) + return 0 if success else 1 + except KeyboardInterrupt: + print("\n⏹️ Test interrupted by user") + return 1 + except Exception as e: + print(f"\n❌ Unexpected error: {str(e)}") + return 1 + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/examples/ollama_integration_example.py b/examples/ollama_integration_example.py new file mode 100644 index 0000000..be80222 --- /dev/null +++ b/examples/ollama_integration_example.py @@ -0,0 +1,282 @@ +""" +Ollama Integration Example with RAG-Anything + +This example demonstrates how to integrate Ollama with RAG-Anything for fully +local text document processing and querying. + +Ollama uses a different embedding API (/api/embed) compared to the OpenAI- +compatible /v1/embeddings endpoint, so you cannot simply point the standard +openai_embed helper at an Ollama host. This example wires up both the LLM +and the embedding function using the ``ollama`` Python library directly. + +Requirements: +- Ollama running locally: https://ollama.com/ +- ollama Python package: pip install ollama +- RAG-Anything installed: pip install raganything + +Quick start: + ollama pull llama3.2 # or any chat model you prefer + ollama pull nomic-embed-text # embedding model (768-dim) + python examples/ollama_integration_example.py + +Environment Setup (optional — defaults shown below): +Create a .env file with: +OLLAMA_HOST=http://localhost:11434 +OLLAMA_LLM_MODEL=llama3.2 +OLLAMA_EMBEDDING_MODEL=nomic-embed-text +OLLAMA_EMBEDDING_DIM=768 +""" + +import asyncio +import os +import uuid +from typing import Dict, List, Optional + +from dotenv import load_dotenv + +load_dotenv() + +# RAG-Anything imports +from raganything import RAGAnything, RAGAnythingConfig +from lightrag.utils import EmbeddingFunc +from lightrag.llm.openai import openai_complete_if_cache + +OLLAMA_HOST = os.getenv("OLLAMA_HOST", "http://localhost:11434") +OLLAMA_LLM_MODEL = os.getenv("OLLAMA_LLM_MODEL", "llama3.2") +OLLAMA_EMBEDDING_MODEL = os.getenv("OLLAMA_EMBEDDING_MODEL", "nomic-embed-text") +OLLAMA_EMBEDDING_DIM = int(os.getenv("OLLAMA_EMBEDDING_DIM", "768")) + +# Ollama exposes an OpenAI-compatible chat endpoint at /v1 — reuse the +# existing helper for the LLM side. +OLLAMA_BASE_URL = f"{OLLAMA_HOST}/v1" +OLLAMA_API_KEY = "ollama" # Ollama ignores the key but the client requires one + + +async def ollama_llm_model_func( + prompt: str, + system_prompt: Optional[str] = None, + history_messages: List[Dict] = None, + **kwargs, +) -> str: + """Top-level LLM function using Ollama's OpenAI-compatible endpoint.""" + return await openai_complete_if_cache( + model=OLLAMA_LLM_MODEL, + prompt=prompt, + system_prompt=system_prompt, + history_messages=history_messages or [], + base_url=OLLAMA_BASE_URL, + api_key=OLLAMA_API_KEY, + **kwargs, + ) + + +async def ollama_embedding_async(texts: List[str]) -> List[List[float]]: + """Top-level embedding function using the native Ollama embed API. + + Unlike the OpenAI-compatible /v1/embeddings endpoint (which Ollama does + not implement for all models), this calls /api/embed via the ``ollama`` + Python client so it works with any model pulled from the Ollama registry. + """ + import ollama + + client = ollama.AsyncClient(host=OLLAMA_HOST) + response = await client.embed(model=OLLAMA_EMBEDDING_MODEL, input=texts) + return response.embeddings + + +class OllamaRAGIntegration: + """Integration class for Ollama with RAG-Anything.""" + + def __init__(self): + self.host = OLLAMA_HOST + self.llm_model = OLLAMA_LLM_MODEL + self.embedding_model = OLLAMA_EMBEDDING_MODEL + self.embedding_dim = OLLAMA_EMBEDDING_DIM + + self.config = RAGAnythingConfig( + working_dir=f"./rag_storage_ollama/{uuid.uuid4()}", + parser="mineru", + parse_method="auto", + enable_image_processing=False, + enable_table_processing=True, + enable_equation_processing=True, + ) + print(f"📁 Using working_dir: {self.config.working_dir}") + + self.rag = None + + async def test_connection(self) -> bool: + """Verify that Ollama is reachable and the required models are available.""" + try: + import ollama + + print(f"🔌 Connecting to Ollama at: {self.host}") + client = ollama.AsyncClient(host=self.host) + models_response = await client.list() + available = [m.model for m in models_response.models] + + print(f"✅ Connected! {len(available)} model(s) available") + + for required in (self.llm_model, self.embedding_model): + # Ollama tags may include ':latest' suffix — check prefix match + found = any(m.startswith(required.split(":")[0]) for m in available) + marker = "✅" if found else "⚠️ " + print(f" {marker} {required}") + if not found: + print(f" Run: ollama pull {required}") + + return True + except ImportError: + print("❌ ollama package not installed — run: pip install ollama") + return False + except Exception as e: + print(f"❌ Connection failed: {e}") + print(" Is Ollama running? Try: ollama serve") + return False + + async def test_embedding(self) -> bool: + """Quick sanity-check for the embedding function.""" + try: + print(f"🔢 Testing embedding model: {self.embedding_model}") + vectors = await ollama_embedding_async(["hello world"]) + if vectors and len(vectors[0]) > 0: + print( + f"✅ Embedding OK — dim={len(vectors[0])} " + f"(configured: {self.embedding_dim})" + ) + if len(vectors[0]) != self.embedding_dim: + print( + f" ⚠️ Dimension mismatch! Set " + f"OLLAMA_EMBEDDING_DIM={len(vectors[0])} in your .env" + ) + return True + print("❌ Embedding returned empty vector") + return False + except Exception as e: + print(f"❌ Embedding test failed: {e}") + return False + + async def test_chat(self) -> bool: + """Quick sanity-check for the LLM function.""" + try: + print(f"💬 Testing LLM model: {self.llm_model}") + result = await ollama_llm_model_func("Say 'OK' in one word.") + print(f"✅ Chat OK — response: {result.strip()[:80]}") + return True + except Exception as e: + print(f"❌ Chat test failed: {e}") + return False + + def _make_embedding_func(self) -> EmbeddingFunc: + return EmbeddingFunc( + embedding_dim=self.embedding_dim, + max_token_size=8192, + func=ollama_embedding_async, + ) + + async def initialize_rag(self) -> bool: + """Initialize RAG-Anything with Ollama backends.""" + print("\nInitializing RAG-Anything with Ollama …") + try: + self.rag = RAGAnything( + config=self.config, + llm_model_func=ollama_llm_model_func, + embedding_func=self._make_embedding_func(), + ) + print("✅ RAG-Anything initialized") + return True + except Exception as e: + print(f"❌ Initialization failed: {e}") + return False + + async def process_document(self, file_path: str): + """Process a document with Ollama as the backend.""" + if not self.rag: + print("❌ Call initialize_rag() first") + return + print(f"📄 Processing: {file_path}") + await self.rag.process_document_complete( + file_path=file_path, + output_dir="./output_ollama", + parse_method="auto", + display_stats=True, + ) + print("✅ Processing complete") + + async def simple_query_example(self): + """Insert sample text and run a demonstration query.""" + if not self.rag: + print("❌ Call initialize_rag() first") + return + + content_list = [ + { + "type": "text", + "text": ( + "Ollama Integration with RAG-Anything\n\n" + "This integration lets you run a fully local RAG pipeline:\n" + "- Ollama serves the LLM via an OpenAI-compatible /v1 endpoint\n" + "- Ollama serves embeddings via its native /api/embed endpoint\n" + "- RAG-Anything handles document parsing and knowledge-graph construction\n\n" + "Popular embedding models: nomic-embed-text (768-dim), " + "mxbai-embed-large (1024-dim), all-minilm (384-dim)\n" + "Popular chat models: llama3.2, mistral, gemma3, phi4" + ), + "page_idx": 0, + } + ] + + print("\nInserting sample content …") + await self.rag.insert_content_list( + content_list=content_list, + file_path="ollama_integration_demo.txt", + doc_id=f"demo-{uuid.uuid4()}", + display_stats=True, + ) + print("✅ Content inserted") + + print("\n🔍 Running sample query …") + result = await self.rag.aquery( + "What embedding models are recommended for Ollama?", + mode="hybrid", + ) + print(f"Answer: {result[:400]}") + + +async def main(): + print("=" * 70) + print("Ollama + RAG-Anything Integration Example") + print("=" * 70) + + integration = OllamaRAGIntegration() + + if not await integration.test_connection(): + return False + + print() + if not await integration.test_embedding(): + return False + + print() + if not await integration.test_chat(): + return False + + print("\n" + "─" * 50) + if not await integration.initialize_rag(): + return False + + # Uncomment to process a real document: + # await integration.process_document("path/to/your/document.pdf") + + await integration.simple_query_example() + + print("\n" + "=" * 70) + print("Example completed successfully!") + print("=" * 70) + return True + + +if __name__ == "__main__": + print("🚀 Starting Ollama integration example …") + success = asyncio.run(main()) + exit(0 if success else 1) diff --git a/examples/raganything_example.py b/examples/raganything_example.py new file mode 100644 index 0000000..eb192cb --- /dev/null +++ b/examples/raganything_example.py @@ -0,0 +1,339 @@ +#!/usr/bin/env python +""" +Example script demonstrating parser integration with RAGAnything + +This example shows how to: +1. Process documents with RAGAnything using configurable parsers +2. Perform pure text queries using aquery() method +3. Perform multimodal queries with specific multimodal content using aquery_with_multimodal() method +4. Handle different types of multimodal content (tables, equations) in queries +""" + +import os +import argparse +import asyncio +import logging +import logging.config +from functools import partial +from pathlib import Path + +# Add project root directory to Python path +import sys + +sys.path.append(str(Path(__file__).parent.parent)) + +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc, logger, set_verbose_debug +from raganything import RAGAnything, RAGAnythingConfig + +from dotenv import load_dotenv + +load_dotenv(dotenv_path=".env", override=False) + + +def configure_logging(): + """Configure logging for the application""" + # Get log directory path from environment variable or use current directory + log_dir = os.getenv("LOG_DIR", os.getcwd()) + log_file_path = os.path.abspath(os.path.join(log_dir, "raganything_example.log")) + + print(f"\nRAGAnything example log file: {log_file_path}\n") + os.makedirs(os.path.dirname(log_file_path) or ".", exist_ok=True) + + # Get log file max size and backup count from environment variables + log_max_bytes = int(os.getenv("LOG_MAX_BYTES", 10485760)) # Default 10MB + log_backup_count = int(os.getenv("LOG_BACKUP_COUNT", 5)) # Default 5 backups + + logging.config.dictConfig( + { + "version": 1, + "disable_existing_loggers": False, + "formatters": { + "default": { + "format": "%(levelname)s: %(message)s", + }, + "detailed": { + "format": "%(asctime)s - %(name)s - %(levelname)s - %(message)s", + }, + }, + "handlers": { + "console": { + "formatter": "default", + "class": "logging.StreamHandler", + "stream": "ext://sys.stderr", + }, + "file": { + "formatter": "detailed", + "class": "logging.handlers.RotatingFileHandler", + "filename": log_file_path, + "maxBytes": log_max_bytes, + "backupCount": log_backup_count, + "encoding": "utf-8", + }, + }, + "loggers": { + "lightrag": { + "handlers": ["console", "file"], + "level": "INFO", + "propagate": False, + }, + }, + } + ) + + # Set the logger level to INFO + logger.setLevel(logging.INFO) + # Enable verbose debug if needed + set_verbose_debug(os.getenv("VERBOSE", "false").lower() == "true") + + +async def process_with_rag( + file_path: str, + output_dir: str, + api_key: str, + base_url: str = None, + working_dir: str = None, + parser: str = None, +): + """ + Process document with RAGAnything + + Args: + file_path: Path to the document + output_dir: Output directory for RAG results + api_key: OpenAI API key + base_url: Optional base URL for API + working_dir: Working directory for RAG storage + """ + try: + # Create RAGAnything configuration + config = RAGAnythingConfig( + working_dir=working_dir or "./rag_storage", + parser=parser, # Parser selection: mineru, docling, or paddleocr + parse_method="auto", # Parse method: auto, ocr, or txt + enable_image_processing=True, + enable_table_processing=True, + enable_equation_processing=True, + ) + + # Define LLM model function + llm_model = os.getenv("LLM_MODEL", "gpt-4o-mini") + vision_model = os.getenv("VISION_MODEL", "gpt-4o") + + def llm_model_func(prompt, system_prompt=None, history_messages=[], **kwargs): + return openai_complete_if_cache( + llm_model, + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + + # Define vision model function for image processing + def vision_model_func( + prompt, + system_prompt=None, + history_messages=[], + image_data=None, + messages=None, + **kwargs, + ): + # If messages format is provided (for multimodal VLM enhanced query), use it directly + if messages: + return openai_complete_if_cache( + vision_model, + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Traditional single image format + elif image_data: + return openai_complete_if_cache( + vision_model, + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} + if system_prompt + else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{image_data}" + }, + }, + ], + } + if image_data + else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Pure text format + else: + return llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + # Define embedding function - using environment variables for configuration + embedding_dim = int(os.getenv("EMBEDDING_DIM", "3072")) + embedding_model = os.getenv("EMBEDDING_MODEL", "text-embedding-3-large") + + embedding_func = EmbeddingFunc( + embedding_dim=embedding_dim, + max_token_size=8192, + func=partial( + openai_embed.func, + model=embedding_model, + api_key=api_key, + base_url=base_url, + ), + ) + + # Initialize RAGAnything with new dataclass structure + rag = RAGAnything( + config=config, + llm_model_func=llm_model_func, + vision_model_func=vision_model_func, + embedding_func=embedding_func, + ) + + # Process document + await rag.process_document_complete( + file_path=file_path, output_dir=output_dir, parse_method="auto" + ) + + # Example queries - demonstrating different query approaches + logger.info("\nQuerying processed document:") + + # 1. Pure text queries using aquery() + text_queries = [ + "What is the main content of the document?", + "What are the key topics discussed?", + ] + + for query in text_queries: + logger.info(f"\n[Text Query]: {query}") + result = await rag.aquery(query, mode="hybrid") + logger.info(f"Answer: {result}") + + # 2. Multimodal query with specific multimodal content using aquery_with_multimodal() + logger.info( + "\n[Multimodal Query]: Analyzing performance data in context of document" + ) + multimodal_result = await rag.aquery_with_multimodal( + "Compare this performance data with any similar results mentioned in the document", + multimodal_content=[ + { + "type": "table", + "table_data": """Method,Accuracy,Processing_Time + RAGAnything,95.2%,120ms + Traditional_RAG,87.3%,180ms + Baseline,82.1%,200ms""", + "table_caption": "Performance comparison results", + } + ], + mode="hybrid", + ) + logger.info(f"Answer: {multimodal_result}") + + # 3. Another multimodal query with equation content + logger.info("\n[Multimodal Query]: Mathematical formula analysis") + equation_result = await rag.aquery_with_multimodal( + "Explain this formula and relate it to any mathematical concepts in the document", + multimodal_content=[ + { + "type": "equation", + "latex": "F1 = 2 \\cdot \\frac{precision \\cdot recall}{precision + recall}", + "equation_caption": "F1-score calculation formula", + } + ], + mode="hybrid", + ) + logger.info(f"Answer: {equation_result}") + + except Exception as e: + logger.error(f"Error processing with RAG: {str(e)}") + import traceback + + logger.error(traceback.format_exc()) + + +def main(): + """Main function to run the example""" + parser = argparse.ArgumentParser(description="MinerU RAG Example") + parser.add_argument("file_path", help="Path to the document to process") + parser.add_argument( + "--working_dir", "-w", default="./rag_storage", help="Working directory path" + ) + parser.add_argument( + "--output", "-o", default="./output", help="Output directory path" + ) + parser.add_argument( + "--api-key", + default=os.getenv("LLM_BINDING_API_KEY"), + help="OpenAI API key (defaults to LLM_BINDING_API_KEY env var)", + ) + parser.add_argument( + "--base-url", + default=os.getenv("LLM_BINDING_HOST"), + help="Optional base URL for API", + ) + parser.add_argument( + "--parser", + default=os.getenv("PARSER", "mineru"), + help=( + "Parser selection. Built-ins: mineru, docling, paddleocr. " + "Custom parsers that you register via register_parser() in the " + "same Python process are also accepted when using RAGAnything as " + "a library. This example script does not perform any automatic " + "plugin discovery." + ), + ) + + args = parser.parse_args() + + # Check if API key is provided + if not args.api_key: + logger.error("Error: OpenAI API key is required") + logger.error("Set api key environment variable or use --api-key option") + return + + # Create output directory if specified + if args.output: + os.makedirs(args.output, exist_ok=True) + + # Process with RAG + asyncio.run( + process_with_rag( + args.file_path, + args.output, + args.api_key, + args.base_url, + args.working_dir, + args.parser, + ) + ) + + +if __name__ == "__main__": + # Configure logging first + configure_logging() + + print("RAGAnything Example") + print("=" * 30) + print("Processing document with multimodal RAG pipeline") + print("=" * 30) + + main() diff --git a/examples/text_format_test.py b/examples/text_format_test.py new file mode 100644 index 0000000..f0a49a3 --- /dev/null +++ b/examples/text_format_test.py @@ -0,0 +1,198 @@ +#!/usr/bin/env python3 +""" +Text Format Parsing Test Script for RAG-Anything + +This script demonstrates how to parse various text formats +using MinerU, including TXT and MD files. + +Requirements: +- ReportLab library for PDF conversion +- RAG-Anything package + +Usage: + python text_format_test.py --file path/to/text/document.md +""" + +import argparse +import asyncio +import sys +from pathlib import Path +from raganything import RAGAnything + + +def check_reportlab_installation(): + """Check if ReportLab is installed and available""" + try: + import reportlab + + print( + f"✅ ReportLab found: version {reportlab.Version if hasattr(reportlab, 'Version') else 'Unknown'}" + ) + return True + except ImportError: + print("❌ ReportLab not found. Please install ReportLab:") + print(" pip install reportlab") + return False + + +async def test_text_format_parsing(file_path: str): + """Test text format parsing with MinerU""" + + print(f"🧪 Testing text format parsing: {file_path}") + + # Check if file exists and is a supported text format + file_path = Path(file_path) + if not file_path.exists(): + print(f"❌ File does not exist: {file_path}") + return False + + supported_extensions = {".txt", ".md"} + if file_path.suffix.lower() not in supported_extensions: + print(f"❌ Unsupported file format: {file_path.suffix}") + print(f" Supported formats: {', '.join(supported_extensions)}") + return False + + print(f"📄 File format: {file_path.suffix.upper()}") + print(f"📏 File size: {file_path.stat().st_size / 1024:.1f} KB") + + # Display text file info + try: + with open(file_path, "r", encoding="utf-8") as f: + content = f.read() + print(f"📝 Text length: {len(content)} characters") + print(f"📋 Line count: {len(content.splitlines())}") + except UnicodeDecodeError: + print( + "⚠️ Text encoding: Non-UTF-8 (will try multiple encodings during processing)" + ) + + # Initialize RAGAnything (only for parsing functionality) + rag = RAGAnything() + + try: + # Test text parsing with MinerU + print("\n🔄 Testing text parsing with MinerU...") + content_list, md_content = await rag.parse_document( + file_path=str(file_path), + output_dir="./test_output", + parse_method="auto", + display_stats=True, + ) + + print("✅ Parsing successful!") + print(f" 📊 Content blocks: {len(content_list)}") + print(f" 📝 Markdown length: {len(md_content)} characters") + + # Analyze content types + content_types = {} + for item in content_list: + if isinstance(item, dict): + content_type = item.get("type", "unknown") + content_types[content_type] = content_types.get(content_type, 0) + 1 + + if content_types: + print(" 📋 Content distribution:") + for content_type, count in sorted(content_types.items()): + print(f" • {content_type}: {count}") + + # Display extracted text (if any) + if md_content.strip(): + print("\n📄 Extracted text preview (first 500 characters):") + preview = md_content.strip()[:500] + print(f" {preview}{'...' if len(md_content) > 500 else ''}") + else: + print("\n📄 No text extracted from the document") + + # Display text blocks + text_items = [ + item + for item in content_list + if isinstance(item, dict) and item.get("type") == "text" + ] + if text_items: + print("\n📝 Text blocks found:") + for i, item in enumerate(text_items[:3], 1): + text_content = item.get("text", "") + if text_content.strip(): + preview = text_content.strip()[:200] + print( + f" {i}. {preview}{'...' if len(text_content) > 200 else ''}" + ) + + # Check for any tables detected in the text + table_items = [ + item + for item in content_list + if isinstance(item, dict) and item.get("type") == "table" + ] + if table_items: + print(f"\n📊 Found {len(table_items)} table(s) in document:") + for i, item in enumerate(table_items, 1): + table_body = item.get("table_body", "") + row_count = len(table_body.split("\n")) + print(f" {i}. Table with {row_count} rows") + + # Check for images (unlikely in text files but possible in MD) + image_items = [ + item + for item in content_list + if isinstance(item, dict) and item.get("type") == "image" + ] + if image_items: + print(f"\n🖼️ Found {len(image_items)} image(s):") + for i, item in enumerate(image_items, 1): + print(f" {i}. Image path: {item.get('img_path', 'N/A')}") + + print("\n🎉 Text format parsing test completed successfully!") + print("📁 Output files saved to: ./test_output") + return True + + except Exception as e: + print(f"\n❌ Text format parsing failed: {str(e)}") + import traceback + + print(f" Full error: {traceback.format_exc()}") + return False + + +def main(): + """Main function""" + parser = argparse.ArgumentParser(description="Test text format parsing with MinerU") + parser.add_argument("--file", help="Path to the text file to test") + parser.add_argument( + "--check-reportlab", + action="store_true", + help="Only check ReportLab installation", + ) + + args = parser.parse_args() + + # Check ReportLab installation + print("🔧 Checking ReportLab installation...") + if not check_reportlab_installation(): + return 1 + + if args.check_reportlab: + print("✅ ReportLab installation check passed!") + return 0 + + # If not just checking dependencies, file argument is required + if not args.file: + print("❌ Error: --file argument is required when not using --check-reportlab") + parser.print_help() + return 1 + + # Run the parsing test + try: + success = asyncio.run(test_text_format_parsing(args.file)) + return 0 if success else 1 + except KeyboardInterrupt: + print("\n⏹️ Test interrupted by user") + return 1 + except Exception as e: + print(f"\n❌ Unexpected error: {str(e)}") + return 1 + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/examples/vllm_integration_example.py b/examples/vllm_integration_example.py new file mode 100644 index 0000000..d5ad1c3 --- /dev/null +++ b/examples/vllm_integration_example.py @@ -0,0 +1,356 @@ +""" +vLLM Integration Example with RAG-Anything + +This example demonstrates how to integrate vLLM with RAG-Anything for +high-throughput document processing and querying using locally or remotely +served models. + +vLLM provides an OpenAI-compatible API server with continuous batching, +PagedAttention, and optimized inference — ideal for production RAG workloads. + +Requirements: +- vLLM serving a model (see: https://docs.vllm.ai/en/latest/serving/openai_compatible_server.html) +- OpenAI Python package: pip install openai +- RAG-Anything installed: pip install raganything + +Start vLLM (example): + # Chat / completion model + vllm serve Qwen/Qwen2.5-72B-Instruct --tensor-parallel-size 4 + + # Embedding model (separate process, different port) + vllm serve BAAI/bge-m3 --task embedding --port 8001 + +Environment Setup: +Create a .env file with: +LLM_BINDING=vllm +LLM_MODEL=Qwen/Qwen2.5-72B-Instruct +LLM_BINDING_HOST=http://localhost:8000/v1 +LLM_BINDING_API_KEY=token-abc123 +EMBEDDING_BINDING=vllm +EMBEDDING_MODEL=BAAI/bge-m3 +EMBEDDING_BINDING_HOST=http://localhost:8001/v1 +EMBEDDING_BINDING_API_KEY=token-abc123 +""" + +import os +import uuid +import asyncio +from typing import List, Dict, Optional +from dotenv import load_dotenv +from openai import AsyncOpenAI + +# Load environment variables +load_dotenv() + +# RAG-Anything imports +from raganything import RAGAnything, RAGAnythingConfig +from lightrag.utils import EmbeddingFunc +from lightrag.llm.openai import openai_complete_if_cache + +# vLLM configuration from environment variables +VLLM_BASE_URL = os.getenv("LLM_BINDING_HOST", "http://localhost:8000/v1") +VLLM_API_KEY = os.getenv("LLM_BINDING_API_KEY", "token-abc123") +VLLM_MODEL_NAME = os.getenv("LLM_MODEL", "Qwen/Qwen2.5-72B-Instruct") +VLLM_EMBED_MODEL = os.getenv("EMBEDDING_MODEL", "BAAI/bge-m3") +VLLM_EMBED_BASE_URL = os.getenv("EMBEDDING_BINDING_HOST", "http://localhost:8001/v1") +VLLM_EMBED_API_KEY = os.getenv("EMBEDDING_BINDING_API_KEY", "token-abc123") + + +async def vllm_llm_model_func( + prompt: str, + system_prompt: Optional[str] = None, + history_messages: List[Dict] = None, + **kwargs, +) -> str: + """Top-level LLM function for LightRAG (pickle-safe). + + Uses openai_complete_if_cache since vLLM exposes an OpenAI-compatible API. + """ + return await openai_complete_if_cache( + model=VLLM_MODEL_NAME, + prompt=prompt, + system_prompt=system_prompt, + history_messages=history_messages or [], + base_url=VLLM_BASE_URL, + api_key=VLLM_API_KEY, + **kwargs, + ) + + +async def vllm_embedding_async(texts: List[str]) -> List[List[float]]: + """Top-level embedding function for LightRAG (pickle-safe). + + Connects to vLLM's embedding endpoint (may run on a separate port). + """ + from lightrag.llm.openai import openai_embed + + embeddings = await openai_embed( + texts=texts, + model=VLLM_EMBED_MODEL, + base_url=VLLM_EMBED_BASE_URL, + api_key=VLLM_EMBED_API_KEY, + ) + return embeddings.tolist() + + +class VLLMRAGIntegration: + """Integration class for vLLM with RAG-Anything.""" + + def __init__(self): + # vLLM configuration using standard LLM_BINDING variables + self.base_url = os.getenv("LLM_BINDING_HOST", "http://localhost:8000/v1") + self.api_key = os.getenv("LLM_BINDING_API_KEY", "token-abc123") + self.model_name = os.getenv("LLM_MODEL", "Qwen/Qwen2.5-72B-Instruct") + self.embedding_model = os.getenv("EMBEDDING_MODEL", "BAAI/bge-m3") + self.embedding_base_url = os.getenv( + "EMBEDDING_BINDING_HOST", "http://localhost:8001/v1" + ) + self.embedding_api_key = os.getenv("EMBEDDING_BINDING_API_KEY", "token-abc123") + + # RAG-Anything configuration + # Use a fresh working directory each run to avoid legacy doc_status schema conflicts + self.config = RAGAnythingConfig( + working_dir=f"./rag_storage_vllm/{uuid.uuid4()}", + parser="mineru", + parse_method="auto", + enable_image_processing=False, + enable_table_processing=True, + enable_equation_processing=True, + ) + print(f"📁 Using working_dir: {self.config.working_dir}") + + self.rag = None + + async def test_connection(self) -> bool: + """Test vLLM connection and list available models.""" + try: + print(f"🔌 Testing vLLM connection at: {self.base_url}") + client = AsyncOpenAI(base_url=self.base_url, api_key=self.api_key) + models = await client.models.list() + print(f"✅ Connected successfully! Found {len(models.data)} models") + + # Show available models + print("📊 Available models:") + for i, model in enumerate(models.data[:5]): + marker = "🎯" if model.id == self.model_name else " " + print(f"{marker} {i+1}. {model.id}") + + if len(models.data) > 5: + print(f" ... and {len(models.data) - 5} more models") + + return True + except Exception as e: + print(f"❌ Connection failed: {str(e)}") + print("\n💡 Troubleshooting tips:") + print("1. Ensure vLLM server is running:") + print(" vllm serve Qwen/Qwen2.5-72B-Instruct") + print(f"2. Verify server address: {self.base_url}") + print("3. Check that the model has finished loading") + print("4. If using authentication, verify your API key") + return False + finally: + try: + await client.close() + except Exception: + pass + + async def test_chat_completion(self) -> bool: + """Test basic chat functionality.""" + try: + print(f"💬 Testing chat with model: {self.model_name}") + client = AsyncOpenAI(base_url=self.base_url, api_key=self.api_key) + response = await client.chat.completions.create( + model=self.model_name, + messages=[ + {"role": "system", "content": "You are a helpful AI assistant."}, + { + "role": "user", + "content": "Hello! Please confirm you're working and tell me your capabilities.", + }, + ], + max_tokens=100, + temperature=0.7, + ) + + result = response.choices[0].message.content.strip() + print("✅ Chat test successful!") + print(f"Response: {result}") + return True + except Exception as e: + print(f"❌ Chat test failed: {str(e)}") + return False + finally: + try: + await client.close() + except Exception: + pass + + def embedding_func_factory(self): + """Create a completely serializable embedding function.""" + return EmbeddingFunc( + embedding_dim=1024, # bge-m3 default dimension + max_token_size=8192, # bge-m3 context length + func=vllm_embedding_async, + ) + + async def initialize_rag(self): + """Initialize RAG-Anything with vLLM functions.""" + print("Initializing RAG-Anything with vLLM...") + + try: + self.rag = RAGAnything( + config=self.config, + llm_model_func=vllm_llm_model_func, + embedding_func=self.embedding_func_factory(), + ) + + # Compatibility: avoid writing unknown field 'multimodal_processed' to LightRAG doc_status + async def _noop_mark_multimodal(doc_id: str): + return None + + self.rag._mark_multimodal_processing_complete = _noop_mark_multimodal + + print("✅ RAG-Anything initialized successfully!") + return True + except Exception as e: + print(f"❌ RAG initialization failed: {str(e)}") + return False + + async def process_document_example(self, file_path: str): + """Example: Process a document with vLLM backend.""" + if not self.rag: + print("❌ RAG not initialized. Call initialize_rag() first.") + return + + try: + print(f"📄 Processing document: {file_path}") + await self.rag.process_document_complete( + file_path=file_path, + output_dir="./output_vllm", + parse_method="auto", + display_stats=True, + ) + print("✅ Document processing completed!") + except Exception as e: + print(f"❌ Document processing failed: {str(e)}") + + async def query_examples(self): + """Example queries with different modes.""" + if not self.rag: + print("❌ RAG not initialized. Call initialize_rag() first.") + return + + # Example queries + queries = [ + ("What are the main topics in the processed documents?", "hybrid"), + ("Summarize any tables or data found in the documents", "local"), + ("What images or figures are mentioned?", "global"), + ] + + print("\n🔍 Running example queries...") + for query, mode in queries: + try: + print(f"\nQuery ({mode}): {query}") + result = await self.rag.aquery(query, mode=mode) + print(f"Answer: {result[:200]}...") + except Exception as e: + print(f"❌ Query failed: {str(e)}") + + async def simple_query_example(self): + """Example basic text query with sample content.""" + if not self.rag: + print("❌ RAG not initialized") + return + + try: + print("\nAdding sample content for testing...") + + # Create content list in the format expected by RAGAnything + content_list = [ + { + "type": "text", + "text": """vLLM Integration with RAG-Anything + +This integration demonstrates how to connect vLLM's high-performance inference engine +with RAG-Anything's multimodal document processing capabilities. The system uses: + +- vLLM for high-throughput LLM inference with continuous batching +- PagedAttention for efficient memory management +- Tensor parallelism for serving large models across multiple GPUs +- RAG-Anything for document processing and retrieval + +Key benefits include: +- Production throughput: Continuous batching serves many concurrent requests +- Memory efficiency: PagedAttention reduces GPU memory waste by up to 90% +- Scalability: Tensor parallelism distributes large models across GPUs +- OpenAI compatibility: Drop-in replacement for OpenAI API clients +- Quantization support: AWQ, GPTQ, and FP8 for reduced memory footprint""", + "page_idx": 0, + } + ] + + # Insert the content list using the correct method + await self.rag.insert_content_list( + content_list=content_list, + file_path="vllm_integration_demo.txt", + doc_id=f"demo-content-{uuid.uuid4()}", + display_stats=True, + ) + print("✅ Sample content added to knowledge base") + + print("\nTesting basic text query...") + + # Simple text query example + result = await self.rag.aquery( + "What are the key benefits of using vLLM for RAG workloads?", + mode="hybrid", + ) + print(f"✅ Query result: {result[:300]}...") + + except Exception as e: + print(f"❌ Query failed: {str(e)}") + + +async def main(): + """Main example function.""" + print("=" * 70) + print("vLLM + RAG-Anything Integration Example") + print("=" * 70) + + # Initialize integration + integration = VLLMRAGIntegration() + + # Test connection + if not await integration.test_connection(): + return False + + print() + if not await integration.test_chat_completion(): + return False + + # Initialize RAG + print("\n" + "─" * 50) + if not await integration.initialize_rag(): + return False + + # Example document processing (uncomment and provide a real file path) + # await integration.process_document_example("path/to/your/document.pdf") + + # Example queries (uncomment after processing documents) + # await integration.query_examples() + + # Example basic query + await integration.simple_query_example() + + print("\n" + "=" * 70) + print("Integration example completed successfully!") + print("=" * 70) + + return True + + +if __name__ == "__main__": + print("🚀 Starting vLLM integration example...") + success = asyncio.run(main()) + + exit(0 if success else 1) diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..3dd5df4 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,86 @@ +[build-system] +requires = ["setuptools>=64", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "raganything" +dynamic = ["version"] +authors = [ + {name = "Zirui Guo"} +] +description = "RAGAnything: All-in-One RAG System" +readme = "README.md" +license = { text = "MIT" } +requires-python = ">=3.10" +classifiers = [ + "Development Status :: 4 - Beta", + "Programming Language :: Python :: 3", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", + "Intended Audience :: Developers", + "Topic :: Software Development :: Libraries :: Python Modules", +] +dependencies = [ + "huggingface_hub", + "lightrag-hku<1.5", + "mineru[core]", + "tqdm", +] + +[project.optional-dependencies] +image = ["Pillow>=10.0.0"] +text = ["reportlab>=4.0.0"] +office = [] # Requires LibreOffice (external program) +paddleocr = [ + "paddleocr>=2.7.0", + "pypdfium2>=4.25.0", +] +markdown = [ + "markdown>=3.4.0", + "weasyprint>=60.0", + "pygments>=2.10.0", +] +all = [ + "Pillow>=10.0.0", + "reportlab>=4.0.0", + "paddleocr>=2.7.0", + "pypdfium2>=4.25.0", + "markdown>=3.4.0", + "weasyprint>=60.0", + "pygments>=2.10.0", +] + +[project.urls] +Homepage = "https://github.com/HKUDS/RAG-Anything" +Documentation = "https://github.com/HKUDS/RAG-Anything" +Repository = "https://github.com/HKUDS/RAG-Anything" +Issues = "https://github.com/HKUDS/RAG-Anything/issues" + +[tool.uv] +dev-dependencies = [ + "pytest>=6.0", + "pytest-asyncio", + "black", + "isort", + "flake8", + "mypy", + "openai", + "python-dotenv", +] + +[tool.setuptools.packages.find] +include = ["raganything*"] + +[tool.setuptools] +include-package-data = true + +[tool.setuptools.dynamic] +version = {attr = "raganything.__version__"} + +[tool.ruff] +target-version = "py310" + +[tool.pytest.ini_options] +testpaths = ["tests"] +python_files = ["test*.py"] +norecursedirs = ["examples"] diff --git a/raganything/__init__.py b/raganything/__init__.py new file mode 100644 index 0000000..fa8efb1 --- /dev/null +++ b/raganything/__init__.py @@ -0,0 +1,114 @@ +from .raganything import RAGAnything as RAGAnything +from .config import RAGAnythingConfig as RAGAnythingConfig + +# Core parser class is always available. +from .parser import Parser as Parser + +# Optional: parser plugin APIs (only present in newer versions / when feature PR is merged). +try: + from .parser import ( + register_parser as register_parser, + unregister_parser as unregister_parser, + list_parsers as list_parsers, + get_supported_parsers as get_supported_parsers, + ) +except ImportError: + # Older versions without the custom parser registry: keep base import working. + pass + +# Optional: resilience utilities (may not exist in all installations). +try: + from .resilience import ( + retry as retry, + async_retry as async_retry, + CircuitBreaker as CircuitBreaker, + ) +except ModuleNotFoundError: + # Resilience module not present in this build. + pass +except ImportError: + # Symbols not available; ignore to avoid breaking import raganything. + pass + +# Optional: processing callbacks. +try: + from .callbacks import ( + ProcessingCallback as ProcessingCallback, + MetricsCallback as MetricsCallback, + CallbackManager as CallbackManager, + ProcessingEvent as ProcessingEvent, + ) +except ModuleNotFoundError: + pass +except ImportError: + pass + +# Optional: multilingual prompt manager. +try: + from .prompt_manager import ( + set_prompt_language as set_prompt_language, + get_prompt_language as get_prompt_language, + reset_prompts as reset_prompts, + register_prompt_language as register_prompt_language, + get_available_languages as get_available_languages, + ) +except ModuleNotFoundError: + pass +except ImportError: + pass + +__version__ = "1.3.1" +__author__ = "Zirui Guo" +__url__ = "https://github.com/HKUDS/RAG-Anything" + +__all__ = [ + "RAGAnything", + "RAGAnythingConfig", + "Parser", +] + +# Feature-gated exports: only add names that are actually available in this build. +if "register_parser" in globals(): + __all__.extend( + [ + "register_parser", + "unregister_parser", + "list_parsers", + "get_supported_parsers", + ] + ) + +if "retry" in globals(): + __all__.extend( + [ + "retry", + "async_retry", + "CircuitBreaker", + ] + ) + +if "ProcessingCallback" in globals(): + __all__.extend( + [ + "ProcessingCallback", + "MetricsCallback", + "CallbackManager", + "ProcessingEvent", + ] + ) + +if "set_prompt_language" in globals(): + __all__.extend( + [ + "set_prompt_language", + "get_prompt_language", + "reset_prompts", + "register_prompt_language", + "get_available_languages", + ] + ) + + +def get_version() -> str: + """Return the RAG-Anything version string.""" + return __version__ diff --git a/raganything/asset_urls.py b/raganything/asset_urls.py new file mode 100644 index 0000000..f0f811d --- /dev/null +++ b/raganything/asset_urls.py @@ -0,0 +1,117 @@ +""" +Optional mapping of local absolute media paths to public URLs (HTTPS, CDN, S3, etc.). + +Implements the environment-variable contract described in docs and README: +when ingestion runs on a server but retrieval/UI runs elsewhere, stored paths +must remain valid locally while a parallel public URL can be shown to clients. + +NOTE: ``attach_public_media_urls`` is currently invoked from the MinerU +parser path only. Other parsers (e.g. Docling) will not yield +``*_public_url`` fields until this helper is wired into their content_list +post-processing too. +""" + +from __future__ import annotations + +import logging +import os +from pathlib import Path + +logger = logging.getLogger(__name__) + +# content_list fields that hold filesystem paths to raster or figure assets +MEDIA_PATH_FIELDS: tuple[str, ...] = ( + "img_path", + "table_img_path", + "equation_img_path", +) + +# Track which misconfiguration shape we have already warned about so we don't +# spam the log once per content_list item. Reset whenever the env state goes +# back to either "fully unset" or "fully set". +_MISCONFIG_WARNED: set[str] = set() + + +def _resolve_strip_prefix(strip_prefix: str) -> Path | None: + try: + return Path(strip_prefix).expanduser().resolve() + except (OSError, RuntimeError): + return None + + +def public_url_for_local_path( + local_abs: str, + *, + base_url: str, + strip_prefix: str, +) -> str | None: + """ + Build ``https://.../relative/path`` from a local absolute path by stripping + a known filesystem root and appending the remainder to ``base_url``. + """ + if not local_abs or not base_url or not strip_prefix: + return None + root = _resolve_strip_prefix(strip_prefix) + if root is None: + return None + try: + abs_path = Path(local_abs).resolve() + rel = abs_path.relative_to(root) + except (ValueError, OSError, RuntimeError): + return None + return f"{base_url.rstrip('/')}/{rel.as_posix()}" + + +def attach_public_media_urls(item: dict) -> None: + """ + If ``RAGANYTHING_PUBLIC_ASSET_BASE_URL`` and + ``RAGANYTHING_PUBLIC_ASSET_STRIP_PREFIX`` are both set, add + ``_public_url`` for each non-empty media path field. + + Existing ``img_path`` / ``table_img_path`` / ``equation_img_path`` values + are left unchanged so local file-based pipelines keep working. + + If only one of the two env vars is set, the function logs a single + warning and returns without mutating ``item``. + """ + base = os.environ.get("RAGANYTHING_PUBLIC_ASSET_BASE_URL", "").strip() + strip = os.environ.get("RAGANYTHING_PUBLIC_ASSET_STRIP_PREFIX", "").strip() + + if not base and not strip: + _MISCONFIG_WARNED.clear() + return + if base and not strip: + if "base_only" not in _MISCONFIG_WARNED: + logger.warning( + "RAGANYTHING_PUBLIC_ASSET_BASE_URL is set but " + "RAGANYTHING_PUBLIC_ASSET_STRIP_PREFIX is not; " + "skipping public URL attachment." + ) + _MISCONFIG_WARNED.add("base_only") + return + if strip and not base: + if "strip_only" not in _MISCONFIG_WARNED: + logger.warning( + "RAGANYTHING_PUBLIC_ASSET_STRIP_PREFIX is set but " + "RAGANYTHING_PUBLIC_ASSET_BASE_URL is not; " + "skipping public URL attachment." + ) + _MISCONFIG_WARNED.add("strip_only") + return + _MISCONFIG_WARNED.clear() + + if not isinstance(item, dict): + return + + for field in MEDIA_PATH_FIELDS: + raw = item.get(field) + if not raw or not isinstance(raw, str): + continue + s = raw.strip() + if not s: + continue + if s.startswith(("http://", "https://", "s3://")): + continue + url = public_url_for_local_path(s, base_url=base, strip_prefix=strip) + if url: + item[f"{field}_public_url"] = url diff --git a/raganything/base.py b/raganything/base.py new file mode 100644 index 0000000..0a99420 --- /dev/null +++ b/raganything/base.py @@ -0,0 +1,12 @@ +from enum import Enum + + +class DocStatus(str, Enum): + """Document processing status""" + + READY = "ready" + HANDLING = "handling" + PENDING = "pending" + PROCESSING = "processing" + PROCESSED = "processed" + FAILED = "failed" diff --git a/raganything/batch.py b/raganything/batch.py new file mode 100644 index 0000000..1b87335 --- /dev/null +++ b/raganything/batch.py @@ -0,0 +1,441 @@ +""" +Batch processing functionality for RAGAnything + +Contains methods for processing multiple documents in batch mode +""" + +import asyncio +import logging +from pathlib import Path +from typing import List, Dict, Any, Optional, TYPE_CHECKING +import time + +from .batch_parser import BatchParser, BatchProcessingResult + +if TYPE_CHECKING: + from .config import RAGAnythingConfig + + +class BatchMixin: + """BatchMixin class containing batch processing functionality for RAGAnything""" + + # Type hints for mixin attributes (will be available when mixed into RAGAnything) + config: "RAGAnythingConfig" + logger: logging.Logger + + # Type hints for methods that will be available from other mixins + async def _ensure_lightrag_initialized(self) -> None: ... + async def process_document_complete(self, file_path: str, **kwargs) -> None: ... + + # ========================================== + # ORIGINAL BATCH PROCESSING METHOD (RESTORED) + # ========================================== + + async def process_folder_complete( + self, + folder_path: str, + output_dir: str = None, + parse_method: str = None, + display_stats: bool = None, + split_by_character: str | None = None, + split_by_character_only: bool = False, + file_extensions: Optional[List[str]] = None, + recursive: bool = None, + max_workers: int = None, + ): + """ + Process all supported files in a folder + + Args: + folder_path: Path to the folder containing files to process + output_dir: Directory for parsed outputs (optional) + parse_method: Parsing method to use (optional) + display_stats: Whether to display statistics (optional) + split_by_character: Character to split by (optional) + split_by_character_only: Whether to split only by character (optional) + file_extensions: List of file extensions to process (optional) + recursive: Whether to process folders recursively (optional) + max_workers: Maximum number of workers for concurrent processing (optional) + """ + if output_dir is None: + output_dir = self.config.parser_output_dir + if parse_method is None: + parse_method = self.config.parse_method + if display_stats is None: + display_stats = True + if file_extensions is None: + file_extensions = self.config.supported_file_extensions + if recursive is None: + recursive = self.config.recursive_folder_processing + if max_workers is None: + max_workers = self.config.max_concurrent_files + + init_result = await self._ensure_lightrag_initialized() + if not init_result or not init_result.get("success"): + raise RuntimeError( + f"LightRAG initialization failed: {(init_result or {}).get('error', 'unknown error')}" + ) + + # Get all files in the folder + folder_path_obj = Path(folder_path) + if not folder_path_obj.exists(): + raise FileNotFoundError(f"Folder not found: {folder_path}") + + # Collect files based on supported extensions + files_to_process = [] + for file_ext in file_extensions: + if recursive: + pattern = f"**/*{file_ext}" + else: + pattern = f"*{file_ext}" + files_to_process.extend(folder_path_obj.glob(pattern)) + + if not files_to_process: + self.logger.warning(f"No supported files found in {folder_path}") + return + + self.logger.info( + f"Found {len(files_to_process)} files to process in {folder_path}" + ) + + # Create output directory if it doesn't exist + output_path = Path(output_dir) + output_path.mkdir(parents=True, exist_ok=True) + + # Process files with controlled concurrency + semaphore = asyncio.Semaphore(max_workers) + tasks = [] + + async def process_single_file(file_path: Path): + async with semaphore: + is_in_subdir = ( + lambda file_path, dir_path: ( + len(file_path.relative_to(dir_path).parents) > 1 + ) + )(file_path, folder_path_obj) + + try: + await self.process_document_complete( + str(file_path), + output_dir=( + output_dir + if not is_in_subdir + else str( + output_path + / file_path.parent.relative_to(folder_path_obj) + ) + ), + parse_method=parse_method, + split_by_character=split_by_character, + split_by_character_only=split_by_character_only, + file_name=( + None + if not is_in_subdir + else str(file_path.relative_to(folder_path_obj)) + ), + ) + return True, str(file_path), None + except Exception as e: + self.logger.error(f"Failed to process {file_path}: {str(e)}") + return False, str(file_path), str(e) + + # Create tasks for all files + for file_path in files_to_process: + task = asyncio.create_task(process_single_file(file_path)) + tasks.append(task) + + # Wait for all tasks to complete + results = await asyncio.gather(*tasks, return_exceptions=True) + + # Process results + successful_files = [] + failed_files = [] + for result in results: + if isinstance(result, Exception): + failed_files.append(("unknown", str(result))) + else: + success, file_path, error = result + if success: + successful_files.append(file_path) + else: + failed_files.append((file_path, error)) + + # Display statistics if requested + if display_stats: + self.logger.info("Processing complete!") + self.logger.info(f" Successful: {len(successful_files)} files") + self.logger.info(f" Failed: {len(failed_files)} files") + if failed_files: + self.logger.warning("Failed files:") + for file_path, error in failed_files: + self.logger.warning(f" - {file_path}: {error}") + + # ========================================== + # NEW ENHANCED BATCH PROCESSING METHODS + # ========================================== + + def process_documents_batch( + self, + file_paths: List[str], + output_dir: Optional[str] = None, + parse_method: Optional[str] = None, + max_workers: Optional[int] = None, + recursive: Optional[bool] = None, + show_progress: bool = True, + incremental: bool = False, + **kwargs, + ) -> BatchProcessingResult: + """ + Process multiple documents in batch using the new BatchParser + + Args: + file_paths: List of file paths or directories to process + output_dir: Output directory for parsed files + parse_method: Parsing method to use + max_workers: Maximum number of workers for parallel processing + recursive: Whether to process directories recursively + show_progress: Whether to show progress bar + incremental: Whether to skip files unchanged since the last successful batch run + **kwargs: Additional arguments passed to the parser + + Returns: + BatchProcessingResult: Results of the batch processing + """ + # Use config defaults if not specified + if output_dir is None: + output_dir = self.config.parser_output_dir + if parse_method is None: + parse_method = self.config.parse_method + if max_workers is None: + max_workers = self.config.max_concurrent_files + if recursive is None: + recursive = self.config.recursive_folder_processing + + # Create batch parser + batch_parser = BatchParser( + parser_type=self.config.parser, + max_workers=max_workers, + show_progress=show_progress, + skip_installation_check=True, # Skip installation check for better UX + ) + + # Process batch + return batch_parser.process_batch( + file_paths=file_paths, + output_dir=output_dir, + parse_method=parse_method, + recursive=recursive, + incremental=incremental, + **kwargs, + ) + + async def process_documents_batch_async( + self, + file_paths: List[str], + output_dir: Optional[str] = None, + parse_method: Optional[str] = None, + max_workers: Optional[int] = None, + recursive: Optional[bool] = None, + show_progress: bool = True, + incremental: bool = False, + **kwargs, + ) -> BatchProcessingResult: + """ + Asynchronously process multiple documents in batch + + Args: + file_paths: List of file paths or directories to process + output_dir: Output directory for parsed files + parse_method: Parsing method to use + max_workers: Maximum number of workers for parallel processing + recursive: Whether to process directories recursively + show_progress: Whether to show progress bar + incremental: Whether to skip files unchanged since the last successful batch run + **kwargs: Additional arguments passed to the parser + + Returns: + BatchProcessingResult: Results of the batch processing + """ + # Use config defaults if not specified + if output_dir is None: + output_dir = self.config.parser_output_dir + if parse_method is None: + parse_method = self.config.parse_method + if max_workers is None: + max_workers = self.config.max_concurrent_files + if recursive is None: + recursive = self.config.recursive_folder_processing + + # Create batch parser + batch_parser = BatchParser( + parser_type=self.config.parser, + max_workers=max_workers, + show_progress=show_progress, + skip_installation_check=True, # Skip installation check for better UX + ) + + # Process batch asynchronously + return await batch_parser.process_batch_async( + file_paths=file_paths, + output_dir=output_dir, + parse_method=parse_method, + recursive=recursive, + incremental=incremental, + **kwargs, + ) + + def get_supported_file_extensions(self) -> List[str]: + """Get list of supported file extensions for batch processing""" + try: + batch_parser = BatchParser(parser_type=self.config.parser) + return batch_parser.get_supported_extensions() + except Exception: + self.logger.exception("Failed to get list of supported file extensions") + return [] + + def filter_supported_files( + self, file_paths: List[str], recursive: Optional[bool] = None + ) -> List[str]: + """ + Filter file paths to only include supported file types + + Args: + file_paths: List of file paths to filter + recursive: Whether to process directories recursively + + Returns: + List of supported file paths + """ + if recursive is None: + recursive = self.config.recursive_folder_processing + + batch_parser = BatchParser(parser_type=self.config.parser) + return batch_parser.filter_supported_files(file_paths, recursive) + + async def process_documents_with_rag_batch( + self, + file_paths: List[str], + output_dir: Optional[str] = None, + parse_method: Optional[str] = None, + max_workers: Optional[int] = None, + recursive: Optional[bool] = None, + show_progress: bool = True, + incremental: bool = False, + **kwargs, + ) -> Dict[str, Any]: + """ + Process documents in batch and then add them to RAG + + This method combines document parsing and RAG insertion: + 1. First, parse all documents using batch processing + 2. Then, process each successfully parsed document with RAG + + Args: + file_paths: List of file paths or directories to process + output_dir: Output directory for parsed files + parse_method: Parsing method to use + max_workers: Maximum number of workers for parallel processing + recursive: Whether to process directories recursively + show_progress: Whether to show progress bar + incremental: Whether to skip files unchanged since the last successful batch run + **kwargs: Additional arguments passed to the parser + + Returns: + Dict containing both parse results and RAG processing results + """ + start_time = time.time() + callback_manager = getattr(self, "callback_manager", None) + total_files = len(file_paths) + + if callback_manager is not None: + callback_manager.dispatch( + "on_batch_start", + file_count=total_files, + ) + + # Use config defaults if not specified + if output_dir is None: + output_dir = self.config.parser_output_dir + if parse_method is None: + parse_method = self.config.parse_method + if max_workers is None: + max_workers = self.config.max_concurrent_files + if recursive is None: + recursive = self.config.recursive_folder_processing + + self.logger.info("Starting batch processing with RAG integration") + + # Step 1: Parse documents in batch + parse_result = self.process_documents_batch( + file_paths=file_paths, + output_dir=output_dir, + parse_method=parse_method, + max_workers=max_workers, + recursive=recursive, + show_progress=show_progress, + incremental=incremental, + **kwargs, + ) + + # Step 2: Process with RAG + # Initialize RAG system + init_result = await self._ensure_lightrag_initialized() + if not init_result or not init_result.get("success"): + raise RuntimeError( + f"LightRAG initialization failed: {(init_result or {}).get('error', 'unknown error')}" + ) + + # Then, process each successful file with RAG + rag_results = {} + + if parse_result.successful_files: + self.logger.info( + f"Processing {len(parse_result.successful_files)} files with RAG" + ) + + # Process files with RAG (this could be parallelized in the future) + for file_path in parse_result.successful_files: + try: + # Process the successfully parsed file with RAG + await self.process_document_complete( + file_path, + output_dir=output_dir, + parse_method=parse_method, + **kwargs, + ) + + # Get some statistics about the processed content + # This would require additional tracking in the RAG system + rag_results[file_path] = {"status": "success", "processed": True} + + except Exception as e: + self.logger.error( + f"Failed to process {file_path} with RAG: {str(e)}" + ) + rag_results[file_path] = { + "status": "failed", + "error": str(e), + "processed": False, + } + + processing_time = time.time() - start_time + + successful_rag_files = len([r for r in rag_results.values() if r["processed"]]) + failed_rag_files = len([r for r in rag_results.values() if not r["processed"]]) + + if callback_manager is not None: + callback_manager.dispatch( + "on_batch_complete", + total_files=total_files, + successful=successful_rag_files, + failed=failed_rag_files, + duration_seconds=processing_time, + ) + + return { + "parse_result": parse_result, + "rag_results": rag_results, + "total_processing_time": processing_time, + "successful_rag_files": successful_rag_files, + "failed_rag_files": failed_rag_files, + } diff --git a/raganything/batch_parser.py b/raganything/batch_parser.py new file mode 100644 index 0000000..012c50f --- /dev/null +++ b/raganything/batch_parser.py @@ -0,0 +1,660 @@ +""" +Batch and Parallel Document Parsing + +This module provides functionality for processing multiple documents in parallel, +with progress reporting and error handling. +""" + +import asyncio +import hashlib +import json +import logging +import os +import tempfile +from concurrent.futures import ThreadPoolExecutor, as_completed +from functools import partial +from pathlib import Path +from typing import Dict, List, Optional, Tuple +from dataclasses import dataclass, field +import time + +from tqdm import tqdm + +from .parser import get_parser + + +@dataclass +class BatchProcessingResult: + """Result of batch processing operation""" + + successful_files: List[str] + failed_files: List[str] + total_files: int + processing_time: float + errors: Dict[str, str] + output_dir: str + dry_run: bool = False + skipped_files: List[str] = field(default_factory=list) + + @property + def success_rate(self) -> float: + """Calculate success rate as percentage""" + if self.total_files == 0: + return 0.0 + completed_files = len(self.successful_files) + len(self.skipped_files) + return (completed_files / self.total_files) * 100 + + def summary(self) -> str: + """Generate a summary of the batch processing results""" + return ( + f"Batch Processing Summary:\n" + f" Total files: {self.total_files}\n" + f" Successful: {len(self.successful_files)}\n" + f" Failed: {len(self.failed_files)}\n" + f" Skipped: {len(self.skipped_files)}\n" + f" Success rate: {self.success_rate:.1f}%\n" + f" Processing time: {self.processing_time:.2f} seconds\n" + f" Output directory: {self.output_dir}\n" + f" Dry run: {self.dry_run}" + ) + + +class BatchParser: + """ + Batch document parser with parallel processing capabilities + + Supports processing multiple documents concurrently with progress tracking + and comprehensive error handling. + """ + + def __init__( + self, + parser_type: str = "mineru", + max_workers: int = 4, + show_progress: bool = True, + timeout_per_file: int = 300, + skip_installation_check: bool = False, + ): + """ + Initialize batch parser + + Args: + parser_type: Type of parser to use ("mineru", "docling", or "paddleocr") + max_workers: Maximum number of parallel workers + show_progress: Whether to show progress bars + timeout_per_file: Timeout in seconds for each file + skip_installation_check: Skip parser installation check (useful for testing) + """ + self.parser_type = parser_type + self.max_workers = max_workers + self.show_progress = show_progress + self.timeout_per_file = timeout_per_file + self.logger = logging.getLogger(__name__) + + # Initialize parser + try: + self.parser = get_parser(parser_type) + except ValueError as exc: + raise ValueError(f"Unsupported parser type: {parser_type}") from exc + + # Check parser installation (optional) + if not skip_installation_check: + if not self.parser.check_installation(): + self.logger.warning( + f"{parser_type.title()} parser installation check failed. " + f"This may be due to package conflicts. " + f"Use skip_installation_check=True to bypass this check." + ) + # Don't raise an error, just warn - the parser might still work + + def get_supported_extensions(self) -> List[str]: + """Get list of supported file extensions""" + return list( + self.parser.OFFICE_FORMATS + | self.parser.IMAGE_FORMATS + | self.parser.TEXT_FORMATS + | {".pdf"} + ) + + def filter_supported_files( + self, file_paths: List[str], recursive: bool = True + ) -> List[str]: + """ + Filter file paths to only include supported file types + + Args: + file_paths: List of file paths or directories + recursive: Whether to search directories recursively + + Returns: + List of supported file paths + """ + supported_extensions = set(self.get_supported_extensions()) + supported_files = [] + + for path_str in file_paths: + path = Path(path_str) + + if path.is_file(): + if path.suffix.lower() in supported_extensions: + supported_files.append(str(path)) + else: + self.logger.warning(f"Unsupported file type: {path}") + + elif path.is_dir(): + if recursive: + # Recursively find all files + for file_path in path.rglob("*"): + if ( + file_path.is_file() + and file_path.suffix.lower() in supported_extensions + ): + supported_files.append(str(file_path)) + else: + # Only files in the directory (not subdirectories) + for file_path in path.glob("*"): + if ( + file_path.is_file() + and file_path.suffix.lower() in supported_extensions + ): + supported_files.append(str(file_path)) + + else: + self.logger.warning(f"Path does not exist: {path}") + + return supported_files + + def process_single_file( + self, file_path: str, output_dir: str, parse_method: str = "auto", **kwargs + ) -> Tuple[bool, str, Optional[str]]: + """ + Process a single file + + Args: + file_path: Path to the file to process + output_dir: Output directory + parse_method: Parsing method + **kwargs: Additional parser arguments + + Returns: + Tuple of (success, file_path, error_message) + """ + try: + start_time = time.time() + + # Create file-specific output directory + file_name = Path(file_path).stem + file_output_dir = Path(output_dir) / file_name + file_output_dir.mkdir(parents=True, exist_ok=True) + + # Parse the document + content_list = self.parser.parse_document( + file_path=file_path, + output_dir=str(file_output_dir), + method=parse_method, + **kwargs, + ) + + processing_time = time.time() - start_time + + self.logger.info( + f"Successfully processed {file_path} " + f"({len(content_list)} content blocks, {processing_time:.2f}s)" + ) + + return True, file_path, None + + except Exception as e: + error_msg = f"Failed to process {file_path}: {str(e)}" + self.logger.error(error_msg) + return False, file_path, error_msg + + @staticmethod + def _manifest_path(output_dir: str) -> Path: + """Return the incremental processing manifest path.""" + return Path(output_dir) / ".raganything_batch_manifest.json" + + def _load_incremental_manifest( + self, output_dir: str + ) -> Dict[str, Dict[str, object]]: + """Load incremental processing metadata.""" + manifest_path = self._manifest_path(output_dir) + if not manifest_path.exists(): + return {} + + try: + data = json.loads(manifest_path.read_text(encoding="utf-8")) + except (OSError, json.JSONDecodeError) as exc: + self.logger.warning( + f"Could not read incremental manifest {manifest_path}: {exc}" + ) + return {} + + if not isinstance(data, dict): + self.logger.warning( + f"Ignoring invalid incremental manifest {manifest_path}: expected object" + ) + return {} + + files = data.get("files", {}) + return files if isinstance(files, dict) else {} + + def _save_incremental_manifest( + self, output_dir: str, manifest: Dict[str, Dict[str, object]] + ) -> None: + """Persist incremental processing metadata atomically.""" + manifest_path = self._manifest_path(output_dir) + manifest_path.parent.mkdir(parents=True, exist_ok=True) + payload = { + "version": 1, + "updated_at": time.time(), + "files": manifest, + } + # Write to a uniquely named temp file in the same directory before the + # atomic replace. A fixed ".tmp" name would let two concurrent batches + # writing to the same output_dir clobber each other's half-written temp. + fd, temp_name = tempfile.mkstemp( + dir=str(manifest_path.parent), + prefix=".raganything_batch_manifest.", + suffix=".tmp", + ) + temp_path = Path(temp_name) + try: + with os.fdopen(fd, "w", encoding="utf-8") as temp_file: + json.dump(payload, temp_file, indent=2, sort_keys=True) + temp_path.replace(manifest_path) + except Exception: + temp_path.unlink(missing_ok=True) + raise + + @staticmethod + def _file_metadata(file_path: str) -> Dict[str, object]: + """Return cheap stat metadata (resolved path, size, mtime) without hashing.""" + path = Path(file_path) + stat = path.stat() + return { + "path": str(path.resolve()), + "size": stat.st_size, + "mtime_ns": stat.st_mtime_ns, + } + + @staticmethod + def _compute_md5(file_path: str) -> str: + """Stream a file and return its md5 hex digest.""" + md5 = hashlib.md5() + with Path(file_path).open("rb") as file_obj: + for chunk in iter(lambda: file_obj.read(1024 * 1024), b""): + md5.update(chunk) + return md5.hexdigest() + + @classmethod + def _file_signature(cls, file_path: str) -> Dict[str, object]: + """Return size, mtime, and md5 metadata for change detection.""" + metadata = cls._file_metadata(file_path) + metadata["md5"] = cls._compute_md5(file_path) + return metadata + + def _filter_incremental_files( + self, file_paths: List[str], manifest: Dict[str, Dict[str, object]] + ) -> Tuple[List[str], List[str], Dict[str, Dict[str, object]]]: + """Split files into changed and unchanged groups using manifest metadata.""" + files_to_process = [] + skipped_files = [] + signatures = {} + + for file_path in file_paths: + try: + metadata = self._file_metadata(file_path) + except OSError as exc: + # File vanished or became unreadable between discovery and the + # incremental scan. Treat it as changed so the normal per-file + # error path handles it instead of aborting the whole batch. + self.logger.warning( + f"Could not read {file_path} for incremental scan: {exc}" + ) + files_to_process.append(file_path) + continue + + manifest_key = metadata["path"] + previous = manifest.get(manifest_key) + + # Fast path: if size and mtime match a previous run, trust the + # stored signature and skip re-hashing the file entirely. + if ( + isinstance(previous, dict) + and previous.get("size") == metadata["size"] + and previous.get("mtime_ns") == metadata["mtime_ns"] + and "md5" in previous + ): + signatures[file_path] = previous + skipped_files.append(file_path) + continue + + # Metadata differs (or the file is new/unrecorded): hash to build a + # full signature and compare content. + try: + metadata["md5"] = self._compute_md5(file_path) + except OSError as exc: + self.logger.warning( + f"Could not read {file_path} for incremental scan: {exc}" + ) + files_to_process.append(file_path) + continue + + signatures[file_path] = metadata + + if previous == metadata: + skipped_files.append(file_path) + else: + files_to_process.append(file_path) + + return files_to_process, skipped_files, signatures + + def process_batch( + self, + file_paths: List[str], + output_dir: str, + parse_method: str = "auto", + recursive: bool = True, + dry_run: bool = False, + incremental: bool = False, + **kwargs, + ) -> BatchProcessingResult: + """ + Process multiple files in parallel + + Args: + file_paths: List of file paths or directories to process + output_dir: Base output directory + parse_method: Parsing method for all files + recursive: Whether to search directories recursively + dry_run: When True, only list files without processing them + incremental: When True, skip files whose size, mtime, and md5 match + the previous successful batch run in output_dir + **kwargs: Additional parser arguments + + Returns: + BatchProcessingResult with processing statistics + """ + start_time = time.time() + + # Filter to supported files + supported_files = self.filter_supported_files(file_paths, recursive) + + if not supported_files: + self.logger.warning("No supported files found to process") + return BatchProcessingResult( + successful_files=[], + failed_files=[], + total_files=0, + processing_time=0.0, + errors={}, + output_dir=output_dir, + dry_run=dry_run, + ) + + self.logger.info(f"Found {len(supported_files)} files to process") + + # Create output directory before reading/writing the incremental manifest + output_path = Path(output_dir) + output_path.mkdir(parents=True, exist_ok=True) + + skipped_files: List[str] = [] + manifest: Dict[str, Dict[str, object]] = {} + signatures: Dict[str, Dict[str, object]] = {} + files_to_process = supported_files + if incremental: + manifest = self._load_incremental_manifest(output_dir) + files_to_process, skipped_files, signatures = ( + self._filter_incremental_files(supported_files, manifest) + ) + self.logger.info( + f"Incremental scan: {len(files_to_process)} changed files, " + f"{len(skipped_files)} unchanged files" + ) + + if dry_run: + self.logger.info( + f"Dry run enabled. {len(files_to_process)} files would be processed." + ) + return BatchProcessingResult( + successful_files=files_to_process, + failed_files=[], + total_files=len(supported_files), + processing_time=0.0, + errors={}, + output_dir=output_dir, + dry_run=True, + skipped_files=skipped_files, + ) + + # Process files in parallel + successful_files = [] + failed_files = [] + errors = {} + + # Create progress bar if requested + pbar = None + if self.show_progress: + pbar = tqdm( + total=len(files_to_process), + desc=f"Processing files ({self.parser_type})", + unit="file", + ) + + future_to_file = {} + try: + with ThreadPoolExecutor(max_workers=self.max_workers) as executor: + # Submit all tasks + future_to_file = { + executor.submit( + self.process_single_file, + file_path, + output_dir, + parse_method, + **kwargs, + ): file_path + for file_path in files_to_process + } + + # Process completed tasks + for future in as_completed( + future_to_file, timeout=self.timeout_per_file + ): + success, file_path, error_msg = future.result() + + if success: + successful_files.append(file_path) + else: + failed_files.append(file_path) + errors[file_path] = error_msg + + if pbar: + pbar.update(1) + + except Exception as e: + self.logger.error(f"Batch processing failed: {str(e)}") + # Mark remaining files as failed + for future in future_to_file: + if not future.done(): + file_path = future_to_file[future] + failed_files.append(file_path) + errors[file_path] = f"Processing interrupted: {str(e)}" + if pbar: + pbar.update(1) + + finally: + if pbar: + pbar.close() + + if incremental and successful_files: + for file_path in successful_files: + signature = signatures.get(file_path) + if signature: + manifest[signature["path"]] = signature + self._save_incremental_manifest(output_dir, manifest) + + processing_time = time.time() - start_time + + # Create result + result = BatchProcessingResult( + successful_files=successful_files, + failed_files=failed_files, + total_files=len(supported_files), + processing_time=processing_time, + errors=errors, + output_dir=output_dir, + dry_run=False, + skipped_files=skipped_files, + ) + + # Log summary + self.logger.info(result.summary()) + + return result + + async def process_batch_async( + self, + file_paths: List[str], + output_dir: str, + parse_method: str = "auto", + recursive: bool = True, + dry_run: bool = False, + incremental: bool = False, + **kwargs, + ) -> BatchProcessingResult: + """ + Async version of batch processing + + Args: + file_paths: List of file paths or directories to process + output_dir: Base output directory + parse_method: Parsing method for all files + recursive: Whether to search directories recursively + dry_run: When True, only list files without processing them + incremental: When True, skip unchanged files based on the batch manifest + **kwargs: Additional parser arguments + + Returns: + BatchProcessingResult with processing statistics + """ + # Run the sync version in a thread pool + loop = asyncio.get_event_loop() + process_func = partial( + self.process_batch, + file_paths=file_paths, + output_dir=output_dir, + parse_method=parse_method, + recursive=recursive, + dry_run=dry_run, + incremental=incremental, + **kwargs, + ) + return await loop.run_in_executor(None, process_func) + + +def main(): + """Command-line interface for batch parsing""" + import argparse + + parser = argparse.ArgumentParser(description="Batch document parsing") + parser.add_argument("paths", nargs="+", help="File paths or directories to process") + parser.add_argument("--output", "-o", required=True, help="Output directory") + parser.add_argument( + "--parser", + default="mineru", + help=( + "Parser to use. Built-ins: mineru, docling, paddleocr. " + "When using RAGAnything as a library, any custom parsers that you " + "have registered via register_parser() in the current process " + "are also accepted. The standalone CLI itself does not perform " + "plugin discovery." + ), + ) + parser.add_argument( + "--method", + choices=["auto", "txt", "ocr"], + default="auto", + help="Parsing method", + ) + parser.add_argument( + "--workers", type=int, default=4, help="Number of parallel workers" + ) + parser.add_argument( + "--no-progress", action="store_true", help="Disable progress bar" + ) + parser.add_argument( + "--recursive", + action="store_true", + default=True, + help="Search directories recursively", + ) + parser.add_argument( + "--timeout", type=int, default=300, help="Timeout per file (seconds)" + ) + parser.add_argument( + "--dry-run", + action="store_true", + help="List files that would be processed without running parsers", + ) + parser.add_argument( + "--incremental", + action="store_true", + help="Skip files unchanged since the last successful batch run", + ) + + args = parser.parse_args() + + # Configure logging + logging.basicConfig( + level=logging.INFO, + format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", + ) + + try: + # Create batch parser + batch_parser = BatchParser( + parser_type=args.parser, + max_workers=args.workers, + show_progress=not args.no_progress, + timeout_per_file=args.timeout, + ) + + # Process files + result = batch_parser.process_batch( + file_paths=args.paths, + output_dir=args.output, + parse_method=args.method, + recursive=args.recursive, + dry_run=args.dry_run, + incremental=args.incremental, + ) + + # Print summary + print("\n" + result.summary()) + + if args.dry_run: + if result.successful_files: + print("\nDry run: files that would be processed:") + for file_path in result.successful_files: + print(f" - {file_path}") + else: + print("\nDry run: no supported files found.") + if result.skipped_files: + print("\nDry run: unchanged files that would be skipped:") + for file_path in result.skipped_files: + print(f" - {file_path}") + + # Exit with error code if any files failed + if result.failed_files: + return 1 + + return 0 + + except Exception as e: + print(f"Error: {str(e)}") + return 1 + + +if __name__ == "__main__": + exit(main()) diff --git a/raganything/callbacks.py b/raganything/callbacks.py new file mode 100644 index 0000000..0ba8567 --- /dev/null +++ b/raganything/callbacks.py @@ -0,0 +1,377 @@ +""" +Processing callbacks and event system for RAGAnything. + +Provides a lightweight publish-subscribe mechanism that lets users hook +into every stage of the document processing pipeline — parsing, text +insertion, multimodal processing, and querying. + +Usage:: + + from raganything.callbacks import ProcessingCallback, CallbackManager + + class MyCallback(ProcessingCallback): + def on_parse_start(self, file_path: str, **kw): + print(f"Parsing started: {file_path}") + + def on_parse_complete(self, file_path: str, content_blocks: int, **kw): + print(f"Parsed {content_blocks} blocks from {file_path}") + + rag = RAGAnything(config=config) + rag.callback_manager.register(MyCallback()) +""" + +from __future__ import annotations + +import logging +import time +from dataclasses import dataclass, field +from typing import Any, Dict, List, Optional +import threading + +logger = logging.getLogger(__name__) + + +@dataclass +class ProcessingEvent: + """Immutable record of a processing pipeline event.""" + + event_type: str + timestamp: float = field(default_factory=time.time) + file_path: Optional[str] = None + doc_id: Optional[str] = None + stage: Optional[str] = None + details: Dict[str, Any] = field(default_factory=dict) + duration_seconds: Optional[float] = None + error: Optional[str] = None + + def to_dict(self) -> Dict[str, Any]: + """Serialise to a plain dictionary.""" + return { + "event_type": self.event_type, + "timestamp": self.timestamp, + "file_path": self.file_path, + "doc_id": self.doc_id, + "stage": self.stage, + "details": self.details, + "duration_seconds": self.duration_seconds, + "error": self.error, + } + + +class ProcessingCallback: + """Base class for processing pipeline callbacks. + + Override any of the ``on_*`` methods to hook into the corresponding + stage. Methods that are not overridden are silently ignored. + + All methods receive ``**kwargs`` so that future versions can add + parameters without breaking existing subclasses. + """ + + # ── Parsing stage ───────────────────────────────────────────── + def on_parse_start(self, file_path: str, parser: str = "", **kwargs: Any) -> None: + """Called before document parsing begins.""" + + def on_parse_complete( + self, + file_path: str, + content_blocks: int = 0, + doc_id: str = "", + duration_seconds: float = 0.0, + **kwargs: Any, + ) -> None: + """Called after document parsing succeeds.""" + + def on_parse_error( + self, file_path: str, error: BaseException | str = "", **kwargs: Any + ) -> None: + """Called when document parsing fails.""" + + # ── Text insertion stage ────────────────────────────────────── + def on_text_insert_start( + self, file_path: str, text_length: int = 0, **kwargs: Any + ) -> None: + """Called before text content is inserted into LightRAG.""" + + def on_text_insert_complete( + self, file_path: str, duration_seconds: float = 0.0, **kwargs: Any + ) -> None: + """Called after text content insertion succeeds.""" + + # ── Multimodal processing stage ─────────────────────────────── + def on_multimodal_start( + self, file_path: str, item_count: int = 0, **kwargs: Any + ) -> None: + """Called before multimodal content processing begins.""" + + def on_multimodal_item_complete( + self, + file_path: str, + item_index: int = 0, + item_type: str = "", + total_items: int = 0, + **kwargs: Any, + ) -> None: + """Called after each individual multimodal item is processed.""" + + def on_multimodal_complete( + self, + file_path: str, + processed_count: int = 0, + duration_seconds: float = 0.0, + **kwargs: Any, + ) -> None: + """Called after all multimodal content processing completes.""" + + # ── Query stage ─────────────────────────────────────────────── + def on_query_start(self, query: str, mode: str = "", **kwargs: Any) -> None: + """Called before a query is executed.""" + + def on_query_complete( + self, + query: str, + mode: str = "", + duration_seconds: float = 0.0, + result_length: int = 0, + **kwargs: Any, + ) -> None: + """Called after a query completes.""" + + def on_query_error( + self, + query: str, + mode: str = "", + error: BaseException | str = "", + **kwargs: Any, + ) -> None: + """Called when a query fails.""" + + # ── Document complete ───────────────────────────────────────── + def on_document_complete( + self, + file_path: str, + doc_id: str = "", + duration_seconds: float = 0.0, + **kwargs: Any, + ) -> None: + """Called when the entire document processing pipeline finishes.""" + + def on_document_error( + self, + file_path: str, + error: BaseException | str = "", + stage: str = "", + **kwargs: Any, + ) -> None: + """Called when document processing fails at any stage.""" + + # ── Batch processing ────────────────────────────────────────── + def on_batch_start(self, file_count: int = 0, **kwargs: Any) -> None: + """Called when batch processing begins.""" + + def on_batch_complete( + self, + total_files: int = 0, + successful: int = 0, + failed: int = 0, + duration_seconds: float = 0.0, + **kwargs: Any, + ) -> None: + """Called when batch processing completes.""" + + +class MetricsCallback(ProcessingCallback): + """Built-in callback that collects processing metrics. + + Access aggregated metrics via the :attr:`metrics` attribute. + + Example:: + + metrics_cb = MetricsCallback() + rag.callback_manager.register(metrics_cb) + # ... process documents ... + print(metrics_cb.summary()) + """ + + def __init__(self) -> None: + self.metrics: Dict[str, Any] = { + "documents_processed": 0, + "documents_failed": 0, + "total_content_blocks": 0, + "total_multimodal_items": 0, + "total_parse_time": 0.0, + "total_insert_time": 0.0, + "total_multimodal_time": 0.0, + "queries_executed": 0, + "total_query_time": 0.0, + "errors": [], + } + + def on_parse_complete( + self, + file_path: str, + content_blocks: int = 0, + duration_seconds: float = 0.0, + **kw: Any, + ) -> None: + self.metrics["total_content_blocks"] += content_blocks + self.metrics["total_parse_time"] += duration_seconds + + def on_text_insert_complete( + self, file_path: str, duration_seconds: float = 0.0, **kw: Any + ) -> None: + self.metrics["total_insert_time"] += duration_seconds + + def on_multimodal_complete( + self, + file_path: str, + processed_count: int = 0, + duration_seconds: float = 0.0, + **kw: Any, + ) -> None: + self.metrics["total_multimodal_items"] += processed_count + self.metrics["total_multimodal_time"] += duration_seconds + + def on_document_complete(self, file_path: str, **kw: Any) -> None: + self.metrics["documents_processed"] += 1 + + def on_document_error( + self, + file_path: str, + error: BaseException | str = "", + stage: str = "", + **kw: Any, + ) -> None: + self.metrics["documents_failed"] += 1 + self.metrics["errors"].append( + {"file": file_path, "error": str(error), "stage": stage} + ) + + def on_query_complete( + self, query: str, duration_seconds: float = 0.0, **kw: Any + ) -> None: + self.metrics["queries_executed"] += 1 + self.metrics["total_query_time"] += duration_seconds + + def on_query_error( + self, query: str, error: BaseException | str = "", **kw: Any + ) -> None: + self.metrics["errors"].append( + {"file": None, "error": str(error), "stage": "query"} + ) + + def summary(self) -> str: + """Return a human-readable summary of collected metrics.""" + m = self.metrics + lines = [ + "RAGAnything Processing Metrics", + "=" * 40, + f"Documents processed : {m['documents_processed']}", + f"Documents failed : {m['documents_failed']}", + f"Content blocks : {m['total_content_blocks']}", + f"Multimodal items : {m['total_multimodal_items']}", + f"Parse time : {m['total_parse_time']:.2f}s", + f"Insert time : {m['total_insert_time']:.2f}s", + f"Multimodal time : {m['total_multimodal_time']:.2f}s", + f"Queries executed : {m['queries_executed']}", + f"Query time : {m['total_query_time']:.2f}s", + ] + if m["errors"]: + lines.append(f"Errors : {len(m['errors'])}") + for err in m["errors"][:5]: + lines.append(f" - [{err['stage']}] {err['file']}: {err['error']}") + return "\n".join(lines) + + def reset(self) -> None: + """Reset all collected metrics.""" + self.__init__() + + +class CallbackManager: + """Manages and dispatches events to registered callbacks. + + Thread-safe for registration/unregistration and event logging. + Event dispatch iterates over a snapshot of currently registered + callbacks so that callbacks can safely register/unregister others. + """ + + def __init__(self) -> None: + self._callbacks: List[ProcessingCallback] = [] + self._event_log: List[ProcessingEvent] = [] + self._log_events: bool = False + self._lock = threading.RLock() + + def register(self, callback: ProcessingCallback) -> None: + """Register a callback to receive processing events. + + Args: + callback: An instance of :class:`ProcessingCallback` (or subclass). + + Raises: + TypeError: If *callback* is not a :class:`ProcessingCallback`. + """ + if not isinstance(callback, ProcessingCallback): + raise TypeError( + f"Expected ProcessingCallback instance, got {type(callback).__name__}" + ) + with self._lock: + self._callbacks.append(callback) + + def unregister(self, callback: ProcessingCallback) -> None: + """Remove a previously registered callback.""" + with self._lock: + self._callbacks.remove(callback) + + def enable_event_log(self, enabled: bool = True) -> None: + """Enable or disable internal event logging. + + When enabled, every dispatched event is recorded in + :attr:`event_log` for later inspection. + """ + with self._lock: + self._log_events = enabled + + @property + def event_log(self) -> List[ProcessingEvent]: + """Read-only access to the internal event log.""" + with self._lock: + return list(self._event_log) + + def clear_event_log(self) -> None: + """Clear the internal event log.""" + with self._lock: + self._event_log.clear() + + def dispatch(self, event_name: str, **kwargs: Any) -> None: + """Dispatch an event to all registered callbacks. + + Args: + event_name: Name of the callback method (e.g., ``"on_parse_start"``). + **kwargs: Arguments forwarded to the callback method. + """ + with self._lock: + callbacks_snapshot = list(self._callbacks) + log_events = self._log_events + if log_events: + event = ProcessingEvent( + event_type=event_name, + file_path=kwargs.get("file_path"), + doc_id=kwargs.get("doc_id"), + stage=kwargs.get("stage"), + details=kwargs, + duration_seconds=kwargs.get("duration_seconds"), + error=str(kwargs["error"]) if "error" in kwargs else None, + ) + self._event_log.append(event) + + for cb in callbacks_snapshot: + handler = getattr(cb, event_name, None) + if handler is not None: + try: + handler(**kwargs) + except Exception: + logger.exception( + "Error in callback %s.%s", + type(cb).__name__, + event_name, + ) diff --git a/raganything/config.py b/raganything/config.py new file mode 100644 index 0000000..c1969b3 --- /dev/null +++ b/raganything/config.py @@ -0,0 +1,158 @@ +""" +Configuration classes for RAGAnything + +Contains configuration dataclasses with environment variable support +""" + +from dataclasses import dataclass, field +from typing import List +from lightrag.utils import get_env_value + + +@dataclass +class RAGAnythingConfig: + """Configuration class for RAGAnything with environment variable support""" + + # Directory Configuration + # --- + working_dir: str = field(default=get_env_value("WORKING_DIR", "./rag_storage", str)) + """Directory where RAG storage and cache files are stored.""" + + # Parser Configuration + # --- + parse_method: str = field(default=get_env_value("PARSE_METHOD", "auto", str)) + """Default parsing method for document parsing: 'auto', 'ocr', or 'txt'.""" + + parser_output_dir: str = field(default=get_env_value("OUTPUT_DIR", "./output", str)) + """Default output directory for parsed content.""" + + parser: str = field(default=get_env_value("PARSER", "mineru", str)) + """Parser selection: 'mineru', 'docling', or 'paddleocr'.""" + + display_content_stats: bool = field( + default=get_env_value("DISPLAY_CONTENT_STATS", True, bool) + ) + """Whether to display content statistics during parsing.""" + + # Multimodal Processing Configuration + # --- + enable_image_processing: bool = field( + default=get_env_value("ENABLE_IMAGE_PROCESSING", True, bool) + ) + """Enable image content processing.""" + + enable_table_processing: bool = field( + default=get_env_value("ENABLE_TABLE_PROCESSING", True, bool) + ) + """Enable table content processing.""" + + enable_equation_processing: bool = field( + default=get_env_value("ENABLE_EQUATION_PROCESSING", True, bool) + ) + """Enable equation content processing.""" + + # Batch Processing Configuration + # --- + max_concurrent_files: int = field( + default=get_env_value("MAX_CONCURRENT_FILES", 1, int) + ) + """Maximum number of files to process concurrently.""" + + supported_file_extensions: List[str] = field( + default_factory=lambda: [ + x.strip() + for x in get_env_value( + "SUPPORTED_FILE_EXTENSIONS", + ".pdf,.jpg,.jpeg,.png,.bmp,.tiff,.tif,.gif,.webp,.doc,.docx,.ppt,.pptx,.xls,.xlsx,.txt,.md", + str, + ).split(",") + ] + ) + """List of supported file extensions for batch processing.""" + + recursive_folder_processing: bool = field( + default=get_env_value("RECURSIVE_FOLDER_PROCESSING", True, bool) + ) + """Whether to recursively process subfolders in batch mode.""" + + # Context Extraction Configuration + # --- + context_window: int = field(default=get_env_value("CONTEXT_WINDOW", 1, int)) + """Number of pages/chunks to include before and after current item for context.""" + + context_mode: str = field(default=get_env_value("CONTEXT_MODE", "page", str)) + """Context extraction mode: 'page' for page-based, 'chunk' for chunk-based.""" + + max_context_tokens: int = field( + default=get_env_value("MAX_CONTEXT_TOKENS", 2000, int) + ) + """Maximum number of tokens in extracted context.""" + + include_headers: bool = field(default=get_env_value("INCLUDE_HEADERS", True, bool)) + """Whether to include document headers and titles in context.""" + + include_captions: bool = field( + default=get_env_value("INCLUDE_CAPTIONS", True, bool) + ) + """Whether to include image/table captions in context.""" + + context_filter_content_types: List[str] = field( + default_factory=lambda: [ + x.strip() + for x in get_env_value("CONTEXT_FILTER_CONTENT_TYPES", "text", str).split( + "," + ) + ] + ) + """Content types to include in context extraction (e.g., 'text', 'image', 'table').""" + + content_format: str = field(default=get_env_value("CONTENT_FORMAT", "minerU", str)) + """Default content format for context extraction when processing documents.""" + + # Path Handling Configuration + # --- + use_full_path: bool = field(default=get_env_value("USE_FULL_PATH", False, bool)) + """Whether to use full file path (True) or just basename (False) for file references in LightRAG.""" + + def __post_init__(self): + """Post-initialization setup for backward compatibility""" + # Support legacy environment variable names for backward compatibility + legacy_parse_method = get_env_value("MINERU_PARSE_METHOD", None, str) + if legacy_parse_method and not get_env_value("PARSE_METHOD", None, str): + self.parse_method = legacy_parse_method + import warnings + + warnings.warn( + "MINERU_PARSE_METHOD is deprecated. Use PARSE_METHOD instead.", + DeprecationWarning, + stacklevel=2, + ) + + @property + def mineru_parse_method(self) -> str: + """ + Backward compatibility property for old code. + + .. deprecated:: + Use `parse_method` instead. This property will be removed in a future version. + """ + import warnings + + warnings.warn( + "mineru_parse_method is deprecated. Use parse_method instead.", + DeprecationWarning, + stacklevel=2, + ) + return self.parse_method + + @mineru_parse_method.setter + def mineru_parse_method(self, value: str): + """Setter for backward compatibility""" + import warnings + + warnings.warn( + "mineru_parse_method is deprecated. Use parse_method instead.", + DeprecationWarning, + stacklevel=2, + ) + self.parse_method = value diff --git a/raganything/enhanced_markdown.py b/raganything/enhanced_markdown.py new file mode 100644 index 0000000..a456192 --- /dev/null +++ b/raganything/enhanced_markdown.py @@ -0,0 +1,534 @@ +""" +Enhanced Markdown to PDF Conversion + +This module provides improved Markdown to PDF conversion with: +- Better formatting and styling +- Image support +- Table support +- Code syntax highlighting +- Custom templates +- Multiple output formats +""" + +import os +import logging +from pathlib import Path +from typing import Dict, Any, Optional +from dataclasses import dataclass +import tempfile +import subprocess + +try: + import markdown + + MARKDOWN_AVAILABLE = True +except ImportError: + MARKDOWN_AVAILABLE = False + +try: + from weasyprint import HTML + + WEASYPRINT_AVAILABLE = True +except ImportError: + WEASYPRINT_AVAILABLE = False + +try: + # Check if pandoc module exists (not used directly, just for detection) + import importlib.util + + spec = importlib.util.find_spec("pandoc") + PANDOC_AVAILABLE = spec is not None +except ImportError: + PANDOC_AVAILABLE = False + + +@dataclass +class MarkdownConfig: + """Configuration for Markdown to PDF conversion""" + + # Styling options + css_file: Optional[str] = None + template_file: Optional[str] = None + page_size: str = "A4" + margin: str = "1in" + font_size: str = "12pt" + line_height: str = "1.5" + + # Content options + include_toc: bool = True + syntax_highlighting: bool = True + image_max_width: str = "100%" + table_style: str = "border-collapse: collapse; width: 100%;" + + # Output options + output_format: str = "pdf" # pdf, html, docx + output_dir: Optional[str] = None + + # Advanced options + custom_css: Optional[str] = None + metadata: Optional[Dict[str, str]] = None + + +class EnhancedMarkdownConverter: + """ + Enhanced Markdown to PDF converter with multiple backends + + Supports multiple conversion methods: + - WeasyPrint (recommended for HTML/CSS styling) + - Pandoc (recommended for complex documents) + - ReportLab (fallback, basic styling) + """ + + def __init__(self, config: Optional[MarkdownConfig] = None): + """ + Initialize the converter + + Args: + config: Configuration for conversion + """ + self.config = config or MarkdownConfig() + self.logger = logging.getLogger(__name__) + + # Check available backends + self.available_backends = self._check_backends() + self.logger.info(f"Available backends: {list(self.available_backends.keys())}") + + def _check_backends(self) -> Dict[str, bool]: + """Check which conversion backends are available""" + backends = { + "weasyprint": WEASYPRINT_AVAILABLE, + "pandoc": PANDOC_AVAILABLE, + "markdown": MARKDOWN_AVAILABLE, + } + + # Check if pandoc is installed on system + try: + subprocess.run(["pandoc", "--version"], capture_output=True, check=True) + backends["pandoc_system"] = True + except (subprocess.CalledProcessError, FileNotFoundError): + backends["pandoc_system"] = False + + return backends + + def _get_default_css(self) -> str: + """Get default CSS styling""" + return """ + body { + font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; + line-height: 1.6; + color: #333; + max-width: 800px; + margin: 0 auto; + padding: 20px; + } + + h1, h2, h3, h4, h5, h6 { + color: #2c3e50; + margin-top: 1.5em; + margin-bottom: 0.5em; + } + + h1 { font-size: 2em; border-bottom: 2px solid #3498db; padding-bottom: 0.3em; } + h2 { font-size: 1.5em; border-bottom: 1px solid #bdc3c7; padding-bottom: 0.2em; } + h3 { font-size: 1.3em; } + h4 { font-size: 1.1em; } + + p { margin-bottom: 1em; } + + code { + background-color: #f8f9fa; + padding: 2px 4px; + border-radius: 3px; + font-family: 'Courier New', monospace; + font-size: 0.9em; + } + + pre { + background-color: #f8f9fa; + padding: 15px; + border-radius: 5px; + overflow-x: auto; + border-left: 4px solid #3498db; + } + + pre code { + background-color: transparent; + padding: 0; + } + + blockquote { + border-left: 4px solid #3498db; + margin: 0; + padding-left: 20px; + color: #7f8c8d; + } + + table { + border-collapse: collapse; + width: 100%; + margin: 1em 0; + } + + th, td { + border: 1px solid #ddd; + padding: 8px 12px; + text-align: left; + } + + th { + background-color: #f2f2f2; + font-weight: bold; + } + + img { + max-width: 100%; + height: auto; + display: block; + margin: 1em auto; + } + + ul, ol { + margin-bottom: 1em; + } + + li { + margin-bottom: 0.5em; + } + + a { + color: #3498db; + text-decoration: none; + } + + a:hover { + text-decoration: underline; + } + + .toc { + background-color: #f8f9fa; + padding: 15px; + border-radius: 5px; + margin-bottom: 2em; + } + + .toc ul { + list-style-type: none; + padding-left: 0; + } + + .toc li { + margin-bottom: 0.3em; + } + + .toc a { + color: #2c3e50; + } + """ + + def _process_markdown_content(self, content: str) -> str: + """Process Markdown content with extensions""" + if not MARKDOWN_AVAILABLE: + raise RuntimeError( + "Markdown library not available. Install with: pip install markdown" + ) + + # Configure Markdown extensions + extensions = [ + "markdown.extensions.tables", + "markdown.extensions.fenced_code", + "markdown.extensions.codehilite", + "markdown.extensions.toc", + "markdown.extensions.attr_list", + "markdown.extensions.def_list", + "markdown.extensions.footnotes", + ] + + extension_configs = { + "codehilite": { + "css_class": "highlight", + "use_pygments": True, + }, + "toc": { + "title": "Table of Contents", + "permalink": True, + }, + } + + # Convert Markdown to HTML + md = markdown.Markdown( + extensions=extensions, extension_configs=extension_configs + ) + + html_content = md.convert(content) + + # Add CSS styling + css = self.config.custom_css or self._get_default_css() + + # Create complete HTML document + html_doc = f""" + + + + + Converted Document + + + + {html_content} + + + """ + + return html_doc + + def convert_with_weasyprint(self, markdown_content: str, output_path: str) -> bool: + """Convert using WeasyPrint (best for styling)""" + if not WEASYPRINT_AVAILABLE: + raise RuntimeError( + "WeasyPrint not available. Install with: pip install weasyprint" + ) + + try: + # Process Markdown to HTML + html_content = self._process_markdown_content(markdown_content) + + # Convert HTML to PDF + html = HTML(string=html_content) + html.write_pdf(output_path) + + self.logger.info( + f"Successfully converted to PDF using WeasyPrint: {output_path}" + ) + return True + + except Exception as e: + self.logger.error(f"WeasyPrint conversion failed: {str(e)}") + return False + + def convert_with_pandoc( + self, markdown_content: str, output_path: str, use_system_pandoc: bool = False + ) -> bool: + """Convert using Pandoc (best for complex documents)""" + if ( + not self.available_backends.get("pandoc_system", False) + and not use_system_pandoc + ): + raise RuntimeError( + "Pandoc not available. Install from: https://pandoc.org/installing.html" + ) + + temp_md_path = None + try: + import subprocess + + # Create temporary markdown file + with tempfile.NamedTemporaryFile( + mode="w", suffix=".md", delete=False + ) as temp_file: + temp_file.write(markdown_content) + temp_md_path = temp_file.name + + # Build pandoc command with wkhtmltopdf engine + cmd = [ + "pandoc", + temp_md_path, + "-o", + output_path, + "--pdf-engine=wkhtmltopdf", + "--standalone", + "--toc", + "--number-sections", + ] + + # Run pandoc + result = subprocess.run(cmd, capture_output=True, text=True, timeout=60) + + if result.returncode == 0: + self.logger.info( + f"Successfully converted to PDF using Pandoc: {output_path}" + ) + return True + else: + self.logger.error(f"Pandoc conversion failed: {result.stderr}") + return False + + except Exception as e: + self.logger.error(f"Pandoc conversion failed: {str(e)}") + return False + + finally: + if temp_md_path and os.path.exists(temp_md_path): + try: + os.unlink(temp_md_path) + except OSError as e: + self.logger.error( + f"Failed to clean up temp file {temp_md_path}: {str(e)}" + ) + + def convert_markdown_to_pdf( + self, markdown_content: str, output_path: str, method: str = "auto" + ) -> bool: + """ + Convert markdown content to PDF + + Args: + markdown_content: Markdown content to convert + output_path: Output PDF file path + method: Conversion method ("auto", "weasyprint", "pandoc", "pandoc_system") + + Returns: + True if conversion successful, False otherwise + """ + if method == "auto": + method = self._get_recommended_backend() + + try: + if method == "weasyprint": + return self.convert_with_weasyprint(markdown_content, output_path) + elif method == "pandoc": + return self.convert_with_pandoc(markdown_content, output_path) + elif method == "pandoc_system": + return self.convert_with_pandoc( + markdown_content, output_path, use_system_pandoc=True + ) + else: + raise ValueError(f"Unknown conversion method: {method}") + + except Exception as e: + self.logger.error(f"{method.title()} conversion failed: {str(e)}") + return False + + def convert_file_to_pdf( + self, input_path: str, output_path: Optional[str] = None, method: str = "auto" + ) -> bool: + """ + Convert Markdown file to PDF + + Args: + input_path: Input Markdown file path + output_path: Output PDF file path (optional) + method: Conversion method + + Returns: + bool: True if conversion successful + """ + input_path_obj = Path(input_path) + + if not input_path_obj.exists(): + raise FileNotFoundError(f"Input file not found: {input_path}") + + # Read markdown content + try: + with open(input_path_obj, "r", encoding="utf-8") as f: + markdown_content = f.read() + except UnicodeDecodeError: + # Try with different encodings + for encoding in ["gbk", "latin-1", "cp1252"]: + try: + with open(input_path_obj, "r", encoding=encoding) as f: + markdown_content = f.read() + break + except UnicodeDecodeError: + continue + else: + raise RuntimeError( + f"Could not decode file {input_path} with any supported encoding" + ) + + # Determine output path + if output_path is None: + output_path = str(input_path_obj.with_suffix(".pdf")) + + return self.convert_markdown_to_pdf(markdown_content, output_path, method) + + def get_backend_info(self) -> Dict[str, Any]: + """Get information about available backends""" + return { + "available_backends": self.available_backends, + "recommended_backend": self._get_recommended_backend(), + "config": { + "page_size": self.config.page_size, + "margin": self.config.margin, + "font_size": self.config.font_size, + "include_toc": self.config.include_toc, + "syntax_highlighting": self.config.syntax_highlighting, + }, + } + + def _get_recommended_backend(self) -> str: + """Get recommended backend based on availability""" + if self.available_backends.get("pandoc_system", False): + return "pandoc" + elif self.available_backends.get("weasyprint", False): + return "weasyprint" + else: + return "none" + + +def main(): + """Command-line interface for enhanced markdown conversion""" + import argparse + + parser = argparse.ArgumentParser(description="Enhanced Markdown to PDF conversion") + parser.add_argument("input", nargs="?", help="Input markdown file") + parser.add_argument("--output", "-o", help="Output PDF file") + parser.add_argument( + "--method", + choices=["auto", "weasyprint", "pandoc", "pandoc_system"], + default="auto", + help="Conversion method", + ) + parser.add_argument("--css", help="Custom CSS file") + parser.add_argument("--info", action="store_true", help="Show backend information") + + args = parser.parse_args() + + # Configure logging + logging.basicConfig( + level=logging.INFO, + format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", + ) + + # Create converter + config = MarkdownConfig() + if args.css: + config.css_file = args.css + + converter = EnhancedMarkdownConverter(config) + + # Show backend info if requested + if args.info: + info = converter.get_backend_info() + print("Backend Information:") + for backend, available in info["available_backends"].items(): + status = "✅" if available else "❌" + print(f" {status} {backend}") + print(f"Recommended backend: {info['recommended_backend']}") + return 0 + + # Check if input file is provided + if not args.input: + parser.error("Input file is required when not using --info") + + # Convert file + try: + success = converter.convert_file_to_pdf( + input_path=args.input, output_path=args.output, method=args.method + ) + + if success: + print(f"✅ Successfully converted {args.input} to PDF") + return 0 + else: + print("❌ Conversion failed") + return 1 + + except Exception as e: + print(f"❌ Error: {str(e)}") + return 1 + + +if __name__ == "__main__": + exit(main()) diff --git a/raganything/modalprocessors.py b/raganything/modalprocessors.py new file mode 100644 index 0000000..bf7cdec --- /dev/null +++ b/raganything/modalprocessors.py @@ -0,0 +1,1614 @@ +""" +Specialized processors for different modalities + +Includes: +- ContextExtractor: Universal context extraction for multimodal content +- ImageModalProcessor: Specialized processor for image content +- TableModalProcessor: Specialized processor for table content +- EquationModalProcessor: Specialized processor for equation content +- GenericModalProcessor: Processor for other modal content +""" + +import re +import json +import time +import base64 +from typing import Dict, Any, Tuple, List +from pathlib import Path +from dataclasses import dataclass + +from lightrag.utils import ( + logger, + compute_mdhash_id, +) +from lightrag.lightrag import LightRAG +from dataclasses import asdict +from lightrag.kg.shared_storage import get_namespace_data, get_pipeline_status_lock +from lightrag.operate import extract_entities, merge_nodes_and_edges + +# Import prompt templates +from raganything.prompt import PROMPTS +from raganything.utils import ( + format_table_body, + get_equation_text_and_format, + get_table_body, + normalize_caption_list, +) + + +@dataclass +class ContextConfig: + """Configuration for context extraction""" + + context_window: int = 1 # Window size for context extraction + context_mode: str = "page" # "page", "chunk", "token" + max_context_tokens: int = 2000 # Maximum context tokens + include_headers: bool = True # Whether to include headers/titles + include_captions: bool = True # Whether to include image/table captions + filter_content_types: List[str] = None # Content types to include + + def __post_init__(self): + if self.filter_content_types is None: + self.filter_content_types = ["text"] + + +class ContextExtractor: + """Universal context extractor supporting multiple content source formats""" + + def __init__(self, config: ContextConfig = None, tokenizer=None): + """Initialize context extractor + + Args: + config: Context extraction configuration + tokenizer: Tokenizer for accurate token counting + """ + self.config = config or ContextConfig() + self.tokenizer = tokenizer + + def extract_context( + self, + content_source: Any, + current_item_info: Dict[str, Any], + content_format: str = "auto", + ) -> str: + """Extract context for current item from content source + + Args: + content_source: Source content (list, dict, or other format) + current_item_info: Information about current item (page_idx, index, etc.) + content_format: Format hint for content source ("minerU", "text_chunks", "auto", etc.) + + Returns: + Extracted context text + """ + if not content_source and not self.config.context_window: + return "" + + try: + # Use format hint if provided, otherwise auto-detect + if content_format == "minerU" and isinstance(content_source, list): + return self._extract_from_content_list( + content_source, current_item_info + ) + elif content_format == "text_chunks" and isinstance(content_source, list): + return self._extract_from_text_chunks(content_source, current_item_info) + elif content_format == "text" and isinstance(content_source, str): + return self._extract_from_text_source(content_source, current_item_info) + else: + # Auto-detect content source format + if isinstance(content_source, list): + return self._extract_from_content_list( + content_source, current_item_info + ) + elif isinstance(content_source, dict): + return self._extract_from_dict_source( + content_source, current_item_info + ) + elif isinstance(content_source, str): + return self._extract_from_text_source( + content_source, current_item_info + ) + else: + logger.warning( + f"Unsupported content source type: {type(content_source)}" + ) + return "" + except Exception as e: + logger.error(f"Error extracting context: {e}") + return "" + + def _extract_from_content_list( + self, content_list: List[Dict], current_item_info: Dict + ) -> str: + """Extract context from MinerU-style content list + + Args: + content_list: List of content items with page_idx and type info + current_item_info: Current item information + + Returns: + Context text from surrounding pages/chunks + """ + if self.config.context_mode == "page": + return self._extract_page_context(content_list, current_item_info) + elif self.config.context_mode == "chunk": + return self._extract_chunk_context(content_list, current_item_info) + else: + return self._extract_page_context(content_list, current_item_info) + + def _extract_page_context( + self, content_list: List[Dict], current_item_info: Dict + ) -> str: + """Extract context based on page boundaries + + Args: + content_list: List of content items + current_item_info: Current item with page_idx + + Returns: + Context text from surrounding pages + """ + current_page = current_item_info.get("page_idx", 0) + window_size = self.config.context_window + + start_page = max(0, current_page - window_size) + end_page = current_page + window_size + 1 + + context_texts = [] + + for item in content_list: + item_page = item.get("page_idx", 0) + item_type = item.get("type", "") + + # Check if item is within context window and matches filter criteria + if ( + start_page <= item_page < end_page + and item_type in self.config.filter_content_types + ): + text_content = self._extract_text_from_item(item) + if text_content and text_content.strip(): + # Add page marker for better context understanding + if item_page != current_page: + context_texts.append(f"[Page {item_page}] {text_content}") + else: + context_texts.append(text_content) + + context = "\n".join(context_texts) + return self._truncate_context(context) + + def _extract_chunk_context( + self, content_list: List[Dict], current_item_info: Dict + ) -> str: + """Extract context based on content chunks + + Args: + content_list: List of content items + current_item_info: Current item with index info + + Returns: + Context text from surrounding chunks + """ + current_index = current_item_info.get("index", 0) + window_size = self.config.context_window + + start_idx = max(0, current_index - window_size) + end_idx = min(len(content_list), current_index + window_size + 1) + + context_texts = [] + + for i in range(start_idx, end_idx): + if i != current_index: + item = content_list[i] + item_type = item.get("type", "") + + if item_type in self.config.filter_content_types: + text_content = self._extract_text_from_item(item) + if text_content and text_content.strip(): + context_texts.append(text_content) + + context = "\n".join(context_texts) + return self._truncate_context(context) + + def _extract_text_from_item(self, item: Dict) -> str: + """Extract text content from a content item + + Args: + item: Content item dictionary + + Returns: + Extracted text content + """ + item_type = item.get("type", "") + + if item_type == "text": + text = item.get("text", "") + text_level = item.get("text_level", 0) + + # Add header indication for structured content· + if self.config.include_headers and text_level > 0: + return f"{'#' * text_level} {text}" + return text + + elif item_type == "image" and self.config.include_captions: + captions = item.get("image_caption", item.get("img_caption", [])) + if captions: + return f"[Image: {', '.join(captions)}]" + + elif item_type == "table" and self.config.include_captions: + captions = item.get("table_caption", []) + if captions: + return f"[Table: {', '.join(captions)}]" + + return "" + + def _extract_from_dict_source( + self, dict_source: Dict, current_item_info: Dict + ) -> str: + """Extract context from dictionary-based content source + + Args: + dict_source: Dictionary containing content + current_item_info: Current item information + + Returns: + Extracted context text + """ + # Handle different dictionary structures + if "content" in dict_source: + context = str(dict_source["content"]) + elif "text" in dict_source: + context = str(dict_source["text"]) + else: + # Try to extract any string values + text_parts = [] + for value in dict_source.values(): + if isinstance(value, str): + text_parts.append(value) + context = "\n".join(text_parts) + + return self._truncate_context(context) + + def _extract_from_text_source( + self, text_source: str, current_item_info: Dict + ) -> str: + """Extract context from plain text source + + Args: + text_source: Plain text content + current_item_info: Current item information + + Returns: + Truncated text context + """ + return self._truncate_context(text_source) + + def _extract_from_text_chunks( + self, text_chunks: List[str], current_item_info: Dict + ) -> str: + """Extract context from simple text chunks list + + Args: + text_chunks: List of text strings + current_item_info: Current item information with index + + Returns: + Context text from surrounding chunks + """ + current_index = current_item_info.get("index", 0) + window_size = self.config.context_window + + start_idx = max(0, current_index - window_size) + end_idx = min(len(text_chunks), current_index + window_size + 1) + + context_texts = [] + for i in range(start_idx, end_idx): + if i != current_index: # Exclude current chunk + if i < len(text_chunks): + chunk_text = str(text_chunks[i]).strip() + if chunk_text: + context_texts.append(chunk_text) + + context = "\n".join(context_texts) + return self._truncate_context(context) + + def _truncate_context(self, context: str) -> str: + """Truncate context to maximum token limit + + Args: + context: Context text to truncate + + Returns: + Truncated context text + """ + if not context: + return "" + + # Use tokenizer if available for accurate token counting + if self.tokenizer: + tokens = self.tokenizer.encode(context) + if len(tokens) <= self.config.max_context_tokens: + return context + + # Truncate to max tokens and decode back to text + truncated_tokens = tokens[: self.config.max_context_tokens] + truncated_text = self.tokenizer.decode(truncated_tokens) + + # Try to end at a sentence boundary + last_period = truncated_text.rfind(".") + last_newline = truncated_text.rfind("\n") + + if last_period > len(truncated_text) * 0.8: + return truncated_text[: last_period + 1] + elif last_newline > len(truncated_text) * 0.8: + return truncated_text[:last_newline] + else: + return truncated_text + "..." + else: + # Fallback to character-based truncation if no tokenizer + if len(context) <= self.config.max_context_tokens: + return context + + # Simple truncation - fallback when no tokenizer available + truncated = context[: self.config.max_context_tokens] + + # Try to end at a sentence boundary + last_period = truncated.rfind(".") + last_newline = truncated.rfind("\n") + + if last_period > len(truncated) * 0.8: + return truncated[: last_period + 1] + elif last_newline > len(truncated) * 0.8: + return truncated[:last_newline] + else: + return truncated + "..." + + +class BaseModalProcessor: + """Base class for modal processors""" + + def __init__( + self, + lightrag: LightRAG, + modal_caption_func, + context_extractor: ContextExtractor = None, + ): + """Initialize base processor + + Args: + lightrag: LightRAG instance + modal_caption_func: Function for generating descriptions + context_extractor: Context extractor instance + """ + self.lightrag = lightrag + self.modal_caption_func = modal_caption_func + + # Use LightRAG's storage instances + self.text_chunks_db = lightrag.text_chunks + self.chunks_vdb = lightrag.chunks_vdb + self.entities_vdb = lightrag.entities_vdb + self.relationships_vdb = lightrag.relationships_vdb + self.knowledge_graph_inst = lightrag.chunk_entity_relation_graph + + # Use LightRAG's configuration and functions + self.embedding_func = lightrag.embedding_func + self.llm_model_func = lightrag.llm_model_func + self.global_config = asdict(lightrag) + self.hashing_kv = lightrag.llm_response_cache + self.tokenizer = lightrag.tokenizer + + # Initialize context extractor with tokenizer if not provided + if context_extractor is None: + self.context_extractor = ContextExtractor(tokenizer=self.tokenizer) + else: + self.context_extractor = context_extractor + # Update tokenizer if context_extractor doesn't have one + if self.context_extractor.tokenizer is None: + self.context_extractor.tokenizer = self.tokenizer + + # Content source for context extraction + self.content_source = None + self.content_format = "auto" + + def set_content_source(self, content_source: Any, content_format: str = "auto"): + """Set content source for context extraction + + Args: + content_source: Source content for context extraction + content_format: Format of content source ("minerU", "text_chunks", "auto") + """ + self.content_source = content_source + self.content_format = content_format + logger.info(f"Content source set with format: {content_format}") + + def _get_context_for_item(self, item_info: Dict[str, Any]) -> str: + """Get context for current processing item + + Args: + item_info: Information about current item (page_idx, index, etc.) + + Returns: + Context text for the item + """ + if not self.content_source: + return "" + + try: + context = self.context_extractor.extract_context( + self.content_source, item_info, self.content_format + ) + if context: + logger.debug( + f"Extracted context of length {len(context)} for item: {item_info}" + ) + return context + except Exception as e: + logger.error(f"Error getting context for item {item_info}: {e}") + return "" + + async def generate_description_only( + self, + modal_content, + content_type: str, + item_info: Dict[str, Any] = None, + entity_name: str = None, + ) -> Tuple[str, Dict[str, Any]]: + """ + Generate text description and entity info only, without entity relation extraction. + Used for batch processing stage 1. + + Args: + modal_content: Modal content to process + content_type: Type of modal content + item_info: Item information for context extraction + entity_name: Optional predefined entity name + + Returns: + Tuple of (description, entity_info) + """ + # Subclasses must implement this method + raise NotImplementedError("Subclasses must implement this method") + + async def _create_entity_and_chunk( + self, + modal_chunk: str, + entity_info: Dict[str, Any], + file_path: str, + batch_mode: bool = False, + doc_id: str = None, + chunk_order_index: int = 0, + ) -> Tuple[str, Dict[str, Any]]: + """Create entity and text chunk""" + # Create chunk + chunk_id = compute_mdhash_id(str(modal_chunk), prefix="chunk-") + tokens = len(self.tokenizer.encode(modal_chunk)) + + # Use provided doc_id or generate one from chunk_id for backward compatibility + actual_doc_id = doc_id if doc_id else chunk_id + + chunk_data = { + "tokens": tokens, + "content": modal_chunk, + "chunk_order_index": chunk_order_index, + "full_doc_id": actual_doc_id, # Use proper document ID + "file_path": file_path, + } + + # Store chunk + await self.text_chunks_db.upsert({chunk_id: chunk_data}) + + # Store chunk in vector database for retrieval + chunk_vdb_data = { + chunk_id: { + "content": modal_chunk, + "full_doc_id": actual_doc_id, + "tokens": tokens, + "chunk_order_index": chunk_order_index, + "file_path": file_path, + } + } + await self.chunks_vdb.upsert(chunk_vdb_data) + + # Create entity node + node_data = { + "entity_id": entity_info["entity_name"], + "entity_type": entity_info["entity_type"], + "description": entity_info["summary"], + "source_id": chunk_id, + "file_path": file_path, + "created_at": int(time.time()), + } + + await self.knowledge_graph_inst.upsert_node( + entity_info["entity_name"], node_data + ) + + # Insert entity into vector database + entity_vdb_data = { + compute_mdhash_id(entity_info["entity_name"], prefix="ent-"): { + "entity_name": entity_info["entity_name"], + "entity_type": entity_info["entity_type"], + "content": f"{entity_info['entity_name']}\n{entity_info['summary']}", + "source_id": chunk_id, + "file_path": file_path, + } + } + await self.entities_vdb.upsert(entity_vdb_data) + + # Process entity and relationship extraction + chunk_results = await self._process_chunk_for_extraction( + chunk_id, entity_info["entity_name"], batch_mode + ) + + return ( + entity_info["summary"], + { + "entity_name": entity_info["entity_name"], + "entity_type": entity_info["entity_type"], + "description": entity_info["summary"], + "chunk_id": chunk_id, + }, + chunk_results, + ) + + @staticmethod + def _strip_thinking_tags(text: str) -> str: + """Remove / tags produced by reasoning models. + + Models such as DeepSeek-R1 and Qwen2.5-think wrap their internal + chain-of-thought in ```` or ```` + blocks before emitting the final answer. When JSON parsing fails and + the raw LLM response is used as a fallback, storing the entire response + (including the reasoning preamble) pollutes the knowledge graph with + internal model thoughts rather than actual content descriptions. + + This helper strips those blocks so that only the final answer text is + stored or surfaced to callers. + """ + import re + + cleaned = re.sub( + r".*?", "", text, flags=re.DOTALL | re.IGNORECASE + ) + cleaned = re.sub( + r".*?", "", cleaned, flags=re.DOTALL | re.IGNORECASE + ) + return cleaned.strip() + + def _robust_json_parse(self, response: str) -> dict: + """Robust JSON parsing with multiple fallback strategies""" + + # Strategy 1: Try direct parsing first + for json_candidate in self._extract_all_json_candidates(response): + result = self._try_parse_json(json_candidate) + if result: + return result + + # Strategy 2: Try with basic cleanup + for json_candidate in self._extract_all_json_candidates(response): + cleaned = self._basic_json_cleanup(json_candidate) + result = self._try_parse_json(cleaned) + if result: + return result + + # Strategy 3: Try progressive quote fixing + for json_candidate in self._extract_all_json_candidates(response): + fixed = self._progressive_quote_fix(json_candidate) + result = self._try_parse_json(fixed) + if result: + return result + + # Strategy 4: Fallback to regex field extraction + return self._extract_fields_with_regex(response) + + def _extract_all_json_candidates(self, response: str) -> list: + """Extract all possible JSON candidates from response""" + candidates = [] + + import re + + # Pre-process: Remove thinking/reasoning tags that some models use + # This handles models like qwen2.5-think, deepseek-r1 that wrap reasoning in tags + cleaned_response = re.sub( + r".*?", "", response, flags=re.DOTALL | re.IGNORECASE + ) + cleaned_response = re.sub( + r".*?", + "", + cleaned_response, + flags=re.DOTALL | re.IGNORECASE, + ) + + # Method 1: JSON in code blocks + json_blocks = re.findall( + r"```(?:json)?\s*(\{.*?\})\s*```", cleaned_response, re.DOTALL + ) + candidates.extend(json_blocks) + + # Method 2: Balanced braces + brace_count = 0 + start_pos = -1 + + for i, char in enumerate(cleaned_response): + if char == "{": + if brace_count == 0: + start_pos = i + brace_count += 1 + elif char == "}": + brace_count -= 1 + if brace_count == 0 and start_pos != -1: + candidates.append(cleaned_response[start_pos : i + 1]) + + # Method 3: Simple regex fallback + simple_match = re.search(r"\{.*\}", cleaned_response, re.DOTALL) + if simple_match: + candidates.append(simple_match.group(0)) + + return candidates + + def _try_parse_json(self, json_str: str) -> dict: + """Try to parse JSON string, return None if failed""" + if not json_str or not json_str.strip(): + return None + + try: + return json.loads(json_str) + except (json.JSONDecodeError, ValueError): + return None + + def _basic_json_cleanup(self, json_str: str) -> str: + """Basic cleanup for common JSON issues""" + # Remove extra whitespace + json_str = json_str.strip() + + # Fix common quote issues + json_str = json_str.replace('"', '"').replace('"', '"') # Smart quotes + json_str = json_str.replace(""", "'").replace(""", "'") # Smart apostrophes + + # Fix trailing commas (simple case) + json_str = re.sub(r",(\s*[}\]])", r"\1", json_str) + + return json_str + + def _progressive_quote_fix(self, json_str: str) -> str: + """Progressive fixing of quote and escape issues""" + # Only escape unescaped backslashes before quotes + json_str = re.sub(r'(? \\alpha + return f'"{content}"' + + json_str = re.sub(r'"([^"]*(?:\\.[^"]*)*)"', fix_string_content, json_str) + return json_str + + def _extract_fields_with_regex(self, response: str) -> dict: + """Extract required fields using regex as last resort""" + logger.warning("Using regex fallback for JSON parsing") + + # Extract detailed_description + desc_match = re.search( + r'"detailed_description":\s*"([^"]*(?:\\.[^"]*)*)"', response, re.DOTALL + ) + description = desc_match.group(1) if desc_match else "" + + # Extract entity_name + name_match = re.search(r'"entity_name":\s*"([^"]*(?:\\.[^"]*)*)"', response) + entity_name = name_match.group(1) if name_match else "unknown_entity" + + # Extract entity_type + type_match = re.search(r'"entity_type":\s*"([^"]*(?:\\.[^"]*)*)"', response) + entity_type = type_match.group(1) if type_match else "unknown" + + # Extract summary + summary_match = re.search( + r'"summary":\s*"([^"]*(?:\\.[^"]*)*)"', response, re.DOTALL + ) + summary = summary_match.group(1) if summary_match else description[:100] + + return { + "detailed_description": description, + "entity_info": { + "entity_name": entity_name, + "entity_type": entity_type, + "summary": summary, + }, + } + + def _extract_json_from_response(self, response: str) -> str: + """Legacy method - now handled by _extract_all_json_candidates""" + candidates = self._extract_all_json_candidates(response) + return candidates[0] if candidates else None + + def _fix_json_escapes(self, json_str: str) -> str: + """Legacy method - now handled by progressive strategies""" + return self._progressive_quote_fix(json_str) + + async def _process_chunk_for_extraction( + self, chunk_id: str, modal_entity_name: str, batch_mode: bool = False + ): + """Process chunk for entity and relationship extraction""" + chunk_data = await self.text_chunks_db.get_by_id(chunk_id) + if not chunk_data: + logger.error(f"Chunk {chunk_id} not found") + return + + # Create text chunk for vector database + chunk_vdb_data = { + chunk_id: { + "content": chunk_data["content"], + "full_doc_id": chunk_id, + "tokens": chunk_data["tokens"], + "chunk_order_index": chunk_data["chunk_order_index"], + "file_path": chunk_data["file_path"], + } + } + + await self.chunks_vdb.upsert(chunk_vdb_data) + + pipeline_status = await get_namespace_data("pipeline_status") + pipeline_status_lock = get_pipeline_status_lock() + + # Prepare chunk for extraction + chunks = {chunk_id: chunk_data} + + # Extract entities and relationships + chunk_results = await extract_entities( + chunks=chunks, + global_config=self.global_config, + pipeline_status=pipeline_status, + pipeline_status_lock=pipeline_status_lock, + llm_response_cache=self.hashing_kv, + ) + + # Add "belongs_to" relationships for all extracted entities + processed_chunk_results = [] + for maybe_nodes, maybe_edges in chunk_results: + for entity_name in maybe_nodes.keys(): + if entity_name != modal_entity_name: # Skip self-relationship + # Create belongs_to relationship + relation_data = { + "description": f"Entity {entity_name} belongs to {modal_entity_name}", + "keywords": "belongs_to,part_of,contained_in", + "source_id": chunk_id, + "weight": 10.0, + "file_path": chunk_data.get("file_path", "manual_creation"), + } + await self.knowledge_graph_inst.upsert_edge( + entity_name, modal_entity_name, relation_data + ) + + relation_id = compute_mdhash_id( + entity_name + modal_entity_name, prefix="rel-" + ) + relation_vdb_data = { + relation_id: { + "src_id": entity_name, + "tgt_id": modal_entity_name, + "keywords": relation_data["keywords"], + "content": f"{relation_data['keywords']}\t{entity_name}\n{modal_entity_name}\n{relation_data['description']}", + "source_id": chunk_id, + "file_path": chunk_data.get("file_path", "manual_creation"), + } + } + await self.relationships_vdb.upsert(relation_vdb_data) + + # Add to maybe_edges + maybe_edges[(entity_name, modal_entity_name)] = [relation_data] + + processed_chunk_results.append((maybe_nodes, maybe_edges)) + + if not batch_mode: + # Merge with correct file_path parameter + file_path = chunk_data.get("file_path", "manual_creation") + doc_id = chunk_data.get("full_doc_id") + await merge_nodes_and_edges( + chunk_results=chunk_results, + knowledge_graph_inst=self.knowledge_graph_inst, + entity_vdb=self.entities_vdb, + relationships_vdb=self.relationships_vdb, + global_config=self.global_config, + full_entities_storage=self.lightrag.full_entities, + full_relations_storage=self.lightrag.full_relations, + doc_id=doc_id, + pipeline_status=pipeline_status, + pipeline_status_lock=pipeline_status_lock, + llm_response_cache=self.hashing_kv, + entity_chunks_storage=self.lightrag.entity_chunks, + relation_chunks_storage=self.lightrag.relation_chunks, + current_file_number=1, + total_files=1, + file_path=file_path, + ) + + # Ensure all storage updates are complete + await self.lightrag._insert_done() + + return processed_chunk_results + + +class ImageModalProcessor(BaseModalProcessor): + """Processor specialized for image content""" + + def __init__( + self, + lightrag: LightRAG, + modal_caption_func, + context_extractor: ContextExtractor = None, + ): + """Initialize image processor + + Args: + lightrag: LightRAG instance + modal_caption_func: Function for generating descriptions (supporting image understanding) + context_extractor: Context extractor instance + """ + super().__init__(lightrag, modal_caption_func, context_extractor) + + def _encode_image_to_base64(self, image_path: str) -> str: + """Encode image to base64""" + try: + with open(image_path, "rb") as image_file: + encoded_string = base64.b64encode(image_file.read()).decode("utf-8") + return encoded_string + except Exception as e: + logger.error(f"Failed to encode image {image_path}: {e}") + return "" + + async def generate_description_only( + self, + modal_content, + content_type: str, + item_info: Dict[str, Any] = None, + entity_name: str = None, + ) -> Tuple[str, Dict[str, Any]]: + """ + Generate image description and entity info only, without entity relation extraction. + Used for batch processing stage 1. + + Args: + modal_content: Image content to process + content_type: Type of modal content ("image") + item_info: Item information for context extraction + entity_name: Optional predefined entity name + + Returns: + Tuple of (enhanced_caption, entity_info) + """ + try: + # Parse image content (reuse existing logic) + if isinstance(modal_content, str): + try: + content_data = json.loads(modal_content) + except json.JSONDecodeError: + content_data = {"description": modal_content} + else: + content_data = modal_content + + image_path = content_data.get("img_path") + captions = content_data.get( + "image_caption", content_data.get("img_caption", []) + ) + footnotes = content_data.get( + "image_footnote", content_data.get("img_footnote", []) + ) + section_path = content_data.get("_section_path", "") + + # Validate image path + if not image_path: + raise ValueError( + f"No image path provided in modal_content: {modal_content}" + ) + + # Convert to Path object and check if it exists + image_path_obj = Path(image_path) + if not image_path_obj.exists(): + raise FileNotFoundError(f"Image file not found: {image_path}") + + # Extract context for current item + context = "" + if item_info: + context = self._get_context_for_item(item_info) + + # Build detailed visual analysis prompt with context + if context: + vision_prompt = PROMPTS.get( + "vision_prompt_with_context", PROMPTS["vision_prompt"] + ).format( + context=context, + section_path=section_path if section_path else "None", + entity_name=entity_name + if entity_name + else "unique descriptive name for this image", + image_path=image_path, + captions=captions if captions else "None", + footnotes=footnotes if footnotes else "None", + ) + else: + vision_prompt = PROMPTS["vision_prompt"].format( + section_path=section_path if section_path else "None", + entity_name=entity_name + if entity_name + else "unique descriptive name for this image", + image_path=image_path, + captions=captions if captions else "None", + footnotes=footnotes if footnotes else "None", + ) + + # Encode image to base64 + image_base64 = self._encode_image_to_base64(image_path) + if not image_base64: + raise RuntimeError(f"Failed to encode image to base64: {image_path}") + + # Call vision model with encoded image + response = await self.modal_caption_func( + vision_prompt, + image_data=image_base64, + system_prompt=PROMPTS["IMAGE_ANALYSIS_SYSTEM"], + ) + + # Parse response (reuse existing logic) + enhanced_caption, entity_info = self._parse_response(response, entity_name) + + return enhanced_caption, entity_info + + except Exception as e: + logger.error(f"Error generating image description: {e}") + # Fallback processing + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"image_{compute_mdhash_id(str(modal_content))}", + "entity_type": "image", + "summary": f"Image content: {str(modal_content)[:100]}", + } + return str(modal_content), fallback_entity + + async def process_multimodal_content( + self, + modal_content, + content_type: str, + file_path: str = "manual_creation", + entity_name: str = None, + item_info: Dict[str, Any] = None, + batch_mode: bool = False, + doc_id: str = None, + chunk_order_index: int = 0, + ) -> Tuple[str, Dict[str, Any]]: + """Process image content with context support""" + try: + # Generate description and entity info + enhanced_caption, entity_info = await self.generate_description_only( + modal_content, content_type, item_info, entity_name + ) + + # Build complete image content + if isinstance(modal_content, str): + try: + content_data = json.loads(modal_content) + except json.JSONDecodeError: + content_data = {"description": modal_content} + else: + content_data = modal_content + + image_path = content_data.get("img_path", "") + captions = content_data.get( + "image_caption", content_data.get("img_caption", []) + ) + footnotes = content_data.get( + "image_footnote", content_data.get("img_footnote", []) + ) + section_path = content_data.get("_section_path", "") + neighbor_text = content_data.get("_neighbor_text", "") + + modal_chunk = PROMPTS["image_chunk"].format( + section_path=section_path if section_path else "None", + neighbor_text=neighbor_text if neighbor_text else "None", + image_path=image_path, + captions=", ".join(captions) if captions else "None", + footnotes=", ".join(footnotes) if footnotes else "None", + enhanced_caption=enhanced_caption, + ) + + return await self._create_entity_and_chunk( + modal_chunk, + entity_info, + file_path, + batch_mode, + doc_id, + chunk_order_index, + ) + + except Exception as e: + logger.error(f"Error processing image content: {e}") + # Fallback processing + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"image_{compute_mdhash_id(str(modal_content))}", + "entity_type": "image", + "summary": f"Image content: {str(modal_content)[:100]}", + } + return str(modal_content), fallback_entity + + def _parse_response( + self, response: str, entity_name: str = None + ) -> Tuple[str, Dict[str, Any]]: + """Parse model response""" + try: + response_data = self._robust_json_parse(response) + + description = response_data.get("detailed_description", "") + entity_data = response_data.get("entity_info", {}) + + if not description or not entity_data: + raise ValueError("Missing required fields in response") + + if not all( + key in entity_data for key in ["entity_name", "entity_type", "summary"] + ): + raise ValueError("Missing required fields in entity_info") + + entity_data["entity_name"] = ( + entity_data["entity_name"] + f" ({entity_data['entity_type']})" + ) + if entity_name: + entity_data["entity_name"] = entity_name + + return description, entity_data + + except (json.JSONDecodeError, AttributeError, ValueError) as e: + logger.error(f"Error parsing image analysis response: {e}") + logger.debug(f"Raw response: {response}") + cleaned = self._strip_thinking_tags(response) + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"image_{compute_mdhash_id(cleaned)}", + "entity_type": "image", + "summary": cleaned[:100] + "..." if len(cleaned) > 100 else cleaned, + } + return cleaned, fallback_entity + + +class TableModalProcessor(BaseModalProcessor): + """Processor specialized for table content""" + + async def generate_description_only( + self, + modal_content, + content_type: str, + item_info: Dict[str, Any] = None, + entity_name: str = None, + ) -> Tuple[str, Dict[str, Any]]: + """ + Generate table description and entity info only, without entity relation extraction. + Used for batch processing stage 1. + + Args: + modal_content: Table content to process + content_type: Type of modal content ("table") + item_info: Item information for context extraction + entity_name: Optional predefined entity name + + Returns: + Tuple of (enhanced_caption, entity_info) + """ + try: + # Parse table content (reuse existing logic) + if isinstance(modal_content, str): + try: + content_data = json.loads(modal_content) + except json.JSONDecodeError: + content_data = {"table_body": modal_content} + else: + content_data = modal_content + + table_img_path = content_data.get("img_path") + table_caption = normalize_caption_list(content_data.get("table_caption")) + table_body = format_table_body(get_table_body(content_data)) + table_footnote = normalize_caption_list(content_data.get("table_footnote")) + + # Extract context for current item + context = "" + if item_info: + context = self._get_context_for_item(item_info) + + # Build table analysis prompt with context + if context: + table_prompt = PROMPTS.get( + "table_prompt_with_context", PROMPTS["table_prompt"] + ).format( + context=context, + entity_name=entity_name + if entity_name + else "descriptive name for this table", + table_img_path=table_img_path, + table_caption=table_caption if table_caption else "None", + table_body=table_body, + table_footnote=table_footnote if table_footnote else "None", + ) + else: + table_prompt = PROMPTS["table_prompt"].format( + entity_name=entity_name + if entity_name + else "descriptive name for this table", + table_img_path=table_img_path, + table_caption=table_caption if table_caption else "None", + table_body=table_body, + table_footnote=table_footnote if table_footnote else "None", + ) + + # Call LLM for table analysis + response = await self.modal_caption_func( + table_prompt, + system_prompt=PROMPTS["TABLE_ANALYSIS_SYSTEM"], + ) + + # Parse response (reuse existing logic) + enhanced_caption, entity_info = self._parse_table_response( + response, entity_name + ) + + return enhanced_caption, entity_info + + except Exception as e: + logger.error(f"Error generating table description: {e}") + # Fallback processing + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"table_{compute_mdhash_id(str(modal_content))}", + "entity_type": "table", + "summary": f"Table content: {str(modal_content)[:100]}", + } + return str(modal_content), fallback_entity + + async def process_multimodal_content( + self, + modal_content, + content_type: str, + file_path: str = "manual_creation", + entity_name: str = None, + item_info: Dict[str, Any] = None, + batch_mode: bool = False, + doc_id: str = None, + chunk_order_index: int = 0, + ) -> Tuple[str, Dict[str, Any]]: + """Process table content with context support""" + try: + # Generate description and entity info + enhanced_caption, entity_info = await self.generate_description_only( + modal_content, content_type, item_info, entity_name + ) + + # Parse table content for building complete chunk + if isinstance(modal_content, str): + try: + content_data = json.loads(modal_content) + except json.JSONDecodeError: + content_data = {"table_body": modal_content} + else: + content_data = modal_content + + table_img_path = content_data.get("img_path") + table_caption = normalize_caption_list(content_data.get("table_caption")) + table_body = format_table_body(get_table_body(content_data)) + table_footnote = normalize_caption_list(content_data.get("table_footnote")) + + # Build complete table content + modal_chunk = PROMPTS["table_chunk"].format( + table_img_path=table_img_path, + table_caption=", ".join(table_caption) if table_caption else "None", + table_body=table_body, + table_footnote=", ".join(table_footnote) if table_footnote else "None", + enhanced_caption=enhanced_caption, + ) + + return await self._create_entity_and_chunk( + modal_chunk, + entity_info, + file_path, + batch_mode, + doc_id, + chunk_order_index, + ) + + except Exception as e: + logger.error(f"Error processing table content: {e}") + # Fallback processing + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"table_{compute_mdhash_id(str(modal_content))}", + "entity_type": "table", + "summary": f"Table content: {str(modal_content)[:100]}", + } + return str(modal_content), fallback_entity + + def _parse_table_response( + self, response: str, entity_name: str = None + ) -> Tuple[str, Dict[str, Any]]: + """Parse table analysis response""" + try: + response_data = self._robust_json_parse(response) + + description = response_data.get("detailed_description", "") + entity_data = response_data.get("entity_info", {}) + + if not description or not entity_data: + raise ValueError("Missing required fields in response") + + if not all( + key in entity_data for key in ["entity_name", "entity_type", "summary"] + ): + raise ValueError("Missing required fields in entity_info") + + entity_data["entity_name"] = ( + entity_data["entity_name"] + f" ({entity_data['entity_type']})" + ) + if entity_name: + entity_data["entity_name"] = entity_name + + return description, entity_data + + except (json.JSONDecodeError, AttributeError, ValueError) as e: + logger.error(f"Error parsing table analysis response: {e}") + logger.debug(f"Raw response: {response}") + cleaned = self._strip_thinking_tags(response) + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"table_{compute_mdhash_id(cleaned)}", + "entity_type": "table", + "summary": cleaned[:100] + "..." if len(cleaned) > 100 else cleaned, + } + return cleaned, fallback_entity + + +class EquationModalProcessor(BaseModalProcessor): + """Processor specialized for equation content""" + + async def generate_description_only( + self, + modal_content, + content_type: str, + item_info: Dict[str, Any] = None, + entity_name: str = None, + ) -> Tuple[str, Dict[str, Any]]: + """ + Generate equation description and entity info only, without entity relation extraction. + Used for batch processing stage 1. + + Args: + modal_content: Equation content to process + content_type: Type of modal content ("equation") + item_info: Item information for context extraction + entity_name: Optional predefined entity name + + Returns: + Tuple of (enhanced_caption, entity_info) + """ + try: + # Parse equation content (reuse existing logic) + if isinstance(modal_content, str): + try: + content_data = json.loads(modal_content) + except json.JSONDecodeError: + content_data = {"equation": modal_content} + else: + content_data = modal_content + + equation_text, equation_format = get_equation_text_and_format(content_data) + + # Extract context for current item + context = "" + if item_info: + context = self._get_context_for_item(item_info) + + # Build equation analysis prompt with context + if context: + equation_prompt = PROMPTS.get( + "equation_prompt_with_context", PROMPTS["equation_prompt"] + ).format( + context=context, + equation_text=equation_text, + equation_format=equation_format, + entity_name=entity_name + if entity_name + else "descriptive name for this equation", + ) + else: + equation_prompt = PROMPTS["equation_prompt"].format( + equation_text=equation_text, + equation_format=equation_format, + entity_name=entity_name + if entity_name + else "descriptive name for this equation", + ) + + # Call LLM for equation analysis + response = await self.modal_caption_func( + equation_prompt, + system_prompt=PROMPTS["EQUATION_ANALYSIS_SYSTEM"], + ) + + # Parse response (reuse existing logic) + enhanced_caption, entity_info = self._parse_equation_response( + response, entity_name + ) + + return enhanced_caption, entity_info + + except Exception as e: + logger.error(f"Error generating equation description: {e}") + # Fallback processing + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"equation_{compute_mdhash_id(str(modal_content))}", + "entity_type": "equation", + "summary": f"Equation content: {str(modal_content)[:100]}", + } + return str(modal_content), fallback_entity + + async def process_multimodal_content( + self, + modal_content, + content_type: str, + file_path: str = "manual_creation", + entity_name: str = None, + item_info: Dict[str, Any] = None, + batch_mode: bool = False, + doc_id: str = None, + chunk_order_index: int = 0, + ) -> Tuple[str, Dict[str, Any]]: + """Process equation content with context support""" + try: + # Generate description and entity info + enhanced_caption, entity_info = await self.generate_description_only( + modal_content, content_type, item_info, entity_name + ) + + # Parse equation content for building complete chunk + if isinstance(modal_content, str): + try: + content_data = json.loads(modal_content) + except json.JSONDecodeError: + content_data = {"equation": modal_content} + else: + content_data = modal_content + + equation_text, equation_format = get_equation_text_and_format(content_data) + + # Build complete equation content + modal_chunk = PROMPTS["equation_chunk"].format( + equation_text=equation_text, + equation_format=equation_format, + enhanced_caption=enhanced_caption, + ) + + return await self._create_entity_and_chunk( + modal_chunk, + entity_info, + file_path, + batch_mode, + doc_id, + chunk_order_index, + ) + + except Exception as e: + logger.error(f"Error processing equation content: {e}") + # Fallback processing + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"equation_{compute_mdhash_id(str(modal_content))}", + "entity_type": "equation", + "summary": f"Equation content: {str(modal_content)[:100]}", + } + return str(modal_content), fallback_entity + + def _parse_equation_response( + self, response: str, entity_name: str = None + ) -> Tuple[str, Dict[str, Any]]: + """Parse equation analysis response with robust JSON handling""" + try: + response_data = self._robust_json_parse(response) + + description = response_data.get("detailed_description", "") + entity_data = response_data.get("entity_info", {}) + + if not description or not entity_data: + raise ValueError("Missing required fields in response") + + if not all( + key in entity_data for key in ["entity_name", "entity_type", "summary"] + ): + raise ValueError("Missing required fields in entity_info") + + entity_data["entity_name"] = ( + entity_data["entity_name"] + f" ({entity_data['entity_type']})" + ) + if entity_name: + entity_data["entity_name"] = entity_name + + return description, entity_data + + except (json.JSONDecodeError, AttributeError, ValueError) as e: + logger.error(f"Error parsing equation analysis response: {e}") + logger.debug(f"Raw response: {response}") + cleaned = self._strip_thinking_tags(response) + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"equation_{compute_mdhash_id(cleaned)}", + "entity_type": "equation", + "summary": cleaned[:100] + "..." if len(cleaned) > 100 else cleaned, + } + return cleaned, fallback_entity + + +class GenericModalProcessor(BaseModalProcessor): + """Generic processor for other types of modal content""" + + async def generate_description_only( + self, + modal_content, + content_type: str, + item_info: Dict[str, Any] = None, + entity_name: str = None, + ) -> Tuple[str, Dict[str, Any]]: + """ + Generate generic modal description and entity info only, without entity relation extraction. + Used for batch processing stage 1. + + Args: + modal_content: Generic modal content to process + content_type: Type of modal content + item_info: Item information for context extraction + entity_name: Optional predefined entity name + + Returns: + Tuple of (enhanced_caption, entity_info) + """ + try: + # Extract context for current item + context = "" + if item_info: + context = self._get_context_for_item(item_info) + + # Build generic analysis prompt with context + if context: + generic_prompt = PROMPTS.get( + "generic_prompt_with_context", PROMPTS["generic_prompt"] + ).format( + context=context, + content_type=content_type, + entity_name=entity_name + if entity_name + else f"descriptive name for this {content_type}", + content=str(modal_content), + ) + else: + generic_prompt = PROMPTS["generic_prompt"].format( + content_type=content_type, + entity_name=entity_name + if entity_name + else f"descriptive name for this {content_type}", + content=str(modal_content), + ) + + # Call LLM for generic analysis + response = await self.modal_caption_func( + generic_prompt, + system_prompt=PROMPTS["GENERIC_ANALYSIS_SYSTEM"].format( + content_type=content_type + ), + ) + + # Parse response (reuse existing logic) + enhanced_caption, entity_info = self._parse_generic_response( + response, entity_name, content_type + ) + + return enhanced_caption, entity_info + + except Exception as e: + logger.error(f"Error generating {content_type} description: {e}") + # Fallback processing + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"{content_type}_{compute_mdhash_id(str(modal_content))}", + "entity_type": content_type, + "summary": f"{content_type} content: {str(modal_content)[:100]}", + } + return str(modal_content), fallback_entity + + async def process_multimodal_content( + self, + modal_content, + content_type: str, + file_path: str = "manual_creation", + entity_name: str = None, + item_info: Dict[str, Any] = None, + batch_mode: bool = False, + doc_id: str = None, + chunk_order_index: int = 0, + ) -> Tuple[str, Dict[str, Any]]: + """Process generic modal content with context support""" + try: + # Generate description and entity info + enhanced_caption, entity_info = await self.generate_description_only( + modal_content, content_type, item_info, entity_name + ) + + # Build complete content + modal_chunk = PROMPTS["generic_chunk"].format( + content_type=content_type.title(), + content=str(modal_content), + enhanced_caption=enhanced_caption, + ) + + return await self._create_entity_and_chunk( + modal_chunk, + entity_info, + file_path, + batch_mode, + doc_id, + chunk_order_index, + ) + + except Exception as e: + logger.error(f"Error processing {content_type} content: {e}") + # Fallback processing + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"{content_type}_{compute_mdhash_id(str(modal_content))}", + "entity_type": content_type, + "summary": f"{content_type} content: {str(modal_content)[:100]}", + } + return str(modal_content), fallback_entity + + def _parse_generic_response( + self, response: str, entity_name: str = None, content_type: str = "content" + ) -> Tuple[str, Dict[str, Any]]: + """Parse generic analysis response""" + try: + response_data = self._robust_json_parse(response) + + description = response_data.get("detailed_description", "") + entity_data = response_data.get("entity_info", {}) + + if not description or not entity_data: + raise ValueError("Missing required fields in response") + + if not all( + key in entity_data for key in ["entity_name", "entity_type", "summary"] + ): + raise ValueError("Missing required fields in entity_info") + + entity_data["entity_name"] = ( + entity_data["entity_name"] + f" ({entity_data['entity_type']})" + ) + if entity_name: + entity_data["entity_name"] = entity_name + + return description, entity_data + + except (json.JSONDecodeError, AttributeError, ValueError) as e: + logger.error(f"Error parsing {content_type} analysis response: {e}") + logger.debug(f"Raw response: {response}") + cleaned = self._strip_thinking_tags(response) + fallback_entity = { + "entity_name": entity_name + if entity_name + else f"{content_type}_{compute_mdhash_id(cleaned)}", + "entity_type": content_type, + "summary": cleaned[:100] + "..." if len(cleaned) > 100 else cleaned, + } + return cleaned, fallback_entity diff --git a/raganything/omml_extractor.py b/raganything/omml_extractor.py new file mode 100644 index 0000000..6c08253 --- /dev/null +++ b/raganything/omml_extractor.py @@ -0,0 +1,758 @@ +""" +OMML (Office Math Markup Language) equation extraction for DOCX documents. + +Word stores equations as ```` elements inside ``word/document.xml``. +When a DOCX is converted to PDF (e.g. via LibreOffice for the MinerU parser +or via Docling's native pipeline), inline math is typically rasterized to an +image or replaced with a placeholder, so the structured math content is lost +to the downstream RAG pipeline. + +This module provides a zero-dependency, pure-stdlib utility to: + +1. Open a DOCX as a ZIP archive, +2. Locate every ```` / ```` element in document order, +3. Convert each one to a LaTeX string using a recursive transformer that + handles the most common OMML constructs (runs, fractions, scripts, + radicals, n-ary operators, functions, delimiters, matrices, accents, + and grouping characters), and +4. Optionally merge the extracted equations into an already-parsed + ``content_list`` (the MinerU-compatible list of content blocks produced + by :class:`raganything.parser.MineruParser` / :class:`DoclingParser`) + as ``{"type": "equation", "text": "", "text_format": "latex", ...}`` + blocks so that downstream multimodal processors can index them. + +The LaTeX produced by :func:`omml_to_latex` is intended to be searchable and +human-readable rather than typographically perfect; for unhandled constructs +the converter falls back to the concatenated text content of the element +rather than failing. This is deliberate: the priority for RAG is recall, not +pixel-accurate rendering. + +Example +------- +>>> from raganything.omml_extractor import extract_omml_equations +>>> equations = extract_omml_equations("paper.docx") # doctest: +SKIP +>>> for eq in equations: # doctest: +SKIP +... print(eq["index"], eq["text"]) +0 \\frac{a}{b} +1 \\sum_{i=1}^{n} x_{i}^{2} +""" + +from __future__ import annotations + +import logging +import zipfile +from pathlib import Path +from typing import Any, Dict, List, Optional, Union +from xml.etree import ElementTree as ET + +logger = logging.getLogger(__name__) + +# --- XML namespaces used in WordprocessingML / OMML ---------------------- +# These are the namespace URIs declared by every Word document part. We use +# them to construct fully qualified tag names so that lookups are robust to +# arbitrary namespace prefix choices in the source XML. +NS = { + "m": "http://schemas.openxmlformats.org/officeDocument/2006/math", + "w": "http://schemas.openxmlformats.org/wordprocessingml/2006/main", +} + +_M = "{" + NS["m"] + "}" +_W = "{" + NS["w"] + "}" + +# OMML "n-ary" operator characters and their LaTeX equivalents. Word stores +# the operator as a Unicode codepoint inside m:naryPr/m:chr; if the chr +# attribute is absent it defaults to the integral sign (\u222b). +_NARY_OPERATORS: Dict[str, str] = { + "\u2211": r"\sum", # SUMMATION + "\u220f": r"\prod", # PRODUCT + "\u2210": r"\coprod", # COPRODUCT + "\u222b": r"\int", # INTEGRAL + "\u222c": r"\iint", # DOUBLE INTEGRAL + "\u222d": r"\iiint", # TRIPLE INTEGRAL + "\u222e": r"\oint", # CONTOUR INTEGRAL + "\u222f": r"\oiint", # SURFACE INTEGRAL + "\u22c3": r"\bigcup", # N-ARY UNION + "\u22c2": r"\bigcap", # N-ARY INTERSECTION + "\u2a00": r"\bigodot", + "\u2a01": r"\bigoplus", + "\u2a02": r"\bigotimes", +} + +# A small mapping of Unicode math symbols Word likes to use in m:t runs. +# The set is intentionally minimal; anything not in the table is passed +# through unchanged so that ``\alpha`` and ``α`` both remain searchable. +_SYMBOL_TO_LATEX: Dict[str, str] = { + "\u00b1": r"\pm", + "\u00d7": r"\times", + "\u00f7": r"\div", + "\u2202": r"\partial", + "\u2207": r"\nabla", + "\u221a": r"\sqrt{}", # bare radical sign (rare; m:rad handles real ones) + "\u221e": r"\infty", + "\u2248": r"\approx", + "\u2260": r"\neq", + "\u2264": r"\leq", + "\u2265": r"\geq", + "\u2192": r"\to", + "\u21d2": r"\Rightarrow", + "\u21d4": r"\Leftrightarrow", + "\u2208": r"\in", + "\u2209": r"\notin", + "\u2282": r"\subset", + "\u2286": r"\subseteq", + "\u22c5": r"\cdot", + "\u2026": r"\dots", +} + + +# --- Public API ---------------------------------------------------------- + + +def extract_omml_equations( + docx_path: Union[str, Path], +) -> List[Dict[str, Any]]: + """Extract every OMML equation from a DOCX file in document order. + + Parameters + ---------- + docx_path: + Path to a ``.docx`` file. The file is opened read-only as a ZIP + archive; the path itself is not modified. + + Returns + ------- + list of dict + One dict per equation, in document order, with the following keys: + + - ``index`` (int): zero-based position in the equation sequence. + - ``text`` (str): LaTeX representation of the equation. + - ``text_format`` (str): always ``"latex"``. + - ``raw_omml`` (str): the original ```` XML, useful for + callers that want to plug in their own converter. + + Raises + ------ + FileNotFoundError + If ``docx_path`` does not exist. + ValueError + If the file is not a valid DOCX (no ``word/document.xml``) or its + XML cannot be parsed. + + Notes + ----- + Both top-level ```` elements and the ```` children of + ```` (display equations) are returned. Nested ```` + elements inside another ```` (which Word does not actually + produce) are skipped to avoid duplicate extraction. + """ + path = Path(docx_path) + if not path.exists(): + raise FileNotFoundError(f"DOCX file does not exist: {path}") + + try: + with zipfile.ZipFile(path, "r") as archive: + try: + xml_bytes = archive.read("word/document.xml") + except KeyError as e: + raise ValueError( + f"{path} does not contain word/document.xml; " + "is it a valid DOCX file?" + ) from e + except zipfile.BadZipFile as e: + raise ValueError(f"{path} is not a valid ZIP/DOCX archive") from e + + try: + root = ET.fromstring(xml_bytes) + except ET.ParseError as e: + raise ValueError(f"Could not parse word/document.xml in {path}: {e}") from e + + results: List[Dict[str, Any]] = [] + # iter() walks the entire tree in document order, which is exactly what + # we want: the resulting list is ordered the same way Word renders the + # equations on screen. + seen: set = set() + for elem in root.iter(_M + "oMath"): + elem_id = id(elem) + if elem_id in seen: + continue + # Skip nested oMath inside another oMath (defensive; Word does not + # nest oMath, but custom XML manipulation could). + parent_is_omath = False + for ancestor in root.iter(_M + "oMath"): + if ancestor is elem: + continue + for child in ancestor.iter(_M + "oMath"): + if child is elem: + parent_is_omath = True + break + if parent_is_omath: + break + if parent_is_omath: + continue + + seen.add(elem_id) + try: + latex = omml_to_latex(elem).strip() + except Exception as e: # pragma: no cover - defensive + logger.warning( + "Failed to convert OMML equation #%d to LaTeX: %s. " + "Falling back to text content.", + len(results), + e, + ) + latex = "".join(elem.itertext()).strip() + + results.append( + { + "index": len(results), + "text": latex, + "text_format": "latex", + "raw_omml": ET.tostring(elem, encoding="unicode"), + } + ) + + logger.debug("Extracted %d OMML equations from %s", len(results), path) + return results + + +def enrich_content_list_with_docx_equations( + content_list: List[Dict[str, Any]], + docx_path: Union[str, Path], + *, + page_idx_key: str = "page_idx", + deduplicate_existing_equations: bool = True, +) -> List[Dict[str, Any]]: + """Merge OMML equations extracted from ``docx_path`` into a parsed content list. + + The DOCX → PDF conversion that both the MinerU and Docling parsers rely on + typically loses inline math. This helper extracts the original OMML + equations directly from the DOCX file and inserts equation-typed blocks + into ``content_list`` so they participate in downstream RAG indexing. + + Parameters + ---------- + content_list: + A list of MinerU-compatible content blocks as produced by + :class:`raganything.parser.MineruParser` or + :class:`raganything.parser.DoclingParser`. The list is *not* mutated; + a new list is returned. + docx_path: + Path to the original ``.docx`` source. + page_idx_key: + Name of the page-index field on each block. Defaults to ``"page_idx"``, + which matches both built-in parsers. + deduplicate_existing_equations: + When ``True`` (the default), equations already present in + ``content_list`` (typically as ``"type": "equation"`` placeholders + inserted by the parser) whose ``text`` matches an extracted OMML + equation are kept and skipped. When ``False``, every extracted + equation is appended even if a duplicate already exists. + + Returns + ------- + list of dict + A new content list with the extracted equations appended at the end + (with ``page_idx`` copied from the last existing block, or 0 if the + list is empty). Callers that need precise positional placement can + re-sort or splice the returned list using ``raw_omml`` as a key. + + Notes + ----- + Positioning equations within a PDF-derived content list is intrinsically + lossy: the original DOCX paragraphs do not carry page numbers. For now + the helper appends equations in document order at the tail of the list + with a synthetic page index. This is sufficient for retrieval (the + equations become indexable LaTeX text) but not for visual reconstruction. + Callers needing positional accuracy can post-process the list using the + ``raw_omml`` field returned by :func:`extract_omml_equations`. + + Limitations + ----------- + - Deduplication compares the LaTeX ``text`` field exactly. It will + therefore not match parser-emitted placeholder strings (e.g. ``"[FORMULA]"``) + nor LaTeX produced by image-based equation OCR in MinerU/Docling, even + when they semantically refer to the same equation. If a parser already + emits LaTeX for some equations you may see both versions; pass + ``deduplicate_existing_equations=False`` and post-process if you need + a stricter merge policy. + - All extracted equations are appended at the end of the returned list + with ``page_idx`` copied from the last existing block (or ``0`` when + the input is empty). Treat ``page_idx`` on enriched equations as a + retrieval hint rather than a precise page-level location; use + ``raw_omml`` to splice back into the correct position when ordering + matters. + """ + extracted = extract_omml_equations(docx_path) + if not extracted: + return list(content_list) + + existing_equations: set = set() + if deduplicate_existing_equations: + for block in content_list: + if block.get("type") == "equation": + text = (block.get("text") or "").strip() + if text: + existing_equations.add(text) + + last_page_idx = 0 + if content_list: + try: + last_page_idx = int(content_list[-1].get(page_idx_key, 0) or 0) + except (TypeError, ValueError): + last_page_idx = 0 + + enriched: List[Dict[str, Any]] = list(content_list) + appended = 0 + for eq in extracted: + latex = eq["text"].strip() + if not latex: + continue + if deduplicate_existing_equations and latex in existing_equations: + continue + enriched.append( + { + "type": "equation", + "img_path": "", + "text": latex, + "text_format": "latex", + page_idx_key: last_page_idx, + "_source": "omml_extractor", + } + ) + appended += 1 + + logger.info( + "Enriched content list with %d/%d OMML equations from %s", + appended, + len(extracted), + docx_path, + ) + return enriched + + +# --- OMML → LaTeX recursive transformer ---------------------------------- + + +def omml_to_latex(element: ET.Element) -> str: + """Convert a single ```` element (or any of its children) to LaTeX. + + The function is a small recursive descent transformer. For each known OMML + construct it emits the canonical LaTeX form; unknown elements fall through + to their concatenated text content so that callers always get *some* + searchable representation. + + Parameters + ---------- + element: + An :class:`xml.etree.ElementTree.Element` from the OMML namespace. + Typically the root ```` returned by + :func:`extract_omml_equations`, but any descendant works too. + + Returns + ------- + str + A LaTeX string. The result is *not* wrapped in math delimiters + (``$ ... $`` or ``\\[ ... \\]``); the caller chooses the context. + """ + return _convert(element) + + +def _convert(element: Optional[ET.Element]) -> str: + if element is None: + return "" + + tag = _local_name(element.tag) + handler = _HANDLERS.get(tag) + if handler is not None: + return handler(element) + + # Generic fallback: concatenate child conversions, then own text. + parts = [_text_for(element)] + for child in element: + parts.append(_convert(child)) + if child.tail: + parts.append(_escape_text(child.tail)) + return "".join(p for p in parts if p) + + +def _local_name(qname: str) -> str: + if "}" in qname: + return qname.split("}", 1)[1] + return qname + + +def _text_for(element: ET.Element) -> str: + if element.text is None: + return "" + return _escape_text(element.text) + + +def _escape_text(text: str) -> str: + """Map common Word math symbols to LaTeX commands; pass through the rest.""" + if not text: + return "" + out = [] + for ch in text: + replacement = _SYMBOL_TO_LATEX.get(ch) + out.append(replacement if replacement is not None else ch) + return "".join(out) + + +def _children_by_tag(element: ET.Element, tag: str) -> List[ET.Element]: + full = _M + tag + return [c for c in element if c.tag == full] + + +def _first_child(element: ET.Element, tag: str) -> Optional[ET.Element]: + children = _children_by_tag(element, tag) + return children[0] if children else None + + +def _convert_children(element: Optional[ET.Element]) -> str: + # Tolerate a missing child element: handlers like _h_fraction or + # _h_radical pass the result of _first_child() directly here, which can + # be None when the source DOCX is malformed (a fraction without m:num, + # a radical without m:e, ...). Returning "" keeps the converter on its + # recall-over-correctness contract instead of raising. + if element is None: + return "" + parts = [] + for child in element: + parts.append(_convert(child)) + if child.tail: + parts.append(_escape_text(child.tail)) + return "".join(parts) + + +# --- Per-element handlers ------------------------------------------------- +# +# Each handler is responsible for producing the LaTeX equivalent of one OMML +# construct and for recursing into its semantically meaningful children. + + +def _h_omath(element: ET.Element) -> str: + return _convert_children(element) + + +def _h_omath_para(element: ET.Element) -> str: + # Display math container; we just join inner equations with a space. + return " ".join(_convert(c) for c in _children_by_tag(element, "oMath")) + + +def _h_run(element: ET.Element) -> str: + # m:r is a math "run" containing m:t text nodes. + parts = [] + for t in _children_by_tag(element, "t"): + parts.append(_text_for(t)) + return "".join(parts) + + +def _h_text(element: ET.Element) -> str: + return _text_for(element) + + +def _h_fraction(element: ET.Element) -> str: + num = _first_child(element, "num") + den = _first_child(element, "den") + return r"\frac{" + _convert_children(num) + "}{" + _convert_children(den) + "}" + + +def _h_superscript(element: ET.Element) -> str: + base = _first_child(element, "e") + sup = _first_child(element, "sup") + return "{" + _convert_children(base) + "}^{" + _convert_children(sup) + "}" + + +def _h_subscript(element: ET.Element) -> str: + base = _first_child(element, "e") + sub = _first_child(element, "sub") + return "{" + _convert_children(base) + "}_{" + _convert_children(sub) + "}" + + +def _h_sub_superscript(element: ET.Element) -> str: + base = _first_child(element, "e") + sub = _first_child(element, "sub") + sup = _first_child(element, "sup") + return ( + "{" + + _convert_children(base) + + "}_{" + + _convert_children(sub) + + "}^{" + + _convert_children(sup) + + "}" + ) + + +def _h_pre_sub_superscript(element: ET.Element) -> str: + # m:sPre — a pre-script: prescripts to the left of the base. + base = _first_child(element, "e") + sub = _first_child(element, "sub") + sup = _first_child(element, "sup") + return ( + "{}_{" + + _convert_children(sub) + + "}^{" + + _convert_children(sup) + + "}{" + + _convert_children(base) + + "}" + ) + + +def _h_radical(element: ET.Element) -> str: + deg = _first_child(element, "deg") + base = _first_child(element, "e") + base_latex = _convert_children(base) + if deg is not None and list(deg): + return r"\sqrt[" + _convert_children(deg) + "]{" + base_latex + "}" + return r"\sqrt{" + base_latex + "}" + + +def _h_nary(element: ET.Element) -> str: + # m:nary — n-ary operator (sum, integral, etc.). The operator character + # lives in m:naryPr/m:chr/@m:val; defaults to the integral sign per ECMA-376. + pr = _first_child(element, "naryPr") + # ECMA-376 §22.1.2.74: when m:chr is absent the operator defaults to + # the integral sign. When m:chr is present but its value is not in our + # LaTeX table, fall back to the original Unicode character rather than + # silently rewriting it to \int — preserving the symbol keeps the + # equation searchable for downstream RAG even when the operator is + # exotic (e.g. \bigsqcup, \bigwedge, custom math fonts). + op = r"\int" + if pr is not None: + chr_elem = _first_child(pr, "chr") + if chr_elem is not None: + val = chr_elem.get(_M + "val") + if val: + op = _NARY_OPERATORS.get(val, val) + sub = _first_child(element, "sub") + sup = _first_child(element, "sup") + base = _first_child(element, "e") + out = op + if sub is not None and list(sub): + out += "_{" + _convert_children(sub) + "}" + if sup is not None and list(sup): + out += "^{" + _convert_children(sup) + "}" + if base is not None: + body = _convert_children(base) + if body: + out += " " + body + return out + + +def _h_function(element: ET.Element) -> str: + # m:func — applied function such as sin, cos, log, ln. fName provides + # the function name (typically a m:r run); m:e provides the argument. + fname = _first_child(element, "fName") + arg = _first_child(element, "e") + name = _convert_children(fname).strip() if fname is not None else "" + arg_latex = _convert_children(arg) if arg is not None else "" + # If the name matches a known LaTeX command, keep it as a control sequence. + known = { + "sin", + "cos", + "tan", + "csc", + "sec", + "cot", + "sinh", + "cosh", + "tanh", + "arcsin", + "arccos", + "arctan", + "log", + "ln", + "exp", + "lim", + "max", + "min", + "sup", + "inf", + "det", + "dim", + "ker", + } + if name in known: + return f"\\{name}{{{arg_latex}}}" + return f"{name}({arg_latex})" + + +def _h_delimiter(element: ET.Element) -> str: + # m:d — delimited expression. m:dPr/@begChr and @endChr give the actual + # opening/closing characters; defaults are parentheses. + pr = _first_child(element, "dPr") + beg, end, sep = "(", ")", "," + if pr is not None: + beg_elem = _first_child(pr, "begChr") + end_elem = _first_child(pr, "endChr") + sep_elem = _first_child(pr, "sepChr") + if beg_elem is not None: + beg = beg_elem.get(_M + "val", beg) + if end_elem is not None: + end = end_elem.get(_M + "val", end) + if sep_elem is not None: + sep = sep_elem.get(_M + "val", sep) + inner = sep.join(_convert_children(e) for e in _children_by_tag(element, "e")) + return ( + _delim_to_latex(beg, opening=True) + inner + _delim_to_latex(end, opening=False) + ) + + +def _delim_to_latex(ch: str, *, opening: bool) -> str: + mapping = { + "(": "(", + ")": ")", + "[": "[", + "]": "]", + "{": r"\{", + "}": r"\}", + "|": "|", + "\u2016": r"\|", # DOUBLE VERTICAL LINE + "\u27e8": r"\langle", + "\u27e9": r"\rangle", + "\u230a": r"\lfloor", + "\u230b": r"\rfloor", + "\u2308": r"\lceil", + "\u2309": r"\rceil", + "": "." if opening else ".", + } + return mapping.get(ch, ch) + + +def _h_matrix(element: ET.Element) -> str: + rows = _children_by_tag(element, "mr") + body = [] + for row in rows: + cells = [_convert_children(e) for e in _children_by_tag(row, "e")] + body.append(" & ".join(cells)) + return r"\begin{matrix} " + r" \\ ".join(body) + r" \end{matrix}" + + +def _h_bar(element: ET.Element) -> str: + # m:bar — accent bar; pos="top" → overline, pos="bot" → underline. + pr = _first_child(element, "barPr") + pos = "top" + if pr is not None: + pos_elem = _first_child(pr, "pos") + if pos_elem is not None: + pos = pos_elem.get(_M + "val", pos) + base = _first_child(element, "e") + inner = _convert_children(base) + return (r"\overline{" if pos == "top" else r"\underline{") + inner + "}" + + +def _h_acc(element: ET.Element) -> str: + # m:acc — accent (hat, tilde, dot, etc.). m:accPr/m:chr gives the char. + pr = _first_child(element, "accPr") + chr_val = "\u0302" # combining circumflex (hat) by default + if pr is not None: + chr_elem = _first_child(pr, "chr") + if chr_elem is not None: + chr_val = chr_elem.get(_M + "val", chr_val) + accent = { + "\u0302": r"\hat", + "\u0303": r"\tilde", + "\u0304": r"\bar", + "\u0307": r"\dot", + "\u0308": r"\ddot", + "\u20d7": r"\vec", + "\u030c": r"\check", + "\u0306": r"\breve", + }.get(chr_val, r"\hat") + base = _first_child(element, "e") + return accent + "{" + _convert_children(base) + "}" + + +def _h_group_chr(element: ET.Element) -> str: + # m:groupChr — group expression with a character on top or bottom (e.g. + # an over-brace). We emit the most common forms and fall through. + pr = _first_child(element, "groupChrPr") + chr_val = "" + pos = "top" + if pr is not None: + chr_elem = _first_child(pr, "chr") + pos_elem = _first_child(pr, "pos") + if chr_elem is not None: + chr_val = chr_elem.get(_M + "val", "") + if pos_elem is not None: + pos = pos_elem.get(_M + "val", pos) + base = _first_child(element, "e") + inner = _convert_children(base) + if chr_val == "\u23de": # TOP CURLY BRACKET + return r"\overbrace{" + inner + "}" + if chr_val == "\u23df": # BOTTOM CURLY BRACKET + return r"\underbrace{" + inner + "}" + if pos == "bot": + return r"\underset{" + chr_val + "}{" + inner + "}" + return r"\overset{" + chr_val + "}{" + inner + "}" + + +def _h_lim_low(element: ET.Element) -> str: + base = _first_child(element, "e") + lim = _first_child(element, "lim") + return _convert_children(base) + "_{" + _convert_children(lim) + "}" + + +def _h_lim_upp(element: ET.Element) -> str: + base = _first_child(element, "e") + lim = _first_child(element, "lim") + return _convert_children(base) + "^{" + _convert_children(lim) + "}" + + +def _h_box(element: ET.Element) -> str: + return _convert_children(_first_child(element, "e")) + + +def _h_phantom(element: ET.Element) -> str: + return r"\phantom{" + _convert_children(_first_child(element, "e")) + "}" + + +def _h_pass_through(element: ET.Element) -> str: + """Default for elements whose semantics are 'recurse on children'.""" + return _convert_children(element) + + +# Map of OMML local-name → handler. Anything not listed falls through to the +# generic recursive descent in :func:`_convert`, which preserves text content. +_HANDLERS: Dict[str, Any] = { + "oMath": _h_omath, + "oMathPara": _h_omath_para, + "r": _h_run, + "t": _h_text, + "f": _h_fraction, + "sSup": _h_superscript, + "sSub": _h_subscript, + "sSubSup": _h_sub_superscript, + "sPre": _h_pre_sub_superscript, + "rad": _h_radical, + "nary": _h_nary, + "func": _h_function, + "d": _h_delimiter, + "m": _h_matrix, + "bar": _h_bar, + "acc": _h_acc, + "groupChr": _h_group_chr, + "limLow": _h_lim_low, + "limUpp": _h_lim_upp, + "box": _h_box, + "phant": _h_phantom, + # Pass-through containers that have no LaTeX equivalent of their own. + "e": _h_pass_through, + "num": _h_pass_through, + "den": _h_pass_through, + "sub": _h_pass_through, + "sup": _h_pass_through, + "deg": _h_pass_through, + "fName": _h_pass_through, + "lim": _h_pass_through, + "mr": _h_pass_through, +} + + +__all__ = [ + "extract_omml_equations", + "enrich_content_list_with_docx_equations", + "omml_to_latex", +] diff --git a/raganything/parser.py b/raganything/parser.py new file mode 100644 index 0000000..d48678a --- /dev/null +++ b/raganything/parser.py @@ -0,0 +1,2794 @@ +# type: ignore +""" +Generic Document Parser Utility + +This module provides functionality for parsing documents using the built-in +MinerU, Docling, and PaddleOCR parsers, and exposes a small registry for +**in-process** custom parsers (see :func:`register_parser`). + +Important notes: + +- The custom parser registry is primarily intended for Python usage, where your + application imports a parser implementation and calls :func:`register_parser` + before invoking RAGAnything APIs. +- The standalone CLI (``python -m raganything.parser`` or the installed console + script) does **not** perform automatic plugin discovery; it will only see + custom parsers that have already been registered in the current process + (for example via a wrapper script or :mod:`sitecustomize`). + +MinerU 2.0 no longer includes LibreOffice document conversion module. +For Office documents (.doc, .docx, .ppt, .pptx), please convert them to PDF +format first. +""" + +from __future__ import annotations + + +import os +import platform +import hashlib +import json +import argparse +import base64 +import subprocess +import tempfile +import threading +import logging +import time +import urllib.parse +import urllib.request +import shutil +from pathlib import Path +from typing import ( + Dict, + List, + Optional, + Union, + Tuple, + Any, + Iterator, +) + +from raganything.asset_urls import attach_public_media_urls + +_IS_WINDOWS: bool = platform.system() == "Windows" + + +class MineruExecutionError(Exception): + """catch mineru error""" + + def __init__(self, return_code, error_msg): + self.return_code = return_code + self.error_msg = error_msg + super().__init__( + f"Mineru command failed with return code {return_code}: {error_msg}" + ) + + +class Parser: + """ + Base class for document parsing utilities. + + Defines common functionality and constants for parsing different document types. + """ + + # Define common file formats + OFFICE_FORMATS = {".doc", ".docx", ".ppt", ".pptx", ".xls", ".xlsx"} + IMAGE_FORMATS = {".png", ".jpeg", ".jpg", ".bmp", ".tiff", ".tif", ".gif", ".webp"} + TEXT_FORMATS = {".txt", ".md"} + + # Class-level logger + logger = logging.getLogger(__name__) + + @staticmethod + def _is_url(path: str) -> bool: + """Check if the path is a URL.""" + try: + result = urllib.parse.urlparse(str(path)) + return all([result.scheme, result.netloc]) + except ValueError: + return False + + def _download_file(self, url: str) -> Path: + """ + Download a file from a URL to a temporary file. + Attempts to preserve the file extension from the URL or Content-Type header. + """ + tmp_path = None + response = None + try: + self.logger.info(f"Downloading file from URL: {url}") + + # Parse URL to get path and extension + parsed_url = urllib.parse.urlparse(url) + path = Path(parsed_url.path) + suffix = path.suffix if path.suffix else "" + + # Create request with User-Agent to avoid 403 Forbidden from some sites + req = urllib.request.Request( + url, + data=None, + headers={ + "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36" + }, + ) + + # Open connection to get headers (with an explicit timeout to prevent hanging) + response = urllib.request.urlopen(req, timeout=30) + + # If no extension in URL, try Content-Type header + if not suffix: + content_type = ( + response.headers.get("Content-Type", "").split(";")[0].strip() + ) + if content_type: + import mimetypes + + guessed_ext = mimetypes.guess_extension(content_type) + if guessed_ext: + suffix = guessed_ext + self.logger.info( + f"Inferred file extension '{suffix}' from Content-Type: {content_type}" + ) + + # Create a temporary file with the correct extension + fd, tmp_path = tempfile.mkstemp(suffix=suffix) + os.close(fd) + tmp_path = Path(tmp_path) + + # Download the file content + with open(tmp_path, "wb") as out_file: + shutil.copyfileobj(response, out_file) + + self.logger.info( + f"Downloaded to temporary file: {tmp_path} ({tmp_path.stat().st_size} bytes)" + ) + return tmp_path + + except Exception as e: + # Clean up temp file if it was created + if tmp_path and tmp_path.exists(): + try: + tmp_path.unlink() + self.logger.debug( + f"Cleaned up temporary file after failed download: {tmp_path}" + ) + except Exception as cleanup_error: + self.logger.warning( + f"Failed to clean up temp file {tmp_path}: {cleanup_error}" + ) + + self.logger.error(f"Failed to download file from {url}: {e}") + raise RuntimeError(f"Failed to download file from {url}: {e}") + finally: + if response: + response.close() + + def __init__(self) -> None: + """Initialize the base parser.""" + pass + + @staticmethod + def _unique_output_dir( + base_dir: Union[str, Path], file_path: Union[str, Path] + ) -> Path: + """Create a unique output subdirectory for a file to prevent same-name collisions. + + When multiple files share the same name (e.g. dir1/paper.pdf and dir2/paper.pdf), + their parser output would collide in the same output directory. This creates a + unique subdirectory by appending a short hash of the file's absolute path. (Fixes #51) + + Args: + base_dir: The base output directory + file_path: Path to the input file + + Returns: + Path like base_dir/paper_a1b2c3d4/ unique per absolute file path. + """ + file_path = Path(file_path).resolve() + stem = file_path.stem + path_hash = hashlib.md5(str(file_path).encode()).hexdigest()[:8] + return Path(base_dir) / f"{stem}_{path_hash}" + + @classmethod + def _libreoffice_command_candidates(cls) -> List[str]: + """Return LibreOffice executable candidates for office conversion. + + On Windows the ``libreoffice``/``soffice`` commands are frequently not + on PATH even when LibreOffice is installed, so we also probe the + ``.exe`` names and the standard ``Program Files`` install locations. + """ + command_names = ["libreoffice", "soffice"] + candidates: List[str] = [] + + for command_name in command_names: + resolved = shutil.which(command_name) + if resolved: + candidates.append(resolved) + candidates.append(command_name) + + if _IS_WINDOWS: + for command_name in ["soffice.exe", "libreoffice.exe"]: + resolved = shutil.which(command_name) + if resolved: + candidates.append(resolved) + candidates.append(command_name) + + for env_name in ("PROGRAMFILES", "PROGRAMFILES(X86)"): + program_files = os.environ.get(env_name) + if not program_files: + continue + + libreoffice_program = Path(program_files) / "LibreOffice" / "program" + for exe_name in ("soffice.exe", "libreoffice.exe"): + exe_path = libreoffice_program / exe_name + if exe_path.exists(): + candidates.append(str(exe_path)) + + deduped: List[str] = [] + seen = set() + for candidate in candidates: + normalized = os.path.normcase(candidate) + if normalized not in seen: + seen.add(normalized) + deduped.append(candidate) + + return deduped + + @classmethod + def convert_office_to_pdf( + cls, doc_path: Union[str, Path], output_dir: Optional[str] = None + ) -> Path: + """ + Convert Office document (.doc, .docx, .ppt, .pptx, .xls, .xlsx) to PDF. + Requires LibreOffice to be installed. + + Args: + doc_path: Path to the Office document file + output_dir: Output directory for the PDF file + + Returns: + Path to the generated PDF file + """ + try: + # Convert to Path object for easier handling + doc_path = Path(doc_path) + if not doc_path.exists(): + raise FileNotFoundError(f"Office document does not exist: {doc_path}") + + name_without_suff = doc_path.stem + + # Prepare output directory + if output_dir: + base_output_dir = Path(output_dir) + else: + base_output_dir = doc_path.parent / "libreoffice_output" + + base_output_dir.mkdir(parents=True, exist_ok=True) + + # Create temporary directory for PDF conversion + with tempfile.TemporaryDirectory() as temp_dir: + temp_path = Path(temp_dir) + + # Convert to PDF using LibreOffice + cls.logger.info( + f"Converting {doc_path.name} to PDF using LibreOffice..." + ) + + # Try LibreOffice commands in order of preference, including + # Windows .exe names and standard install locations. + commands_to_try = cls._libreoffice_command_candidates() + + conversion_successful = False + last_cmd = commands_to_try[-1] + for cmd in commands_to_try: + is_last = cmd == last_cmd + try: + convert_cmd = [ + cmd, + "--headless", + "--convert-to", + "pdf", + "--outdir", + str(temp_path), + str(doc_path), + ] + + # Prepare conversion subprocess parameters + convert_subprocess_kwargs = { + "capture_output": True, + "text": True, + "timeout": 60, # 60 second timeout + "encoding": "utf-8", + "errors": "ignore", + } + + # Hide console window on Windows + if _IS_WINDOWS: + convert_subprocess_kwargs["creationflags"] = ( + subprocess.CREATE_NO_WINDOW + ) + + result = subprocess.run( + convert_cmd, **convert_subprocess_kwargs + ) + + if result.returncode == 0: + conversion_successful = True + cls.logger.info( + f"Successfully converted {doc_path.name} to PDF using {cmd}" + ) + break + else: + cls.logger.warning( + f"LibreOffice command '{cmd}' failed: {result.stderr}" + ) + except FileNotFoundError: + # Only warn when all candidates are exhausted; otherwise + # log at debug level so that the normal fallback from + # 'libreoffice' → 'soffice' does not surface a spurious + # WARNING to users whose system only has 'soffice'. + if is_last: + cls.logger.warning(f"LibreOffice command '{cmd}' not found") + else: + cls.logger.debug( + f"LibreOffice command '{cmd}' not found, " + f"trying next candidate" + ) + except subprocess.TimeoutExpired: + cls.logger.warning(f"LibreOffice command '{cmd}' timed out") + except Exception as e: + cls.logger.error( + f"LibreOffice command '{cmd}' failed with exception: {e}" + ) + + if not conversion_successful: + raise RuntimeError( + f"LibreOffice conversion failed for {doc_path.name}. " + f"Please ensure LibreOffice is installed:\n" + "- Windows: Download from https://www.libreoffice.org/download/download/\n" + "- macOS: brew install --cask libreoffice\n" + "- Ubuntu/Debian: sudo apt-get install libreoffice\n" + "- CentOS/RHEL: sudo yum install libreoffice\n" + "Alternatively, convert the document to PDF manually." + ) + + # Find the generated PDF + pdf_files = list(temp_path.glob("*.pdf")) + if not pdf_files: + raise RuntimeError( + f"PDF conversion failed for {doc_path.name} - no PDF file generated. " + f"Please check LibreOffice installation or try manual conversion." + ) + + pdf_path = pdf_files[0] + cls.logger.info( + f"Generated PDF: {pdf_path.name} ({pdf_path.stat().st_size} bytes)" + ) + + # Validate the generated PDF + if pdf_path.stat().st_size < 100: # Very small file, likely empty + raise RuntimeError( + "Generated PDF appears to be empty or corrupted. " + "Original file may have issues or LibreOffice conversion failed." + ) + + # Copy PDF to final output directory + final_pdf_path = base_output_dir / f"{name_without_suff}.pdf" + import shutil + + shutil.copy2(pdf_path, final_pdf_path) + + return final_pdf_path + + except Exception as e: + cls.logger.error(f"Error in convert_office_to_pdf: {str(e)}") + raise + + @classmethod + def convert_text_to_pdf( + cls, text_path: Union[str, Path], output_dir: Optional[str] = None + ) -> Path: + """ + Convert text file (.txt, .md) to PDF using ReportLab with full markdown support. + + Args: + text_path: Path to the text file + output_dir: Output directory for the PDF file + + Returns: + Path to the generated PDF file + """ + try: + text_path = Path(text_path) + if not text_path.exists(): + raise FileNotFoundError(f"Text file does not exist: {text_path}") + + # Supported text formats + supported_text_formats = {".txt", ".md"} + if text_path.suffix.lower() not in supported_text_formats: + raise ValueError(f"Unsupported text format: {text_path.suffix}") + + # Read the text content + try: + with open(text_path, "r", encoding="utf-8") as f: + text_content = f.read() + except UnicodeDecodeError: + # Try with different encodings + for encoding in ["gbk", "latin-1", "cp1252"]: + try: + with open(text_path, "r", encoding=encoding) as f: + text_content = f.read() + cls.logger.info( + f"Successfully read file with {encoding} encoding" + ) + break + except UnicodeDecodeError: + continue + else: + raise RuntimeError( + f"Could not decode text file {text_path.name} with any supported encoding" + ) + + # Prepare output directory + if output_dir: + base_output_dir = Path(output_dir) + else: + base_output_dir = text_path.parent / "reportlab_output" + + base_output_dir.mkdir(parents=True, exist_ok=True) + pdf_path = base_output_dir / f"{text_path.stem}.pdf" + + # Convert text to PDF + cls.logger.info(f"Converting {text_path.name} to PDF...") + + try: + from reportlab.lib.pagesizes import A4 + from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer + from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle + from reportlab.lib.units import inch + from reportlab.pdfbase import pdfmetrics + from reportlab.pdfbase.ttfonts import TTFont + + support_chinese = True + try: + if "WenQuanYi" not in pdfmetrics.getRegisteredFontNames(): + if not Path( + "/usr/share/fonts/wqy-microhei/wqy-microhei.ttc" + ).exists(): + support_chinese = False + cls.logger.warning( + "WenQuanYi font not found at /usr/share/fonts/wqy-microhei/wqy-microhei.ttc. Chinese characters may not render correctly." + ) + else: + pdfmetrics.registerFont( + TTFont( + "WenQuanYi", + "/usr/share/fonts/wqy-microhei/wqy-microhei.ttc", + ) + ) + except Exception as e: + support_chinese = False + cls.logger.warning( + f"Failed to register WenQuanYi font: {e}. Chinese characters may not render correctly." + ) + + # Create PDF document + doc = SimpleDocTemplate( + str(pdf_path), + pagesize=A4, + leftMargin=inch, + rightMargin=inch, + topMargin=inch, + bottomMargin=inch, + ) + + # Get styles + styles = getSampleStyleSheet() + normal_style = styles["Normal"] + heading_style = styles["Heading1"] + if support_chinese: + normal_style.fontName = "WenQuanYi" + heading_style.fontName = "WenQuanYi" + + # Try to register a font that supports Chinese characters + # UnicodeCIDFont only supports specific CID font names: + # STSong-Light (Chinese), MSung-Light (Chinese Traditional), + # HeiseiMin-W3 / HeiseiKakuGo-W5 (Japanese), + # HYSMyeongJo-Medium (Korean) + # System font names like "SimSun", "SimHei", "STHeiti" are + # NOT valid CID names and silently fail (#24). + try: + from reportlab.pdfbase.cidfonts import UnicodeCIDFont + + # STSong-Light is the standard CID font for Simplified + # Chinese and works cross-platform (reportlab ships the + # required CID resources internally). + pdfmetrics.registerFont(UnicodeCIDFont("STSong-Light")) + if not support_chinese: + normal_style.fontName = "STSong-Light" + heading_style.fontName = "STSong-Light" + except Exception: + pass # Use default fonts if Chinese font setup fails + + # Build content + story = [] + + # Handle markdown or plain text + if text_path.suffix.lower() == ".md": + # Handle markdown content - simplified implementation + lines = text_content.split("\n") + for line in lines: + line = line.strip() + if not line: + story.append(Spacer(1, 12)) + continue + + # Headers + if line.startswith("#"): + level = len(line) - len(line.lstrip("#")) + header_text = line.lstrip("#").strip() + if header_text: + header_style = ParagraphStyle( + name=f"Heading{level}", + parent=heading_style, + fontSize=max(16 - level, 10), + spaceAfter=8, + spaceBefore=16 if level <= 2 else 12, + ) + story.append(Paragraph(header_text, header_style)) + else: + # Regular text + story.append(Paragraph(line, normal_style)) + story.append(Spacer(1, 6)) + else: + # Handle plain text files (.txt) + cls.logger.info( + f"Processing plain text file with {len(text_content)} characters..." + ) + + # Split text into lines and process each line + lines = text_content.split("\n") + line_count = 0 + + for line in lines: + line = line.rstrip() + line_count += 1 + + # Empty lines + if not line.strip(): + story.append(Spacer(1, 6)) + continue + + # Regular text lines + # Escape special characters for ReportLab + safe_line = ( + line.replace("&", "&") + .replace("<", "<") + .replace(">", ">") + ) + + # Create paragraph + story.append(Paragraph(safe_line, normal_style)) + story.append(Spacer(1, 3)) + + cls.logger.info(f"Added {line_count} lines to PDF") + + # If no content was added, add a placeholder + if not story: + story.append(Paragraph("(Empty text file)", normal_style)) + + # Build PDF + doc.build(story) + cls.logger.info( + f"Successfully converted {text_path.name} to PDF ({pdf_path.stat().st_size / 1024:.1f} KB)" + ) + + except ImportError: + raise RuntimeError( + "reportlab is required for text-to-PDF conversion. " + "Please install it using: pip install reportlab" + ) + except Exception as e: + raise RuntimeError( + f"Failed to convert text file {text_path.name} to PDF: {str(e)}" + ) + + # Validate the generated PDF + if not pdf_path.exists() or pdf_path.stat().st_size < 100: + raise RuntimeError( + f"PDF conversion failed for {text_path.name} - generated PDF is empty or corrupted." + ) + + return pdf_path + + except Exception as e: + cls.logger.error(f"Error in convert_text_to_pdf: {str(e)}") + raise + + @classmethod + def _process_inline_markdown(cls, text: str) -> str: + """ + Process inline markdown formatting (bold, italic, code, links) + + Args: + text: Raw text with markdown formatting + + Returns: + Text with ReportLab markup + """ + import re + + # Escape special characters for ReportLab + text = text.replace("&", "&").replace("<", "<").replace(">", ">") + + # Bold text: **text** or __text__ + text = re.sub(r"\*\*(.*?)\*\*", r"\1", text) + text = re.sub(r"__(.*?)__", r"\1", text) + + # Italic text: *text* or _text_ (but not in the middle of words) + text = re.sub(r"(?\1
    ", text) + text = re.sub(r"(?\1
    ", text) + + # Inline code: `code` + text = re.sub( + r"`([^`]+?)`", + r'\1', + text, + ) + + # Links: [text](url) - convert to text with URL annotation + def link_replacer(match): + link_text = match.group(1) + url = match.group(2) + return f'{link_text}' + + text = re.sub(r"\[([^\]]+?)\]\(([^)]+?)\)", link_replacer, text) + + # Strikethrough: ~~text~~ + text = re.sub(r"~~(.*?)~~", r"\1", text) + + return text + + def parse_pdf( + self, + pdf_path: Union[str, Path], + output_dir: Optional[str] = None, + method: str = "auto", + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Abstract method to parse PDF document. + Must be implemented by subclasses. + + Args: + pdf_path: Path to the PDF file + output_dir: Output directory path + method: Parsing method (auto, txt, ocr) + lang: Document language for OCR optimization + **kwargs: Additional parameters for parser-specific command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + raise NotImplementedError("parse_pdf must be implemented by subclasses") + + def parse_image( + self, + image_path: Union[str, Path], + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Abstract method to parse image document. + Must be implemented by subclasses. + + Note: Different parsers may support different image formats. + Check the specific parser's documentation for supported formats. + + Args: + image_path: Path to the image file + output_dir: Output directory path + lang: Document language for OCR optimization + **kwargs: Additional parameters for parser-specific command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + raise NotImplementedError("parse_image must be implemented by subclasses") + + def parse_document( + self, + file_path: Union[str, Path], + method: str = "auto", + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Abstract method to parse a document. + Must be implemented by subclasses. + + Args: + file_path: Path to the file to be parsed + method: Parsing method (auto, txt, ocr) + output_dir: Output directory path + lang: Document language for OCR optimization + **kwargs: Additional parameters for parser-specific command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + raise NotImplementedError("parse_document must be implemented by subclasses") + + def check_installation(self) -> bool: + """ + Abstract method to check if the parser is properly installed. + Must be implemented by subclasses. + + Returns: + bool: True if installation is valid, False otherwise + """ + raise NotImplementedError( + "check_installation must be implemented by subclasses" + ) + + +class MineruParser(Parser): + """ + MinerU 2.0 document parsing utility class + + Supports parsing PDF and image documents, converting the content into structured data + and generating markdown and JSON output. + + Note: Office documents are no longer directly supported. Please convert them to PDF first. + """ + + __slots__ = () + + # Class-level logger + logger = logging.getLogger(__name__) + + def __init__(self) -> None: + """Initialize MineruParser""" + super().__init__() + + @classmethod + def _is_mineru_unsafe_windows_path(cls, path: Union[str, Path]) -> bool: + if not _IS_WINDOWS: + return False + + path = Path(path) + path_text = str(path) + try: + path_text.encode("ascii") + except UnicodeEncodeError: + return True + + return any( + part.endswith((" ", ".")) for part in path.parts + ) or path.stem.endswith((" ", ".")) + + @classmethod + def _mineru_safe_path_hash(cls, path: Union[str, Path]) -> str: + path_text = str(Path(path).resolve()) + return hashlib.md5(path_text.encode("utf-8")).hexdigest()[:10] + + @classmethod + def _prepare_mineru_paths( + cls, + input_path: Union[str, Path], + output_dir: Union[str, Path], + hash_path: Optional[Union[str, Path]] = None, + ) -> Tuple[Path, Path, str, Optional[Path]]: + input_path = Path(input_path) + output_dir = Path(output_dir) + hash_source = Path(hash_path) if hash_path is not None else input_path + + input_is_unsafe = cls._is_mineru_unsafe_windows_path(input_path) + output_is_unsafe = cls._is_mineru_unsafe_windows_path(output_dir) + if not input_is_unsafe and not output_is_unsafe: + return input_path, output_dir, input_path.stem, None + + path_hash = cls._mineru_safe_path_hash(hash_source) + temp_dir = Path(tempfile.mkdtemp(prefix="raganything_mineru_")) + + mineru_input_path = input_path + if input_is_unsafe: + suffix = input_path.suffix.lower() + mineru_input_path = temp_dir / f"input_{path_hash}{suffix}" + shutil.copy2(input_path, mineru_input_path) + + mineru_output_dir = output_dir + if output_is_unsafe: + mineru_output_dir = temp_dir / f"mineru_{path_hash}" + mineru_output_dir.mkdir(parents=True, exist_ok=True) + + return mineru_input_path, mineru_output_dir, mineru_input_path.stem, temp_dir + + @classmethod + def _copy_mineru_output_tree(cls, source_dir: Path, target_dir: Path) -> None: + if source_dir == target_dir: + return + + target_dir.mkdir(parents=True, exist_ok=True) + if not source_dir.exists(): + return + + for item in source_dir.iterdir(): + target = target_dir / item.name + if item.is_dir(): + shutil.copytree(item, target, dirs_exist_ok=True) + else: + shutil.copy2(item, target) + + @classmethod + def _cleanup_mineru_temp_dir(cls, temp_dir: Optional[Path]) -> None: + if temp_dir is not None and temp_dir.exists(): + shutil.rmtree(temp_dir, ignore_errors=True) + + @classmethod + def _run_mineru_command( + cls, + input_path: Union[str, Path], + output_dir: Union[str, Path], + method: str = "auto", + lang: Optional[str] = None, + backend: Optional[str] = None, + start_page: Optional[int] = None, + end_page: Optional[int] = None, + formula: bool = True, + table: bool = True, + device: Optional[str] = None, + source: Optional[str] = None, + vlm_url: Optional[str] = None, + timeout: Optional[int] = None, + **kwargs, + ) -> None: + """ + Run mineru command line tool + + Args: + input_path: Path to input file or directory + output_dir: Output directory path + method: Parsing method (auto, txt, ocr) + lang: Document language for OCR optimization + backend: Parsing backend + start_page: Starting page number (0-based) + end_page: Ending page number (0-based) + formula: Enable formula parsing + table: Enable table parsing + device: Inference device + source: Model source + vlm_url: When the backend is `vlm-http-client`, you need to specify the server_url + timeout: Maximum seconds to wait for MinerU to complete. None means no limit. + Raises TimeoutError if the process does not finish within this duration. + **kwargs: Additional parameters for subprocess (e.g., env) + """ + cmd = [ + "mineru", + "-p", + str(input_path), + "-o", + str(output_dir), + "-m", + method, + ] + + if backend: + cmd.extend(["-b", backend]) + if source: + cmd.extend(["--source", source]) + if lang: + cmd.extend(["-l", lang]) + if start_page is not None: + cmd.extend(["-s", str(start_page)]) + if end_page is not None: + cmd.extend(["-e", str(end_page)]) + if not formula: + cmd.extend(["-f", "false"]) + if not table: + cmd.extend(["-t", "false"]) + if device: + cmd.extend(["-d", device]) + if vlm_url: + cmd.extend(["-u", vlm_url]) + + output_lines = [] + error_lines = [] + + # Handle and validate environment variables + custom_env = kwargs.pop("env", None) + + # Validate env if provided + if custom_env is not None: + if not isinstance(custom_env, dict): + raise TypeError( + f"env must be a dictionary, got {type(custom_env).__name__}" + ) + for k, v in custom_env.items(): + if not isinstance(k, str) or not isinstance(v, str): + raise TypeError("env keys and values must be strings") + + # Check for unsupported arguments to fail fast + if kwargs: + unsupported = ", ".join(kwargs.keys()) + raise TypeError( + f"MineruParser._run_mineru_command received unexpected keyword argument(s): {unsupported}" + ) + + try: + # Prepare subprocess parameters to hide console window on Windows + import threading + from queue import Queue, Empty + + # Log the command being executed + cls.logger.info(f"Executing mineru command: {' '.join(cmd)}") + + env = None + if custom_env: + env = os.environ.copy() + env.update(custom_env) + + subprocess_kwargs = { + "stdout": subprocess.PIPE, + "stderr": subprocess.PIPE, + "text": True, + "encoding": "utf-8", + "errors": "ignore", + "bufsize": 1, # Line buffered + "env": env, + } + + # Hide console window on Windows + if _IS_WINDOWS: + subprocess_kwargs["creationflags"] = subprocess.CREATE_NO_WINDOW + + # Function to read output from subprocess and add to queue + def enqueue_output(pipe, queue, prefix): + try: + for line in iter(pipe.readline, ""): + if line.strip(): # Only add non-empty lines + queue.put((prefix, line.strip())) + pipe.close() + except Exception as e: + queue.put((prefix, f"Error reading {prefix}: {e}")) + + # Start subprocess + process = subprocess.Popen(cmd, **subprocess_kwargs) + + # Create queues for stdout and stderr + stdout_queue = Queue() + stderr_queue = Queue() + + # Start threads to read output + stdout_thread = threading.Thread( + target=enqueue_output, args=(process.stdout, stdout_queue, "STDOUT") + ) + stderr_thread = threading.Thread( + target=enqueue_output, args=(process.stderr, stderr_queue, "STDERR") + ) + + stdout_thread.daemon = True + stderr_thread.daemon = True + stdout_thread.start() + stderr_thread.start() + + # Process output in real time + start_time = time.monotonic() + + while process.poll() is None: + # Check stdout queue + try: + while True: + prefix, line = stdout_queue.get_nowait() + output_lines.append(line) + # Log mineru output with INFO level, prefixed with [MinerU] + cls.logger.info(f"[MinerU] {line}") + except Empty: + pass + + # Check stderr queue + try: + while True: + prefix, line = stderr_queue.get_nowait() + # Log mineru errors with WARNING level + if "warning" in line.lower(): + cls.logger.warning(f"[MinerU] {line}") + elif "error" in line.lower(): + cls.logger.error(f"[MinerU] {line}") + error_message = line.split("\n")[0] + error_lines.append(error_message) + else: + cls.logger.info(f"[MinerU] {line}") + except Empty: + pass + + # Enforce timeout — kill the process and raise if exceeded + if timeout is not None and (time.monotonic() - start_time) > timeout: + process.kill() + process.wait() + # Give reader threads a moment to drain before raising + stdout_thread.join(timeout=1) + stderr_thread.join(timeout=1) + raise TimeoutError( + f"MinerU did not finish within {timeout}s. " + "This often means a model download is stuck due to network issues. " + "Check your internet connection or pre-download the required models." + ) + + # Small delay to prevent busy waiting + time.sleep(0.1) + + # Process any remaining output after process completion + try: + while True: + prefix, line = stdout_queue.get_nowait() + output_lines.append(line) + cls.logger.info(f"[MinerU] {line}") + except Empty: + pass + + try: + while True: + prefix, line = stderr_queue.get_nowait() + if "warning" in line.lower(): + cls.logger.warning(f"[MinerU] {line}") + elif "error" in line.lower(): + cls.logger.error(f"[MinerU] {line}") + error_message = line.split("\n")[0] + error_lines.append(error_message) + else: + cls.logger.info(f"[MinerU] {line}") + except Empty: + pass + + # Wait for process to complete and get return code + return_code = process.wait() + + # Wait for threads to finish + stdout_thread.join(timeout=5) + stderr_thread.join(timeout=5) + + if return_code != 0 or error_lines: + cls.logger.info("[MinerU] Command executed failed") + raise MineruExecutionError(return_code, error_lines) + else: + cls.logger.info("[MinerU] Command executed successfully") + + except MineruExecutionError: + raise + except subprocess.CalledProcessError as e: + cls.logger.error(f"Error running mineru subprocess command: {e}") + cls.logger.error(f"Command: {' '.join(cmd)}") + cls.logger.error(f"Return code: {e.returncode}") + raise + except FileNotFoundError: + raise RuntimeError( + "mineru command not found. Please ensure MinerU 2.0 is properly installed:\n" + "pip install -U 'mineru[core]' or uv pip install -U 'mineru[core]'" + ) + except Exception as e: + error_message = f"Unexpected error running mineru command: {e}" + cls.logger.error(error_message) + raise RuntimeError(error_message) from e + + @classmethod + def _read_output_files( + cls, output_dir: Path, file_stem: str, method: str = "auto" + ) -> Tuple[List[Dict[str, Any]], str]: + """ + Read the output files generated by mineru + + Args: + output_dir: Output directory + file_stem: File name without extension + method: Parsing method (used as fallback if subdirectory scan fails) + + Returns: + Tuple containing (content list JSON, Markdown text) + """ + # Look for the generated files + md_file = output_dir / f"{file_stem}.md" + json_file = output_dir / f"{file_stem}_content_list.json" + images_base_dir = output_dir # Base directory for images + + file_stem_subdir = output_dir / file_stem + if file_stem_subdir.is_dir(): + # Scan for actual output subdirectory instead of assuming method name + found = False + for subdir in file_stem_subdir.iterdir(): + if not subdir.is_dir(): + continue + # Check if this subdirectory contains the expected JSON output file + candidate_json = subdir / f"{file_stem}_content_list.json" + if candidate_json.exists(): + # Found the actual output directory + md_file = subdir / f"{file_stem}.md" + json_file = candidate_json + images_base_dir = subdir + found = True + cls.logger.info( + f"Found MinerU output in subdirectory: {subdir.name}" + ) + break + + # Fallback to method-based path if scanning didn't find output + if not found: + cls.logger.debug( + f"No output found by scanning, falling back to method-based path: {method}" + ) + md_file = file_stem_subdir / method / f"{file_stem}.md" + json_file = file_stem_subdir / method / f"{file_stem}_content_list.json" + images_base_dir = file_stem_subdir / method + + # Read markdown content + md_content = "" + if md_file.exists(): + try: + with open(md_file, "r", encoding="utf-8") as f: + md_content = f.read() + except Exception as e: + cls.logger.warning(f"Could not read markdown file {md_file}: {e}") + + # Read JSON content list + content_list = [] + if json_file.exists(): + try: + with open(json_file, "r", encoding="utf-8") as f: + content_list = json.load(f) + + # Normalize MinerU 2.0 field names to expected names for backward compatibility. + # MinerU 2.0 renamed: img_caption -> image_caption, img_footnote -> image_footnote + # The codebase primarily uses image_caption/image_footnote with img_caption/img_footnote + # as fallback, but we ensure both fields exist so downstream code works regardless. + _FIELD_ALIASES = { + # MinerU 1.x name -> MinerU 2.0 name (canonical) + "img_caption": "image_caption", + "img_footnote": "image_footnote", + } + for item in content_list: + if isinstance(item, dict): + for old_name, new_name in _FIELD_ALIASES.items(): + # If only the old field exists, copy it to the new field name + if old_name in item and new_name not in item: + item[new_name] = item[old_name] + # If only the new field exists, copy it to the old field name (for any legacy code) + elif new_name in item and old_name not in item: + item[old_name] = item[new_name] + + # Always fix relative paths in content_list to absolute paths + cls.logger.info( + f"Fixing image paths in {json_file} with base directory: {images_base_dir}" + ) + for item in content_list: + if isinstance(item, dict): + for field_name in [ + "img_path", + "table_img_path", + "equation_img_path", + ]: + if field_name in item and item[field_name]: + img_path = item[field_name] + absolute_img_path = ( + images_base_dir / img_path + ).resolve() + + # Security check: ensure the image path is within the base directory + resolved_base = images_base_dir.resolve() + if not absolute_img_path.is_relative_to(resolved_base): + cls.logger.warning( + f"Potential path traversal detected in {field_name}: {img_path}. Skipping." + ) + item[field_name] = "" # Clear unsafe path + continue + + item[field_name] = str(absolute_img_path) + + attach_public_media_urls(item) + + except Exception as e: + cls.logger.warning(f"Could not read JSON file {json_file}: {e}") + + return content_list, md_content + + def parse_pdf( + self, + pdf_path: Union[str, Path], + output_dir: Optional[str] = None, + method: str = "auto", + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Parse PDF document using MinerU 2.0 + + Args: + pdf_path: Path to the PDF file + output_dir: Output directory path + method: Parsing method (auto, txt, ocr) + lang: Document language for OCR optimization + **kwargs: Additional parameters for mineru command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + try: + # Convert to Path object for easier handling + pdf_path = Path(pdf_path) + if not pdf_path.exists(): + raise FileNotFoundError(f"PDF file does not exist: {pdf_path}") + + # Prepare output directory — use unique subdirectory to prevent + # same-name file collisions when output_dir is shared (#51) + if output_dir: + base_output_dir = self._unique_output_dir(output_dir, pdf_path) + else: + base_output_dir = pdf_path.parent / "mineru_output" + + base_output_dir.mkdir(parents=True, exist_ok=True) + + mineru_input_path, mineru_output_dir, file_stem, temp_dir = ( + self._prepare_mineru_paths(pdf_path, base_output_dir) + ) + + try: + # Run mineru command + self._run_mineru_command( + input_path=mineru_input_path, + output_dir=mineru_output_dir, + method=method, + lang=lang, + **kwargs, + ) + + self._copy_mineru_output_tree(mineru_output_dir, base_output_dir) + + # Read the generated output files + # Map backend to expected output directory name for better compatibility + # MinerU 2.7.0+ uses different directory names based on backend: + # - pipeline -> auto/ + # - vlm-* -> vlm/ + # - hybrid-* -> hybrid_auto/ + # Note: _read_output_files() will scan subdirectories automatically, + # so this mapping is just for optimization and fallback + # Use `or ""` to handle both missing keys and explicit None values + backend = kwargs.get("backend") or "" + if backend.startswith("vlm-"): + method = "vlm" + elif backend.startswith("hybrid-"): + method = "hybrid_auto" + + content_list, _ = self._read_output_files( + base_output_dir, file_stem, method=method + ) + return content_list + finally: + self._cleanup_mineru_temp_dir(temp_dir) + + except MineruExecutionError: + raise + except Exception as e: + self.logger.error(f"Error in parse_pdf: {str(e)}") + raise + + def parse_image( + self, + image_path: Union[str, Path], + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Parse image document using MinerU 2.0 + + Note: MinerU 2.0 natively supports .png, .jpeg, .jpg formats. + Other formats (.bmp, .tiff, .tif, etc.) will be automatically converted to .png. + + Args: + image_path: Path to the image file + output_dir: Output directory path + lang: Document language for OCR optimization + **kwargs: Additional parameters for mineru command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + try: + # Convert to Path object for easier handling + image_path = Path(image_path) + if not image_path.exists(): + raise FileNotFoundError(f"Image file does not exist: {image_path}") + + # Supported image formats by MinerU 2.0 + mineru_supported_formats = {".png", ".jpeg", ".jpg"} + + # All supported image formats (including those we can convert) + all_supported_formats = { + ".png", + ".jpeg", + ".jpg", + ".bmp", + ".tiff", + ".tif", + ".gif", + ".webp", + } + + ext = image_path.suffix.lower() + if ext not in all_supported_formats: + raise ValueError( + f"Unsupported image format: {ext}. Supported formats: {', '.join(all_supported_formats)}" + ) + + # Determine the actual image file to process + actual_image_path = image_path + temp_converted_file = None + + # If format is not natively supported by MinerU, convert it + if ext not in mineru_supported_formats: + self.logger.info( + f"Converting {ext} image to PNG for MinerU compatibility..." + ) + + try: + from PIL import Image + except ImportError: + raise RuntimeError( + "PIL/Pillow is required for image format conversion. " + "Please install it using: pip install Pillow" + ) + + # Create temporary directory for conversion + temp_dir = Path(tempfile.mkdtemp()) + temp_converted_file = temp_dir / f"{image_path.stem}_converted.png" + + try: + # Open and convert image + with Image.open(image_path) as img: + # Handle different image modes + if img.mode in ("RGBA", "LA", "P"): + # For images with transparency or palette, convert to RGB first + if img.mode == "P": + img = img.convert("RGBA") + + # Create white background for transparent images + background = Image.new("RGB", img.size, (255, 255, 255)) + if img.mode == "RGBA": + background.paste( + img, mask=img.split()[-1] + ) # Use alpha channel as mask + else: + background.paste(img) + img = background + elif img.mode not in ("RGB", "L"): + # Convert other modes to RGB + img = img.convert("RGB") + + # Save as PNG + img.save(temp_converted_file, "PNG", optimize=True) + self.logger.info( + f"Successfully converted {image_path.name} to PNG ({temp_converted_file.stat().st_size / 1024:.1f} KB)" + ) + + actual_image_path = temp_converted_file + + except Exception as e: + if temp_converted_file and temp_converted_file.exists(): + temp_converted_file.unlink() + raise RuntimeError( + f"Failed to convert image {image_path.name}: {str(e)}" + ) + + # Prepare output directory — use unique subdirectory to prevent + # same-name file collisions when output_dir is shared (#51) + if output_dir: + base_output_dir = self._unique_output_dir(output_dir, image_path) + else: + base_output_dir = image_path.parent / "mineru_output" + + base_output_dir.mkdir(parents=True, exist_ok=True) + + mineru_input_path, mineru_output_dir, file_stem, mineru_temp_dir = ( + self._prepare_mineru_paths( + actual_image_path, base_output_dir, hash_path=image_path + ) + ) + + try: + # Run mineru command (images are processed with OCR method) + self._run_mineru_command( + input_path=mineru_input_path, + output_dir=mineru_output_dir, + method="ocr", # Images require OCR method + lang=lang, + **kwargs, + ) + + self._copy_mineru_output_tree(mineru_output_dir, base_output_dir) + + # Read the generated output files + content_list, _ = self._read_output_files( + base_output_dir, file_stem, method="ocr" + ) + return content_list + + except MineruExecutionError: + raise + + finally: + self._cleanup_mineru_temp_dir(mineru_temp_dir) + + # Clean up temporary converted file if it was created + if temp_converted_file and temp_converted_file.exists(): + try: + temp_converted_file.unlink() + temp_converted_file.parent.rmdir() # Remove temp directory if empty + except Exception: + pass # Ignore cleanup errors + + except Exception as e: + self.logger.error(f"Error in parse_image: {str(e)}") + raise + + def parse_office_doc( + self, + doc_path: Union[str, Path], + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Parse office document by first converting to PDF, then parsing with MinerU 2.0 + + Note: This method requires LibreOffice to be installed separately for PDF conversion. + MinerU 2.0 no longer includes built-in Office document conversion. + + Supported formats: .doc, .docx, .ppt, .pptx, .xls, .xlsx + + Args: + doc_path: Path to the document file (.doc, .docx, .ppt, .pptx, .xls, .xlsx) + output_dir: Output directory path + lang: Document language for OCR optimization + **kwargs: Additional parameters for mineru command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + try: + # Convert Office document to PDF using base class method + pdf_path = self.convert_office_to_pdf(doc_path, output_dir) + + # Parse the converted PDF + return self.parse_pdf( + pdf_path=pdf_path, output_dir=output_dir, lang=lang, **kwargs + ) + + except Exception as e: + self.logger.error(f"Error in parse_office_doc: {str(e)}") + raise + + def parse_text_file( + self, + text_path: Union[str, Path], + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Parse text file by first converting to PDF, then parsing with MinerU 2.0 + + Supported formats: .txt, .md + + Args: + text_path: Path to the text file (.txt, .md) + output_dir: Output directory path + lang: Document language for OCR optimization + **kwargs: Additional parameters for mineru command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + try: + # Convert text file to PDF using base class method + pdf_path = self.convert_text_to_pdf(text_path, output_dir) + + # Parse the converted PDF + return self.parse_pdf( + pdf_path=pdf_path, output_dir=output_dir, lang=lang, **kwargs + ) + + except Exception as e: + self.logger.error(f"Error in parse_text_file: {str(e)}") + raise + + def parse_document( + self, + file_path: Union[str, Path], + method: str = "auto", + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Parse document using MinerU 2.0 based on file extension + + Args: + file_path: Path to the file to be parsed + method: Parsing method (auto, txt, ocr) + output_dir: Output directory path + lang: Document language for OCR optimization + **kwargs: Additional parameters for mineru command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + # Convert to Path object + file_path = Path(file_path) + if not file_path.exists(): + raise FileNotFoundError(f"File does not exist: {file_path}") + + # Get file extension + ext = file_path.suffix.lower() + + # Choose appropriate parser based on file type + if ext == ".pdf": + return self.parse_pdf(file_path, output_dir, method, lang, **kwargs) + elif ext in self.IMAGE_FORMATS: + return self.parse_image(file_path, output_dir, lang, **kwargs) + elif ext in self.OFFICE_FORMATS: + self.logger.warning( + f"Warning: Office document detected ({ext}). " + f"MinerU 2.0 requires conversion to PDF first." + ) + return self.parse_office_doc(file_path, output_dir, lang, **kwargs) + elif ext in self.TEXT_FORMATS: + return self.parse_text_file(file_path, output_dir, lang, **kwargs) + else: + # For unsupported file types, try as PDF + self.logger.warning( + f"Warning: Unsupported file extension '{ext}', " + f"attempting to parse as PDF" + ) + return self.parse_pdf(file_path, output_dir, method, lang, **kwargs) + + def check_installation(self) -> bool: + """ + Check if MinerU 2.0 is properly installed + + Returns: + bool: True if installation is valid, False otherwise + """ + try: + # Prepare subprocess parameters to hide console window on Windows + subprocess_kwargs = { + "capture_output": True, + "text": True, + "check": True, + "encoding": "utf-8", + "errors": "ignore", + } + + # Hide console window on Windows + if _IS_WINDOWS: + subprocess_kwargs["creationflags"] = subprocess.CREATE_NO_WINDOW + + result = subprocess.run(["mineru", "--version"], **subprocess_kwargs) + self.logger.debug(f"MinerU version: {result.stdout.strip()}") + return True + except (subprocess.CalledProcessError, FileNotFoundError): + self.logger.debug( + "MinerU 2.0 is not properly installed. " + "Please install it using: pip install -U 'mineru[core]'" + ) + return False + + +class DoclingParser(Parser): + """ + Docling document parsing utility class. + + Specialized in parsing Office documents and HTML files, converting the content + into structured data and generating markdown and JSON output. + + Backed by the Docling Python API (`docling.document_converter.DocumentConverter`) + to avoid subprocess overhead and re-initialization of Docling's deep-learning + models on every call. A `DocumentConverter` instance is built lazily on first + use and cached per pipeline-option combination so that subsequent parses + against the same configuration reuse already-loaded models. + + Compatibility changes vs. earlier CLI-subprocess implementation + ---------------------------------------------------------------- + - `check_installation()` now returns True iff the Docling Python package + can be imported (`docling.document_converter.DocumentConverter`). The + previous behavior of probing the `docling` CLI executable on PATH is + gone; environments that ship the CLI without the importable package + (or vice versa) will see a different result than before. + - The legacy `env={...}` kwarg is still accepted for source-level + compatibility but is **ignored**: the Python API does not run a + subprocess, so per-call environment overrides no longer take effect. + Callers needing model-cache, proxy, or CUDA configuration should set + the corresponding environment variables in the parent process before + instantiating `DoclingParser`, or configure Docling directly via + `_get_converter` kwargs (`artifacts_path`, `table_mode`, ...). + - JSON and Markdown artifacts are still written to + `//docling/` for backward compatibility, but + they are produced by Docling's `export_to_dict()` / + `export_to_markdown()` rather than by the CLI's serializer; expect the + same logical content but not byte-identical files (key ordering, + whitespace, optional fields may differ). + + Concurrency + ----------- + The internal converter cache is guarded by a lock so that a single + `DoclingParser` instance can be safely shared across threads without + duplicating Docling model loads on first use. + """ + + # Define Docling-specific formats + HTML_FORMATS = {".html", ".htm", ".xhtml"} + + def __init__(self) -> None: + """Initialize DoclingParser""" + super().__init__() + # Cache of DocumentConverter instances keyed by pipeline-option tuple, + # so that loaded layout/OCR/table models are reused across calls. + # The lock guards concurrent first-use from creating duplicate + # converters (and re-loading models) when the same DoclingParser + # instance is shared across threads. + self._converter_cache: Dict[Tuple, Any] = {} + self._converter_cache_lock = threading.Lock() + + def parse_pdf( + self, + pdf_path: Union[str, Path], + output_dir: Optional[str] = None, + method: str = "auto", + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Parse PDF document using Docling + + Args: + pdf_path: Path to the PDF file + output_dir: Output directory path + method: Parsing method (auto, txt, ocr) + lang: Document language for OCR optimization + **kwargs: Additional parameters for docling command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + try: + # Convert to Path object for easier handling + pdf_path = Path(pdf_path) + if not pdf_path.exists(): + raise FileNotFoundError(f"PDF file does not exist: {pdf_path}") + + name_without_suff = pdf_path.stem + + # Prepare output directory — use unique subdirectory to prevent + # same-name file collisions when output_dir is shared (#51) + if output_dir: + base_output_dir = self._unique_output_dir(output_dir, pdf_path) + else: + base_output_dir = pdf_path.parent / "docling_output" + + base_output_dir.mkdir(parents=True, exist_ok=True) + + # Parse via the Docling Python API and convert directly from the + # in-memory dict, bypassing the JSON disk round-trip. + doc_dict = self._run_docling_python( + input_path=pdf_path, + output_dir=base_output_dir, + file_stem=name_without_suff, + **kwargs, + ) + file_subdir = base_output_dir / name_without_suff / "docling" + content_list = self.read_from_block_recursive( + doc_dict["body"], "body", file_subdir, 0, "0", doc_dict + ) + return content_list + + except Exception as e: + self.logger.error(f"Error in parse_pdf: {str(e)}") + raise + + def parse_document( + self, + file_path: Union[str, Path], + method: str = "auto", + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Parse document using Docling based on file extension + + Args: + file_path: Path to the file to be parsed or URL + method: Parsing method + output_dir: Output directory path + lang: Document language for optimization + **kwargs: Additional parameters for docling command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + downloaded_temp_file = None + + try: + # Check if input is a URL + if self._is_url(file_path): + file_path = self._download_file(file_path) + downloaded_temp_file = file_path + + # Convert to Path object + file_path = Path(file_path) + if not file_path.exists(): + raise FileNotFoundError(f"File does not exist: {file_path}") + + # Get file extension + ext = file_path.suffix.lower() + + # Choose appropriate parser based on file type + if ext == ".pdf": + return self.parse_pdf(file_path, output_dir, method, lang, **kwargs) + elif ext in self.OFFICE_FORMATS: + return self.parse_office_doc(file_path, output_dir, lang, **kwargs) + elif ext in self.HTML_FORMATS: + return self.parse_html(file_path, output_dir, lang, **kwargs) + else: + raise ValueError( + f"Unsupported file format: {ext}. " + f"Docling only supports PDF files, Office formats ({', '.join(self.OFFICE_FORMATS)}) " + f"and HTML formats ({', '.join(self.HTML_FORMATS)})" + ) + finally: + # Clean up temporary file if we downloaded one + if downloaded_temp_file and downloaded_temp_file.exists(): + try: + downloaded_temp_file.unlink() + self.logger.debug(f"Removed temporary file: {downloaded_temp_file}") + except Exception as e: + self.logger.warning( + f"Failed to remove temporary file {downloaded_temp_file}: {e}" + ) + + def _get_converter(self, **kwargs) -> Any: + """ + Lazily build and cache a `DocumentConverter` configured from kwargs. + + Caches one converter per distinct pipeline-option tuple so that Docling's + layout, OCR, and TableFormer models are loaded only once per process for + a given configuration, drastically reducing per-document latency on + multi-document workloads. + + Recognized kwargs (all optional): + table_mode (str): "fast" (default) or "accurate" – TableFormer mode. + tables (bool): Enable table structure recognition (default: True). + allow_ocr (bool): Enable OCR on scanned content (default: True). + artifacts_path (str): Path to a custom Docling models directory. + """ + from docling.document_converter import DocumentConverter, PdfFormatOption + from docling.datamodel.base_models import InputFormat + from docling.datamodel.pipeline_options import ( + PdfPipelineOptions, + TableFormerMode, + ) + + table_mode = str(kwargs.get("table_mode", "fast")).lower() + do_tables = bool(kwargs.get("tables", True)) + do_ocr = bool(kwargs.get("allow_ocr", True)) + artifacts_path = kwargs.get("artifacts_path") + + cache_key = (table_mode, do_tables, do_ocr, artifacts_path) + # Fast path: snapshot read outside the lock (dict reads are atomic in + # CPython for hashable keys) so the common cache-hit case stays + # contention-free. + cached = self._converter_cache.get(cache_key) + if cached is not None: + return cached + + pipeline_options = PdfPipelineOptions() + if hasattr(pipeline_options, "do_ocr"): + pipeline_options.do_ocr = do_ocr + if hasattr(pipeline_options, "do_table_structure"): + pipeline_options.do_table_structure = do_tables + if hasattr(pipeline_options, "table_structure_options"): + try: + pipeline_options.table_structure_options.mode = ( + TableFormerMode.ACCURATE + if table_mode == "accurate" + else TableFormerMode.FAST + ) + except Exception as e: # pragma: no cover - defensive + self.logger.debug(f"Could not set TableFormer mode '{table_mode}': {e}") + if artifacts_path and hasattr(pipeline_options, "artifacts_path"): + pipeline_options.artifacts_path = artifacts_path + + # Ask Docling to embed picture bytes in the exported dict so that + # `read_from_block` can extract them from `block["image"]["uri"]` + # without a second pass over the source document. + if hasattr(pipeline_options, "generate_picture_images"): + pipeline_options.generate_picture_images = True + if hasattr(pipeline_options, "images_scale"): + pipeline_options.images_scale = 2.0 + + # Slow path: serialize converter construction so that concurrent + # first-use against the same cache_key doesn't load Docling's models + # twice. We re-check the cache under the lock to avoid a double build + # when two threads race past the fast-path check above. + with self._converter_cache_lock: + cached = self._converter_cache.get(cache_key) + if cached is not None: + return cached + converter = DocumentConverter( + format_options={ + InputFormat.PDF: PdfFormatOption(pipeline_options=pipeline_options), + } + ) + self._converter_cache[cache_key] = converter + return converter + + def _run_docling_python( + self, + input_path: Union[str, Path], + output_dir: Union[str, Path], + file_stem: str, + **kwargs, + ) -> Dict[str, Any]: + """ + Parse `input_path` through the Docling Python API and return the + exported document dict. + + Replaces the legacy `_run_docling_command` path that shelled out to the + `docling` CLI. JSON and Markdown artifacts are still written to + `//docling/` for backward compatibility, but the + document dict is also fed directly to `read_from_block_recursive` + without an intermediate disk round-trip. + + Args: + input_path: Source document. + output_dir: Base output directory (a `/docling` + subdirectory will be created inside it). + file_stem: File name without extension, used for the subdirectory + and the output artifact filenames. + **kwargs: Forwarded to `_get_converter`. The legacy `env` kwarg is + still accepted for backward compatibility but has no effect + under the Python API. + + Returns: + The Docling document exported via `export_to_dict()`. + """ + file_output_dir = Path(output_dir) / file_stem / "docling" + file_output_dir.mkdir(parents=True, exist_ok=True) + + # The legacy CLI path accepted an `env` mapping. Validate it for type + # compatibility but otherwise drop it: the Python API does not need + # subprocess environment overrides. + custom_env = kwargs.pop("env", None) + if custom_env is not None: + if not isinstance(custom_env, dict): + raise TypeError( + f"env must be a dictionary, got {type(custom_env).__name__}" + ) + for k, v in custom_env.items(): + if not isinstance(k, str) or not isinstance(v, str): + raise TypeError("env keys and values must be strings") + self.logger.debug( + "DoclingParser: 'env' kwarg accepted for backward compatibility " + "but ignored by the Python API path." + ) + + try: + converter = self._get_converter(**kwargs) + except ImportError as e: + raise RuntimeError( + "Docling Python API is not available. Install it with: " + "pip install docling" + ) from e + + try: + result = converter.convert(str(input_path)) + except Exception as e: + self.logger.error(f"Error running Docling Python API on {input_path}: {e}") + raise + + doc = result.document + try: + doc_dict = doc.export_to_dict() + except Exception as e: + self.logger.error(f"Failed to export Docling document to dict: {e}") + raise + + # Persist JSON + Markdown artifacts on disk to preserve the file layout + # produced by the previous CLI-based implementation. Failures here are + # logged but do not abort parsing, since callers only require the + # in-memory dict. + json_path = file_output_dir / f"{file_stem}.json" + try: + with open(json_path, "w", encoding="utf-8") as f: + json.dump(doc_dict, f, ensure_ascii=False, indent=2) + except Exception as e: + self.logger.warning(f"Could not write Docling JSON to {json_path}: {e}") + + md_path = file_output_dir / f"{file_stem}.md" + try: + with open(md_path, "w", encoding="utf-8") as f: + f.write(doc.export_to_markdown()) + except Exception as e: + self.logger.warning(f"Could not write Docling Markdown to {md_path}: {e}") + + self.logger.info( + f"Docling Python API parse completed for {Path(input_path).name}" + ) + return doc_dict + + def read_from_block_recursive( + self, + block, + type: str, + output_dir: Path, + cnt: int, + num: str, + docling_content: Dict[str, Any], + ) -> List[Dict[str, Any]]: + content_list = [] + if not block.get("children"): + cnt += 1 + content_list.append(self.read_from_block(block, type, output_dir, cnt, num)) + else: + if type not in ["groups", "body"]: + cnt += 1 + content_list.append( + self.read_from_block(block, type, output_dir, cnt, num) + ) + members = block["children"] + for member in members: + cnt += 1 + member_tag = member["$ref"] + # JSON References follow the form "#//" (e.g. "#/body/0") + ref_parts = member_tag.split("/") + if len(ref_parts) < 3: + self.logger.warning( + f"Unexpected $ref format (expected #//): {member_tag!r}" + ) + continue + member_type = ref_parts[1] + member_num = ref_parts[2] + try: + member_block = docling_content[member_type][int(member_num)] + except (KeyError, ValueError, IndexError) as e: + self.logger.warning(f"Could not resolve $ref {member_tag!r}: {e}") + continue + content_list.extend( + self.read_from_block_recursive( + member_block, + member_type, + output_dir, + cnt, + member_num, + docling_content, + ) + ) + return content_list + + def read_from_block( + self, block, type: str, output_dir: Path, cnt: int, num: str + ) -> Dict[str, Any]: + if type == "texts": + if block["label"] == "formula": + return { + "type": "equation", + "img_path": "", + "text": block["orig"], + "text_format": "unknown", + "page_idx": cnt // 10, + } + else: + return { + "type": "text", + "text": block["orig"], + "page_idx": cnt // 10, + } + elif type == "pictures": + try: + base64_uri = block["image"]["uri"] + # base64 data URIs have the form "data:;base64," + # but some exporters may omit the prefix + parts = base64_uri.split(",", 1) + base64_str = parts[1] if len(parts) == 2 else parts[0] + # Create images directory within the docling subdirectory + image_dir = output_dir / "images" + image_dir.mkdir(parents=True, exist_ok=True) # Ensure directory exists + image_path = image_dir / f"image_{num}.png" + with open(image_path, "wb") as f: + f.write(base64.b64decode(base64_str)) + return { + "type": "image", + "img_path": str(image_path.resolve()), # Convert to absolute path + "image_caption": block.get("caption", ""), + "image_footnote": block.get("footnote", ""), + "page_idx": cnt // 10, + } + except Exception as e: + self.logger.warning(f"Failed to process image {num}: {e}") + return { + "type": "text", + "text": f"[Image processing failed: {block.get('caption', '')}]", + "page_idx": cnt // 10, + } + else: + try: + return { + "type": "table", + "img_path": "", + "table_caption": block.get("caption", ""), + "table_footnote": block.get("footnote", ""), + "table_body": block.get("data", []), + "page_idx": cnt // 10, + } + except Exception as e: + self.logger.warning(f"Failed to process table {num}: {e}") + return { + "type": "text", + "text": f"[Table processing failed: {block.get('caption', '')}]", + "page_idx": cnt // 10, + } + + def parse_office_doc( + self, + doc_path: Union[str, Path], + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Parse office document directly using Docling + + Supported formats: .doc, .docx, .ppt, .pptx, .xls, .xlsx + + Args: + doc_path: Path to the document file + output_dir: Output directory path + lang: Document language for optimization + **kwargs: Additional parameters for docling command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + try: + # Convert to Path object + doc_path = Path(doc_path) + if not doc_path.exists(): + raise FileNotFoundError(f"Document file does not exist: {doc_path}") + + if doc_path.suffix.lower() not in self.OFFICE_FORMATS: + raise ValueError(f"Unsupported office format: {doc_path.suffix}") + + name_without_suff = doc_path.stem + + # Prepare output directory — use unique subdirectory to prevent + # same-name file collisions when output_dir is shared (#51) + if output_dir: + base_output_dir = self._unique_output_dir(output_dir, doc_path) + else: + base_output_dir = doc_path.parent / "docling_output" + + base_output_dir.mkdir(parents=True, exist_ok=True) + + doc_dict = self._run_docling_python( + input_path=doc_path, + output_dir=base_output_dir, + file_stem=name_without_suff, + **kwargs, + ) + file_subdir = base_output_dir / name_without_suff / "docling" + content_list = self.read_from_block_recursive( + doc_dict["body"], "body", file_subdir, 0, "0", doc_dict + ) + return content_list + + except Exception as e: + self.logger.error(f"Error in parse_office_doc: {str(e)}") + raise + + def parse_html( + self, + html_path: Union[str, Path], + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + """ + Parse HTML document using Docling + + Supported formats: .html, .htm, .xhtml + + Args: + html_path: Path to the HTML file + output_dir: Output directory path + lang: Document language for optimization + **kwargs: Additional parameters for docling command + + Returns: + List[Dict[str, Any]]: List of content blocks + """ + try: + # Convert to Path object + html_path = Path(html_path) + if not html_path.exists(): + raise FileNotFoundError(f"HTML file does not exist: {html_path}") + + if html_path.suffix.lower() not in self.HTML_FORMATS: + raise ValueError(f"Unsupported HTML format: {html_path.suffix}") + + name_without_suff = html_path.stem + + # Prepare output directory — use unique subdirectory to prevent + # same-name file collisions when output_dir is shared (#51) + if output_dir: + base_output_dir = self._unique_output_dir(output_dir, html_path) + else: + base_output_dir = html_path.parent / "docling_output" + + base_output_dir.mkdir(parents=True, exist_ok=True) + + doc_dict = self._run_docling_python( + input_path=html_path, + output_dir=base_output_dir, + file_stem=name_without_suff, + **kwargs, + ) + file_subdir = base_output_dir / name_without_suff / "docling" + content_list = self.read_from_block_recursive( + doc_dict["body"], "body", file_subdir, 0, "0", doc_dict + ) + return content_list + + except Exception as e: + self.logger.error(f"Error in parse_html: {str(e)}") + raise + + def check_installation(self) -> bool: + """ + Check whether the Docling Python package is importable. + + Returns: + bool: True if `docling.document_converter.DocumentConverter` can be + imported, False otherwise. + + Note: + This is a behavior change from the previous CLI-subprocess + implementation, which probed the `docling` executable on PATH. + Some environments may have the CLI installed without the Python + package (or vice versa) and will therefore see a different + result. The Python-API path is what `parse_pdf`, + `parse_office_doc`, and `parse_html` actually exercise, so this + check is now a faithful pre-flight for those entry points. + """ + try: + from docling.document_converter import DocumentConverter # noqa: F401 + + return True + except ImportError: + self.logger.debug( + "Docling Python package is not installed. " + "Install it with: pip install docling" + ) + return False + + +class PaddleOCRParser(Parser): + """PaddleOCR document parser with optional PDF page rendering support.""" + + def __init__(self, default_lang: str = "en") -> None: + super().__init__() + self.default_lang = default_lang + self._ocr_instances: Dict[str, Any] = {} + + def _require_paddleocr(self): + try: + from paddleocr import PaddleOCR + except ImportError as exc: + raise ImportError( + "PaddleOCR parser requires optional dependency `paddleocr`. " + "Install with `pip install -e '.[paddleocr]'` or " + "`uv sync --extra paddleocr`. " + "PaddleOCR also needs `paddlepaddle`; install it from " + "https://www.paddlepaddle.org.cn/install/quick." + ) from exc + return PaddleOCR + + def _get_ocr(self, lang: Optional[str] = None): + PaddleOCR = self._require_paddleocr() + language = (lang or self.default_lang).strip() or self.default_lang + cached = self._ocr_instances.get(language) + if cached is not None: + return cached + + init_candidates = [ + {"lang": language, "show_log": False}, + {"lang": language}, + {}, + ] + last_exception = None + for candidate_kwargs in init_candidates: + try: + ocr = PaddleOCR(**candidate_kwargs) + self._ocr_instances[language] = ocr + return ocr + except Exception as exc: # pragma: no cover - defensive fallback + last_exception = exc + continue + + raise RuntimeError( + f"Unable to initialize PaddleOCR for language '{language}': {last_exception}" + ) + + def _extract_text_lines(self, result: Any) -> List[str]: + lines: List[str] = [] + + def append_text(text: str) -> None: + clean_text = text.strip() + if clean_text: + lines.append(clean_text) + + if isinstance(result, str): + append_text(result) + return lines + + def visit(node: Any) -> None: + if node is None: + return + + if hasattr(node, "to_dict"): + try: + visit(node.to_dict()) + return + except Exception: + pass + + if isinstance(node, dict): + rec_texts = node.get("rec_texts") + if isinstance(rec_texts, list): + for item in rec_texts: + if isinstance(item, str): + append_text(item) + else: + visit(item) + + text_value = node.get("text") + if isinstance(text_value, str): + append_text(text_value) + + texts_value = node.get("texts") + if isinstance(texts_value, list): + for item in texts_value: + if isinstance(item, str): + append_text(item) + else: + visit(item) + + # Avoid double-visiting keys we already handled above; this prevents + # accidental duplication without content-level deduplication. + for key, value in node.items(): + if key in {"rec_texts", "text", "texts"}: + continue + visit(value) + return + + if isinstance(node, (list, tuple)): + if node and all(isinstance(item, str) for item in node): + for item in node: + append_text(item) + return + + if ( + len(node) >= 2 + and isinstance(node[1], (list, tuple)) + and len(node[1]) >= 1 + and isinstance(node[1][0], str) + ): + append_text(node[1][0]) + return + + if ( + len(node) >= 1 + and isinstance(node[0], str) + and (len(node) == 1 or isinstance(node[1], (int, float))) + ): + append_text(node[0]) + return + + for item in node: + visit(item) + return + + if isinstance(node, str): + append_text(node) + return + + visit(result) + return lines + + def _ocr_input( + self, input_data: Any, lang: Optional[str] = None, cls_enabled: bool = True + ) -> List[str]: + ocr = self._get_ocr(lang=lang) + + if hasattr(ocr, "ocr"): + try: + result = ocr.ocr(input_data, cls=cls_enabled) + except TypeError: + result = ocr.ocr(input_data) + return self._extract_text_lines(result) + + if hasattr(ocr, "predict"): + result = ocr.predict(input_data) + return self._extract_text_lines(result) + + raise RuntimeError( + "Unsupported PaddleOCR API: expected `ocr` or `predict` method." + ) + + def _extract_pdf_page_inputs(self, pdf_path: Path) -> Iterator[Tuple[int, Any]]: + try: + import pypdfium2 as pdfium + except ImportError as exc: + raise ImportError( + "PDF parsing with parser='paddleocr' requires `pypdfium2`. " + "Install with `pip install -e '.[paddleocr]'` or " + "`uv sync --extra paddleocr`." + ) from exc + + pdf = pdfium.PdfDocument(str(pdf_path)) + try: + total_pages = len(pdf) + for page_idx in range(total_pages): + page = pdf[page_idx] + try: + rendered = page.render(scale=2.0) + if hasattr(rendered, "to_pil"): + yield (page_idx, rendered.to_pil()) + elif hasattr(rendered, "to_numpy"): + yield (page_idx, rendered.to_numpy()) + else: + raise RuntimeError( + "Unsupported rendered page format from pypdfium2." + ) + finally: + if hasattr(page, "close"): + page.close() + finally: + if hasattr(pdf, "close"): + pdf.close() + + def _ocr_rendered_page( + self, rendered_page: Any, lang: Optional[str] = None, cls_enabled: bool = True + ) -> List[str]: + if hasattr(rendered_page, "save"): + temp_image_path: Optional[Path] = None + try: + with tempfile.NamedTemporaryFile(suffix=".png", delete=False) as temp: + temp_image_path = Path(temp.name) + rendered_page.save(temp_image_path) + return self._ocr_input( + str(temp_image_path), lang=lang, cls_enabled=cls_enabled + ) + finally: + if temp_image_path is not None and temp_image_path.exists(): + try: + temp_image_path.unlink() + except Exception: + pass + + return self._ocr_input(rendered_page, lang=lang, cls_enabled=cls_enabled) + + def parse_pdf( + self, + pdf_path: Union[str, Path], + output_dir: Optional[str] = None, + method: str = "auto", + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + del output_dir, method + pdf_path = Path(pdf_path) + if not pdf_path.exists(): + raise FileNotFoundError(f"PDF file does not exist: {pdf_path}") + + cls_enabled = kwargs.get("cls", True) + content_list: List[Dict[str, Any]] = [] + page_inputs = self._extract_pdf_page_inputs(pdf_path) + try: + for page_idx, rendered_page in page_inputs: + page_lines = self._ocr_rendered_page( + rendered_page, lang=lang, cls_enabled=cls_enabled + ) + for text in page_lines: + content_list.append( + {"type": "text", "text": text, "page_idx": int(page_idx)} + ) + finally: + # Ensure we promptly release PDF handles even if OCR fails mid-stream. + close = getattr(page_inputs, "close", None) + if callable(close): + close() + return content_list + + def parse_image( + self, + image_path: Union[str, Path], + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + del output_dir + image_path = Path(image_path) + if not image_path.exists(): + raise FileNotFoundError(f"Image file does not exist: {image_path}") + + ext = image_path.suffix.lower() + if ext not in self.IMAGE_FORMATS: + raise ValueError( + f"Unsupported image format: {ext}. Supported formats: {', '.join(sorted(self.IMAGE_FORMATS))}" + ) + + cls_enabled = kwargs.get("cls", True) + page_idx = int(kwargs.get("page_idx", 0)) + text_lines = self._ocr_input( + str(image_path), lang=lang, cls_enabled=cls_enabled + ) + return [ + {"type": "text", "text": text, "page_idx": page_idx} for text in text_lines + ] + + def parse_office_doc( + self, + doc_path: Union[str, Path], + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + pdf_path = self.convert_office_to_pdf(doc_path, output_dir) + return self.parse_pdf( + pdf_path=pdf_path, output_dir=output_dir, lang=lang, **kwargs + ) + + def parse_text_file( + self, + text_path: Union[str, Path], + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + pdf_path = self.convert_text_to_pdf(text_path, output_dir) + return self.parse_pdf( + pdf_path=pdf_path, output_dir=output_dir, lang=lang, **kwargs + ) + + def parse_document( + self, + file_path: Union[str, Path], + method: str = "auto", + output_dir: Optional[str] = None, + lang: Optional[str] = None, + **kwargs, + ) -> List[Dict[str, Any]]: + del method + file_path = Path(file_path) + if not file_path.exists(): + raise FileNotFoundError(f"File does not exist: {file_path}") + + ext = file_path.suffix.lower() + if ext == ".pdf": + return self.parse_pdf(file_path, output_dir, lang=lang, **kwargs) + if ext in self.IMAGE_FORMATS: + return self.parse_image(file_path, output_dir, lang=lang, **kwargs) + if ext in self.OFFICE_FORMATS: + return self.parse_office_doc(file_path, output_dir, lang=lang, **kwargs) + if ext in self.TEXT_FORMATS: + return self.parse_text_file(file_path, output_dir, lang=lang, **kwargs) + + raise ValueError( + f"Unsupported file format: {ext}. " + "PaddleOCR parser supports PDF, image, office, and text formats." + ) + + def check_installation(self) -> bool: + try: + self._require_paddleocr() + return True + except ImportError: + return False + + +def _normalize_parser_name(name: str) -> str: + """Normalize and validate a parser name for registry APIs.""" + if not isinstance(name, str): + raise TypeError( + f"parser name must be a non-empty string, got {type(name).__name__}" + ) + normalized = name.strip().lower() + if not normalized: + raise ValueError("parser name must be a non-empty string") + return normalized + + +# Custom parser registry for Bring-Your-Own-Parser support (see #151) +_CUSTOM_PARSERS: Dict[str, type] = {} + + +def register_parser(name: str, parser_class: type) -> None: + """Register a custom parser class for use with RAGAnything. + + This enables the Bring-Your-Own-Parser pattern: users can integrate + any document parser (e.g., Marker, Unstructured, Surya) by subclassing + ``Parser`` and registering it here. + + Args: + name: Unique identifier for the parser (e.g., "marker", "surya"). + Must not collide with built-in names ("mineru", "docling", "paddleocr"). + parser_class: A subclass of ``Parser`` that implements at least + ``parse_document``, ``check_installation``, and + optionally ``parse_pdf``, ``parse_image``, ``parse_office_doc``. + + Raises: + TypeError: If *parser_class* is not a subclass of ``Parser``. + ValueError: If *name* collides with a built-in parser name. + + Example:: + + from raganything.parser import Parser, register_parser + + class MarkerParser(Parser): + def check_installation(self) -> bool: + try: + import marker + return True + except ImportError: + return False + + def parse_pdf(self, pdf_path, output_dir="./output", method="auto", **kw): + import marker + # ... your implementation ... + return content_list + + def parse_document(self, file_path, output_dir="./output", method="auto", **kw): + return self.parse_pdf(pdf_path=file_path, output_dir=output_dir, method=method, **kw) + + register_parser("marker", MarkerParser) + """ + normalized_name = _normalize_parser_name(name) + if not isinstance(parser_class, type) or not issubclass(parser_class, Parser): + raise TypeError( + f"parser_class must be a subclass of Parser, got {parser_class!r}" + ) + _BUILTIN_NAMES = {"mineru", "docling", "paddleocr"} + if normalized_name in _BUILTIN_NAMES: + raise ValueError( + f"Cannot override built-in parser '{normalized_name}'. " + f"Choose a different name for your custom parser." + ) + _CUSTOM_PARSERS[normalized_name] = parser_class + Parser.logger.info( + "Registered custom parser: '%s' -> %s", normalized_name, parser_class.__name__ + ) + + +def unregister_parser(name: str) -> None: + """Remove a previously registered custom parser. + + Args: + name: The parser name to remove. + + Raises: + TypeError: If *name* is not a string. + ValueError: If *name* is empty or only whitespace. + KeyError: If no custom parser with that name is registered. + """ + normalized_name = _normalize_parser_name(name) + if normalized_name not in _CUSTOM_PARSERS: + raise KeyError(f"No custom parser registered with name '{normalized_name}'") + del _CUSTOM_PARSERS[normalized_name] + Parser.logger.info("Unregistered custom parser: '%s'", normalized_name) + + +def list_parsers() -> Dict[str, str]: + """Return a mapping of all available parser names to their class names. + + Returns: + Dict mapping parser name to the fully-qualified class name. + Includes both built-in and custom parsers. + """ + result: Dict[str, str] = { + "mineru": "MineruParser", + "docling": "DoclingParser", + "paddleocr": "PaddleOCRParser", + } + for name, cls in _CUSTOM_PARSERS.items(): + result[name] = cls.__name__ + return result + + +SUPPORTED_PARSERS = ("mineru", "docling", "paddleocr") + + +def get_supported_parsers() -> tuple: + """Return all supported parser names including custom registered parsers.""" + return SUPPORTED_PARSERS + tuple(_CUSTOM_PARSERS.keys()) + + +def get_parser(parser_type: str) -> Parser: + """Get a parser instance by name. + + Checks built-in parsers first, then falls back to the custom parser + registry populated via :func:`register_parser`. + + Args: + parser_type: Parser name (e.g., "mineru", "docling", "paddleocr", + or any custom registered name). + + Returns: + An instance of the requested parser. + + Raises: + ValueError: If the parser name is not recognized. + """ + parser_name = (parser_type or "mineru").strip().lower() + if parser_name == "mineru": + return MineruParser() + if parser_name == "docling": + return DoclingParser() + if parser_name == "paddleocr": + return PaddleOCRParser() + # Check custom parser registry + if parser_name in _CUSTOM_PARSERS: + return _CUSTOM_PARSERS[parser_name]() + raise ValueError( + f"Unsupported parser type: {parser_type}. " + f"Supported parsers: {', '.join(get_supported_parsers())}" + ) + + +def main(): + """ + Main function to run the document parser from command line + """ + parser = argparse.ArgumentParser( + description="Parse documents using MinerU 2.0, Docling, or PaddleOCR" + ) + parser.add_argument("file_path", help="Path to the document to parse") + parser.add_argument("--output", "-o", help="Output directory path") + parser.add_argument( + "--method", + "-m", + choices=["auto", "txt", "ocr"], + default="auto", + help="Parsing method (auto, txt, ocr)", + ) + parser.add_argument( + "--lang", + "-l", + help="Document language for OCR optimization (e.g., ch, en, ja)", + ) + parser.add_argument( + "--backend", + "-b", + choices=[ + "pipeline", + "hybrid-auto-engine", + "hybrid-http-client", + "vlm-auto-engine", + "vlm-http-client", + ], + default="pipeline", + help="Parsing backend", + ) + parser.add_argument( + "--device", + "-d", + help="Inference device (e.g., cpu, cuda, cuda:0, npu, mps)", + ) + parser.add_argument( + "--source", + choices=["huggingface", "modelscope", "local"], + default="huggingface", + help="Model source", + ) + parser.add_argument( + "--no-formula", + action="store_true", + help="Disable formula parsing", + ) + parser.add_argument( + "--no-table", + action="store_true", + help="Disable table parsing", + ) + parser.add_argument( + "--stats", action="store_true", help="Display content statistics" + ) + parser.add_argument( + "--check", + action="store_true", + help="Check parser installation", + ) + parser.add_argument( + "--parser", + default="mineru", + help=( + "Parser selection. Built-ins: mineru, docling, paddleocr. " + "Custom parsers registered via register_parser() in the same " + "Python process are also accepted when you integrate RAGAnything " + "as a library. The standalone CLI itself only sees parsers that " + "have already been registered in this process." + ), + ) + parser.add_argument( + "--vlm_url", + help="When the backend is `vlm-http-client`, you need to specify the server_url, for example:`http://127.0.0.1:30000`", + ) + + args = parser.parse_args() + + # Check installation if requested + if args.check: + doc_parser = get_parser(args.parser) + if doc_parser.check_installation(): + print(f"✅ {args.parser.title()} is properly installed") + return 0 + else: + print(f"❌ {args.parser.title()} installation check failed") + return 1 + + try: + # Parse the document + doc_parser = get_parser(args.parser) + content_list = doc_parser.parse_document( + file_path=args.file_path, + method=args.method, + output_dir=args.output, + lang=args.lang, + backend=args.backend, + device=args.device, + source=args.source, + formula=not args.no_formula, + table=not args.no_table, + vlm_url=args.vlm_url, + ) + + print(f"✅ Successfully parsed: {args.file_path}") + print(f"📊 Extracted {len(content_list)} content blocks") + + # Display statistics if requested + if args.stats: + print("\n📈 Document Statistics:") + print(f"Total content blocks: {len(content_list)}") + + # Count different types of content + content_types = {} + for item in content_list: + if isinstance(item, dict): + content_type = item.get("type", "unknown") + content_types[content_type] = content_types.get(content_type, 0) + 1 + + if content_types: + print("\n📋 Content Type Distribution:") + for content_type, count in sorted(content_types.items()): + print(f" • {content_type}: {count}") + + except Exception as e: + print(f"❌ Error: {str(e)}") + return 1 + + return 0 + + +if __name__ == "__main__": + exit(main()) diff --git a/raganything/processor.py b/raganything/processor.py new file mode 100644 index 0000000..2ee7243 --- /dev/null +++ b/raganything/processor.py @@ -0,0 +1,2258 @@ +""" +Document processing functionality for RAGAnything + +Contains methods for parsing documents and processing multimodal content +""" + +from __future__ import annotations + +import os +import time +import hashlib +import json +from typing import Dict, List, Any, Tuple, Optional +from pathlib import Path + +from raganything.base import DocStatus +from raganything.parser import MineruParser, MineruExecutionError, get_parser +from raganything.utils import ( + separate_content, + insert_text_content, + insert_text_content_with_multimodal_content, + get_processor_for_type, + format_table_body, + get_equation_text_and_format, + get_table_body, + normalize_caption_list, +) +import asyncio +from lightrag.utils import compute_mdhash_id + + +class ProcessorMixin: + """ProcessorMixin class containing document processing functionality for RAGAnything""" + + def _get_file_reference(self, file_path: str) -> str: + """ + Get file reference based on use_full_path configuration. + + Args: + file_path: Path to the file (can be absolute or relative) + + Returns: + str: Full path if use_full_path is True, otherwise basename + """ + if self.config.use_full_path: + return str(file_path) + else: + return os.path.basename(file_path) + + def _generate_cache_key( + self, file_path: Path, parse_method: str = None, **kwargs + ) -> str: + """ + Generate cache key based on file path and parsing configuration + + Args: + file_path: Path to the file + parse_method: Parse method used + **kwargs: Additional parser parameters + + Returns: + str: Cache key for the file and configuration + """ + + # Get file modification time + mtime = file_path.stat().st_mtime + + # Create configuration dict for cache key + config_dict = { + "file_path": str(file_path.absolute()), + "mtime": mtime, + "parser": self.config.parser, + "parse_method": parse_method or self.config.parse_method, + } + + # Add relevant kwargs to config + relevant_kwargs = { + k: v + for k, v in kwargs.items() + if k + in [ + "lang", + "device", + "start_page", + "end_page", + "formula", + "table", + "backend", + "source", + ] + } + config_dict.update(relevant_kwargs) + + # Generate hash from config + config_str = json.dumps(config_dict, sort_keys=True) + cache_key = hashlib.md5(config_str.encode()).hexdigest() + + return cache_key + + @staticmethod + def _current_doc_status_timestamp() -> str: + """Return a stable UTC timestamp for doc_status bookkeeping.""" + return time.strftime("%Y-%m-%dT%H:%M:%S+00:00", time.gmtime()) + + async def _ensure_doc_status_record( + self, + doc_id: str, + file_path: str, + *, + scheme_name: str | None = None, + status: DocStatus = DocStatus.READY, + ) -> Dict[str, Any]: + """Create a minimal doc_status entry when LightRAG has not created one yet.""" + current_doc_status = await self.lightrag.doc_status.get_by_id(doc_id) + if current_doc_status: + return current_doc_status + + timestamp = self._current_doc_status_timestamp() + doc_status_payload: Dict[str, Any] = { + "status": status, + "content": "", + "content_summary": "", + "content_length": 0, + "error_msg": "", + "chunks_count": 0, + "chunks_list": [], + "created_at": timestamp, + "updated_at": timestamp, + "file_path": self._get_file_reference(file_path), + } + if scheme_name is not None: + doc_status_payload["scheme_name"] = scheme_name + + await self.lightrag.doc_status.upsert({doc_id: doc_status_payload}) + await self.lightrag.doc_status.index_done_callback() + return await self.lightrag.doc_status.get_by_id(doc_id) or doc_status_payload + + async def _upsert_doc_status( + self, + doc_id: str, + file_path: str, + *, + scheme_name: str | None = None, + **updates, + ) -> Dict[str, Any]: + """Merge doc_status updates while preserving any existing LightRAG fields.""" + current_doc_status = await self._ensure_doc_status_record( + doc_id, + file_path, + scheme_name=scheme_name, + ) + updated_doc_status = { + **current_doc_status, + **updates, + "updated_at": self._current_doc_status_timestamp(), + } + await self.lightrag.doc_status.upsert({doc_id: updated_doc_status}) + await self.lightrag.doc_status.index_done_callback() + return updated_doc_status + + async def _get_multimodal_status_record(self, doc_id: str) -> Dict[str, Any] | None: + """Get compatibility multimodal completion state when doc_status cannot store it.""" + if ( + not hasattr(self, "multimodal_status_cache") + or self.multimodal_status_cache is None + ): + return None + + return await self.multimodal_status_cache.get_by_id(doc_id) + + async def _set_multimodal_status_record(self, doc_id: str, processed: bool) -> None: + """Persist multimodal completion state in a separate KV namespace.""" + if ( + not hasattr(self, "multimodal_status_cache") + or self.multimodal_status_cache is None + ): + return + + await self.multimodal_status_cache.upsert( + { + doc_id: { + "multimodal_processed": processed, + "updated_at": self._current_doc_status_timestamp(), + } + } + ) + await self.multimodal_status_cache.index_done_callback() + + async def _get_multimodal_processed_flag( + self, doc_id: str, doc_status: Dict[str, Any] | None = None + ) -> bool: + """Read multimodal completion state from doc_status or compatibility cache.""" + if doc_status is not None and "multimodal_processed" in doc_status: + return bool(doc_status.get("multimodal_processed", False)) + + compatibility_status = await self._get_multimodal_status_record(doc_id) + if compatibility_status is not None: + return bool(compatibility_status.get("multimodal_processed", False)) + + return False + + def _generate_content_based_doc_id(self, content_list: List[Dict[str, Any]]) -> str: + """ + Generate doc_id based on document content + + Args: + content_list: Parsed content list + + Returns: + str: Content-based document ID with doc- prefix + """ + from lightrag.utils import compute_mdhash_id + + # Extract key content for ID generation + content_hash_data = [] + + for item in content_list: + if isinstance(item, dict): + # For text content, use the text + if item.get("type") == "text" and item.get("text"): + content_hash_data.append(item["text"].strip()) + # For other content types, use key identifiers + elif item.get("type") == "image" and item.get("img_path"): + content_hash_data.append(f"image:{item['img_path']}") + elif item.get("type") == "table" and item.get("table_body"): + content_hash_data.append(f"table:{item['table_body']}") + elif item.get("type") == "equation" and item.get("text"): + content_hash_data.append(f"equation:{item['text']}") + else: + # For other types, use string representation + content_hash_data.append(str(item)) + + # Create a content signature + content_signature = "\n".join(content_hash_data) + + # Generate doc_id from content + doc_id = compute_mdhash_id(content_signature, prefix="doc-") + + return doc_id + + async def _get_cached_result( + self, cache_key: str, file_path: Path, parse_method: str = None, **kwargs + ) -> tuple[List[Dict[str, Any]], str] | None: + """ + Get cached parsing result if available and valid + + Args: + cache_key: Cache key to look up + file_path: Path to the file for mtime check + parse_method: Parse method used + **kwargs: Additional parser parameters + + Returns: + tuple[List[Dict[str, Any]], str] | None: (content_list, doc_id) or None if not found/invalid + """ + if not hasattr(self, "parse_cache") or self.parse_cache is None: + return None + + try: + cached_data = await self.parse_cache.get_by_id(cache_key) + if not cached_data: + return None + + # Check file modification time + current_mtime = file_path.stat().st_mtime + cached_mtime = cached_data.get("mtime", 0) + + if current_mtime != cached_mtime: + self.logger.debug(f"Cache invalid - file modified: {cache_key}") + return None + + # Check parsing configuration + cached_config = cached_data.get("parse_config", {}) + current_config = { + "parser": self.config.parser, + "parse_method": parse_method or self.config.parse_method, + } + + # Add relevant kwargs to current config + relevant_kwargs = { + k: v + for k, v in kwargs.items() + if k + in [ + "lang", + "device", + "start_page", + "end_page", + "formula", + "table", + "backend", + "source", + ] + } + current_config.update(relevant_kwargs) + + if cached_config != current_config: + self.logger.debug(f"Cache invalid - config changed: {cache_key}") + return None + + content_list = cached_data.get("content_list", []) + doc_id = cached_data.get("doc_id") + + if content_list and doc_id: + self.logger.debug( + f"Found valid cached parsing result for key: {cache_key}" + ) + return content_list, doc_id + else: + self.logger.debug( + f"Cache incomplete - missing content or doc_id: {cache_key}" + ) + return None + + except Exception as e: + self.logger.warning(f"Error accessing parse cache: {e}") + + return None + + async def _store_cached_result( + self, + cache_key: str, + content_list: List[Dict[str, Any]], + doc_id: str, + file_path: Path, + parse_method: str = None, + **kwargs, + ) -> None: + """ + Store parsing result in cache + + Args: + cache_key: Cache key to store under + content_list: Content list to cache + doc_id: Content-based document ID + file_path: Path to the file for mtime storage + parse_method: Parse method used + **kwargs: Additional parser parameters + """ + if not hasattr(self, "parse_cache") or self.parse_cache is None: + return + + try: + # Get file modification time + file_mtime = file_path.stat().st_mtime + + # Create parsing configuration + parse_config = { + "parser": self.config.parser, + "parse_method": parse_method or self.config.parse_method, + } + + # Add relevant kwargs to config + relevant_kwargs = { + k: v + for k, v in kwargs.items() + if k + in [ + "lang", + "device", + "start_page", + "end_page", + "formula", + "table", + "backend", + "source", + ] + } + parse_config.update(relevant_kwargs) + + cache_data = { + cache_key: { + "content_list": content_list, + "doc_id": doc_id, + "mtime": file_mtime, + "parse_config": parse_config, + "cached_at": time.time(), + "cache_version": "1.0", + } + } + await self.parse_cache.upsert(cache_data) + # Ensure data is persisted to disk + await self.parse_cache.index_done_callback() + self.logger.info(f"Stored parsing result in cache: {cache_key}") + except Exception as e: + self.logger.warning(f"Error storing to parse cache: {e}") + + async def parse_document( + self, + file_path: str, + output_dir: str = None, + parse_method: str = None, + display_stats: bool = None, + **kwargs, + ) -> tuple[List[Dict[str, Any]], str]: + """ + Parse document with caching support + + Args: + file_path: Path to the file to parse + output_dir: Output directory (defaults to config.parser_output_dir) + parse_method: Parse method (defaults to config.parse_method) + display_stats: Whether to display content statistics (defaults to config.display_content_stats) + **kwargs: Additional parameters for parser (e.g., lang, device, start_page, end_page, formula, table, backend, source) + + Returns: + tuple[List[Dict[str, Any]], str]: (content_list, doc_id) + """ + # Use config defaults if not provided + if output_dir is None: + output_dir = self.config.parser_output_dir + if parse_method is None: + parse_method = self.config.parse_method + if display_stats is None: + display_stats = self.config.display_content_stats + + self.logger.info(f"Starting document parsing: {file_path}") + + file_path = Path(file_path) + if not file_path.exists(): + raise FileNotFoundError(f"File not found: {file_path}") + + callback_file = str(file_path) + callback_manager = getattr(self, "callback_manager", None) + parse_start_time = time.time() + if callback_manager is not None: + callback_manager.dispatch( + "on_parse_start", + file_path=callback_file, + parser=self.config.parser, + ) + + # Generate cache key based on file and configuration + cache_key = self._generate_cache_key(file_path, parse_method, **kwargs) + + # Check cache first + cached_result = await self._get_cached_result( + cache_key, file_path, parse_method, **kwargs + ) + if cached_result is not None: + content_list, doc_id = cached_result + self.logger.info(f"Using cached parsing result for: {file_path}") + if display_stats: + self.logger.info( + f"* Total blocks in cached content_list: {len(content_list)}" + ) + if callback_manager is not None: + duration = time.time() - parse_start_time + callback_manager.dispatch( + "on_parse_complete", + file_path=callback_file, + content_blocks=len(content_list), + doc_id=doc_id, + duration_seconds=duration, + ) + return content_list, doc_id + + # Choose appropriate parsing method based on file extension + ext = file_path.suffix.lower() + + try: + doc_parser = getattr(self, "doc_parser", None) + if doc_parser is None: + doc_parser = get_parser(self.config.parser) + self.doc_parser = doc_parser + + # Log parser and method information + self.logger.info( + f"Using {self.config.parser} parser with method: {parse_method}" + ) + + if ext in [".pdf"]: + self.logger.info("Detected PDF file, using parser for PDF...") + content_list = await asyncio.to_thread( + doc_parser.parse_pdf, + pdf_path=file_path, + output_dir=output_dir, + method=parse_method, + **kwargs, + ) + elif ext in [ + ".jpg", + ".jpeg", + ".png", + ".bmp", + ".tiff", + ".tif", + ".gif", + ".webp", + ]: + self.logger.info("Detected image file, using parser for images...") + try: + content_list = await asyncio.to_thread( + doc_parser.parse_image, + image_path=file_path, + output_dir=output_dir, + **kwargs, + ) + except NotImplementedError: + # Fallback to MinerU for image parsing if current parser doesn't support it + self.logger.warning( + f"{self.config.parser} parser doesn't support image parsing, falling back to MinerU" + ) + content_list = await asyncio.to_thread( + MineruParser().parse_image, + image_path=file_path, + output_dir=output_dir, + **kwargs, + ) + elif ext in [ + ".doc", + ".docx", + ".ppt", + ".pptx", + ".xls", + ".xlsx", + ".html", + ".htm", + ".xhtml", + ]: + self.logger.info( + "Detected Office or HTML document, using parser for Office/HTML..." + ) + content_list = await asyncio.to_thread( + doc_parser.parse_office_doc, + doc_path=file_path, + output_dir=output_dir, + **kwargs, + ) + else: + # For other or unknown formats, use generic parser + self.logger.info( + f"Using generic parser for {ext} file (method={parse_method})..." + ) + content_list = await asyncio.to_thread( + doc_parser.parse_document, + file_path=file_path, + method=parse_method, + output_dir=output_dir, + **kwargs, + ) + + except MineruExecutionError as e: + self.logger.error(f"Mineru command failed: {e}") + if callback_manager is not None: + callback_manager.dispatch( + "on_parse_error", + file_path=callback_file, + error=e, + parser=self.config.parser, + ) + raise + except Exception as e: + self.logger.error( + f"Error during parsing with {self.config.parser} parser: {str(e)}" + ) + if callback_manager is not None: + callback_manager.dispatch( + "on_parse_error", + file_path=callback_file, + error=e, + parser=self.config.parser, + ) + raise + + msg = f"Parsing {file_path} complete! Extracted {len(content_list)} content blocks" + self.logger.info(msg) + + if len(content_list) == 0: + raise ValueError("Parsing failed: No content was extracted") + + # Generate doc_id based on content + doc_id = self._generate_content_based_doc_id(content_list) + + # Store result in cache + await self._store_cached_result( + cache_key, content_list, doc_id, file_path, parse_method, **kwargs + ) + + # Display content statistics if requested + if display_stats: + self.logger.info("\nContent Information:") + self.logger.info(f"* Total blocks in content_list: {len(content_list)}") + + # Count elements by type + block_types: Dict[str, int] = {} + for block in content_list: + if isinstance(block, dict): + block_type = block.get("type", "unknown") + if isinstance(block_type, str): + block_types[block_type] = block_types.get(block_type, 0) + 1 + + self.logger.info("* Content block types:") + for block_type, count in block_types.items(): + self.logger.info(f" - {block_type}: {count}") + + if callback_manager is not None: + duration = time.time() - parse_start_time + callback_manager.dispatch( + "on_parse_complete", + file_path=callback_file, + content_blocks=len(content_list), + doc_id=doc_id, + duration_seconds=duration, + ) + + return content_list, doc_id + + async def _process_multimodal_content( + self, + multimodal_items: List[Dict[str, Any]], + file_path: str, + doc_id: str, + pipeline_status: Optional[Any] = None, + pipeline_status_lock: Optional[Any] = None, + ): + """ + Process multimodal content (using specialized processors) + + Args: + multimodal_items: List of multimodal items + file_path: File path (for reference) + doc_id: Document ID for proper chunk association + pipeline_status: Pipeline status object + pipeline_status_lock: Pipeline status lock + """ + + if not multimodal_items: + self.logger.debug("No multimodal content to process") + return + + callback_manager = getattr(self, "callback_manager", None) + mm_start_time = time.time() + if callback_manager is not None: + callback_manager.dispatch( + "on_multimodal_start", + file_path=file_path, + item_count=len(multimodal_items), + doc_id=doc_id, + ) + + # Ensure LightRAG is initialized before accessing its storages + init_result = await self._ensure_lightrag_initialized() + if not init_result or not init_result.get("success"): + self.logger.error( + "LightRAG initialization failed; skipping multimodal processing" + ) + return + + # Check multimodal processing status - handle LightRAG's early DocStatus.PROCESSED marking + try: + existing_doc_status = await self.lightrag.doc_status.get_by_id(doc_id) + if existing_doc_status: + # Check if multimodal content is already processed + multimodal_processed = await self._get_multimodal_processed_flag( + doc_id, existing_doc_status + ) + + if multimodal_processed: + self.logger.info( + f"Document {doc_id} multimodal content is already processed" + ) + return + + # Even if status is DocStatus.PROCESSED (text processing done), + # we still need to process multimodal content if not yet done + doc_status = existing_doc_status.get("status", "") + if doc_status == DocStatus.PROCESSED and not multimodal_processed: + self.logger.info( + f"Document {doc_id} text processing is complete, but multimodal content still needs processing" + ) + # Continue with multimodal processing + elif doc_status == DocStatus.PROCESSED and multimodal_processed: + self.logger.info( + f"Document {doc_id} is fully processed (text + multimodal)" + ) + return + + except Exception as e: + self.logger.debug(f"Error checking document status for {doc_id}: {e}") + # Continue with processing if cache check fails + + # Use ProcessorMixin's own batch processing that can handle multiple content types + log_message = "Starting multimodal content processing..." + self.logger.info(log_message) + if pipeline_status_lock and pipeline_status: + async with pipeline_status_lock: + pipeline_status["latest_message"] = log_message + pipeline_status["history_messages"].append(log_message) + + try: + await self._process_multimodal_content_batch_type_aware( + multimodal_items=multimodal_items, file_path=file_path, doc_id=doc_id + ) + + # Mark multimodal content as processed and update final status + await self._mark_multimodal_processing_complete(doc_id) + + log_message = "Multimodal content processing complete" + self.logger.info(log_message) + if pipeline_status_lock and pipeline_status: + async with pipeline_status_lock: + pipeline_status["latest_message"] = log_message + pipeline_status["history_messages"].append(log_message) + + if callback_manager is not None: + duration = time.time() - mm_start_time + callback_manager.dispatch( + "on_multimodal_complete", + file_path=file_path, + processed_count=len(multimodal_items), + duration_seconds=duration, + doc_id=doc_id, + ) + + except Exception as e: + self.logger.error(f"Error in multimodal processing: {e}") + # Fallback to individual processing if batch processing fails + self.logger.warning("Falling back to individual multimodal processing") + await self._process_multimodal_content_individual( + multimodal_items, file_path, doc_id + ) + + # Mark multimodal content as processed even after fallback + await self._mark_multimodal_processing_complete(doc_id) + + async def _process_multimodal_content_individual( + self, multimodal_items: List[Dict[str, Any]], file_path: str, doc_id: str + ): + """ + Process multimodal content individually (fallback method) + + Args: + multimodal_items: List of multimodal items + file_path: File path (for reference) + doc_id: Document ID for proper chunk association + """ + # Use full path or basename based on config + file_name = self._get_file_reference(file_path) + + # Collect all chunk results for batch processing (similar to text content processing) + all_chunk_results = [] + multimodal_chunk_ids = [] + + # Get current text chunks count to set proper order indexes for multimodal chunks + existing_doc_status = await self.lightrag.doc_status.get_by_id(doc_id) + existing_chunks_count = ( + existing_doc_status.get("chunks_count", 0) if existing_doc_status else 0 + ) + + for i, item in enumerate(multimodal_items): + try: + content_type = item.get("type", "unknown") + self.logger.info( + f"Processing item {i + 1}/{len(multimodal_items)}: {content_type} content" + ) + + # Select appropriate processor + processor = get_processor_for_type(self.modal_processors, content_type) + + if processor: + # Prepare item info for context extraction + item_info = { + "page_idx": item.get("page_idx", 0), + "index": item.get("_content_list_index", i), + "type": content_type, + } + + # Process content and get chunk results instead of immediately merging + ( + enhanced_caption, + entity_info, + chunk_results, + ) = await processor.process_multimodal_content( + modal_content=item, + content_type=content_type, + file_path=file_name, + item_info=item_info, # Pass item info for context extraction + batch_mode=True, + doc_id=doc_id, # Pass doc_id for proper association + chunk_order_index=existing_chunks_count + + i, # Proper order index + ) + + # Collect chunk results for batch processing + all_chunk_results.extend(chunk_results) + + # Extract chunk ID from the entity_info (actual chunk_id created by processor) + if entity_info and "chunk_id" in entity_info: + chunk_id = entity_info["chunk_id"] + multimodal_chunk_ids.append(chunk_id) + + self.logger.info( + f"{content_type} processing complete: {entity_info.get('entity_name', 'Unknown')}" + ) + else: + self.logger.warning( + f"No suitable processor found for {content_type} type content" + ) + + except Exception as e: + self.logger.error(f"Error processing multimodal content: {str(e)}") + self.logger.debug("Exception details:", exc_info=True) + continue + + # Update doc_status to include multimodal chunks in the standard chunks_list + if multimodal_chunk_ids: + try: + # Get current document status + current_doc_status = await self.lightrag.doc_status.get_by_id(doc_id) + + if current_doc_status: + existing_chunks_list = current_doc_status.get("chunks_list", []) + existing_chunks_count = current_doc_status.get("chunks_count", 0) + + # Add multimodal chunks to the standard chunks_list + updated_chunks_list = existing_chunks_list + multimodal_chunk_ids + updated_chunks_count = existing_chunks_count + len( + multimodal_chunk_ids + ) + + # Update document status with integrated chunk list + await self.lightrag.doc_status.upsert( + { + doc_id: { + **current_doc_status, # Keep existing fields + "chunks_list": updated_chunks_list, # Integrated chunks list + "chunks_count": updated_chunks_count, # Updated total count + "updated_at": time.strftime("%Y-%m-%dT%H:%M:%S+00:00"), + } + } + ) + + # Ensure doc_status update is persisted to disk + await self.lightrag.doc_status.index_done_callback() + + self.logger.info( + f"Updated doc_status with {len(multimodal_chunk_ids)} multimodal chunks integrated into chunks_list" + ) + + except Exception as e: + self.logger.warning( + f"Error updating doc_status with multimodal chunks: {e}" + ) + + # Batch merge all multimodal content results (similar to text content processing) + if all_chunk_results: + from lightrag.operate import merge_nodes_and_edges + from lightrag.kg.shared_storage import ( + get_namespace_data, + get_pipeline_status_lock, + ) + + # Get pipeline status and lock from shared storage + pipeline_status = await get_namespace_data("pipeline_status") + pipeline_status_lock = get_pipeline_status_lock() + + await merge_nodes_and_edges( + chunk_results=all_chunk_results, + knowledge_graph_inst=self.lightrag.chunk_entity_relation_graph, + entity_vdb=self.lightrag.entities_vdb, + relationships_vdb=self.lightrag.relationships_vdb, + global_config=self.lightrag.__dict__, + full_entities_storage=self.lightrag.full_entities, + full_relations_storage=self.lightrag.full_relations, + doc_id=doc_id, + pipeline_status=pipeline_status, + pipeline_status_lock=pipeline_status_lock, + llm_response_cache=self.lightrag.llm_response_cache, + entity_chunks_storage=self.lightrag.entity_chunks, + relation_chunks_storage=self.lightrag.relation_chunks, + current_file_number=1, + total_files=1, + file_path=file_name, + ) + + await self.lightrag._insert_done() + + self.logger.info("Individual multimodal content processing complete") + + # Mark multimodal content as processed + await self._mark_multimodal_processing_complete(doc_id) + + async def _process_multimodal_content_batch_type_aware( + self, multimodal_items: List[Dict[str, Any]], file_path: str, doc_id: str + ): + """ + Type-aware batch processing that selects correct processors based on content type. + This is the corrected implementation that handles different modality types properly. + + Args: + multimodal_items: List of multimodal items with different types + file_path: File path for citation + doc_id: Document ID for proper association + """ + if not multimodal_items: + self.logger.debug("No multimodal content to process") + return + + # Get existing chunks count for proper order indexing + try: + existing_doc_status = await self.lightrag.doc_status.get_by_id(doc_id) + existing_chunks_count = ( + existing_doc_status.get("chunks_count", 0) if existing_doc_status else 0 + ) + except Exception: + existing_chunks_count = 0 + + # Use LightRAG's concurrency control + semaphore = asyncio.Semaphore(getattr(self.lightrag, "max_parallel_insert", 2)) + + # Progress tracking variables + total_items = len(multimodal_items) + completed_count = 0 + progress_lock = asyncio.Lock() + + # Log processing start + self.logger.info(f"Starting to process {total_items} multimodal content items") + + # Stage 1: Concurrent generation of descriptions using correct processors for each type + async def process_single_item_with_correct_processor( + item: Dict[str, Any], index: int, file_path: str + ): + """Process single item using the correct processor for its type""" + nonlocal completed_count + async with semaphore: + try: + content_type = item.get("type", "unknown") + + # Select the correct processor based on content type + processor = get_processor_for_type( + self.modal_processors, content_type + ) + + if not processor: + self.logger.warning( + f"No processor found for type: {content_type}" + ) + return None + + item_info = { + "page_idx": item.get("page_idx", 0), + "index": item.get("_content_list_index", index), + "type": content_type, + } + + # Call the correct processor's description generation method + ( + description, + entity_info, + ) = await processor.generate_description_only( + modal_content=item, + content_type=content_type, + item_info=item_info, + entity_name=None, # Let LLM auto-generate + ) + + # Update progress (non-blocking) + async with progress_lock: + completed_count += 1 + if ( + completed_count % max(1, total_items // 10) == 0 + or completed_count == total_items + ): + progress_percent = (completed_count / total_items) * 100 + self.logger.info( + f"Multimodal chunk generation progress: {completed_count}/{total_items} ({progress_percent:.1f}%)" + ) + + return { + "index": index, + "content_type": content_type, + "description": description, + "entity_info": entity_info, + "original_item": item, + "item_info": item_info, + "chunk_order_index": existing_chunks_count + index, + "processor": processor, # Keep reference to the processor used + "file_path": file_path, # Add file_path to the result + } + + except Exception as e: + # Update progress even on error (non-blocking) + async with progress_lock: + completed_count += 1 + if ( + completed_count % max(1, total_items // 10) == 0 + or completed_count == total_items + ): + progress_percent = (completed_count / total_items) * 100 + self.logger.info( + f"Multimodal chunk generation progress: {completed_count}/{total_items} ({progress_percent:.1f}%)" + ) + + self.logger.error( + f"Error generating description for {content_type} item {index}: {e}" + ) + return None + + # Process all items concurrently with correct processors + tasks = [ + asyncio.create_task( + process_single_item_with_correct_processor(item, i, file_path) + ) + for i, item in enumerate(multimodal_items) + ] + + results = await asyncio.gather(*tasks, return_exceptions=True) + + # Filter successful results + multimodal_data_list = [] + for result in results: + if isinstance(result, Exception): + self.logger.error(f"Task failed: {result}") + continue + if result is not None: + multimodal_data_list.append(result) + + if not multimodal_data_list: + self.logger.warning("No valid multimodal descriptions generated") + return + + self.logger.info( + f"Generated descriptions for {len(multimodal_data_list)}/{len(multimodal_items)} multimodal items using correct processors" + ) + + # Stage 2: Convert to LightRAG chunks format + lightrag_chunks = self._convert_to_lightrag_chunks_type_aware( + multimodal_data_list, file_path, doc_id + ) + + # Stage 3: Store chunks to LightRAG storage + await self._store_chunks_to_lightrag_storage_type_aware(lightrag_chunks) + + # Stage 3.5: Store multimodal main entities to entities_vdb and full_entities + await self._store_multimodal_main_entities( + multimodal_data_list, lightrag_chunks, file_path, doc_id + ) + + # Track chunk IDs for doc_status update + chunk_ids = list(lightrag_chunks.keys()) + + # Stage 4: Use LightRAG's batch entity relation extraction + chunk_results = await self._batch_extract_entities_lightrag_style_type_aware( + lightrag_chunks + ) + + # Stage 5: Add belongs_to relations (multimodal-specific) + enhanced_chunk_results = await self._batch_add_belongs_to_relations_type_aware( + chunk_results, multimodal_data_list + ) + + # Stage 6: Use LightRAG's batch merge + await self._batch_merge_lightrag_style_type_aware( + enhanced_chunk_results, file_path, doc_id + ) + + # Stage 7: Update doc_status with integrated chunks_list + await self._update_doc_status_with_chunks_type_aware(doc_id, chunk_ids) + + def _convert_to_lightrag_chunks_type_aware( + self, multimodal_data_list: List[Dict[str, Any]], file_path: str, doc_id: str + ) -> Dict[str, Any]: + """Convert multimodal data to LightRAG standard chunks format""" + + chunks = {} + + for data in multimodal_data_list: + description = data["description"] + entity_info = data["entity_info"] + chunk_order_index = data["chunk_order_index"] + content_type = data["content_type"] + original_item = data["original_item"] + + # Apply the appropriate chunk template based on content type + formatted_chunk_content = self._apply_chunk_template( + content_type, original_item, description + ) + + # Generate chunk_id + chunk_id = compute_mdhash_id(formatted_chunk_content, prefix="chunk-") + + # Calculate tokens + tokens = len(self.lightrag.tokenizer.encode(formatted_chunk_content)) + + # Use full path or basename based on config + file_ref = self._get_file_reference(file_path) + + # Build LightRAG standard chunk format + chunks[chunk_id] = { + "content": formatted_chunk_content, # Now uses the templated content + "tokens": tokens, + "full_doc_id": doc_id, + "chunk_order_index": chunk_order_index, + "file_path": file_ref, + "llm_cache_list": [], # LightRAG will populate this field + # Multimodal-specific metadata + "is_multimodal": True, + "modal_entity_name": entity_info["entity_name"], + "original_type": data["content_type"], + "page_idx": data["item_info"].get("page_idx", 0), + } + + self.logger.debug( + f"Converted {len(chunks)} multimodal items to multimodal chunks format" + ) + return chunks + + def _apply_chunk_template( + self, content_type: str, original_item: Dict[str, Any], description: str + ) -> str: + """ + Apply the appropriate chunk template based on content type + + Args: + content_type: Type of content (image, table, equation, generic) + original_item: Original multimodal item data + description: Enhanced description generated by the processor + + Returns: + Formatted chunk content using the appropriate template + """ + from raganything.prompt import PROMPTS + + try: + if content_type == "image": + image_path = original_item.get("img_path", "") + captions = normalize_caption_list( + original_item.get( + "image_caption", original_item.get("img_caption", []) + ) + ) + footnotes = normalize_caption_list( + original_item.get( + "image_footnote", original_item.get("img_footnote", []) + ) + ) + section_path = original_item.get("_section_path", "") + neighbor_text = original_item.get("_neighbor_text", "") + + return PROMPTS["image_chunk"].format( + section_path=section_path if section_path else "None", + neighbor_text=neighbor_text if neighbor_text else "None", + image_path=image_path, + captions=", ".join(captions) if captions else "None", + footnotes=", ".join(footnotes) if footnotes else "None", + enhanced_caption=description, + ) + + elif content_type == "table": + table_img_path = original_item.get("img_path", "") + table_caption = normalize_caption_list( + original_item.get("table_caption", []) + ) + table_body = format_table_body(get_table_body(original_item)) + table_footnote = normalize_caption_list( + original_item.get("table_footnote", []) + ) + + return PROMPTS["table_chunk"].format( + table_img_path=table_img_path, + table_caption=", ".join(table_caption) if table_caption else "None", + table_body=table_body, + table_footnote=", ".join(table_footnote) + if table_footnote + else "None", + enhanced_caption=description, + ) + + elif content_type == "equation": + equation_text, equation_format = get_equation_text_and_format( + original_item + ) + + return PROMPTS["equation_chunk"].format( + equation_text=equation_text, + equation_format=equation_format, + enhanced_caption=description, + ) + + else: # generic or unknown types + content = str(original_item.get("content", original_item)) + + return PROMPTS["generic_chunk"].format( + content_type=content_type.title(), + content=content, + enhanced_caption=description, + ) + + except Exception as e: + self.logger.warning( + f"Error applying chunk template for {content_type}: {e}" + ) + # Fallback to just the description if template fails + return description + + async def _store_chunks_to_lightrag_storage_type_aware( + self, chunks: Dict[str, Any] + ): + """Store chunks to storage""" + try: + # Store in text_chunks storage (required for extract_entities) + await self.lightrag.text_chunks.upsert(chunks) + + # Store in chunks vector database for retrieval + await self.lightrag.chunks_vdb.upsert(chunks) + + self.logger.debug(f"Stored {len(chunks)} multimodal chunks to storage") + + except Exception as e: + self.logger.error(f"Error storing chunks to storage: {e}") + raise + + async def _store_multimodal_main_entities( + self, + multimodal_data_list: List[Dict[str, Any]], + lightrag_chunks: Dict[str, Any], + file_path: str, + doc_id: str = None, + ): + """ + Store multimodal main entities to entities_vdb and full_entities. + This ensures that entities like "TableName (table)" are properly indexed. + + Args: + multimodal_data_list: List of processed multimodal data with entity info + lightrag_chunks: Chunks in LightRAG format (already formatted with templates) + file_path: File path for the entities + doc_id: Document ID for full_entities storage + """ + if not multimodal_data_list: + return + + # Create entities_vdb entries for all multimodal main entities + entities_to_store = {} + + # Use full path or basename based on config + file_ref = self._get_file_reference(file_path) + + for data in multimodal_data_list: + entity_info = data["entity_info"] + entity_name = entity_info["entity_name"] + description = data["description"] + content_type = data["content_type"] + original_item = data["original_item"] + + # Apply the same chunk template to get the formatted content + formatted_chunk_content = self._apply_chunk_template( + content_type, original_item, description + ) + + # Generate chunk_id using the formatted content (same as in _convert_to_lightrag_chunks) + chunk_id = compute_mdhash_id(formatted_chunk_content, prefix="chunk-") + + # Generate entity_id using LightRAG's standard format + entity_id = compute_mdhash_id(entity_name, prefix="ent-") + + # Create entity data in LightRAG format + entity_data = { + "entity_name": entity_name, + "entity_type": entity_info.get("entity_type", content_type), + "content": entity_info.get("summary", description), + "source_id": chunk_id, + "file_path": file_ref, + } + + entities_to_store[entity_id] = entity_data + + if entities_to_store: + try: + # Store entities in knowledge graph + for entity_id, entity_data in entities_to_store.items(): + entity_name = entity_data["entity_name"] + + # Create node data for knowledge graph + node_data = { + "entity_id": entity_name, + "entity_type": entity_data["entity_type"], + "description": entity_data["content"], + "source_id": entity_data["source_id"], + "file_path": entity_data["file_path"], + "created_at": int(time.time()), + } + + # Store in knowledge graph + await self.lightrag.chunk_entity_relation_graph.upsert_node( + entity_name, node_data + ) + + # Store in entities_vdb + await self.lightrag.entities_vdb.upsert(entities_to_store) + await self.lightrag.entities_vdb.index_done_callback() + + # NEW: Store multimodal main entities in full_entities storage + if doc_id and self.lightrag.full_entities: + await self._store_multimodal_entities_to_full_entities( + entities_to_store, doc_id + ) + + self.logger.debug( + f"Stored {len(entities_to_store)} multimodal main entities to knowledge graph, entities_vdb, and full_entities" + ) + + except Exception as e: + self.logger.error(f"Error storing multimodal main entities: {e}") + raise + + async def _store_multimodal_entities_to_full_entities( + self, entities_to_store: Dict[str, Any], doc_id: str + ): + """ + Store multimodal main entities to full_entities storage. + + Args: + entities_to_store: Dictionary of entities to store + doc_id: Document ID for grouping entities + """ + try: + # Get current full_entities data for this document + current_doc_entities = await self.lightrag.full_entities.get_by_id(doc_id) + + if current_doc_entities is None: + # Create new document entry + entity_names = [ + entity_data["entity_name"] + for entity_data in entities_to_store.values() + ] + doc_entities_data = { + "entity_names": entity_names, + "count": len(entity_names), + "update_time": int(time.time()), + } + else: + # Update existing document entry while preserving any existing + # metadata fields stored by the text pipeline. + existing_entity_names = list( + current_doc_entities.get("entity_names", []) + ) + seen_entity_names = set(existing_entity_names) + + for entity_data in entities_to_store.values(): + entity_name = entity_data["entity_name"] + if entity_name not in seen_entity_names: + existing_entity_names.append(entity_name) + seen_entity_names.add(entity_name) + + doc_entities_data = { + **current_doc_entities, + "entity_names": existing_entity_names, + "count": len(existing_entity_names), + "update_time": int(time.time()), + } + + # Store updated data + await self.lightrag.full_entities.upsert({doc_id: doc_entities_data}) + await self.lightrag.full_entities.index_done_callback() + + self.logger.debug( + f"Added {len(entities_to_store)} multimodal main entities to full_entities for doc {doc_id}" + ) + + except Exception as e: + self.logger.error( + f"Error storing multimodal entities to full_entities: {e}" + ) + raise + + async def _batch_extract_entities_lightrag_style_type_aware( + self, lightrag_chunks: Dict[str, Any] + ) -> List[Tuple]: + """Use LightRAG's extract_entities for batch entity relation extraction""" + from lightrag.kg.shared_storage import ( + get_namespace_data, + get_pipeline_status_lock, + ) + from lightrag.operate import extract_entities + + # Get pipeline status (consistent with LightRAG) + pipeline_status = await get_namespace_data("pipeline_status") + pipeline_status_lock = get_pipeline_status_lock() + + # Directly use LightRAG's extract_entities + chunk_results = await extract_entities( + chunks=lightrag_chunks, + global_config=self.lightrag.__dict__, + pipeline_status=pipeline_status, + pipeline_status_lock=pipeline_status_lock, + llm_response_cache=self.lightrag.llm_response_cache, + text_chunks_storage=self.lightrag.text_chunks, + ) + + self.logger.info( + f"Extracted entities from {len(lightrag_chunks)} multimodal chunks" + ) + return chunk_results + + async def _batch_add_belongs_to_relations_type_aware( + self, chunk_results: List[Tuple], multimodal_data_list: List[Dict[str, Any]] + ) -> List[Tuple]: + """Add belongs_to relations for multimodal entities""" + # Create mapping from chunk_id to modal_entity_name + chunk_to_modal_entity = {} + chunk_to_file_path = {} + + for data in multimodal_data_list: + description = data["description"] + content_type = data["content_type"] + original_item = data["original_item"] + + # Use the same template formatting as in _convert_to_lightrag_chunks_type_aware + formatted_chunk_content = self._apply_chunk_template( + content_type, original_item, description + ) + chunk_id = compute_mdhash_id(formatted_chunk_content, prefix="chunk-") + + chunk_to_modal_entity[chunk_id] = data["entity_info"]["entity_name"] + chunk_to_file_path[chunk_id] = data.get("file_path", "multimodal_content") + + enhanced_chunk_results = [] + belongs_to_count = 0 + + for maybe_nodes, maybe_edges in chunk_results: + # Find corresponding modal_entity_name for this chunk + chunk_id = None + for nodes_dict in maybe_nodes.values(): + if nodes_dict: + chunk_id = nodes_dict[0].get("source_id") + break + + if chunk_id and chunk_id in chunk_to_modal_entity: + modal_entity_name = chunk_to_modal_entity[chunk_id] + file_path = chunk_to_file_path.get(chunk_id, "multimodal_content") + + # Add belongs_to relations for all extracted entities + for entity_name in maybe_nodes.keys(): + if entity_name != modal_entity_name: # Avoid self-relation + belongs_to_relation = { + "src_id": entity_name, + "tgt_id": modal_entity_name, + "description": f"Entity {entity_name} belongs to {modal_entity_name}", + "keywords": "belongs_to,part_of,contained_in", + "source_id": chunk_id, + "weight": 10.0, + "file_path": file_path, + } + + # Add to maybe_edges + edge_key = (entity_name, modal_entity_name) + if edge_key not in maybe_edges: + maybe_edges[edge_key] = [] + maybe_edges[edge_key].append(belongs_to_relation) + belongs_to_count += 1 + + enhanced_chunk_results.append((maybe_nodes, maybe_edges)) + + self.logger.info( + f"Added {belongs_to_count} belongs_to relations for multimodal entities" + ) + return enhanced_chunk_results + + async def _batch_merge_lightrag_style_type_aware( + self, enhanced_chunk_results: List[Tuple], file_path: str, doc_id: str = None + ): + """Use LightRAG's merge_nodes_and_edges for batch merge""" + from lightrag.kg.shared_storage import ( + get_namespace_data, + get_pipeline_status_lock, + ) + from lightrag.operate import merge_nodes_and_edges + + pipeline_status = await get_namespace_data("pipeline_status") + pipeline_status_lock = get_pipeline_status_lock() + + # Use full path or basename based on config + file_ref = self._get_file_reference(file_path) + + await merge_nodes_and_edges( + chunk_results=enhanced_chunk_results, + knowledge_graph_inst=self.lightrag.chunk_entity_relation_graph, + entity_vdb=self.lightrag.entities_vdb, + relationships_vdb=self.lightrag.relationships_vdb, + global_config=self.lightrag.__dict__, + full_entities_storage=self.lightrag.full_entities, + full_relations_storage=self.lightrag.full_relations, + doc_id=doc_id, + pipeline_status=pipeline_status, + pipeline_status_lock=pipeline_status_lock, + llm_response_cache=self.lightrag.llm_response_cache, + entity_chunks_storage=self.lightrag.entity_chunks, + relation_chunks_storage=self.lightrag.relation_chunks, + current_file_number=1, + total_files=1, + file_path=file_ref, + ) + + await self.lightrag._insert_done() + + async def _update_doc_status_with_chunks_type_aware( + self, doc_id: str, chunk_ids: List[str] + ): + """Update document status with multimodal chunks""" + try: + # Get current document status + current_doc_status = await self.lightrag.doc_status.get_by_id(doc_id) + + if current_doc_status: + existing_chunks_list = current_doc_status.get("chunks_list", []) + existing_chunks_count = current_doc_status.get("chunks_count", 0) + + # Add multimodal chunks to the standard chunks_list + updated_chunks_list = existing_chunks_list + chunk_ids + updated_chunks_count = existing_chunks_count + len(chunk_ids) + + # Update document status with integrated chunk list + await self.lightrag.doc_status.upsert( + { + doc_id: { + **current_doc_status, # Keep existing fields + "chunks_list": updated_chunks_list, # Integrated chunks list + "chunks_count": updated_chunks_count, # Updated total count + "updated_at": time.strftime("%Y-%m-%dT%H:%M:%S+00:00"), + } + } + ) + + # Ensure doc_status update is persisted to disk + await self.lightrag.doc_status.index_done_callback() + + self.logger.info( + f"Updated doc_status: added {len(chunk_ids)} multimodal chunks to standard chunks_list " + f"(total chunks: {updated_chunks_count})" + ) + + except Exception as e: + self.logger.warning( + f"Error updating doc_status with multimodal chunks: {e}" + ) + + async def _mark_multimodal_processing_complete(self, doc_id: str): + """Mark multimodal content processing as complete in the document status.""" + try: + current_doc_status = await self.lightrag.doc_status.get_by_id(doc_id) + if current_doc_status: + final_status = current_doc_status.get("status") or DocStatus.PROCESSED + if final_status != DocStatus.FAILED: + final_status = DocStatus.PROCESSED + update_payload = { + **current_doc_status, + "status": final_status, + "multimodal_processed": True, + "updated_at": self._current_doc_status_timestamp(), + } + try: + await self.lightrag.doc_status.upsert({doc_id: update_payload}) + except Exception as exc: + # Older LightRAG versions reject unknown doc_status fields such as + # multimodal_processed. Fall back to a schema-compatible status-only + # update so image-only and multimodal documents still complete. + self.logger.debug( + "Falling back to schema-compatible doc_status update for %s: %s", + doc_id, + exc, + ) + fallback_payload = { + **current_doc_status, + "status": final_status, + "updated_at": self._current_doc_status_timestamp(), + } + await self.lightrag.doc_status.upsert({doc_id: fallback_payload}) + await self._set_multimodal_status_record(doc_id, True) + await self.lightrag.doc_status.index_done_callback() + self.logger.debug( + f"Marked multimodal content processing as complete for document {doc_id}" + ) + except Exception as e: + self.logger.warning( + f"Error marking multimodal processing as complete for document {doc_id}: {e}" + ) + + async def is_document_fully_processed(self, doc_id: str) -> bool: + """ + Check if a document is fully processed (both text and multimodal content). + + Args: + doc_id: Document ID to check + + Returns: + bool: True if both text and multimodal content are processed + """ + try: + doc_status = await self.lightrag.doc_status.get_by_id(doc_id) + if not doc_status: + return False + + text_processed = doc_status.get("status") == DocStatus.PROCESSED + multimodal_processed = await self._get_multimodal_processed_flag( + doc_id, doc_status + ) + + return text_processed and multimodal_processed + + except Exception as e: + self.logger.error( + f"Error checking document processing status for {doc_id}: {e}" + ) + return False + + async def get_document_processing_status(self, doc_id: str) -> Dict[str, Any]: + """ + Get detailed processing status for a document. + + Args: + doc_id: Document ID to check + + Returns: + Dict with processing status details + """ + try: + doc_status = await self.lightrag.doc_status.get_by_id(doc_id) + if not doc_status: + return { + "exists": False, + "text_processed": False, + "multimodal_processed": False, + "fully_processed": False, + "chunks_count": 0, + } + + text_processed = doc_status.get("status") == DocStatus.PROCESSED + multimodal_processed = await self._get_multimodal_processed_flag( + doc_id, doc_status + ) + fully_processed = text_processed and multimodal_processed + + return { + "exists": True, + "text_processed": text_processed, + "multimodal_processed": multimodal_processed, + "fully_processed": fully_processed, + "chunks_count": doc_status.get("chunks_count", 0), + "chunks_list": doc_status.get("chunks_list", []), + "status": doc_status.get("status", ""), + "updated_at": doc_status.get("updated_at", ""), + "raw_status": doc_status, + } + + except Exception as e: + self.logger.error( + f"Error getting document processing status for {doc_id}: {e}" + ) + return { + "exists": False, + "error": str(e), + "text_processed": False, + "multimodal_processed": False, + "fully_processed": False, + "chunks_count": 0, + } + + async def process_document_complete( + self, + file_path: str, + output_dir: str = None, + parse_method: str = None, + display_stats: bool = None, + split_by_character: str | None = None, + split_by_character_only: bool = False, + doc_id: str | None = None, + file_name: str | None = None, + **kwargs, + ): + """ + Complete document processing workflow + + Args: + file_path: Path to the file to process + output_dir: output directory (defaults to config.parser_output_dir) + parse_method: Parse method (defaults to config.parse_method) + display_stats: Whether to display content statistics (defaults to config.display_content_stats) + split_by_character: Optional character to split the text by + split_by_character_only: If True, split only by the specified character + doc_id: Optional document ID, if not provided will be generated from content + **kwargs: Additional parameters for parser (e.g., lang, device, start_page, end_page, formula, table, backend, source) + """ + callback_manager = getattr(self, "callback_manager", None) + doc_start_time = time.time() + stage = "parse" + file_name = file_name or self._get_file_reference(file_path) + + try: + # Ensure LightRAG is initialized + init_result = await self._ensure_lightrag_initialized() + if not init_result or not init_result.get("success"): + raise RuntimeError( + f"LightRAG initialization failed: {(init_result or {}).get('error', 'unknown error')}" + ) + + # Use config defaults if not provided + if output_dir is None: + output_dir = self.config.parser_output_dir + if parse_method is None: + parse_method = self.config.parse_method + if display_stats is None: + display_stats = self.config.display_content_stats + + self.logger.info(f"Starting complete document processing: {file_path}") + + # Step 1: Parse document + content_list, content_based_doc_id = await self.parse_document( + file_path, output_dir, parse_method, display_stats, **kwargs + ) + + # Use provided doc_id or fall back to content-based doc_id + if doc_id is None: + doc_id = content_based_doc_id + + # Step 2: Separate text and multimodal content + text_content, multimodal_items = separate_content(content_list) + + # LightRAG creates the initial doc_status entry during text insertion. + # Pre-registering the same doc_id here makes LightRAG treat a fresh + # document insert as a duplicate, so only create the record up front + # for multimodal-only content that will not call ainsert(). + if not text_content.strip(): + await self._upsert_doc_status( + doc_id, + file_name, + status=DocStatus.HANDLING, + error_msg="", + ) + + # Step 2.5: Set content source for context extraction in multimodal processing + if hasattr(self, "set_content_source_for_context") and multimodal_items: + self.logger.info( + "Setting content source for context-aware multimodal processing..." + ) + self.set_content_source_for_context( + content_list, self.config.content_format + ) + + # Step 3: Insert pure text content with all parameters + stage = "text_insert" + if text_content.strip(): + if callback_manager is not None: + callback_manager.dispatch( + "on_text_insert_start", + file_path=file_name, + text_length=len(text_content), + doc_id=doc_id, + ) + insert_start = time.time() + await insert_text_content( + self.lightrag, + input=text_content, + file_paths=file_name, + split_by_character=split_by_character, + split_by_character_only=split_by_character_only, + ids=doc_id, + ) + await self._upsert_doc_status( + doc_id, + file_name, + status=DocStatus.HANDLING, + error_msg="", + ) + if callback_manager is not None: + insert_duration = time.time() - insert_start + callback_manager.dispatch( + "on_text_insert_complete", + file_path=file_name, + duration_seconds=insert_duration, + doc_id=doc_id, + ) + else: + # file_name was resolved before parsing so doc_status can be initialized early + pass + + # Step 4: Process multimodal content (using specialized processors) + stage = "multimodal" + if multimodal_items: + await self._process_multimodal_content( + multimodal_items, file_name, doc_id + ) + else: + # If no multimodal content, mark multimodal processing as complete + # This ensures the document status properly reflects completion of all processing + await self._mark_multimodal_processing_complete(doc_id) + self.logger.debug( + f"No multimodal content found in document {doc_id}, " + "marked multimodal processing as complete", + ) + + except Exception as exc: + if doc_id is not None: + try: + await self._upsert_doc_status( + doc_id, + file_name, + status=DocStatus.FAILED, + error_msg=str(exc), + ) + except Exception as status_exc: + self.logger.debug( + f"Failed to persist doc_status error state for {doc_id}: {status_exc}" + ) + if callback_manager is not None: + callback_manager.dispatch( + "on_document_error", + file_path=str(file_path), + doc_id=doc_id, + stage=stage, + error=exc, + ) + raise + + self.logger.info(f"Document {file_path} processing complete!") + if callback_manager is not None: + duration = time.time() - doc_start_time + callback_manager.dispatch( + "on_document_complete", + file_path=str(file_path), + doc_id=doc_id, + duration_seconds=duration, + ) + + async def process_document_complete_lightrag_api( + self, + file_path: str, + output_dir: str = None, + parse_method: str = None, + display_stats: bool = None, + split_by_character: str | None = None, + split_by_character_only: bool = False, + doc_id: str | None = None, + scheme_name: str | None = None, + parser: str | None = None, + **kwargs, + ): + """ + API exclusively for LightRAG calls: Complete document processing workflow + + Args: + file_path: Path to the file to process + output_dir: output directory (defaults to config.parser_output_dir) + parse_method: Parse method (defaults to config.parse_method) + display_stats: Whether to display content statistics (defaults to config.display_content_stats) + split_by_character: Optional character to split the text by + split_by_character_only: If True, split only by the specified character + doc_id: Optional document ID, if not provided will be generated from content + **kwargs: Additional parameters for parser (e.g., lang, device, start_page, end_page, formula, table, backend, source) + """ + # Use full path or basename based on config + file_name = self._get_file_reference(file_path) + doc_pre_id = f"doc-pre-{file_name}" + pipeline_status = None + pipeline_status_lock = None + current_doc_status = {} # initialised here so the except block can always unpack it + + async def mark_initialization_failed(error_msg: str) -> None: + """Persist init failures when LightRAG doc_status is already available.""" + lightrag = getattr(self, "lightrag", None) + doc_status = getattr(lightrag, "doc_status", None) + if doc_status is None: + self.logger.error( + "LightRAG initialization failed before doc_status was available; " + f"unable to persist failed status for {file_path}" + ) + return + + try: + existing_status = await doc_status.get_by_id(doc_pre_id) + failed_status = { + "status": DocStatus.FAILED, + "content": "", + "error_msg": error_msg, + "content_summary": "", + "multimodal_content": [], + "scheme_name": scheme_name, + "content_length": 0, + "created_at": "", + "updated_at": time.strftime("%Y-%m-%dT%H:%M:%S+00:00"), + "file_path": file_name, + } + if existing_status: + failed_status = { + **existing_status, + "status": DocStatus.FAILED, + "error_msg": error_msg, + "updated_at": time.strftime("%Y-%m-%dT%H:%M:%S+00:00"), + } + await doc_status.upsert({doc_pre_id: failed_status}) + await doc_status.index_done_callback() + except Exception as status_error: + self.logger.error( + f"Failed to persist initialization failure status for {file_path}: " + f"{status_error}" + ) + + if parser: + self.config.parser = parser + + try: + # Ensure LightRAG is initialized before accessing its storages + result = await self._ensure_lightrag_initialized() + if not result or not result.get("success"): + error_msg = (result or {}).get("error", "unknown error") + self.logger.error( + f"LightRAG initialization failed: {error_msg}; " + f"skipping document processing for {file_path}" + ) + await mark_initialization_failed(str(error_msg)) + return False + + # Use config defaults if not provided + if output_dir is None: + output_dir = self.config.parser_output_dir + if parse_method is None: + parse_method = self.config.parse_method + if display_stats is None: + display_stats = self.config.display_content_stats + + self.logger.info(f"Starting complete document processing: {file_path}") + + # Initialize doc status + current_doc_status = await self.lightrag.doc_status.get_by_id(doc_pre_id) + if not current_doc_status: + await self.lightrag.doc_status.upsert( + { + doc_pre_id: { + "status": DocStatus.READY, + "content": "", + "error_msg": "", + "content_summary": "", + "multimodal_content": [], + "scheme_name": scheme_name, + "content_length": 0, + "created_at": "", + "updated_at": "", + "file_path": file_name, + } + } + ) + current_doc_status = await self.lightrag.doc_status.get_by_id( + doc_pre_id + ) + + from lightrag.kg.shared_storage import ( + get_namespace_data, + get_pipeline_status_lock, + ) + + pipeline_status = await get_namespace_data("pipeline_status") + pipeline_status_lock = get_pipeline_status_lock() + + # Set processing status + async with pipeline_status_lock: + pipeline_status.update({"scan_disabled": True}) + pipeline_status["history_messages"].append("Now is not allowed to scan") + + await self.lightrag.doc_status.upsert( + { + doc_pre_id: { + **current_doc_status, + "status": DocStatus.HANDLING, + "error_msg": "", + } + } + ) + + content_list = [] + content_based_doc_id = "" + + try: + # Step 1: Parse document + content_list, content_based_doc_id = await self.parse_document( + file_path, output_dir, parse_method, display_stats, **kwargs + ) + except MineruExecutionError as e: + if isinstance(e.error_msg, list): + error_message = "\n".join(str(m) for m in e.error_msg) + else: + error_message = str(e.error_msg) + await self.lightrag.doc_status.upsert( + { + doc_pre_id: { + **current_doc_status, + "status": DocStatus.FAILED, + "error_msg": error_message, + } + } + ) + self.logger.info( + f"Error processing document {file_path}: MineruExecutionError" + ) + return False + except Exception as e: + await self.lightrag.doc_status.upsert( + { + doc_pre_id: { + **current_doc_status, + "status": DocStatus.FAILED, + "error_msg": str(e), + } + } + ) + self.logger.info(f"Error processing document {file_path}: {str(e)}") + return False + + # Use provided doc_id or fall back to content-based doc_id + if doc_id is None: + doc_id = content_based_doc_id + + await self._upsert_doc_status( + doc_id, + file_name, + scheme_name=scheme_name, + status=DocStatus.HANDLING, + error_msg="", + ) + + # Step 2: Separate text and multimodal content + text_content, multimodal_items = separate_content(content_list) + + # Step 2.5: Set content source for context extraction in multimodal processing + if hasattr(self, "set_content_source_for_context") and multimodal_items: + self.logger.info( + "Setting content source for context-aware multimodal processing..." + ) + self.set_content_source_for_context( + content_list, self.config.content_format + ) + + # Step 3: Insert pure text content and multimodal content with all parameters + if text_content.strip(): + await insert_text_content_with_multimodal_content( + self.lightrag, + input=text_content, + multimodal_content=multimodal_items, + file_paths=file_name, + split_by_character=split_by_character, + split_by_character_only=split_by_character_only, + ids=doc_id, + scheme_name=scheme_name, + ) + + self.logger.info(f"Document {file_path} processing completed successfully") + return True + + except Exception as e: + self.logger.error(f"Error processing document {file_path}: {str(e)}") + self.logger.debug("Exception details:", exc_info=True) + + # Update doc status to Failed + await self.lightrag.doc_status.upsert( + { + doc_pre_id: { + **current_doc_status, + "status": DocStatus.FAILED, + "error_msg": str(e), + } + } + ) + await self.lightrag.doc_status.index_done_callback() + + # Update pipeline status + if pipeline_status_lock and pipeline_status: + try: + async with pipeline_status_lock: + pipeline_status.update({"scan_disabled": False}) + error_msg = ( + f"RAGAnything processing failed for {file_name}: {str(e)}" + ) + pipeline_status["latest_message"] = error_msg + pipeline_status["history_messages"].append(error_msg) + pipeline_status["history_messages"].append( + "Now is allowed to scan" + ) + except Exception as pipeline_update_error: + self.logger.error( + f"Failed to update pipeline status: {pipeline_update_error}" + ) + + return False + + finally: + if pipeline_status_lock is not None and pipeline_status is not None: + try: + async with pipeline_status_lock: + pipeline_status.update({"scan_disabled": False}) + pipeline_status["latest_message"] = ( + f"RAGAnything processing completed for {file_name}" + ) + pipeline_status["history_messages"].append( + f"RAGAnything processing completed for {file_name}" + ) + pipeline_status["history_messages"].append( + "Now is allowed to scan" + ) + except Exception as _finally_err: + self.logger.error( + f"Failed to update pipeline status in finally block: {_finally_err}" + ) + + async def insert_content_list( + self, + content_list: List[Dict[str, Any]], + file_path: str = "unknown_document", + split_by_character: str | None = None, + split_by_character_only: bool = False, + doc_id: str | None = None, + display_stats: bool = None, + ): + """ + Insert content list directly without document parsing + + Args: + content_list: Pre-parsed content list containing text and multimodal items. + Each item should be a dictionary with the following structure: + - Text: {"type": "text", "text": "content", "page_idx": 0} + - Image: {"type": "image", "img_path": "/absolute/path/to/image.jpg", + "image_caption": ["caption"], "image_footnote": ["note"], "page_idx": 1} + - Table: {"type": "table", "table_body": "markdown table", + "table_caption": ["caption"], "table_footnote": ["note"], "page_idx": 2} + - Equation: {"type": "equation", "latex": "LaTeX formula", + "text": "description", "page_idx": 3} + - Generic: {"type": "custom_type", "content": "any content", "page_idx": 4} + file_path: Reference file path/name for citation (defaults to "unknown_document") + split_by_character: Optional character to split the text by + split_by_character_only: If True, split only by the specified character + doc_id: Optional document ID, if not provided will be generated from content + display_stats: Whether to display content statistics (defaults to config.display_content_stats) + + Note: + - img_path must be an absolute path to the image file + - page_idx represents the page number where the content appears (0-based indexing) + - Items are processed in the order they appear in the list + """ + callback_manager = getattr(self, "callback_manager", None) + doc_start_time = time.time() + + # Ensure LightRAG is initialized + init_result = await self._ensure_lightrag_initialized() + if not init_result or not init_result.get("success"): + raise RuntimeError( + f"LightRAG initialization failed: {(init_result or {}).get('error', 'unknown error')}" + ) + + # Use config defaults if not provided + if display_stats is None: + display_stats = self.config.display_content_stats + + self.logger.info( + f"Starting direct content list insertion for: {file_path} ({len(content_list)} items)" + ) + + # Generate doc_id based on content if not provided + if doc_id is None: + doc_id = self._generate_content_based_doc_id(content_list) + + file_ref = self._get_file_reference(file_path) + + # Display content statistics if requested + if display_stats: + self.logger.info("\nContent Information:") + self.logger.info(f"* Total blocks in content_list: {len(content_list)}") + + # Count elements by type + block_types: Dict[str, int] = {} + for block in content_list: + if isinstance(block, dict): + block_type = block.get("type", "unknown") + if isinstance(block_type, str): + block_types[block_type] = block_types.get(block_type, 0) + 1 + + self.logger.info("* Content block types:") + for block_type, count in block_types.items(): + self.logger.info(f" - {block_type}: {count}") + + # Step 1: Separate text and multimodal content + text_content, multimodal_items = separate_content(content_list) + + # LightRAG creates the initial doc_status entry during text insertion. + # Pre-registering the same doc_id here makes LightRAG treat a fresh + # content-list insert as a duplicate, so only create the record up front + # for multimodal-only content that will not call ainsert(). + if not text_content.strip(): + await self._upsert_doc_status( + doc_id, + file_ref, + status=DocStatus.HANDLING, + error_msg="", + ) + + # Step 1.5: Set content source for context extraction in multimodal processing + if hasattr(self, "set_content_source_for_context") and multimodal_items: + self.logger.info( + "Setting content source for context-aware multimodal processing..." + ) + self.set_content_source_for_context( + content_list, self.config.content_format + ) + + # Step 2: Insert pure text content with all parameters + if text_content.strip(): + if callback_manager is not None: + callback_manager.dispatch( + "on_text_insert_start", + file_path=file_ref, + text_length=len(text_content), + doc_id=doc_id, + ) + insert_start = time.time() + await insert_text_content( + self.lightrag, + input=text_content, + file_paths=file_ref, + split_by_character=split_by_character, + split_by_character_only=split_by_character_only, + ids=doc_id, + ) + await self._upsert_doc_status( + doc_id, + file_ref, + status=DocStatus.HANDLING, + error_msg="", + ) + if callback_manager is not None: + insert_duration = time.time() - insert_start + callback_manager.dispatch( + "on_text_insert_complete", + file_path=file_ref, + duration_seconds=insert_duration, + doc_id=doc_id, + ) + else: + # file_ref was resolved before insertion so doc_status can be initialized early + pass + + # Step 3: Process multimodal content (using specialized processors) + if multimodal_items: + await self._process_multimodal_content(multimodal_items, file_ref, doc_id) + else: + # If no multimodal content, mark multimodal processing as complete + # This ensures the document status properly reflects completion of all processing + await self._mark_multimodal_processing_complete(doc_id) + self.logger.debug( + f"No multimodal content found in document {doc_id}, marked multimodal processing as complete" + ) + + self.logger.info(f"Content list insertion complete for: {file_path}") + if callback_manager is not None: + duration = time.time() - doc_start_time + callback_manager.dispatch( + "on_document_complete", + file_path=file_path, + doc_id=doc_id, + duration_seconds=duration, + ) diff --git a/raganything/prompt.py b/raganything/prompt.py new file mode 100644 index 0000000..072e645 --- /dev/null +++ b/raganything/prompt.py @@ -0,0 +1,414 @@ +""" +Prompt templates for multimodal content processing + +Contains all prompt templates used in modal processors for analyzing +different types of content (images, tables, equations, etc.) +""" + +from __future__ import annotations +from collections.abc import ItemsView, Iterator, KeysView, ValuesView +from typing import Any + + +class PromptRegistry: + """Stable prompt container with atomic snapshot swapping. + + Readers keep a reference to this object, while language switches replace the + underlying prompt dictionary in one step via :meth:`swap`. + """ + + def __init__(self) -> None: + self._data: dict[str, Any] = {} + + def swap(self, prompts: dict[str, Any]) -> None: + """Atomically replace the active prompt snapshot.""" + self._data = dict(prompts) + + def snapshot(self) -> dict[str, Any]: + """Return a copy of the active prompt set.""" + return dict(self._data) + + def __getitem__(self, key: str) -> Any: + return self._data[key] + + def __setitem__(self, key: str, value: Any) -> None: + self._data[key] = value + + def __delitem__(self, key: str) -> None: + del self._data[key] + + def __contains__(self, key: object) -> bool: + return key in self._data + + def __iter__(self) -> Iterator[str]: + return iter(self._data) + + def __len__(self) -> int: + return len(self._data) + + def get(self, key: str, default: Any = None) -> Any: + return self._data.get(key, default) + + def keys(self) -> KeysView[str]: + return self._data.keys() + + def items(self) -> ItemsView[str, Any]: + return self._data.items() + + def values(self) -> ValuesView[Any]: + return self._data.values() + + def __repr__(self) -> str: + return f"PromptRegistry({self._data!r})" + + +PROMPTS = PromptRegistry() + +# System prompts for different analysis types +PROMPTS["IMAGE_ANALYSIS_SYSTEM"] = ( + "You are an expert image analyst. Provide detailed, accurate descriptions." +) +PROMPTS["IMAGE_ANALYSIS_FALLBACK_SYSTEM"] = ( + "You are an expert image analyst. Provide detailed analysis based on available information." +) +PROMPTS["TABLE_ANALYSIS_SYSTEM"] = ( + "You are an expert data analyst. Provide detailed table analysis with specific insights." +) +PROMPTS["EQUATION_ANALYSIS_SYSTEM"] = ( + "You are an expert mathematician. Provide detailed mathematical analysis." +) +PROMPTS["GENERIC_ANALYSIS_SYSTEM"] = ( + "You are an expert content analyst specializing in {content_type} content." +) + +# Image analysis prompt template +PROMPTS[ + "vision_prompt" +] = """Please analyze this image in detail and provide a JSON response with the following structure: + +{{ + "detailed_description": "A comprehensive and detailed visual description of the image following these guidelines: + - Describe the overall composition and layout + - Identify all objects, people, text, and visual elements + - Explain relationships between elements + - Note colors, lighting, and visual style + - Describe any actions or activities shown + - Include technical details if relevant (charts, diagrams, etc.) + - Always use specific names instead of pronouns", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "image", + "summary": "concise summary of the image content and its significance (max 100 words)" + }} +}} + +Additional context: +- Section Path: {section_path} +- Image Path: {image_path} +- Captions: {captions} +- Footnotes: {footnotes} + +Focus on providing accurate, detailed visual analysis that would be useful for knowledge retrieval. +Use a semantic entity_name; do not return file names or figure numbers such as figure_30_1 unless they are the actual title.""" + +# Image analysis prompt with context support +PROMPTS[ + "vision_prompt_with_context" +] = """Please analyze this image in detail, considering the surrounding context. Provide a JSON response with the following structure: + +{{ + "detailed_description": "A comprehensive and detailed visual description of the image following these guidelines: + - Describe the overall composition and layout + - Identify all objects, people, text, and visual elements + - Explain relationships between elements and how they relate to the surrounding context + - Note colors, lighting, and visual style + - Describe any actions or activities shown + - Include technical details if relevant (charts, diagrams, etc.) + - Reference connections to the surrounding content when relevant + - Always use specific names instead of pronouns", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "image", + "summary": "concise summary of the image content, its significance, and relationship to surrounding content (max 100 words)" + }} +}} + +Context from surrounding content: +{context} + +Document structure: +- Section Path: {section_path} + +Image details: +- Image Path: {image_path} +- Captions: {captions} +- Footnotes: {footnotes} + +Focus on providing accurate, detailed visual analysis that incorporates the context and would be useful for knowledge retrieval. +Use a semantic entity_name; do not return file names or figure numbers such as figure_30_1 unless they are the actual title.""" + +# Image analysis prompt with text fallback +PROMPTS["text_prompt"] = """Based on the following image information, provide analysis: + +Image Path: {image_path} +Captions: {captions} +Footnotes: {footnotes} + +{vision_prompt}""" + +# Table analysis prompt template +PROMPTS[ + "table_prompt" +] = """Please analyze this table content and provide a JSON response with the following structure: + +{{ + "detailed_description": "A comprehensive analysis of the table including: + - Table structure and organization + - Column headers and their meanings + - Key data points and patterns + - Statistical insights and trends + - Relationships between data elements + - Significance of the data presented + Always use specific names and values instead of general references.", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "table", + "summary": "concise summary of the table's purpose and key findings (max 100 words)" + }} +}} + +Table Information: +Image Path: {table_img_path} +Caption: {table_caption} +Body: {table_body} +Footnotes: {table_footnote} + +Focus on extracting meaningful insights and relationships from the tabular data.""" + +# Table analysis prompt with context support +PROMPTS[ + "table_prompt_with_context" +] = """Please analyze this table content considering the surrounding context, and provide a JSON response with the following structure: + +{{ + "detailed_description": "A comprehensive analysis of the table including: + - Table structure and organization + - Column headers and their meanings + - Key data points and patterns + - Statistical insights and trends + - Relationships between data elements + - Significance of the data presented in relation to surrounding context + - How the table supports or illustrates concepts from the surrounding content + Always use specific names and values instead of general references.", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "table", + "summary": "concise summary of the table's purpose, key findings, and relationship to surrounding content (max 100 words)" + }} +}} + +Context from surrounding content: +{context} + +Table Information: +Image Path: {table_img_path} +Caption: {table_caption} +Body: {table_body} +Footnotes: {table_footnote} + +Focus on extracting meaningful insights and relationships from the tabular data in the context of the surrounding content.""" + +# Equation analysis prompt template +PROMPTS[ + "equation_prompt" +] = """Please analyze this mathematical equation and provide a JSON response with the following structure: + +{{ + "detailed_description": "A comprehensive analysis of the equation including: + - Mathematical meaning and interpretation + - Variables and their definitions + - Mathematical operations and functions used + - Application domain and context + - Physical or theoretical significance + - Relationship to other mathematical concepts + - Practical applications or use cases + Always use specific mathematical terminology.", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "equation", + "summary": "concise summary of the equation's purpose and significance (max 100 words)" + }} +}} + +Equation Information: +Equation: {equation_text} +Format: {equation_format} + +Focus on providing mathematical insights and explaining the equation's significance.""" + +# Equation analysis prompt with context support +PROMPTS[ + "equation_prompt_with_context" +] = """Please analyze this mathematical equation considering the surrounding context, and provide a JSON response with the following structure: + +{{ + "detailed_description": "A comprehensive analysis of the equation including: + - Mathematical meaning and interpretation + - Variables and their definitions in the context of surrounding content + - Mathematical operations and functions used + - Application domain and context based on surrounding material + - Physical or theoretical significance + - Relationship to other mathematical concepts mentioned in the context + - Practical applications or use cases + - How the equation relates to the broader discussion or framework + Always use specific mathematical terminology.", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "equation", + "summary": "concise summary of the equation's purpose, significance, and role in the surrounding context (max 100 words)" + }} +}} + +Context from surrounding content: +{context} + +Equation Information: +Equation: {equation_text} +Format: {equation_format} + +Focus on providing mathematical insights and explaining the equation's significance within the broader context.""" + +# Generic content analysis prompt template +PROMPTS[ + "generic_prompt" +] = """Please analyze this {content_type} content and provide a JSON response with the following structure: + +{{ + "detailed_description": "A comprehensive analysis of the content including: + - Content structure and organization + - Key information and elements + - Relationships between components + - Context and significance + - Relevant details for knowledge retrieval + Always use specific terminology appropriate for {content_type} content.", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "{content_type}", + "summary": "concise summary of the content's purpose and key points (max 100 words)" + }} +}} + +Content: {content} + +Focus on extracting meaningful information that would be useful for knowledge retrieval.""" + +# Generic content analysis prompt with context support +PROMPTS[ + "generic_prompt_with_context" +] = """Please analyze this {content_type} content considering the surrounding context, and provide a JSON response with the following structure: + +{{ + "detailed_description": "A comprehensive analysis of the content including: + - Content structure and organization + - Key information and elements + - Relationships between components + - Context and significance in relation to surrounding content + - How this content connects to or supports the broader discussion + - Relevant details for knowledge retrieval + Always use specific terminology appropriate for {content_type} content.", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "{content_type}", + "summary": "concise summary of the content's purpose, key points, and relationship to surrounding context (max 100 words)" + }} +}} + +Context from surrounding content: +{context} + +Content: {content} + +Focus on extracting meaningful information that would be useful for knowledge retrieval and understanding the content's role in the broader context.""" + +# Modal chunk templates +PROMPTS["image_chunk"] = """ +Image Content Analysis: +- Section Path: {section_path} +- Neighbor Text: {neighbor_text} +Image Path: {image_path} +Captions: {captions} +Footnotes: {footnotes} + +Visual Analysis: {enhanced_caption}""" + +PROMPTS["table_chunk"] = """Table Analysis: +Image Path: {table_img_path} +Caption: {table_caption} +Structure: {table_body} +Footnotes: {table_footnote} + +Analysis: {enhanced_caption}""" + +PROMPTS["equation_chunk"] = """Mathematical Equation Analysis: +Equation: {equation_text} +Format: {equation_format} + +Mathematical Analysis: {enhanced_caption}""" + +PROMPTS["generic_chunk"] = """{content_type} Content Analysis: +Content: {content} + +Analysis: {enhanced_caption}""" + +# Query-related prompts +PROMPTS["QUERY_IMAGE_DESCRIPTION"] = ( + "Please briefly describe the main content, key elements, and important information in this image." +) + +PROMPTS["QUERY_IMAGE_ANALYST_SYSTEM"] = ( + "You are a professional image analyst who can accurately describe image content." +) + +PROMPTS[ + "QUERY_TABLE_ANALYSIS" +] = """Please analyze the main content, structure, and key information of the following table data: + +Table data: +{table_data} + +Table caption: {table_caption} + +Please briefly summarize the main content, data characteristics, and important findings of the table.""" + +PROMPTS["QUERY_TABLE_ANALYST_SYSTEM"] = ( + "You are a professional data analyst who can accurately analyze table data." +) + +PROMPTS[ + "QUERY_EQUATION_ANALYSIS" +] = """Please explain the meaning and purpose of the following mathematical formula: + +LaTeX formula: {latex} +Formula caption: {equation_caption} + +Please briefly explain the mathematical meaning, application scenarios, and importance of this formula.""" + +PROMPTS["QUERY_EQUATION_ANALYST_SYSTEM"] = ( + "You are a mathematics expert who can clearly explain mathematical formulas." +) + +PROMPTS[ + "QUERY_GENERIC_ANALYSIS" +] = """Please analyze the following {content_type} type content and extract its main information and key features: + +Content: {content_str} + +Please briefly summarize the main characteristics and important information of this content.""" + +PROMPTS["QUERY_GENERIC_ANALYST_SYSTEM"] = ( + "You are a professional content analyst who can accurately analyze {content_type} type content." +) + +PROMPTS["QUERY_ENHANCEMENT_SUFFIX"] = ( + "\n\nPlease provide a comprehensive answer based on the user query and the provided multimodal content information." +) diff --git a/raganything/prompt_manager.py b/raganything/prompt_manager.py new file mode 100644 index 0000000..ae24a20 --- /dev/null +++ b/raganything/prompt_manager.py @@ -0,0 +1,156 @@ +""" +Prompt language management for RAGAnything. + +Enables switching prompt templates between languages at runtime. +Addresses GitHub issue #85 — prompt language support. + +Usage (process-global switch):: + + from raganything.prompt_manager import set_prompt_language, get_prompt_language + + # Switch all prompts in this process to Chinese + set_prompt_language("zh") + + # Switch back to English (default) + set_prompt_language("en") +""" + +from __future__ import annotations + +import logging +import threading +from typing import Any, Dict + +from raganything.prompt import PROMPTS + +logger = logging.getLogger(__name__) + +# Store the original English prompts as the canonical fallback +_ENGLISH_PROMPTS: Dict[str, Any] = PROMPTS.snapshot() + +# Registry of available prompt languages +_PROMPT_LANGUAGES: Dict[str, Dict[str, Any]] = { + "en": _ENGLISH_PROMPTS, +} + +# Current active language +_current_language: str = "en" + +# Lock to make updates to PROMPTS atomic under concurrent access +_PROMPTS_LOCK = threading.RLock() + + +def _normalize_language_code(language_code: str) -> str: + """Normalize a language code to canonical form.""" + if not isinstance(language_code, str): + raise TypeError( + f"language code must be a non-empty string, got {type(language_code).__name__}" + ) + normalized = language_code.strip().lower() + if not normalized: + raise ValueError("language code must be a non-empty string") + return normalized + + +def _lazy_load_language(lang: str) -> Dict[str, Any]: + """Lazily load prompt templates for a language.""" + if lang == "zh": + from raganything.prompts_zh import PROMPTS_ZH + + return PROMPTS_ZH + return {} + + +def register_prompt_language(language_code: str, prompts: Dict[str, Any]) -> None: + """Register a new set of prompt templates for a language. + + Args: + language_code: ISO 639-1 language code (e.g., "zh", "ja", "ko"). + prompts: Dictionary of prompt templates, using the same keys as + :data:`raganything.prompt.PROMPTS`. + + Example:: + + from raganything.prompt_manager import register_prompt_language + + my_prompts = {"IMAGE_ANALYSIS_SYSTEM": "...in Japanese..."} + register_prompt_language("ja", my_prompts) + """ + lang = _normalize_language_code(language_code) + _PROMPT_LANGUAGES[lang] = dict(prompts) + logger.info("Registered prompt language '%s' with %d templates", lang, len(prompts)) + + +def set_prompt_language(language: str) -> None: + """Switch the active prompt language. + + This replaces the global ``PROMPTS`` dictionary entries with the + corresponding language templates. Any keys missing in the target + language fall back to English. + + Args: + language: Language code (e.g., "en", "zh"). + + Raises: + ValueError: If the language is not registered and cannot be + loaded automatically. + """ + global _current_language + + lang = _normalize_language_code(language) + + # Try lazy-loading if not already registered + if lang not in _PROMPT_LANGUAGES: + loaded = _lazy_load_language(lang) + if loaded: + _PROMPT_LANGUAGES[lang] = loaded + else: + available = ", ".join(sorted(_PROMPT_LANGUAGES.keys())) + raise ValueError( + f"Unknown prompt language '{language}'. " + f"Available: {available}. " + f"Register new languages with register_prompt_language()." + ) + + target_prompts = _PROMPT_LANGUAGES[lang] + + # Compute the resolved prompt set first, then atomically swap the active + # prompt snapshot under a lock so readers never observe a cleared/partial + # dictionary. + resolved: Dict[str, Any] = {} + for key in _ENGLISH_PROMPTS: + if key in target_prompts: + resolved[key] = target_prompts[key] + else: + resolved[key] = _ENGLISH_PROMPTS[key] + + with _PROMPTS_LOCK: + PROMPTS.swap(resolved) + _current_language = lang + + logger.info("Prompt language set to '%s'", lang) + + +def get_prompt_language() -> str: + """Return the currently active prompt language code.""" + return _current_language + + +def reset_prompts() -> None: + """Reset all prompts back to the default English templates.""" + global _current_language + with _PROMPTS_LOCK: + PROMPTS.swap(_ENGLISH_PROMPTS) + _current_language = "en" + logger.info("Prompts reset to English defaults") + + +def get_available_languages() -> list[str]: + """Return a list of all registered language codes. + + Note: Languages that can be lazily loaded (like 'zh') may not appear + here until they are first used or explicitly registered. + """ + # Include known lazy-loadable languages + all_langs = set(_PROMPT_LANGUAGES.keys()) | {"zh"} + return sorted(all_langs) diff --git a/raganything/prompts_zh.py b/raganything/prompts_zh.py new file mode 100644 index 0000000..a836e35 --- /dev/null +++ b/raganything/prompts_zh.py @@ -0,0 +1,345 @@ +""" +Chinese (中文) prompt templates for multimodal content processing. + +Provides Chinese-language prompt templates as an alternative to the default +English templates. Users can activate these at process level by calling +``set_prompt_language("zh")`` from :mod:`raganything.prompt_manager`. + +Addresses GitHub issue #85 — prompt language support. +""" + +from __future__ import annotations +from typing import Any + +PROMPTS_ZH: dict[str, Any] = {} + +# System prompts for different analysis types +PROMPTS_ZH["IMAGE_ANALYSIS_SYSTEM"] = ( + "你是一位专业的图像分析专家。请提供详细、准确的描述。" +) +PROMPTS_ZH["IMAGE_ANALYSIS_FALLBACK_SYSTEM"] = ( + "你是一位专业的图像分析专家。请根据现有信息提供详细分析。" +) +PROMPTS_ZH["TABLE_ANALYSIS_SYSTEM"] = ( + "你是一位专业的数据分析师。请提供包含具体洞察的详细表格分析。" +) +PROMPTS_ZH["EQUATION_ANALYSIS_SYSTEM"] = "你是一位数学专家。请提供详细的数学分析。" +PROMPTS_ZH["GENERIC_ANALYSIS_SYSTEM"] = "你是一位专注于{content_type}内容的专业分析师。" + +# Image analysis prompt template +PROMPTS_ZH["vision_prompt"] = """请详细分析这张图片,并以以下JSON结构提供回答: + +{{ + "detailed_description": "对图片的全面详细描述,遵循以下指导: + - 描述整体构图和布局 + - 识别所有对象、人物、文字和视觉元素 + - 解释元素之间的关系 + - 注意颜色、光照和视觉风格 + - 描述展示的任何动作或活动 + - 如涉及图表、图解等,包含技术细节 + - 始终使用具体名称而非代词", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "image", + "summary": "图片内容及其重要性的简明摘要(不超过100字)" + }} +}} + +附加信息: +- 章节路径:{section_path} +- 图片路径:{image_path} +- 标注:{captions} +- 脚注:{footnotes} + +请专注于提供准确、详细的视觉分析,以便于知识检索。 +请生成语义化的 entity_name;不要返回文件名或图号(例如 figure_30_1),除非它们就是正式标题。""" + +# Image analysis prompt with context support +PROMPTS_ZH[ + "vision_prompt_with_context" +] = """请结合上下文详细分析这张图片,并以以下JSON结构提供回答: + +{{ + "detailed_description": "对图片的全面详细描述,遵循以下指导: + - 描述整体构图和布局 + - 识别所有对象、人物、文字和视觉元素 + - 解释元素之间的关系及其与上下文的联系 + - 注意颜色、光照和视觉风格 + - 描述展示的任何动作或活动 + - 如涉及图表、图解等,包含技术细节 + - 在相关时引用与周围内容的联系 + - 始终使用具体名称而非代词", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "image", + "summary": "图片内容、重要性及与周围内容关系的简明摘要(不超过100字)" + }} +}} + +周围内容上下文: +{context} + +文档结构: +- 章节路径:{section_path} + +图片详细信息: +- 图片路径:{image_path} +- 标注:{captions} +- 脚注:{footnotes} + +请专注于提供融合上下文的准确、详细的视觉分析,以便于知识检索。 +请生成语义化的 entity_name;不要返回文件名或图号(例如 figure_30_1),除非它们就是正式标题。""" + +# Image analysis prompt with text fallback +PROMPTS_ZH["text_prompt"] = """根据以下图片信息提供分析: + +图片路径:{image_path} +标注:{captions} +脚注:{footnotes} + +{vision_prompt}""" + +# Table analysis prompt template +PROMPTS_ZH["table_prompt"] = """请分析此表格内容,并以以下JSON结构提供回答: + +{{ + "detailed_description": "对表格的全面分析,包括: + - 表格结构和组织方式 + - 列标题及其含义 + - 关键数据点和模式 + - 统计洞察和趋势 + - 数据元素之间的关系 + - 所呈现数据的重要性 + 始终使用具体名称和数值而非笼统引用。", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "table", + "summary": "表格目的和关键发现的简明摘要(不超过100字)" + }} +}} + +表格信息: +图片路径:{table_img_path} +标题:{table_caption} +内容:{table_body} +脚注:{table_footnote} + +请专注于从表格数据中提取有意义的洞察和关系。""" + +# Table analysis prompt with context support +PROMPTS_ZH[ + "table_prompt_with_context" +] = """请结合上下文分析此表格内容,并以以下JSON结构提供回答: + +{{ + "detailed_description": "对表格的全面分析,包括: + - 表格结构和组织方式 + - 列标题及其含义 + - 关键数据点和模式 + - 统计洞察和趋势 + - 数据元素之间的关系 + - 所呈现数据与周围上下文的重要性 + - 表格如何支持或说明周围内容中的概念 + 始终使用具体名称和数值而非笼统引用。", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "table", + "summary": "表格目的、关键发现及与周围内容关系的简明摘要(不超过100字)" + }} +}} + +周围内容上下文: +{context} + +表格信息: +图片路径:{table_img_path} +标题:{table_caption} +内容:{table_body} +脚注:{table_footnote} + +请专注于在上下文背景下从表格数据中提取有意义的洞察和关系。""" + +# Equation analysis prompt template +PROMPTS_ZH["equation_prompt"] = """请分析此数学公式,并以以下JSON结构提供回答: + +{{ + "detailed_description": "对公式的全面分析,包括: + - 数学含义和解释 + - 变量及其定义 + - 使用的数学运算和函数 + - 应用领域和背景 + - 物理或理论意义 + - 与其他数学概念的关系 + - 实际应用或用例 + 始终使用准确的数学术语。", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "equation", + "summary": "公式目的和重要性的简明摘要(不超过100字)" + }} +}} + +公式信息: +公式:{equation_text} +格式:{equation_format} + +请专注于提供数学洞察和解释公式的重要性。""" + +# Equation analysis prompt with context support +PROMPTS_ZH[ + "equation_prompt_with_context" +] = """请结合上下文分析此数学公式,并以以下JSON结构提供回答: + +{{ + "detailed_description": "对公式的全面分析,包括: + - 数学含义和解释 + - 在上下文中变量的定义 + - 使用的数学运算和函数 + - 基于周围材料的应用领域和背景 + - 物理或理论意义 + - 与上下文中提到的其他数学概念的关系 + - 实际应用或用例 + - 公式如何与更广泛的讨论或框架相关联 + 始终使用准确的数学术语。", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "equation", + "summary": "公式目的、重要性及在上下文中作用的简明摘要(不超过100字)" + }} +}} + +周围内容上下文: +{context} + +公式信息: +公式:{equation_text} +格式:{equation_format} + +请专注于在更广泛的上下文中提供数学洞察和解释公式的重要性。""" + +# Generic content analysis prompt template +PROMPTS_ZH["generic_prompt"] = """请分析此{content_type}内容,并以以下JSON结构提供回答: + +{{ + "detailed_description": "对内容的全面分析,包括: + - 内容结构和组织 + - 关键信息和元素 + - 组件之间的关系 + - 背景和重要性 + - 与知识检索相关的细节 + 始终使用适合{content_type}内容的专业术语。", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "{content_type}", + "summary": "内容目的和要点的简明摘要(不超过100字)" + }} +}} + +内容:{content} + +请专注于提取对知识检索有用的有意义信息。""" + +# Generic content analysis prompt with context support +PROMPTS_ZH[ + "generic_prompt_with_context" +] = """请结合上下文分析此{content_type}内容,并以以下JSON结构提供回答: + +{{ + "detailed_description": "对内容的全面分析,包括: + - 内容结构和组织 + - 关键信息和元素 + - 组件之间的关系 + - 与周围内容相关的背景和重要性 + - 此内容如何与更广泛的讨论相联系或支持 + - 与知识检索相关的细节 + 始终使用适合{content_type}内容的专业术语。", + "entity_info": {{ + "entity_name": "{entity_name}", + "entity_type": "{content_type}", + "summary": "内容目的、要点及与周围上下文关系的简明摘要(不超过100字)" + }} +}} + +周围内容上下文: +{context} + +内容:{content} + +请专注于提取对知识检索有用的信息,并理解内容在更广泛上下文中的作用。""" + +# Modal chunk templates +PROMPTS_ZH["image_chunk"] = """ +图片内容分析: +- 章节路径:{section_path} +- 邻近文本:{neighbor_text} +图片路径:{image_path} +标注:{captions} +脚注:{footnotes} + +视觉分析:{enhanced_caption}""" + +PROMPTS_ZH["table_chunk"] = """表格分析: +图片路径:{table_img_path} +标题:{table_caption} +结构:{table_body} +脚注:{table_footnote} + +分析:{enhanced_caption}""" + +PROMPTS_ZH["equation_chunk"] = """数学公式分析: +公式:{equation_text} +格式:{equation_format} + +数学分析:{enhanced_caption}""" + +PROMPTS_ZH["generic_chunk"] = """{content_type}内容分析: +内容:{content} + +分析:{enhanced_caption}""" + +# Query-related prompts +PROMPTS_ZH["QUERY_IMAGE_DESCRIPTION"] = ( + "请简要描述这张图片的主要内容、关键元素和重要信息。" +) + +PROMPTS_ZH["QUERY_IMAGE_ANALYST_SYSTEM"] = ( + "你是一位能准确描述图片内容的专业图像分析师。" +) + +PROMPTS_ZH["QUERY_TABLE_ANALYSIS"] = """请分析以下表格数据的主要内容、结构和关键信息: + +表格数据: +{table_data} + +表格标题:{table_caption} + +请简要总结表格的主要内容、数据特征和重要发现。""" + +PROMPTS_ZH["QUERY_TABLE_ANALYST_SYSTEM"] = ( + "你是一位能准确分析表格数据的专业数据分析师。" +) + +PROMPTS_ZH["QUERY_EQUATION_ANALYSIS"] = """请解释以下数学公式的含义和用途: + +LaTeX公式:{latex} +公式标题:{equation_caption} + +请简要说明这个公式的数学意义、应用场景和重要性。""" + +PROMPTS_ZH["QUERY_EQUATION_ANALYST_SYSTEM"] = "你是一位能清晰解释数学公式的数学专家。" + +PROMPTS_ZH[ + "QUERY_GENERIC_ANALYSIS" +] = """请分析以下{content_type}类型内容并提取其主要信息和关键特征: + +内容:{content_str} + +请简要总结此内容的主要特征和重要信息。""" + +PROMPTS_ZH["QUERY_GENERIC_ANALYST_SYSTEM"] = ( + "你是一位能准确分析{content_type}类型内容的专业内容分析师。" +) + +PROMPTS_ZH["QUERY_ENHANCEMENT_SUFFIX"] = ( + "\n\n请基于用户查询和提供的多模态内容信息,提供全面的回答。" +) diff --git a/raganything/query.py b/raganything/query.py new file mode 100644 index 0000000..c35d612 --- /dev/null +++ b/raganything/query.py @@ -0,0 +1,868 @@ +""" +Query functionality for RAGAnything + +Contains all query-related methods for both text and multimodal queries +""" + +import json +import hashlib +import re +import time +from typing import Dict, List, Any +from pathlib import Path +from lightrag import QueryParam +from lightrag.utils import always_get_an_event_loop +from raganything.prompt import PROMPTS +from raganything.utils import ( + get_processor_for_type, + encode_image_to_base64, + validate_image_file, +) + + +class QueryMixin: + """QueryMixin class containing query functionality for RAGAnything""" + + def _generate_multimodal_cache_key( + self, query: str, multimodal_content: List[Dict[str, Any]], mode: str, **kwargs + ) -> str: + """ + Generate cache key for multimodal query + + Args: + query: Base query text + multimodal_content: List of multimodal content + mode: Query mode + **kwargs: Additional parameters + + Returns: + str: Cache key hash + """ + # Create a normalized representation of the query parameters + cache_data = { + "query": query.strip(), + "mode": mode, + } + + # Normalize multimodal content for stable caching + normalized_content = [] + if multimodal_content: + for item in multimodal_content: + if isinstance(item, dict): + normalized_item = {} + for key, value in item.items(): + # For file paths, use basename to make cache more portable + if key in [ + "img_path", + "image_path", + "file_path", + ] and isinstance(value, str): + normalized_item[key] = Path(value).name + # For large content, create a hash instead of storing directly + elif ( + key in ["table_data", "table_body"] + and isinstance(value, str) + and len(value) > 200 + ): + normalized_item[f"{key}_hash"] = hashlib.md5( + value.encode() + ).hexdigest() + else: + normalized_item[key] = value + normalized_content.append(normalized_item) + else: + normalized_content.append(item) + + cache_data["multimodal_content"] = normalized_content + + # Add relevant kwargs to cache data + relevant_kwargs = { + k: v + for k, v in kwargs.items() + if k + in [ + "stream", + "response_type", + "top_k", + "max_tokens", + "temperature", + "system_prompt", + # "only_need_context", + # "only_need_prompt", + ] + } + cache_data.update(relevant_kwargs) + + # Generate hash from the cache data + cache_str = json.dumps(cache_data, sort_keys=True, ensure_ascii=False) + cache_hash = hashlib.md5(cache_str.encode()).hexdigest() + + return f"multimodal_query:{cache_hash}" + + async def aquery( + self, query: str, mode: str = "mix", system_prompt: str | None = None, **kwargs + ) -> str: + """ + Pure text query - directly calls LightRAG's query functionality + + Args: + query: Query text + mode: Query mode ("local", "global", "hybrid", "naive", "mix", "bypass") + system_prompt: Optional system prompt to include. + **kwargs: Other query parameters, will be passed to QueryParam + - vlm_enhanced: bool, default True when vision_model_func is available. + If True, will parse image paths in retrieved context and replace them + with base64 encoded images for VLM processing. + + Returns: + str: Query result + """ + if self.lightrag is None: + raise ValueError( + "No LightRAG instance available. Please process documents first or provide a pre-initialized LightRAG instance." + ) + + # Check if VLM enhanced query should be used + vlm_enhanced = kwargs.pop("vlm_enhanced", None) + + # Auto-determine VLM enhanced based on availability + if vlm_enhanced is None: + vlm_enhanced = ( + hasattr(self, "vision_model_func") + and self.vision_model_func is not None + ) + + # Use VLM enhanced query if enabled and available + if ( + vlm_enhanced + and hasattr(self, "vision_model_func") + and self.vision_model_func + ): + return await self.aquery_vlm_enhanced( + query, mode=mode, system_prompt=system_prompt, **kwargs + ) + elif vlm_enhanced and ( + not hasattr(self, "vision_model_func") or not self.vision_model_func + ): + self.logger.warning( + "VLM enhanced query requested but vision_model_func is not available, falling back to normal query" + ) + + callback_manager = getattr(self, "callback_manager", None) + query_start_time = time.time() + + if callback_manager is not None: + callback_manager.dispatch( + "on_query_start", + query=query, + mode=mode, + ) + + # Create query parameters + query_param = QueryParam(mode=mode, **kwargs) + + self.logger.info(f"Executing text query: {query[:100]}...") + self.logger.info(f"Query mode: {mode}") + + try: + # Call LightRAG's query method + result = await self.lightrag.aquery( + query, param=query_param, system_prompt=system_prompt + ) + except Exception as exc: + if callback_manager is not None: + callback_manager.dispatch( + "on_query_error", + query=query, + mode=mode, + error=exc, + ) + raise + + self.logger.info("Text query completed") + if callback_manager is not None: + duration = time.time() - query_start_time + result_len = len(result) if isinstance(result, str) else 0 + callback_manager.dispatch( + "on_query_complete", + query=query, + mode=mode, + duration_seconds=duration, + result_length=result_len, + ) + return result + + async def aquery_with_multimodal( + self, + query: str, + multimodal_content: List[Dict[str, Any]] = None, + mode: str = "mix", + system_prompt: str | None = None, + **kwargs, + ) -> str: + """ + Multimodal query - combines text and multimodal content for querying + + Args: + query: Base query text + multimodal_content: List of multimodal content, each element contains: + - type: Content type ("image", "table", "equation", etc.) + - Other fields depend on type (e.g., img_path, table_data, latex, etc.) + mode: Query mode ("local", "global", "hybrid", "naive", "mix", "bypass") + system_prompt: Optional system prompt to include in the query + **kwargs: Other query parameters, will be passed to QueryParam + + Returns: + str: Query result + + Examples: + # Pure text query + result = await rag.query_with_multimodal("What is machine learning?") + + # Image query + result = await rag.query_with_multimodal( + "Analyze the content in this image", + multimodal_content=[{ + "type": "image", + "img_path": "./image.jpg" + }] + ) + + # Table query + result = await rag.query_with_multimodal( + "Analyze the data trends in this table", + multimodal_content=[{ + "type": "table", + "table_data": "Name,Age\nAlice,25\nBob,30" + }] + ) + """ + # Ensure LightRAG is initialized + init_result = await self._ensure_lightrag_initialized() + if not init_result or not init_result.get("success"): + raise RuntimeError( + f"LightRAG initialization failed: {(init_result or {}).get('error', 'unknown error')}" + ) + + self.logger.info(f"Executing multimodal query: {query[:100]}...") + self.logger.info(f"Query mode: {mode}") + + # If no multimodal content, fallback to pure text query + if not multimodal_content: + self.logger.info("No multimodal content provided, executing text query") + return await self.aquery( + query, mode=mode, system_prompt=system_prompt, **kwargs + ) + + # Generate cache key for multimodal query + cache_key = self._generate_multimodal_cache_key( + query, + multimodal_content, + mode, + system_prompt=system_prompt, + **kwargs, + ) + + # Check cache if available and enabled + cached_result = None + if ( + hasattr(self, "lightrag") + and self.lightrag + and hasattr(self.lightrag, "llm_response_cache") + and self.lightrag.llm_response_cache + ): + if self.lightrag.llm_response_cache.global_config.get( + "enable_llm_cache", True + ): + try: + cached_result = await self.lightrag.llm_response_cache.get_by_id( + cache_key + ) + if cached_result and isinstance(cached_result, dict): + result_content = cached_result.get("return") + if result_content: + self.logger.info( + f"Multimodal query cache hit: {cache_key[:16]}..." + ) + return result_content + except Exception as e: + self.logger.debug(f"Error accessing multimodal query cache: {e}") + + # Process multimodal content to generate enhanced query text + enhanced_query = await self._process_multimodal_query_content( + query, multimodal_content + ) + + self.logger.info( + f"Generated enhanced query length: {len(enhanced_query)} characters" + ) + + # Execute enhanced query + result = await self.aquery( + enhanced_query, mode=mode, system_prompt=system_prompt, **kwargs + ) + + # Save to cache if available and enabled + if ( + hasattr(self, "lightrag") + and self.lightrag + and hasattr(self.lightrag, "llm_response_cache") + and self.lightrag.llm_response_cache + ): + if self.lightrag.llm_response_cache.global_config.get( + "enable_llm_cache", True + ): + try: + # Create cache entry for multimodal query + cache_entry = { + "return": result, + "cache_type": "multimodal_query", + "original_query": query, + "multimodal_content_count": len(multimodal_content), + "mode": mode, + } + + await self.lightrag.llm_response_cache.upsert( + {cache_key: cache_entry} + ) + self.logger.info( + f"Saved multimodal query result to cache: {cache_key[:16]}..." + ) + except Exception as e: + self.logger.debug(f"Error saving multimodal query to cache: {e}") + + # Ensure cache is persisted to disk + if ( + hasattr(self, "lightrag") + and self.lightrag + and hasattr(self.lightrag, "llm_response_cache") + and self.lightrag.llm_response_cache + ): + try: + await self.lightrag.llm_response_cache.index_done_callback() + except Exception as e: + self.logger.debug(f"Error persisting multimodal query cache: {e}") + + self.logger.info("Multimodal query completed") + return result + + async def aquery_vlm_enhanced( + self, + query: str, + mode: str = "mix", + system_prompt: str | None = None, + extra_safe_dirs: List[str] = None, + **kwargs, + ) -> str: + """ + VLM enhanced query - replaces image paths in retrieved context with base64 encoded images for VLM processing + + Args: + query: User query + mode: Underlying LightRAG query mode + system_prompt: Optional system prompt to include + extra_safe_dirs: Optional list of additional safe directories to allow images from + **kwargs: Other query parameters + + Returns: + str: VLM query result + """ + # Ensure VLM is available + if not hasattr(self, "vision_model_func") or not self.vision_model_func: + raise ValueError( + "VLM enhanced query requires vision_model_func. " + "Please provide a vision model function when initializing RAGAnything." + ) + + # Ensure LightRAG is initialized + init_result = await self._ensure_lightrag_initialized() + if not init_result or not init_result.get("success"): + raise RuntimeError( + f"LightRAG initialization failed: {(init_result or {}).get('error', 'unknown error')}" + ) + + self.logger.info(f"Executing VLM enhanced query: {query[:100]}...") + + # Clear previous image cache + if hasattr(self, "_current_images_base64"): + delattr(self, "_current_images_base64") + + # 1. Get original retrieval prompt (without generating final answer) + query_param = QueryParam(mode=mode, only_need_prompt=True, **kwargs) + raw_prompt = await self.lightrag.aquery(query, param=query_param) + + self.logger.debug("Retrieved raw prompt from LightRAG") + + # 2. Extract and process image paths + enhanced_prompt, images_found = await self._process_image_paths_for_vlm( + raw_prompt, extra_safe_dirs=extra_safe_dirs + ) + + if not images_found: + self.logger.info("No valid images found, falling back to normal query") + # Fallback to normal query + query_param = QueryParam(mode=mode, **kwargs) + return await self.lightrag.aquery( + query, param=query_param, system_prompt=system_prompt + ) + + self.logger.info(f"Processed {images_found} images for VLM") + + # 3. Build VLM message format + messages = self._build_vlm_messages_with_images( + enhanced_prompt, query, system_prompt + ) + + # 4. Call VLM for question answering + result = await self._call_vlm_with_multimodal_content(messages) + + self.logger.info("VLM enhanced query completed") + return result + + async def _process_multimodal_query_content( + self, base_query: str, multimodal_content: List[Dict[str, Any]] + ) -> str: + """ + Process multimodal query content to generate enhanced query text + + Args: + base_query: Base query text + multimodal_content: List of multimodal content + + Returns: + str: Enhanced query text + """ + self.logger.info("Starting multimodal query content processing...") + + enhanced_parts = [f"User query: {base_query}"] + + for i, content in enumerate(multimodal_content): + content_type = content.get("type", "unknown") + self.logger.info( + f"Processing {i + 1}/{len(multimodal_content)} multimodal content: {content_type}" + ) + + try: + # Get appropriate processor + processor = get_processor_for_type(self.modal_processors, content_type) + + if processor: + # Generate content description + description = await self._generate_query_content_description( + processor, content, content_type + ) + enhanced_parts.append( + f"\nRelated {content_type} content: {description}" + ) + else: + # If no appropriate processor, use basic description + basic_desc = str(content)[:200] + enhanced_parts.append( + f"\nRelated {content_type} content: {basic_desc}" + ) + + except Exception as e: + self.logger.error(f"Error processing multimodal content: {str(e)}") + # Continue processing other content + continue + + enhanced_query = "\n".join(enhanced_parts) + enhanced_query += PROMPTS["QUERY_ENHANCEMENT_SUFFIX"] + + self.logger.info("Multimodal query content processing completed") + return enhanced_query + + async def _generate_query_content_description( + self, processor, content: Dict[str, Any], content_type: str + ) -> str: + """ + Generate content description for query + + Args: + processor: Multimodal processor + content: Content data + content_type: Content type + + Returns: + str: Content description + """ + try: + if content_type == "image": + return await self._describe_image_for_query(processor, content) + elif content_type == "table": + return await self._describe_table_for_query(processor, content) + elif content_type == "equation": + return await self._describe_equation_for_query(processor, content) + else: + return await self._describe_generic_for_query( + processor, content, content_type + ) + + except Exception as e: + self.logger.error(f"Error generating {content_type} description: {str(e)}") + return f"{content_type} content: {str(content)[:100]}" + + async def _describe_image_for_query( + self, processor, content: Dict[str, Any] + ) -> str: + """Generate image description for query""" + image_path = content.get("img_path") + captions = content.get("image_caption", content.get("img_caption", [])) + footnotes = content.get("image_footnote", content.get("img_footnote", [])) + + if image_path and Path(image_path).exists(): + # If image exists, use vision model to generate description + image_base64 = processor._encode_image_to_base64(image_path) + if image_base64: + prompt = PROMPTS["QUERY_IMAGE_DESCRIPTION"] + description = await processor.modal_caption_func( + prompt, + image_data=image_base64, + system_prompt=PROMPTS["QUERY_IMAGE_ANALYST_SYSTEM"], + ) + return description + + # If image doesn't exist or processing failed, use existing information + parts = [] + if image_path: + parts.append(f"Image path: {image_path}") + if captions: + parts.append(f"Image captions: {', '.join(captions)}") + if footnotes: + parts.append(f"Image footnotes: {', '.join(footnotes)}") + + return "; ".join(parts) if parts else "Image content information incomplete" + + async def _describe_table_for_query( + self, processor, content: Dict[str, Any] + ) -> str: + """Generate table description for query""" + table_data = content.get("table_data", "") + table_caption = content.get("table_caption", "") + + prompt = PROMPTS["QUERY_TABLE_ANALYSIS"].format( + table_data=table_data, table_caption=table_caption + ) + + description = await processor.modal_caption_func( + prompt, system_prompt=PROMPTS["QUERY_TABLE_ANALYST_SYSTEM"] + ) + + return description + + async def _describe_equation_for_query( + self, processor, content: Dict[str, Any] + ) -> str: + """Generate equation description for query""" + latex = content.get("latex", "") + equation_caption = content.get("equation_caption", "") + + prompt = PROMPTS["QUERY_EQUATION_ANALYSIS"].format( + latex=latex, equation_caption=equation_caption + ) + + description = await processor.modal_caption_func( + prompt, system_prompt=PROMPTS["QUERY_EQUATION_ANALYST_SYSTEM"] + ) + + return description + + async def _describe_generic_for_query( + self, processor, content: Dict[str, Any], content_type: str + ) -> str: + """Generate generic content description for query""" + content_str = str(content) + + prompt = PROMPTS["QUERY_GENERIC_ANALYSIS"].format( + content_type=content_type, content_str=content_str + ) + + description = await processor.modal_caption_func( + prompt, + system_prompt=PROMPTS["QUERY_GENERIC_ANALYST_SYSTEM"].format( + content_type=content_type + ), + ) + + return description + + async def _process_image_paths_for_vlm( + self, prompt: str, extra_safe_dirs: List[str] = None + ) -> tuple[str, int]: + """ + Process image paths in prompt, keeping original paths and adding VLM markers + + Args: + prompt: Original prompt + extra_safe_dirs: Optional list of additional safe directories + + Returns: + tuple: (processed prompt, image count) + """ + enhanced_prompt = prompt + images_processed = 0 + + # Initialize image cache + self._current_images_base64 = [] + + # Enhanced regex pattern for matching image paths + # Matches only the path ending with image file extensions + image_path_pattern = ( + r"Image Path:\s*([^\r\n]*?\.(?:jpg|jpeg|png|gif|bmp|webp|tiff|tif))" + ) + + # First, let's see what matches we find + matches = re.findall(image_path_pattern, prompt) + self.logger.info(f"Found {len(matches)} image path matches in prompt") + + def replace_image_path(match): + nonlocal images_processed + + image_path = match.group(1).strip() + self.logger.debug(f"Processing image path: '{image_path}'") + + # Validate path format (basic check) + if not image_path or len(image_path) < 3: + self.logger.warning(f"Invalid image path format: {image_path}") + return match.group(0) # Keep original + + # Use utility function to validate image file + is_valid = validate_image_file(image_path) + + # Security check: only allow images from the workspace or output directories + # to prevent indirect prompt injection from reading arbitrary system files. + if is_valid: + abs_image_path = Path(image_path).resolve() + # Check if it's in the current working directory or subdirectories + try: + is_in_cwd = abs_image_path.is_relative_to(Path.cwd()) + except ValueError: + is_in_cwd = False + + # If a config is available, check against working_dir and parser_output_dir + is_in_safe_dir = is_in_cwd + if hasattr(self, "config") and self.config: + try: + is_in_working = abs_image_path.is_relative_to( + Path(self.config.working_dir).resolve() + ) + is_in_output = abs_image_path.is_relative_to( + Path(self.config.parser_output_dir).resolve() + ) + is_in_safe_dir = is_in_safe_dir or is_in_working or is_in_output + except Exception: + pass + + # Check against extra safe directories if provided + if not is_in_safe_dir and extra_safe_dirs: + for safe_dir in extra_safe_dirs: + try: + if abs_image_path.is_relative_to(Path(safe_dir).resolve()): + is_in_safe_dir = True + break + except Exception: + continue + + if not is_in_safe_dir: + self.logger.warning( + f"Blocking image path outside safe directories: {image_path}" + ) + is_valid = False + + if not is_valid: + self.logger.warning( + f"Image validation failed or path unsafe for: {image_path}" + ) + return match.group(0) # Keep original if validation fails + + try: + # Encode image to base64 using utility function + self.logger.debug(f"Attempting to encode image: {image_path}") + image_base64 = encode_image_to_base64(image_path) + if image_base64: + images_processed += 1 + # Save base64 to instance variable for later use + self._current_images_base64.append(image_base64) + + # Keep original path info and add VLM marker + result = f"Image Path: {image_path}\n[VLM_IMAGE_{images_processed}]" + self.logger.debug( + f"Successfully processed image {images_processed}: {image_path}" + ) + return result + else: + self.logger.error(f"Failed to encode image: {image_path}") + return match.group(0) # Keep original if encoding failed + + except Exception as e: + self.logger.error(f"Failed to process image {image_path}: {e}") + return match.group(0) # Keep original + + # Execute replacement + enhanced_prompt = re.sub( + image_path_pattern, replace_image_path, enhanced_prompt + ) + + return enhanced_prompt, images_processed + + def _build_vlm_messages_with_images( + self, enhanced_prompt: str, user_query: str, system_prompt: str + ) -> List[Dict]: + """ + Build VLM message format, using markers to correspond images with text positions + + Args: + enhanced_prompt: Enhanced prompt with image markers + user_query: User query + + Returns: + List[Dict]: VLM message format + """ + images_base64 = getattr(self, "_current_images_base64", []) + + if not images_base64: + # Pure text mode + return [ + { + "role": "user", + "content": f"Context:\n{enhanced_prompt}\n\nUser Question: {user_query}", + } + ] + + # Build multimodal content + content_parts = [] + + # Split text at image markers and insert images + text_parts = enhanced_prompt.split("[VLM_IMAGE_") + + for i, text_part in enumerate(text_parts): + if i == 0: + # First text part + if text_part.strip(): + content_parts.append({"type": "text", "text": text_part}) + else: + # Find marker number and insert corresponding image + marker_match = re.match(r"(\d+)\](.*)", text_part, re.DOTALL) + if marker_match: + image_num = ( + int(marker_match.group(1)) - 1 + ) # Convert to 0-based index + remaining_text = marker_match.group(2) + + # Insert corresponding image + if 0 <= image_num < len(images_base64): + content_parts.append( + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{images_base64[image_num]}" + }, + } + ) + + # Insert remaining text + if remaining_text.strip(): + content_parts.append({"type": "text", "text": remaining_text}) + + # Add user question + content_parts.append( + { + "type": "text", + "text": f"\n\nUser Question: {user_query}\n\nPlease answer based on the context and images provided.", + } + ) + base_system_prompt = "You are a helpful assistant that can analyze both text and image content to provide comprehensive answers." + + if system_prompt: + full_system_prompt = base_system_prompt + " " + system_prompt + else: + full_system_prompt = base_system_prompt + + return [ + { + "role": "system", + "content": full_system_prompt, + }, + { + "role": "user", + "content": content_parts, + }, + ] + + async def _call_vlm_with_multimodal_content(self, messages: List[Dict]) -> str: + """ + Call VLM to process multimodal content + + Args: + messages: VLM message format + + Returns: + str: VLM response result + """ + try: + user_message = messages[1] + content = user_message["content"] + system_prompt = messages[0]["content"] + + if isinstance(content, str): + # Pure text mode + result = await self.vision_model_func( + content, system_prompt=system_prompt + ) + else: + # Multimodal mode - pass complete messages directly to VLM + result = await self.vision_model_func( + "", # Empty prompt since we're using messages format + messages=messages, + ) + + return result + + except Exception as e: + self.logger.error(f"VLM call failed: {e}") + raise + + # Synchronous versions of query methods + def query(self, query: str, mode: str = "mix", **kwargs) -> str: + """ + Synchronous version of pure text query + + Args: + query: Query text + mode: Query mode ("local", "global", "hybrid", "naive", "mix", "bypass") + **kwargs: Other query parameters, will be passed to QueryParam + - vlm_enhanced: bool, default True when vision_model_func is available. + If True, will parse image paths in retrieved context and replace them + with base64 encoded images for VLM processing. + + Returns: + str: Query result + """ + loop = always_get_an_event_loop() + return loop.run_until_complete(self.aquery(query, mode=mode, **kwargs)) + + def query_with_multimodal( + self, + query: str, + multimodal_content: List[Dict[str, Any]] = None, + mode: str = "mix", + **kwargs, + ) -> str: + """ + Synchronous version of multimodal query + + Args: + query: Base query text + multimodal_content: List of multimodal content, each element contains: + - type: Content type ("image", "table", "equation", etc.) + - Other fields depend on type (e.g., img_path, table_data, latex, etc.) + mode: Query mode ("local", "global", "hybrid", "naive", "mix", "bypass") + **kwargs: Other query parameters, will be passed to QueryParam + + Returns: + str: Query result + """ + loop = always_get_an_event_loop() + return loop.run_until_complete( + self.aquery_with_multimodal(query, multimodal_content, mode=mode, **kwargs) + ) diff --git a/raganything/raganything.py b/raganything/raganything.py new file mode 100644 index 0000000..236d1dd --- /dev/null +++ b/raganything/raganything.py @@ -0,0 +1,646 @@ +""" +Complete document parsing + multimodal content insertion Pipeline + +This script integrates: +1. Document parsing (using configurable parsers) +2. Pure text content LightRAG insertion +3. Specialized processing for multimodal content (using different processors) +""" + +import os +from typing import Dict, Any, Optional, Callable +import sys +import asyncio +import atexit +from dataclasses import dataclass, field +from pathlib import Path +from dotenv import load_dotenv + +# Add project root directory to Python path +sys.path.insert(0, str(Path(__file__).parent.parent)) + +# Load environment variables from .env file BEFORE importing LightRAG +# This is critical for TIKTOKEN_CACHE_DIR to work properly in offline environments +# The OS environment variables take precedence over the .env file +load_dotenv(dotenv_path=".env", override=False) + +from lightrag import LightRAG +from lightrag.utils import logger + +# Import configuration and modules +from raganything.config import RAGAnythingConfig +from raganything.query import QueryMixin +from raganything.processor import ProcessorMixin +from raganything.batch import BatchMixin +from raganything.utils import get_processor_supports +from raganything.parser import MineruParser, SUPPORTED_PARSERS, get_parser +from raganything.callbacks import CallbackManager + +# Import specialized processors +from raganything.modalprocessors import ( + ImageModalProcessor, + TableModalProcessor, + EquationModalProcessor, + GenericModalProcessor, + ContextExtractor, + ContextConfig, +) + + +@dataclass +class RAGAnything(QueryMixin, ProcessorMixin, BatchMixin): + """Multimodal Document Processing Pipeline - Complete document parsing and insertion pipeline""" + + # Core Components + # --- + lightrag: Optional[LightRAG] = field(default=None) + """Optional pre-initialized LightRAG instance.""" + + llm_model_func: Optional[Callable] = field(default=None) + """LLM model function for text analysis.""" + + vision_model_func: Optional[Callable] = field(default=None) + """Vision model function for image analysis.""" + + embedding_func: Optional[Callable] = field(default=None) + """Embedding function for text vectorization.""" + + config: Optional[RAGAnythingConfig] = field(default=None) + """Configuration object, if None will create with environment variables.""" + + # LightRAG Configuration + # --- + lightrag_kwargs: Dict[str, Any] = field(default_factory=dict) + """Additional keyword arguments for LightRAG initialization when lightrag is not provided. + This allows passing all LightRAG configuration parameters like: + - kv_storage, vector_storage, graph_storage, doc_status_storage + - top_k, chunk_top_k, max_entity_tokens, max_relation_tokens, max_total_tokens + - cosine_threshold, related_chunk_number + - chunk_token_size, chunk_overlap_token_size, tokenizer, tiktoken_model_name + - embedding_batch_num, embedding_func_max_async, embedding_cache_config + - llm_model_name, llm_model_max_token_size, llm_model_max_async, llm_model_kwargs + - rerank_model_func, vector_db_storage_cls_kwargs, enable_llm_cache + - max_parallel_insert, max_graph_nodes, addon_params, etc. + """ + + # Internal State + # --- + modal_processors: Dict[str, Any] = field(default_factory=dict, init=False) + """Dictionary of multimodal processors.""" + + context_extractor: Optional[ContextExtractor] = field(default=None, init=False) + """Context extractor for providing surrounding content to modal processors.""" + + parse_cache: Optional[Any] = field(default=None, init=False) + """Parse result cache storage using LightRAG KV storage.""" + + multimodal_status_cache: Optional[Any] = field(default=None, init=False) + """Compatibility KV storage for multimodal completion state.""" + + callback_manager: CallbackManager = field( + default_factory=CallbackManager, init=False, repr=False + ) + """Processing callbacks manager (optional hooks for observability and metrics).""" + + _parser_installation_checked: bool = field(default=False, init=False) + """Flag to track if parser installation has been checked.""" + + def __post_init__(self): + """Post-initialization setup following LightRAG pattern""" + # Initialize configuration if not provided + if self.config is None: + self.config = RAGAnythingConfig() + + # Set working directory + self.working_dir = self.config.working_dir + + # Set up logger (use existing logger, don't configure it) + self.logger = logger + + # Set up document parser + self.doc_parser = get_parser(self.config.parser) + + # Register close method for cleanup + atexit.register(self.close) + + # Create working directory if needed + if not os.path.exists(self.working_dir): + os.makedirs(self.working_dir) + self.logger.info(f"Created working directory: {self.working_dir}") + + # Log configuration info + self.logger.info("RAGAnything initialized with config:") + self.logger.info(f" Working directory: {self.config.working_dir}") + self.logger.info(f" Parser: {self.config.parser}") + self.logger.info(f" Parse method: {self.config.parse_method}") + self.logger.info( + f" Multimodal processing - Image: {self.config.enable_image_processing}, " + f"Table: {self.config.enable_table_processing}, " + f"Equation: {self.config.enable_equation_processing}" + ) + self.logger.info(f" Max concurrent files: {self.config.max_concurrent_files}") + + def close(self): + """Cleanup resources when object is destroyed. + + Handles three common scenarios: + 1. Inside a running async context (e.g., FastAPI shutdown) -> schedule task + 2. No event loop in thread (typical atexit) -> create one with asyncio.run() + 3. Event loop exists but is closed/closing (atexit race) -> create new loop + """ + try: + import asyncio + + try: + loop = asyncio.get_running_loop() + except RuntimeError: + loop = None + + if loop is not None and loop.is_running(): + # Case 1: We're inside a running event loop, schedule cleanup task + loop.create_task(self.finalize_storages()) + else: + # Case 2/3: No running loop. Clean up any stale loop reference + # so asyncio.run() can create a fresh one (Python 3.10+ raises + # RuntimeError if a loop is already set for the thread). + if loop is not None: + try: + loop.close() + except Exception: + pass + asyncio.set_event_loop(None) + asyncio.run(self.finalize_storages()) + except Exception: + # Silently ignore during interpreter shutdown - the event loop and + # resources are being torn down anyway, and printing may fail if + # stdout/stderr are already closed. This avoids the noisy + # "There is no current event loop in thread 'MainThread'" warning + # that confused users (#135). + pass + + def _create_context_config(self) -> ContextConfig: + """Create context configuration from RAGAnything config""" + return ContextConfig( + context_window=self.config.context_window, + context_mode=self.config.context_mode, + max_context_tokens=self.config.max_context_tokens, + include_headers=self.config.include_headers, + include_captions=self.config.include_captions, + filter_content_types=self.config.context_filter_content_types, + ) + + def _create_context_extractor(self) -> ContextExtractor: + """Create context extractor with tokenizer from LightRAG""" + if self.lightrag is None: + raise ValueError( + "LightRAG must be initialized before creating context extractor" + ) + + context_config = self._create_context_config() + return ContextExtractor( + config=context_config, tokenizer=self.lightrag.tokenizer + ) + + def _initialize_processors(self): + """Initialize multimodal processors with appropriate model functions""" + if self.lightrag is None: + raise ValueError( + "LightRAG instance must be initialized before creating processors" + ) + + # Create context extractor + self.context_extractor = self._create_context_extractor() + + # Create different multimodal processors based on configuration + self.modal_processors = {} + + if self.config.enable_image_processing: + self.modal_processors["image"] = ImageModalProcessor( + lightrag=self.lightrag, + modal_caption_func=self.vision_model_func or self.llm_model_func, + context_extractor=self.context_extractor, + ) + + if self.config.enable_table_processing: + self.modal_processors["table"] = TableModalProcessor( + lightrag=self.lightrag, + modal_caption_func=self.llm_model_func, + context_extractor=self.context_extractor, + ) + + if self.config.enable_equation_processing: + self.modal_processors["equation"] = EquationModalProcessor( + lightrag=self.lightrag, + modal_caption_func=self.llm_model_func, + context_extractor=self.context_extractor, + ) + + # Always include generic processor as fallback + self.modal_processors["generic"] = GenericModalProcessor( + lightrag=self.lightrag, + modal_caption_func=self.llm_model_func, + context_extractor=self.context_extractor, + ) + + self.logger.info("Multimodal processors initialized with context support") + self.logger.info(f"Available processors: {list(self.modal_processors.keys())}") + self.logger.info(f"Context configuration: {self._create_context_config()}") + + def update_config(self, **kwargs): + """Update configuration with new values""" + for key, value in kwargs.items(): + if hasattr(self.config, key): + setattr(self.config, key, value) + self.logger.debug(f"Updated config: {key} = {value}") + else: + self.logger.warning(f"Unknown config parameter: {key}") + + async def _ensure_lightrag_initialized(self): + """Ensure LightRAG instance is initialized, create if necessary""" + try: + # Check parser installation first + if not self._parser_installation_checked: + if not self.doc_parser.check_installation(): + error_msg = ( + f"Parser '{self.config.parser}' is not properly installed. " + "Please install it using 'pip install' or 'uv pip install'." + ) + self.logger.error(error_msg) + return {"success": False, "error": error_msg} + + self._parser_installation_checked = True + self.logger.info(f"Parser '{self.config.parser}' installation verified") + + if self.lightrag is not None: + # LightRAG was pre-provided, but we need to ensure it's properly initialized + # Inherit model functions from LightRAG if not explicitly provided + if self.llm_model_func is None and hasattr( + self.lightrag, "llm_model_func" + ): + self.llm_model_func = self.lightrag.llm_model_func + self.logger.debug("Inherited llm_model_func from LightRAG instance") + + if self.embedding_func is None and hasattr( + self.lightrag, "embedding_func" + ): + self.embedding_func = self.lightrag.embedding_func + self.logger.debug("Inherited embedding_func from LightRAG instance") + + try: + # Ensure LightRAG storages are initialized + if ( + not hasattr(self.lightrag, "_storages_status") + or self.lightrag._storages_status.name != "INITIALIZED" + ): + self.logger.info( + "Initializing storages for pre-provided LightRAG instance" + ) + await self.lightrag.initialize_storages() + from lightrag.kg.shared_storage import ( + initialize_pipeline_status, + ) + + await initialize_pipeline_status() + + # Initialize parse cache if not already done + if self.parse_cache is None: + self.logger.info( + "Initializing parse cache for pre-provided LightRAG instance" + ) + self.parse_cache = ( + self.lightrag.key_string_value_json_storage_cls( + namespace="parse_cache", + workspace=self.lightrag.workspace, + global_config=self.lightrag.__dict__, + embedding_func=self.embedding_func, + ) + ) + await self.parse_cache.initialize() + + if self.multimodal_status_cache is None: + self.logger.info( + "Initializing multimodal status cache for pre-provided LightRAG instance" + ) + self.multimodal_status_cache = ( + self.lightrag.key_string_value_json_storage_cls( + namespace="multimodal_status", + workspace=self.lightrag.workspace, + global_config=self.lightrag.__dict__, + embedding_func=self.embedding_func, + ) + ) + await self.multimodal_status_cache.initialize() + + # Initialize processors if not already done + if not self.modal_processors: + self._initialize_processors() + + return {"success": True} + + except Exception as e: + error_msg = ( + f"Failed to initialize pre-provided LightRAG instance: {str(e)}" + ) + self.logger.error(error_msg, exc_info=True) + return {"success": False, "error": error_msg} + + # Validate required functions for creating new LightRAG instance + if self.llm_model_func is None: + error_msg = "llm_model_func must be provided when LightRAG is not pre-initialized" + self.logger.error(error_msg) + return {"success": False, "error": error_msg} + + if self.embedding_func is None: + error_msg = "embedding_func must be provided when LightRAG is not pre-initialized" + self.logger.error(error_msg) + return {"success": False, "error": error_msg} + + from lightrag.kg.shared_storage import initialize_pipeline_status + + # Prepare LightRAG initialization parameters + lightrag_params = { + "working_dir": self.working_dir, + "llm_model_func": self.llm_model_func, + "embedding_func": self.embedding_func, + } + + # Merge user-provided lightrag_kwargs, which can override defaults + lightrag_params.update(self.lightrag_kwargs) + + # Log the parameters being used for initialization (excluding sensitive data) + log_params = { + k: v + for k, v in lightrag_params.items() + if not callable(v) + and k not in ["llm_model_kwargs", "vector_db_storage_cls_kwargs"] + } + self.logger.info(f"Initializing LightRAG with parameters: {log_params}") + + try: + # Create LightRAG instance with merged parameters + self.lightrag = LightRAG(**lightrag_params) + await self.lightrag.initialize_storages() + await initialize_pipeline_status() + + # Initialize parse cache storage using LightRAG's KV storage + self.parse_cache = self.lightrag.key_string_value_json_storage_cls( + namespace="parse_cache", + workspace=self.lightrag.workspace, + global_config=self.lightrag.__dict__, + embedding_func=self.embedding_func, + ) + await self.parse_cache.initialize() + + self.multimodal_status_cache = ( + self.lightrag.key_string_value_json_storage_cls( + namespace="multimodal_status", + workspace=self.lightrag.workspace, + global_config=self.lightrag.__dict__, + embedding_func=self.embedding_func, + ) + ) + await self.multimodal_status_cache.initialize() + + # Initialize processors after LightRAG is ready + self._initialize_processors() + + self.logger.info( + "LightRAG, parse cache, multimodal status cache, and multimodal processors initialized" + ) + return {"success": True} + + except Exception as e: + error_msg = f"Failed to initialize LightRAG instance: {str(e)}" + self.logger.error(error_msg, exc_info=True) + return {"success": False, "error": error_msg} + + except Exception as e: + error_msg = f"Unexpected error during LightRAG initialization: {str(e)}" + self.logger.error(error_msg, exc_info=True) + return {"success": False, "error": error_msg} + + async def finalize_storages(self): + """Finalize all storages including parse cache and LightRAG storages + + This method should be called when shutting down to properly clean up resources + and persist any cached data. It will finalize both the parse cache and LightRAG's + internal storages. + + Example usage: + try: + rag_anything = RAGAnything(...) + await rag_anything.process_file("document.pdf") + # ... other operations ... + finally: + # Always finalize storages to clean up resources + if rag_anything: + await rag_anything.finalize_storages() + + Note: + - This method is automatically called in __del__ when the object is destroyed + - Manual calling is recommended in production environments + - All finalization tasks run concurrently for better performance + """ + try: + tasks = [] + + # Finalize parse cache if it exists + if self.parse_cache is not None: + tasks.append(self.parse_cache.finalize()) + self.logger.debug("Scheduled parse cache finalization") + + if self.multimodal_status_cache is not None: + tasks.append(self.multimodal_status_cache.finalize()) + self.logger.debug("Scheduled multimodal status cache finalization") + + # Finalize LightRAG storages if LightRAG is initialized + if self.lightrag is not None and hasattr( + self.lightrag, "finalize_storages" + ): + tasks.append(self.lightrag.finalize_storages()) + self.logger.debug("Scheduled LightRAG storages finalization") + + # Run all finalization tasks concurrently + if tasks: + await asyncio.gather(*tasks) + self.logger.info("Successfully finalized all RAGAnything storages") + else: + self.logger.debug("No storages to finalize") + + except Exception as e: + self.logger.error(f"Error during storage finalization: {e}") + raise + + def check_parser_installation(self) -> bool: + """ + Check if the configured parser is properly installed + + Returns: + bool: True if the configured parser is properly installed + """ + return self.doc_parser.check_installation() + + def verify_parser_installation_once(self) -> bool: + if not self._parser_installation_checked: + if not self.doc_parser.check_installation(): + raise RuntimeError( + f"Parser '{self.config.parser}' is not properly installed. " + "Please install it using pip install or uv pip install." + ) + self._parser_installation_checked = True + self.logger.info(f"Parser '{self.config.parser}' installation verified") + return True + + def get_config_info(self) -> Dict[str, Any]: + """Get current configuration information""" + config_info = { + "directory": { + "working_dir": self.config.working_dir, + "parser_output_dir": self.config.parser_output_dir, + }, + "parsing": { + "parser": self.config.parser, + "parse_method": self.config.parse_method, + "display_content_stats": self.config.display_content_stats, + }, + "multimodal_processing": { + "enable_image_processing": self.config.enable_image_processing, + "enable_table_processing": self.config.enable_table_processing, + "enable_equation_processing": self.config.enable_equation_processing, + }, + "context_extraction": { + "context_window": self.config.context_window, + "context_mode": self.config.context_mode, + "max_context_tokens": self.config.max_context_tokens, + "include_headers": self.config.include_headers, + "include_captions": self.config.include_captions, + "filter_content_types": self.config.context_filter_content_types, + }, + "batch_processing": { + "max_concurrent_files": self.config.max_concurrent_files, + "supported_file_extensions": self.config.supported_file_extensions, + "recursive_folder_processing": self.config.recursive_folder_processing, + }, + "logging": { + "note": "Logging fields have been removed - configure logging externally", + }, + } + + # Add LightRAG configuration if available + if self.lightrag_kwargs: + # Filter out sensitive data and callable objects for display + safe_kwargs = { + k: v + for k, v in self.lightrag_kwargs.items() + if not callable(v) + and k not in ["llm_model_kwargs", "vector_db_storage_cls_kwargs"] + } + config_info["lightrag_config"] = { + "custom_parameters": safe_kwargs, + "note": "LightRAG will be initialized with these additional parameters", + } + else: + config_info["lightrag_config"] = { + "custom_parameters": {}, + "note": "Using default LightRAG parameters", + } + + return config_info + + def set_content_source_for_context( + self, content_source, content_format: str = "auto" + ): + """Set content source for context extraction in all modal processors + + Args: + content_source: Source content for context extraction (e.g., MinerU content list) + content_format: Format of content source ("minerU", "text_chunks", "auto") + """ + if not self.modal_processors: + self.logger.warning( + "Modal processors not initialized. Content source will be set when processors are created." + ) + return + + for processor_name, processor in self.modal_processors.items(): + try: + processor.set_content_source(content_source, content_format) + self.logger.debug(f"Set content source for {processor_name} processor") + except Exception as e: + self.logger.error( + f"Failed to set content source for {processor_name}: {e}" + ) + + self.logger.info( + f"Content source set for context extraction (format: {content_format})" + ) + + def update_context_config(self, **context_kwargs): + """Update context extraction configuration + + Args: + **context_kwargs: Context configuration parameters to update + (context_window, context_mode, max_context_tokens, etc.) + """ + # Update the main config + for key, value in context_kwargs.items(): + if hasattr(self.config, key): + setattr(self.config, key, value) + self.logger.debug(f"Updated context config: {key} = {value}") + else: + self.logger.warning(f"Unknown context config parameter: {key}") + + # Recreate context extractor with new config if processors are initialized + if self.lightrag and self.modal_processors: + try: + self.context_extractor = self._create_context_extractor() + # Update all processors with new context extractor + for processor_name, processor in self.modal_processors.items(): + processor.context_extractor = self.context_extractor + + self.logger.info( + "Context configuration updated and applied to all processors" + ) + self.logger.info( + f"New context configuration: {self._create_context_config()}" + ) + except Exception as e: + self.logger.error(f"Failed to update context configuration: {e}") + + def get_processor_info(self) -> Dict[str, Any]: + """Get processor information""" + base_info = { + "mineru_installed": MineruParser.check_installation(MineruParser()), + "parser_installation": { + parser_name: get_parser(parser_name).check_installation() + for parser_name in SUPPORTED_PARSERS + }, + "config": self.get_config_info(), + "models": { + "llm_model": "External function" + if self.llm_model_func + else "Not provided", + "vision_model": "External function" + if self.vision_model_func + else "Not provided", + "embedding_model": "External function" + if self.embedding_func + else "Not provided", + }, + } + + if not self.modal_processors: + base_info["status"] = "Not initialized" + base_info["processors"] = {} + else: + base_info["status"] = "Initialized" + base_info["processors"] = {} + + for proc_type, processor in self.modal_processors.items(): + base_info["processors"][proc_type] = { + "class": processor.__class__.__name__, + "supports": get_processor_supports(proc_type), + "enabled": True, + } + + return base_info diff --git a/raganything/resilience.py b/raganything/resilience.py new file mode 100644 index 0000000..65cf288 --- /dev/null +++ b/raganything/resilience.py @@ -0,0 +1,397 @@ +""" +Retry and resilience utilities for RAGAnything. + +Provides decorators and helpers for handling transient failures in LLM API +calls, embedding requests, and other network-dependent operations. + +Addresses GitHub issue #172 — process_document_complete getting stuck due to +intermittent network errors. +""" + +from __future__ import annotations + +import asyncio +import functools +import logging +import threading +import time +from typing import Any, Callable, Optional, Sequence, Type, TypeVar + +logger = logging.getLogger(__name__) + +F = TypeVar("F", bound=Callable[..., Any]) + +# Default transient exceptions that are safe to retry. +# Intentionally focused on network / upstream failures. +# Local programming errors (TypeError, ValueError, KeyError, etc.) and most +# OSError subclasses (FileNotFoundError, PermissionError, ...) should not be +# retried by default. +_DEFAULT_RETRYABLE: tuple[Type[BaseException], ...] = ( + ConnectionError, + TimeoutError, +) + +try: + import httpx + + _DEFAULT_RETRYABLE = _DEFAULT_RETRYABLE + ( + httpx.ConnectError, + httpx.ReadTimeout, + httpx.WriteTimeout, + httpx.PoolTimeout, + ) +except ImportError: + pass + +try: + import openai + + _DEFAULT_RETRYABLE = _DEFAULT_RETRYABLE + ( + openai.APIConnectionError, + openai.APITimeoutError, + openai.RateLimitError, + openai.InternalServerError, + ) +except ImportError: + pass + + +def retry( + max_attempts: int = 3, + base_delay: float = 1.0, + max_delay: float = 60.0, + exponential_base: float = 2.0, + jitter: bool = True, + retryable_exceptions: Optional[Sequence[Type[BaseException]]] = None, + on_retry: Optional[Callable[[BaseException, int, float], None]] = None, +) -> Callable[[F], F]: + """Decorator that retries a **synchronous** function on transient failures. + + Uses exponential backoff with optional jitter to avoid thundering-herd + problems when multiple workers hit rate limits simultaneously. + + Args: + max_attempts: Total number of attempts (including the first call). + base_delay: Initial delay in seconds between retries. + max_delay: Upper-bound on the delay between retries. + exponential_base: Multiplier applied to the delay after each retry. + jitter: If ``True``, adds random jitter (0–50 % of computed delay). + retryable_exceptions: Exception types that trigger a retry. + Defaults to common network / API transient errors. + on_retry: Optional callback ``(exception, attempt, delay)`` invoked + before each retry sleep. + + Returns: + The decorated function, with retry behaviour. + + Example:: + + @retry(max_attempts=5, base_delay=2.0) + def call_llm(prompt: str) -> str: + return openai.ChatCompletion.create(...) + """ + if max_attempts < 1: + raise ValueError("max_attempts must be >= 1") + if base_delay < 0 or max_delay < 0: + raise ValueError("base_delay and max_delay must be >= 0") + if exponential_base <= 0: + raise ValueError("exponential_base must be > 0") + + if retryable_exceptions is None: + retryable_exceptions = _DEFAULT_RETRYABLE + + def decorator(func: F) -> F: + @functools.wraps(func) + def wrapper(*args: Any, **kwargs: Any) -> Any: + last_exception: BaseException | None = None + for attempt in range(1, max_attempts + 1): + try: + return func(*args, **kwargs) + except tuple(retryable_exceptions) as exc: + last_exception = exc + if attempt == max_attempts: + logger.error( + "%s failed after %d attempts: %s", + func.__qualname__, + max_attempts, + exc, + ) + raise + delay = min( + base_delay * (exponential_base ** (attempt - 1)), + max_delay, + ) + if jitter: + import random + + delay *= 1.0 + random.uniform(0, 0.5) + if on_retry is not None: + on_retry(exc, attempt, delay) + logger.warning( + "%s attempt %d/%d failed (%s), retrying in %.1fs…", + func.__qualname__, + attempt, + max_attempts, + type(exc).__name__, + delay, + ) + time.sleep(delay) + raise last_exception # type: ignore[misc] + + return wrapper # type: ignore[return-value] + + return decorator + + +def async_retry( + max_attempts: int = 3, + base_delay: float = 1.0, + max_delay: float = 60.0, + exponential_base: float = 2.0, + jitter: bool = True, + retryable_exceptions: Optional[Sequence[Type[BaseException]]] = None, + on_retry: Optional[Callable[[BaseException, int, float], Any]] = None, +) -> Callable[[F], F]: + """Decorator that retries an **async** function on transient failures. + + Async counterpart of :func:`retry`. Uses ``asyncio.sleep`` instead of + blocking ``time.sleep``. + + Args: + max_attempts: Total number of attempts (including the first call). + base_delay: Initial delay in seconds between retries. + max_delay: Upper-bound on the delay between retries. + exponential_base: Multiplier applied to the delay after each retry. + jitter: If ``True``, adds random jitter (0–50 % of computed delay). + retryable_exceptions: Exception types that trigger a retry. + on_retry: Optional async-compatible callback. + + Returns: + The decorated async function, with retry behaviour. + + Example:: + + @async_retry(max_attempts=5, base_delay=2.0) + async def call_llm_async(prompt: str) -> str: + return await aclient.chat.completions.create(...) + """ + if max_attempts < 1: + raise ValueError("max_attempts must be >= 1") + if base_delay < 0 or max_delay < 0: + raise ValueError("base_delay and max_delay must be >= 0") + if exponential_base <= 0: + raise ValueError("exponential_base must be > 0") + + if retryable_exceptions is None: + retryable_exceptions = _DEFAULT_RETRYABLE + + def decorator(func: F) -> F: + @functools.wraps(func) + async def wrapper(*args: Any, **kwargs: Any) -> Any: + last_exception: BaseException | None = None + for attempt in range(1, max_attempts + 1): + try: + return await func(*args, **kwargs) + except tuple(retryable_exceptions) as exc: + last_exception = exc + if attempt == max_attempts: + logger.error( + "%s failed after %d attempts: %s", + func.__qualname__, + max_attempts, + exc, + ) + raise + delay = min( + base_delay * (exponential_base ** (attempt - 1)), + max_delay, + ) + if jitter: + import random + + delay *= 1.0 + random.uniform(0, 0.5) + if on_retry is not None: + result = on_retry(exc, attempt, delay) + if asyncio.iscoroutine(result): + await result + logger.warning( + "%s attempt %d/%d failed (%s), retrying in %.1fs…", + func.__qualname__, + attempt, + max_attempts, + type(exc).__name__, + delay, + ) + await asyncio.sleep(delay) + raise last_exception # type: ignore[misc] + + return wrapper # type: ignore[return-value] + + return decorator + + +class CircuitBreaker: + """Simple circuit breaker to prevent cascading failures. + + When the failure count exceeds ``failure_threshold`` within the + ``reset_timeout`` window, the breaker *opens* and subsequent calls + raise ``CircuitBreakerOpen`` immediately without executing the + protected function. After ``reset_timeout`` seconds the breaker + enters a *half-open* state and allows one trial call through. + + Args: + failure_threshold: Number of failures before opening the circuit. + reset_timeout: Seconds to wait before transitioning to half-open. + name: Human-readable name for log messages. + """ + + class CircuitBreakerOpen(Exception): + """Raised when the circuit breaker is open.""" + + def __init__( + self, + failure_threshold: int = 5, + reset_timeout: float = 60.0, + name: str = "default", + failure_exceptions: Optional[Sequence[Type[BaseException]]] = None, + ) -> None: + self.failure_threshold = failure_threshold + self.reset_timeout = reset_timeout + self.name = name + + # Exceptions that are treated as upstream failures. + # By default these mirror the retry helpers so application bugs do not + # open the breaker unless explicitly configured to do so. + self._failure_exceptions: tuple[Type[BaseException], ...] = tuple( + failure_exceptions or _DEFAULT_RETRYABLE + ) + + self._failure_count = 0 + self._last_failure_time: float = 0.0 + self._state: str = "closed" # closed | open | half-open + # Concurrency control for half-open single-flight behaviour + self._lock = threading.Lock() + self._trial_in_flight: bool = False + + @property + def state(self) -> str: + """Current circuit breaker state.""" + with self._lock: + if self._state == "open": + if time.time() - self._last_failure_time >= self.reset_timeout: + self._state = "half-open" + return self._state + + def record_success(self) -> None: + """Record a successful call, resetting the breaker.""" + with self._lock: + self._failure_count = 0 + self._state = "closed" + self._trial_in_flight = False + + def record_failure(self) -> None: + """Record a failed call, potentially opening the breaker.""" + with self._lock: + now = time.time() + if self._state == "half-open": + # A failed half-open probe should reopen the breaker immediately. + self._failure_count = self.failure_threshold + else: + # Only failures within the configured window contribute towards + # opening the breaker. A stale failure should not count against + # the next request burst. + if ( + self._last_failure_time + and now - self._last_failure_time >= self.reset_timeout + ): + self._failure_count = 0 + self._failure_count += 1 + self._last_failure_time = now + if self._failure_count >= self.failure_threshold: + self._state = "open" + self._trial_in_flight = False + logger.warning( + "Circuit breaker '%s' opened after %d failures", + self.name, + self._failure_count, + ) + + def _acquire_permission(self) -> None: + """Check and update state before executing a protected call. + + - If the breaker is open and reset_timeout has not elapsed, raise. + - If the breaker moves to half-open, allow exactly one in-flight + trial call and reject additional concurrent calls. + - If the breaker is closed, allow the call. + """ + with self._lock: + # Transition open -> half-open if timeout has elapsed. + if self._state == "open": + if time.time() - self._last_failure_time >= self.reset_timeout: + self._state = "half-open" + + if self._state == "open": + # Still within timeout window. + raise self.CircuitBreakerOpen( + f"Circuit breaker '{self.name}' is open — call rejected" + ) + + if self._state == "half-open": + if self._trial_in_flight: + # Single-flight: only one trial call is allowed. + raise self.CircuitBreakerOpen( + f"Circuit breaker '{self.name}' is half-open — trial in progress" + ) + # Mark that a trial call is now in-flight. + self._trial_in_flight = True + return + + # closed: allow call as normal. + return + + def __call__(self, func: F) -> F: + """Use as a decorator around sync functions.""" + + @functools.wraps(func) + def wrapper(*args: Any, **kwargs: Any) -> Any: + self._acquire_permission() + try: + result = func(*args, **kwargs) + self.record_success() + return result + except tuple(self._failure_exceptions): + # Upstream / transient failure: contributes towards opening + # the breaker. + self.record_failure() + raise + except Exception: + # Application bug or non-transient local error: do not treat as + # upstream instability. We still need to clear the half-open + # trial gate so that future calls are not permanently blocked. + with self._lock: + if self._state == "half-open": + self._trial_in_flight = False + raise + + return wrapper # type: ignore[return-value] + + def async_call(self, func: F) -> F: + """Use as a decorator around async functions.""" + + @functools.wraps(func) + async def wrapper(*args: Any, **kwargs: Any) -> Any: + self._acquire_permission() + try: + result = await func(*args, **kwargs) + self.record_success() + return result + except tuple(self._failure_exceptions): + self.record_failure() + raise + except Exception: + with self._lock: + if self._state == "half-open": + self._trial_in_flight = False + raise + + return wrapper # type: ignore[return-value] diff --git a/raganything/utils.py b/raganything/utils.py new file mode 100644 index 0000000..e132ee9 --- /dev/null +++ b/raganything/utils.py @@ -0,0 +1,472 @@ +""" +Utility functions for RAGAnything + +Contains helper functions for content separation, text insertion, and other utilities +""" + +from __future__ import annotations + +import base64 +import inspect +from typing import Dict, List, Any, Tuple +from pathlib import Path +from lightrag.utils import logger + + +def normalize_caption_list(value: Any) -> List[str]: + """Return captions and footnotes as a clean list of strings.""" + if value is None: + return [] + if isinstance(value, list): + return [str(item).strip() for item in value if str(item).strip()] + if isinstance(value, str) and value.strip(): + return [value.strip()] + return [] + + +def get_table_body(item: Dict[str, Any]) -> Any: + """Read table content across common content-list alias fields.""" + if item.get("table_body") not in (None, ""): + return item.get("table_body") + if item.get("table_data") not in (None, ""): + return item.get("table_data") + return item.get("text", "") + + +def format_table_body(table_body: Any) -> str: + """Serialize table content for prompts and chunks without dropping aliases. + + Strings are passed through unchanged. List-of-lists (the common + ``table_data`` shape from non-MinerU parsers) are rendered as a simple + Markdown table so the LLM sees structured rows instead of a Python repr. + Other shapes fall back to a newline-joined string of ``str(...)`` items. + """ + if isinstance(table_body, str): + return table_body + if isinstance(table_body, list): + if not table_body: + return "" + if all(isinstance(row, (list, tuple)) for row in table_body): + rendered_rows = [ + "| " + " | ".join(str(cell) for cell in row) + " |" + for row in table_body + ] + if len(rendered_rows) >= 1: + column_count = max(len(row) for row in table_body) + separator = "| " + " | ".join(["---"] * column_count) + " |" + rendered_rows.insert(1, separator) + return "\n".join(rendered_rows) + return "\n".join(str(row) for row in table_body) + return str(table_body) + + +def get_equation_text_and_format(item: Dict[str, Any]) -> Tuple[str, str]: + """Read equation content while preserving LaTeX aliases from content lists. + + Field priority follows MinerU first (``text`` + ``text_format``), then + falls back to ``latex`` and ``equation`` aliases used by other parsers. + The textual description is intentionally NOT concatenated into the + equation body: the ``equation_chunk`` template has a separate + ``enhanced_caption`` slot for that. + """ + text = str(item.get("text", "") or "").strip() + latex = str(item.get("latex", "") or "").strip() + equation = str(item.get("equation", "") or "").strip() + equation_format = str(item.get("text_format", "") or "").strip() + + if text: + equation_text = text + elif latex: + equation_text = latex + if not equation_format: + equation_format = "latex" + elif equation: + equation_text = equation + else: + equation_text = "" + + return equation_text, equation_format + + +def extract_section_path_from_content_list( + content_list: List[Dict[str, Any]], current_index: int +) -> str: + """Build a hierarchical section path from preceding heading blocks. + + MinerU content lists keep document order, and heading blocks are exposed as + text items with a positive ``text_level``. For a given item index, we walk + the preceding items and keep the latest heading at each level to reconstruct + a stable chapter/section path such as ``Introduction > Method > Ablation``. + """ + if not content_list or current_index is None: + return "" + + try: + limit = max(0, int(current_index)) + except (TypeError, ValueError): + return "" + + heading_chain: List[Tuple[int, str]] = [] + + for item in content_list[:limit]: + if not isinstance(item, dict): + continue + + if item.get("type", "text") != "text": + continue + + text = str(item.get("text", "") or "").strip() + if not text: + continue + + try: + level = int(item.get("text_level", 0) or 0) + except (TypeError, ValueError): + continue + + if level <= 0: + continue + + while heading_chain and heading_chain[-1][0] >= level: + heading_chain.pop() + heading_chain.append((level, text)) + + return " > ".join(text for _, text in heading_chain) + + +def extract_neighbor_text_from_content_list( + content_list: List[Dict[str, Any]], current_index: int, window_size: int = 3 +) -> str: + """Collect nearby text blocks around an item index from MinerU content list.""" + if not content_list or current_index is None: + return "" + + try: + idx = int(current_index) + except (TypeError, ValueError): + return "" + + if idx < 0 or idx >= len(content_list): + return "" + + start_idx = max(0, idx - window_size) + end_idx = min(len(content_list), idx + window_size + 1) + + parts: List[str] = [] + for pos in range(start_idx, end_idx): + if pos == idx: + continue + item = content_list[pos] + if not isinstance(item, dict): + continue + if item.get("type", "text") != "text": + continue + + text = str(item.get("text", "") or "").strip() + if text: + parts.append(text) + + return " ".join(parts) + + +def separate_content( + content_list: List[Dict[str, Any]], +) -> Tuple[str, List[Dict[str, Any]]]: + """ + Separate text content and multimodal content + + Args: + content_list: Content list from MinerU parsing + + Returns: + (text_content, multimodal_items): Pure text content and multimodal items list + """ + text_parts = [] + multimodal_items = [] + + for index, item in enumerate(content_list): + content_type = item.get("type", "text") + + if content_type == "text": + # Text content + text = item.get("text", "") + if text.strip(): + text_parts.append(text) + else: + # Multimodal content (image, table, equation, etc.) + multimodal_item = dict(item) + multimodal_item.setdefault("_content_list_index", index) + if content_type == "image": + multimodal_item.setdefault( + "_section_path", + extract_section_path_from_content_list(content_list, index), + ) + multimodal_item.setdefault( + "_neighbor_text", + extract_neighbor_text_from_content_list(content_list, index), + ) + multimodal_items.append(multimodal_item) + + # Merge all text content + text_content = "\n\n".join(text_parts) + + logger.info("Content separation complete:") + logger.info(f" - Text content length: {len(text_content)} characters") + logger.info(f" - Multimodal items count: {len(multimodal_items)}") + + # Count multimodal types + modal_types = {} + for item in multimodal_items: + modal_type = item.get("type", "unknown") + modal_types[modal_type] = modal_types.get(modal_type, 0) + 1 + + if modal_types: + logger.info(f" - Multimodal type distribution: {modal_types}") + + return text_content, multimodal_items + + +def encode_image_to_base64(image_path: str) -> str: + """ + Encode image file to base64 string + + Args: + image_path: Path to the image file + + Returns: + str: Base64 encoded string, empty string if encoding fails + """ + try: + with open(image_path, "rb") as image_file: + encoded_string = base64.b64encode(image_file.read()).decode("utf-8") + return encoded_string + except Exception as e: + logger.error(f"Failed to encode image {image_path}: {e}") + return "" + + +def validate_image_file(image_path: str, max_size_mb: int = 50) -> bool: + """ + Validate if a file is a valid image file + + Args: + image_path: Path to the image file + max_size_mb: Maximum file size in MB + + Returns: + bool: True if valid, False otherwise + """ + try: + path = Path(image_path) + + logger.debug(f"Validating image path: {image_path}") + logger.debug(f"Resolved path object: {path}") + logger.debug(f"Path exists check: {path.exists()}") + + # Check if file exists and is not a symlink (for security) + if not path.exists(): + logger.warning(f"Image file not found: {image_path}") + return False + + if path.is_symlink(): + logger.warning(f"Blocking symlink for security: {image_path}") + return False + + # Check file extension + image_extensions = [ + ".jpg", + ".jpeg", + ".png", + ".gif", + ".bmp", + ".webp", + ".tiff", + ".tif", + ] + + path_lower = str(path).lower() + has_valid_extension = any(path_lower.endswith(ext) for ext in image_extensions) + logger.debug( + f"File extension check - path: {path_lower}, valid: {has_valid_extension}" + ) + + if not has_valid_extension: + logger.warning(f"File does not appear to be an image: {image_path}") + return False + + # Check file size + file_size = path.stat().st_size + max_size = max_size_mb * 1024 * 1024 + logger.debug( + f"File size check - size: {file_size} bytes, max: {max_size} bytes" + ) + + if file_size > max_size: + logger.warning(f"Image file too large ({file_size} bytes): {image_path}") + return False + + logger.debug(f"Image validation successful: {image_path}") + return True + + except Exception as e: + logger.error(f"Error validating image file {image_path}: {e}") + return False + + +async def insert_text_content( + lightrag, + input: str | list[str], + split_by_character: str | None = None, + split_by_character_only: bool = False, + ids: str | list[str] | None = None, + file_paths: str | list[str] | None = None, +): + """ + Insert pure text content into LightRAG + + Args: + lightrag: LightRAG instance + input: Single document string or list of document strings + split_by_character: if split_by_character is not None, split the string by character, if chunk longer than + chunk_token_size, it will be split again by token size. + split_by_character_only: if split_by_character_only is True, split the string by character only, when + split_by_character is None, this parameter is ignored. + ids: single string of the document ID or list of unique document IDs, if not provided, MD5 hash IDs will be generated + file_paths: single string of the file path or list of file paths, used for citation + """ + logger.info("Starting text content insertion into LightRAG...") + + # Use LightRAG's insert method with all parameters + await lightrag.ainsert( + input=input, + file_paths=file_paths, + split_by_character=split_by_character, + split_by_character_only=split_by_character_only, + ids=ids, + ) + + logger.info("Text content insertion complete") + + +async def insert_text_content_with_multimodal_content( + lightrag, + input: str | list[str], + multimodal_content: list[dict[str, any]] | None = None, + split_by_character: str | None = None, + split_by_character_only: bool = False, + ids: str | list[str] | None = None, + file_paths: str | list[str] | None = None, + scheme_name: str | None = None, +): + """ + Insert pure text content into LightRAG + + Args: + lightrag: LightRAG instance + input: Single document string or list of document strings + multimodal_content: Multimodal content list (optional) + split_by_character: if split_by_character is not None, split the string by character, if chunk longer than + chunk_token_size, it will be split again by token size. + split_by_character_only: if split_by_character_only is True, split the string by character only, when + split_by_character is None, this parameter is ignored. + ids: single string of the document ID or list of unique document IDs, if not provided, MD5 hash IDs will be generated + file_paths: single string of the file path or list of file paths, used for citation + scheme_name: scheme name (optional) + """ + logger.info("Starting text content insertion into LightRAG...") + + insert_kwargs = { + "input": input, + "file_paths": file_paths, + "split_by_character": split_by_character, + "split_by_character_only": split_by_character_only, + "ids": ids, + } + + try: + insert_signature = inspect.signature(lightrag.ainsert) + supported_params = insert_signature.parameters + accepts_any_kwargs = any( + parameter.kind == inspect.Parameter.VAR_KEYWORD + for parameter in supported_params.values() + ) + except (TypeError, ValueError): + supported_params = {} + accepts_any_kwargs = True + + if multimodal_content is not None and ( + accepts_any_kwargs or "multimodal_content" in supported_params + ): + insert_kwargs["multimodal_content"] = multimodal_content + elif multimodal_content is not None: + logger.warning( + "LightRAG ainsert() does not accept multimodal_content; " + "retrying with text-only insertion so doc_status is still created" + ) + + if scheme_name is not None and ( + accepts_any_kwargs or "scheme_name" in supported_params + ): + insert_kwargs["scheme_name"] = scheme_name + elif scheme_name is not None: + logger.warning( + "LightRAG ainsert() does not accept scheme_name; " + "continuing without it for compatibility" + ) + + await lightrag.ainsert(**insert_kwargs) + + logger.info("Text content insertion complete") + + +def get_processor_for_type(modal_processors: Dict[str, Any], content_type: str): + """ + Get appropriate processor based on content type + + Args: + modal_processors: Dictionary of available processors + content_type: Content type + + Returns: + Corresponding processor instance + """ + # Direct mapping to corresponding processor + if content_type == "image": + return modal_processors.get("image") + elif content_type == "table": + return modal_processors.get("table") + elif content_type == "equation": + return modal_processors.get("equation") + else: + # For other types, use generic processor + return modal_processors.get("generic") + + +def get_processor_supports(proc_type: str) -> List[str]: + """Get processor supported features""" + supports_map = { + "image": [ + "Image content analysis", + "Visual understanding", + "Image description generation", + "Image entity extraction", + ], + "table": [ + "Table structure analysis", + "Data statistics", + "Trend identification", + "Table entity extraction", + ], + "equation": [ + "Mathematical formula parsing", + "Variable identification", + "Formula meaning explanation", + "Formula entity extraction", + ], + "generic": [ + "General content analysis", + "Structured processing", + "Entity extraction", + ], + } + return supports_map.get(proc_type, ["Basic processing"]) diff --git a/reproduce/env.example b/reproduce/env.example new file mode 100644 index 0000000..d91398a --- /dev/null +++ b/reproduce/env.example @@ -0,0 +1,44 @@ +LLM_BINDING=openai +LLM_MODEL=openai/gpt-4o-mini +LLM_BINDING_HOST=https://openrouter.ai/api/v1 + +LLM_BINDING_API_KEY= +### Optional for Azure +# AZURE_OPENAI_API_VERSION=2024-08-01-preview +# AZURE_OPENAI_DEPLOYMENT=gpt-4o + +### Embedding Configuration +### Embedding Binding type: openai, ollama, lollms, azure_openai +EMBEDDING_BINDING=openai +EMBEDDING_MODEL=openai/text-embedding-3-large +EMBEDDING_DIM=3072 + +EMBEDDING_BINDING_API_KEY= +# If the embedding service is deployed within the same Docker stack, use host.docker.internal instead of localhost +EMBEDDING_BINDING_HOST=https://openrouter.ai/api/v1 + +ENABLE_RERANK=True +RERANK_BINDING=jina +RERANK_MODEL=BAAI/bge-reranker-v2-m3 +RERANK_BINDING_HOST= +RERANK_BINDING_API_KEY= + +### Number of entities or relations retrieved from KG +TOP_K=50 +### Maximum number or chunks for naive vector search +CHUNK_TOP_K=10 +### control the actual entities send to LLM +MAX_ENTITY_TOKENS=12000 +### control the actual relations send to LLM +MAX_RELATION_TOKENS=8000 +### control the maximum tokens send to LLM (include entities, relations and chunks) +MAX_TOTAL_TOKENS=32000 + +### Context Extraction Configuration +# CONTEXT_WINDOW=0 +# CONTEXT_MODE=page +# MAX_CONTEXT_TOKENS=2000 +# INCLUDE_HEADERS=true +# INCLUDE_CAPTIONS=true +# CONTEXT_FILTER_CONTENT_TYPES=text +# CONTENT_FORMAT=minerU diff --git a/reproduce/index.py b/reproduce/index.py new file mode 100644 index 0000000..cae06ce --- /dev/null +++ b/reproduce/index.py @@ -0,0 +1,284 @@ +#!/usr/bin/env python +""" +Example script demonstrating the integration of MinerU parser with RAGAnything + +This example shows how to: +1. Process documents with RAGAnything using MinerU parser +2. Perform pure text queries using aquery() method +3. Perform multimodal queries with specific multimodal content using aquery_with_multimodal() method +4. Handle different types of multimodal content (tables, equations) in queries +""" + +import os +import argparse +import asyncio +import logging +import logging.config +from pathlib import Path + +# Add project root directory to Python path +import sys + +sys.path.append(str(Path(__file__).parent.parent)) + +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc, logger, set_verbose_debug +from raganything import RAGAnything, RAGAnythingConfig + +from dotenv import load_dotenv + +load_dotenv(dotenv_path=".env", override=False) + + +def configure_logging(): + """Configure logging for the application""" + # Get log directory path from environment variable or use current directory + log_dir = os.getenv("LOG_DIR", os.getcwd()) + log_file_path = os.path.abspath(os.path.join(log_dir, "raganything_example.log")) + + print(f"\nRAGAnything example log file: {log_file_path}\n") + os.makedirs(os.path.dirname(log_dir), exist_ok=True) + + # Get log file max size and backup count from environment variables + log_max_bytes = int(os.getenv("LOG_MAX_BYTES", 10485760)) # Default 10MB + log_backup_count = int(os.getenv("LOG_BACKUP_COUNT", 5)) # Default 5 backups + + logging.config.dictConfig( + { + "version": 1, + "disable_existing_loggers": False, + "formatters": { + "default": { + "format": "%(levelname)s: %(message)s", + }, + "detailed": { + "format": "%(asctime)s - %(name)s - %(levelname)s - %(message)s", + }, + }, + "handlers": { + "console": { + "formatter": "default", + "class": "logging.StreamHandler", + "stream": "ext://sys.stderr", + }, + "file": { + "formatter": "detailed", + "class": "logging.handlers.RotatingFileHandler", + "filename": log_file_path, + "maxBytes": log_max_bytes, + "backupCount": log_backup_count, + "encoding": "utf-8", + }, + }, + "loggers": { + "lightrag": { + "handlers": ["console", "file"], + "level": "INFO", + "propagate": False, + }, + }, + } + ) + + # Set the logger level to INFO + logger.setLevel(logging.INFO) + # Enable verbose debug if needed + set_verbose_debug(os.getenv("VERBOSE", "false").lower() == "true") + + +async def process_with_rag( + file_path: str, + output_dir: str, + api_key: str, + base_url: str = None, + working_dir: str = None, + parser: str = None, +): + """ + Process document with RAGAnything + + Args: + file_path: Path to the document + output_dir: Output directory for RAG results + api_key: OpenAI API key + base_url: Optional base URL for API + working_dir: Working directory for RAG storage + """ + try: + # Create RAGAnything configuration + config = RAGAnythingConfig( + working_dir=working_dir or "./rag_storage", + parser=parser, # Parser selection: mineru or docling + parse_method="auto", # Parse method: auto, ocr, or txt + enable_image_processing=True, + enable_table_processing=True, + enable_equation_processing=True, + ) + + # Define LLM model function + def llm_model_func(prompt, system_prompt=None, history_messages=[], **kwargs): + return openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + + # Define vision model function for image processing + def vision_model_func( + prompt, + system_prompt=None, + history_messages=[], + image_data=None, + messages=None, + **kwargs, + ): + # If messages format is provided (for multimodal VLM enhanced query), use it directly + if messages: + return openai_complete_if_cache( + "gpt-4o-mini", + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Traditional single image format + elif image_data: + return openai_complete_if_cache( + "gpt-4o-mini", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} + if system_prompt + else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{image_data}" + }, + }, + ], + } + if image_data + else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Pure text format + else: + return llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + # Define embedding function + embedding_func = EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=lambda texts: openai_embed( + texts, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + + # Initialize RAGAnything with new dataclass structure + rag = RAGAnything( + config=config, + llm_model_func=llm_model_func, + vision_model_func=vision_model_func, + embedding_func=embedding_func, + ) + + # Process document + await rag.process_document_complete( + file_path=file_path, + output_dir=output_dir, + parse_method="auto", + source="modelscope", + backend="pipeline", + device="cuda:0", + ) + + # Example queries - demonstrating different query approaches + logger.info("\nQuerying processed document:") + + except Exception as e: + logger.error(f"Error processing with RAG: {str(e)}") + import traceback + + logger.error(traceback.format_exc()) + + +def main(): + """Main function to run the example""" + parser = argparse.ArgumentParser(description="MinerU RAG Example") + parser.add_argument("file_path", help="Path to the document to process") + parser.add_argument( + "--working_dir", "-w", default="./rag_storage", help="Working directory path" + ) + parser.add_argument( + "--output", "-o", default="./output", help="Output directory path" + ) + parser.add_argument( + "--api-key", + default=os.getenv("LLM_BINDING_API_KEY"), + help="OpenAI API key (defaults to LLM_BINDING_API_KEY env var)", + ) + parser.add_argument( + "--base-url", + default=os.getenv("LLM_BINDING_HOST"), + help="Optional base URL for API", + ) + parser.add_argument( + "--parser", + default=os.getenv("PARSER", "mineru"), + help="Optional base URL for API", + ) + + args = parser.parse_args() + + # Check if API key is provided + if not args.api_key: + logger.error("Error: OpenAI API key is required") + logger.error("Set api key environment variable or use --api-key option") + return + + # Create output directory if specified + if args.output: + os.makedirs(args.output, exist_ok=True) + + # Process with RAG + asyncio.run( + process_with_rag( + args.file_path, + args.output, + args.api_key, + args.base_url, + args.working_dir, + args.parser, + ) + ) + + +if __name__ == "__main__": + configure_logging() + + print("RAGAnything Example") + print("=" * 30) + print("Processing document with multimodal RAG pipeline") + print("=" * 30) + + main() diff --git a/reproduce/llm_answer_evaluator.py b/reproduce/llm_answer_evaluator.py new file mode 100644 index 0000000..8cfe05c --- /dev/null +++ b/reproduce/llm_answer_evaluator.py @@ -0,0 +1,1876 @@ +#!/usr/bin/env python + +import os +import json +import asyncio +import logging +import time +from pathlib import Path +from typing import List, Dict, Any, Optional +import pandas as pd +from datetime import datetime + +# Add project root directory to Python path +import sys + +sys.path.append(str(Path(__file__).parent.parent)) + +from lightrag.llm.openai import openai_complete_if_cache +from dotenv import load_dotenv + +load_dotenv(dotenv_path=".env", override=False) + + +class LLMAnswerEvaluator: + def __init__(self, config): + self.config = config + self.evaluation_results = [] + self.existing_evaluations = {} + self.setup_logging() + self.load_existing_evaluations() + + def setup_logging(self): + log_file = os.path.join(self.config.output_dir, "llm_evaluation.log") + os.makedirs(self.config.output_dir, exist_ok=True) + + logging.basicConfig( + level=logging.INFO, + format="%(asctime)s - %(levelname)s - %(message)s", + handlers=[ + logging.FileHandler(log_file, encoding="utf-8"), + logging.StreamHandler(sys.stdout), + ], + ) + self.logger = logging.getLogger("llm_evaluator") + + def get_accuracy_evaluation_prompt( + self, + question: str, + expected_answer: str, + generated_answer: str, + evidence_pages: str = "", + evidence_sources: str = "", + ) -> str: + prompt = f"""You are an expert evaluator tasked with assessing the accuracy of answers generated by a RAG (Retrieval-Augmented Generation) system. + +**Task**: Evaluate whether the generated answer correctly responds to the given question based on the expected answer. + +**Question**: {question} + +**Expected Answer**: {expected_answer} + +**Generated Answer**: {generated_answer} + +**Evidence Pages**: {evidence_pages} + +**Evidence Sources**: {evidence_sources} + +**Evaluation Criteria**: +1. **Accuracy (0 or 1)**: Does the generated answer match the factual content of the expected answer? + - 1: The generated answer is factually correct and aligns with the expected answer + - 0: The generated answer is factually incorrect or contradicts the expected answer + +**Instructions**: +- Focus on factual correctness, not writing style or format +- Consider partial matches: if the generated answer contains the correct information but includes additional context, it should still be considered accurate +- For numerical answers, check if the values match or are equivalent +- For list answers, check if all key elements are present +- If the expected answer is "Not answerable" and the generated answer indicates inability to answer, consider it accurate + +**Output Format**: +Please respond with a JSON object containing only: +{{ + "accuracy": 0 or 1, + "reasoning": "Brief explanation of your evaluation" +}} +""" + return prompt + + def get_comprehensive_evaluation_prompt( + self, + question: str, + expected_answer: str, + generated_answer: str, + evidence_pages: str = "", + evidence_sources: str = "", + ) -> str: + prompt = f"""You are an expert evaluator assessing the quality of answers generated by a RAG system across multiple dimensions. + +**Question**: {question} + +**Expected Answer**: {expected_answer} + +**Generated Answer**: {generated_answer} + +**Evidence Pages**: {evidence_pages} + +**Evidence Sources**: {evidence_sources} + +**Evaluation Dimensions** (Rate each from 0 to 1): + +1. **Accuracy (0 or 1)**: Factual correctness compared to expected answer + - 1: Factually correct and aligns with expected answer + - 0: Factually incorrect or contradicts expected answer + +2. **Relevance (0 to 1)**: How well the answer addresses the question + - 1.0: Directly and completely addresses the question + - 0.5: Partially addresses the question + - 0.0: Does not address the question + +3. **Completeness (0 to 1)**: How comprehensive the answer is + - 1.0: Provides complete information as expected + - 0.5: Provides partial but useful information + - 0.0: Incomplete or missing key information + +4. **Faithfulness (0 to 1)**: Whether the answer is grounded in evidence + - 1.0: Answer is fully supported by evidence + - 0.5: Answer is partially supported by evidence + - 0.0: Answer contains unsupported claims + +5. **Clarity (0 to 1)**: How clear and understandable the answer is + - 1.0: Very clear and well-structured + - 0.5: Reasonably clear with minor issues + - 0.0: Unclear or confusing + +6. **Consistency (0 to 1)**: Internal consistency of the answer + - 1.0: Completely consistent, no contradictions + - 0.5: Mostly consistent with minor issues + - 0.0: Contains contradictions or inconsistencies + +**Special Cases**: +- If expected answer is "Not answerable" and generated answer appropriately indicates inability to answer, rate accuracy as 1 +- Consider format requirements (e.g., if expected format is "List" but answer is string, note in reasoning) + +**Output Format**: +Respond with a JSON object: +{{ + "accuracy": 0 or 1, + "relevance": 0.0 to 1.0, + "completeness": 0.0 to 1.0, + "faithfulness": 0.0 to 1.0, + "clarity": 0.0 to 1.0, + "consistency": 0.0 to 1.0, + "overall_score": 0.0 to 1.0, + "reasoning": "Brief explanation of your evaluation for each dimension" +}} +""" + return prompt + + def fix_json_format(self, json_content: str) -> str: + import re + + try: + json_content = re.sub(r"```json\s*\n?", "", json_content) + json_content = re.sub(r"\n?```", "", json_content) + json_content = json_content.strip() + + reasoning_pattern = r'"reasoning":\s*"' + matches = list(re.finditer(reasoning_pattern, json_content)) + + if len(matches) > 1: + first_match_start = matches[0].start() + + quote_start = matches[0].end() - 1 + quote_count = 0 + end_pos = quote_start + + for i, char in enumerate(json_content[quote_start:], quote_start): + if char == '"' and ( + i == quote_start or json_content[i - 1] != "\\" + ): + quote_count += 1 + if quote_count == 2: + end_pos = i + 1 + break + + before_first = json_content[:first_match_start] + first_reasoning = json_content[first_match_start:end_pos] + + after_first = json_content[end_pos:] + after_first = re.sub( + r',?\s*"reasoning":\s*"[^"]*(?:\\"[^"]*)*"', "", after_first + ) + + json_content = before_first + first_reasoning + after_first + + if json_content and not json_content.endswith("}"): + open_braces = json_content.count("{") + close_braces = json_content.count("}") + if open_braces > close_braces: + if not json_content.rstrip().endswith(('"', "}", "]")): + if '"' in json_content and json_content.count('"') % 2 == 1: + json_content = json_content.rstrip() + '"' + json_content += "}" * (open_braces - close_braces) + + json_content = re.sub(r"[\x00-\x1f\x7f-\x9f]", "", json_content) + + return json_content.strip() + + except Exception as e: + self.logger.warning(f"Error while fixing JSON format: {e}") + return json_content + + def create_fallback_evaluation(self, response: str) -> Dict[str, Any]: + """Create a basic evaluation result when JSON parsing fails.""" + import re + + # Try to extract key information from the response. + fallback_result = { + "accuracy": None, + "relevance": None, + "completeness": None, + "faithfulness": None, + "clarity": None, + "consistency": None, + "overall_score": None, + "reasoning": "JSON parsing failed, so detailed evaluation data is unavailable.", + } + + # Try to extract the accuracy value. + accuracy_patterns = [ + r'"accuracy":\s*(\d+)', + r"accuracy.*?(\d+)", + r"correct.*?(\d+)", + r"accurate.*?(\d+)", + ] + + for pattern in accuracy_patterns: + match = re.search(pattern, response, re.IGNORECASE) + if match: + try: + accuracy_value = int(match.group(1)) + if accuracy_value in [0, 1]: + fallback_result["accuracy"] = accuracy_value + break + except ValueError: + continue + + # If no explicit accuracy value is found, infer it from keywords. + if fallback_result["accuracy"] is None: + positive_keywords = ["correct", "accurate", "right", "yes", "true", "match"] + negative_keywords = [ + "incorrect", + "wrong", + "false", + "no", + "mismatch", + "contradiction", + ] + + response_lower = response.lower() + if any(keyword in response_lower for keyword in positive_keywords): + fallback_result["accuracy"] = 1 + elif any(keyword in response_lower for keyword in negative_keywords): + fallback_result["accuracy"] = 0 + + # Set a default value if it is still None. + if fallback_result["accuracy"] is None: + fallback_result["accuracy"] = 0 # Conservative fallback. + + # For comprehensive evaluation, try to extract additional metrics. + if "relevance" in response.lower(): + relevance_match = re.search( + r'"relevance":\s*([\d.]+)', response, re.IGNORECASE + ) + if relevance_match: + try: + fallback_result["relevance"] = float(relevance_match.group(1)) + except ValueError: + pass + + self.logger.info( + f"Created fallback evaluation result: accuracy={fallback_result['accuracy']}" + ) + return fallback_result + + async def evaluate_single_answer( + self, + question: str, + expected_answer: str, + generated_answer: str, + evidence_pages: str = "", + evidence_sources: str = "", + doc_id: str = "", + evaluation_type: str = "comprehensive", + ) -> Dict[str, Any]: + """Evaluate a single answer.""" + start_time = time.time() + + try: + if evaluation_type == "accuracy_only": + prompt = self.get_accuracy_evaluation_prompt( + question, + expected_answer, + generated_answer, + evidence_pages, + evidence_sources, + ) + else: + prompt = self.get_comprehensive_evaluation_prompt( + question, + expected_answer, + generated_answer, + evidence_pages, + evidence_sources, + ) + + self.logger.info(f"Starting answer evaluation (type: {evaluation_type})") + self.logger.info(f"Question: {question[:100]}...") + + # Call the LLM for evaluation and retry automatically on timeout. + response = None + for attempt in range(1, self.config.max_retries + 1): + try: + response = await asyncio.wait_for( + openai_complete_if_cache( + model="gpt-4o-mini", + prompt=prompt, + system_prompt="You are an expert evaluator. Provide accurate and fair evaluations based on the given criteria.", + api_key=self.config.api_key, + base_url=self.config.base_url, + temperature=0.1, # Keep temperature low for consistent evaluation. + max_tokens=1000, + ), + timeout=self.config.request_timeout, + ) + break + except asyncio.TimeoutError: + self.logger.warning( + f"Evaluation timed out on attempt {attempt}/{self.config.max_retries}: exceeded {self.config.request_timeout} seconds" + ) + if attempt >= self.config.max_retries: + raise + + evaluation_time = time.time() - start_time + + # Parse the JSON response. + try: + evaluation_result = json.loads(response) + except json.JSONDecodeError: + import re + + # First, try to extract content wrapped in ```json```. + json_code_block_match = re.search( + r"```json\s*\n(.*?)\n```", response, re.DOTALL + ) + if json_code_block_match: + json_content = json_code_block_match.group(1).strip() + try: + evaluation_result = json.loads(json_content) + except json.JSONDecodeError as e: + self.logger.warning( + f"Failed to parse JSON inside code block: {e}" + ) + # Try to repair common JSON formatting issues such as duplicate reasoning fields. + json_content = self.fix_json_format(json_content) + try: + evaluation_result = json.loads(json_content) + except json.JSONDecodeError: + # Final fallback: create a basic evaluation result. + self.logger.warning( + "JSON repair failed; using fallback evaluation result" + ) + evaluation_result = self.create_fallback_evaluation( + response + ) + else: + # Try to extract any JSON object from the response. + json_match = re.search(r"\{.*\}", response, re.DOTALL) + if json_match: + json_content = json_match.group().strip() + try: + evaluation_result = json.loads(json_content) + except json.JSONDecodeError: + json_content = self.fix_json_format(json_content) + try: + evaluation_result = json.loads(json_content) + except json.JSONDecodeError: + # Final fallback: create a basic evaluation result. + self.logger.warning( + "JSON repair failed; using fallback evaluation result" + ) + evaluation_result = self.create_fallback_evaluation( + response + ) + else: + raise ValueError( + "Could not extract valid JSON from the response" + ) + + # Add metadata. + evaluation_result.update( + { + "doc_id": doc_id, + "question": question, + "expected_answer": expected_answer, + "generated_answer": generated_answer, + "evidence_pages": evidence_pages, + "evidence_sources": evidence_sources, + "evaluation_type": evaluation_type, + "evaluation_time": evaluation_time, + "timestamp": datetime.now().isoformat(), + "success": True, + "error": None, + } + ) + + self.logger.info(f"Evaluation completed in {evaluation_time:.2f} seconds") + return evaluation_result + + except asyncio.TimeoutError: + evaluation_time = time.time() - start_time + error_msg = ( + f"Evaluation timed out after {self.config.request_timeout} seconds" + ) + self.logger.error(error_msg) + + return { + "doc_id": doc_id, + "question": question, + "expected_answer": expected_answer, + "generated_answer": generated_answer, + "evidence_pages": evidence_pages, + "evidence_sources": evidence_sources, + "evaluation_type": evaluation_type, + "evaluation_time": evaluation_time, + "timestamp": datetime.now().isoformat(), + "success": False, + "error": error_msg, + "accuracy": None, + "reasoning": None, + } + except Exception as e: + evaluation_time = time.time() - start_time + error_msg = f"Error during evaluation: {str(e)}" + self.logger.error(error_msg) + + return { + "doc_id": doc_id, + "question": question, + "expected_answer": expected_answer, + "generated_answer": generated_answer, + "evidence_pages": evidence_pages, + "evidence_sources": evidence_sources, + "evaluation_type": evaluation_type, + "evaluation_time": evaluation_time, + "timestamp": datetime.now().isoformat(), + "success": False, + "error": error_msg, + "accuracy": None, + "reasoning": None, + } + + async def evaluate_rag_results( + self, + results_file: str, + evaluation_type: str = "comprehensive", + max_evaluations: int = None, + ) -> None: + """Evaluate a RAG results file.""" + self.logger.info(f"Starting evaluation for RAG results file: {results_file}") + + # Load RAG evaluation results. + with open(results_file, "r", encoding="utf-8") as f: + rag_results = json.load(f) + + if max_evaluations: + rag_results = rag_results[:max_evaluations] + self.logger.info(f"Limiting evaluations to: {max_evaluations}") + + total_items = len(rag_results) + self.logger.info(f"Starting evaluation for {total_items} results") + + # Detect the result type. + if rag_results and "vlm_result" in rag_results[0]: + self.logger.info("Detected VLM result format") + await self.evaluate_vlm_results(rag_results, evaluation_type) + else: + self.logger.info("Detected RAG result format") + await self.evaluate_standard_rag_results(rag_results, evaluation_type) + + async def evaluate_multiple_results( + self, + results_files: List[str], + evaluation_type: str = "comprehensive", + max_evaluations: int = None, + ) -> None: + """Evaluate multiple result files, including RAG and VLM outputs.""" + self.logger.info( + f"Starting evaluation for multiple result files: {results_files}" + ) + + start_time = time.time() + all_results_by_type = {} + + # Load results grouped by file type. + for results_file in results_files: + self.logger.info(f"Loading results file: {results_file}") + + with open(results_file, "r", encoding="utf-8") as f: + results = json.load(f) + + # Detect and tag the file type. + if results and "vlm_result" in results[0]: + file_type = "vlm" + self.logger.info(f"Detected VLM result format: {len(results)} results") + else: + file_type = "rag" + self.logger.info(f"Detected RAG result format: {len(results)} results") + + # Add file-type metadata to each result. + for result in results: + result["_file_type"] = file_type + result["_source_file"] = results_file + + all_results_by_type[file_type] = { + "results": results, + "source_file": results_file, + } + + # If a limit is provided, cap by question count rather than raw result count. + if max_evaluations: + for file_type in all_results_by_type: + original_count = len(all_results_by_type[file_type]["results"]) + all_results_by_type[file_type]["results"] = all_results_by_type[ + file_type + ]["results"][:max_evaluations] + limited_count = len(all_results_by_type[file_type]["results"]) + self.logger.info( + f"Limited {file_type} results: {original_count} -> {limited_count}" + ) + + # Merge all results for evaluation. + all_results = [] + for file_type, data in all_results_by_type.items(): + all_results.extend(data["results"]) + + total_items = len(all_results) + skipped_count = 0 + completed_count = 0 + new_evaluations = [] + + # Count existing evaluations. + if self.existing_evaluations: + existing_count = len(self.existing_evaluations) + self.logger.info( + f"Found {existing_count} existing LLM evaluations; duplicate evaluations will be skipped" + ) + + self.logger.info(f"Starting evaluation for a total of {total_items} results") + + # Evaluate all results. + for i, result in enumerate(all_results, 1): + self.logger.info( + f"\n[{i}/{total_items}] Evaluating {result['_file_type'].upper()} result" + ) + + # Skip the entry if any error is present. + if self.has_any_error(result): + skipped_count += 1 + self.logger.info( + f" Skipping query with errors: {self.get_error_summary(result)}" + ) + continue + + if result["_file_type"] == "vlm": + # Evaluate the VLM result. + if result.get("vlm_result") and result["vlm_result"].get("success"): + method = "vlm" + + # Check whether this evaluation already exists. + if self.is_evaluation_completed( + result["doc_id"], result["question"], method + ): + completed_count += 1 + self.logger.info(f" Skipping completed {method} evaluation") + # Add the existing result to the current batch. + existing_eval = self.get_existing_evaluation( + result["doc_id"], result["question"], method + ) + if existing_eval: + existing_eval["source_file"] = result[ + "_source_file" + ] # Refresh source file metadata. + new_evaluations.append(existing_eval) + continue + + eval_result = await self.evaluate_single_answer( + question=result["question"], + expected_answer=str(result["expected_answer"]), + generated_answer=str(result["vlm_result"]["result"]), + evidence_pages=result.get("evidence_pages", ""), + evidence_sources=result.get("evidence_sources", ""), + doc_id=result["doc_id"], + evaluation_type=evaluation_type, + ) + eval_result["method"] = method + eval_result["model"] = result["vlm_result"].get("model", "unknown") + eval_result["source_file"] = result["_source_file"] + + new_evaluations.append(eval_result) + + # Update the lookup index. + key = (result["doc_id"], result["question"], method) + self.existing_evaluations[key] = eval_result + + else: # RAG results + # Evaluate the hybrid result. + if result.get("hybrid_result") and result["hybrid_result"].get( + "success" + ): + method = "hybrid" + + # Check whether this evaluation already exists. + if self.is_evaluation_completed( + result["doc_id"], result["question"], method + ): + completed_count += 1 + self.logger.info(f" Skipping completed {method} evaluation") + # Add the existing result to the current batch. + existing_eval = self.get_existing_evaluation( + result["doc_id"], result["question"], method + ) + if existing_eval: + existing_eval["source_file"] = result["_source_file"] + new_evaluations.append(existing_eval) + else: + hybrid_eval = await self.evaluate_single_answer( + question=result["question"], + expected_answer=str(result["expected_answer"]), + generated_answer=str(result["hybrid_result"]["result"]), + evidence_pages=result.get("evidence_pages", ""), + evidence_sources=result.get("evidence_sources", ""), + doc_id=result["doc_id"], + evaluation_type=evaluation_type, + ) + hybrid_eval["method"] = method + hybrid_eval["source_file"] = result["_source_file"] + + new_evaluations.append(hybrid_eval) + + # Update the lookup index. + key = (result["doc_id"], result["question"], method) + self.existing_evaluations[key] = hybrid_eval + + # Evaluate the mix result. + if result.get("mix_result") and result["mix_result"].get("success"): + method = "mix" + + # Check whether this evaluation already exists. + if self.is_evaluation_completed( + result["doc_id"], result["question"], method + ): + completed_count += 1 + self.logger.info(f" Skipping completed {method} evaluation") + # Add the existing result to the current batch. + existing_eval = self.get_existing_evaluation( + result["doc_id"], result["question"], method + ) + if existing_eval: + existing_eval["source_file"] = result["_source_file"] + new_evaluations.append(existing_eval) + else: + mix_eval = await self.evaluate_single_answer( + question=result["question"], + expected_answer=str(result["expected_answer"]), + generated_answer=str(result["mix_result"]["result"]), + evidence_pages=result.get("evidence_pages", ""), + evidence_sources=result.get("evidence_sources", ""), + doc_id=result["doc_id"], + evaluation_type=evaluation_type, + ) + mix_eval["method"] = method + mix_eval["source_file"] = result["_source_file"] + + new_evaluations.append(mix_eval) + + # Update the lookup index. + key = (result["doc_id"], result["question"], method) + self.existing_evaluations[key] = mix_eval + + # Evaluate the naive result. + if result.get("naive_result") and result["naive_result"].get("success"): + method = "naive" + + # Check whether this evaluation already exists. + if self.is_evaluation_completed( + result["doc_id"], result["question"], method + ): + completed_count += 1 + self.logger.info(f" Skipping completed {method} evaluation") + # Add the existing result to the current batch. + existing_eval = self.get_existing_evaluation( + result["doc_id"], result["question"], method + ) + if existing_eval: + existing_eval["source_file"] = result["_source_file"] + new_evaluations.append(existing_eval) + else: + naive_eval = await self.evaluate_single_answer( + question=result["question"], + expected_answer=str(result["expected_answer"]), + generated_answer=str(result["naive_result"]["result"]), + evidence_pages=result.get("evidence_pages", ""), + evidence_sources=result.get("evidence_sources", ""), + doc_id=result["doc_id"], + evaluation_type=evaluation_type, + ) + naive_eval["method"] = method + naive_eval["source_file"] = result["_source_file"] + + new_evaluations.append(naive_eval) + + # Update the lookup index. + key = (result["doc_id"], result["question"], method) + self.existing_evaluations[key] = naive_eval + + # Save progress every 10 results. + if i % 10 == 0: + # Update evaluation_results and persist them. + self.update_evaluation_results_list(new_evaluations) + self.save_evaluation_results() + self.logger.info( + f"Saved the first {len(self.evaluation_results)} evaluation results" + ) + new_evaluations = [] # Clear the temporary list. + + total_time = time.time() - start_time + + # Update and save the final results. + if new_evaluations: + self.update_evaluation_results_list(new_evaluations) + self.save_evaluation_results() + + # Log summary statistics. + new_eval_count = ( + len(self.evaluation_results) + - len(self.existing_evaluations) + + len(new_evaluations) + ) + if skipped_count > 0: + self.logger.info(f"Skipped {skipped_count} queries with errors") + if completed_count > 0: + self.logger.info(f"Skipped {completed_count} completed evaluations") + self.logger.info(f"Completed {new_eval_count} new evaluations") + + # Generate the evaluation report. + self.generate_evaluation_report(total_time) + + async def evaluate_vlm_results(self, vlm_results: List[Dict], evaluation_type: str): + """Evaluate VLM results.""" + start_time = time.time() + skipped_count = 0 + completed_count = 0 + new_evaluations = [] + + # Count existing evaluations. + if self.existing_evaluations: + existing_count = len(self.existing_evaluations) + self.logger.info( + f"Found {existing_count} existing LLM evaluations; duplicate evaluations will be skipped" + ) + + for i, vlm_result in enumerate(vlm_results, 1): + self.logger.info(f"\n[{i}/{len(vlm_results)}] Evaluating VLM result") + + # Skip the entry if any error is present. + if self.has_any_error(vlm_result): + skipped_count += 1 + self.logger.info( + f" Skipping VLM query with errors: {self.get_error_summary(vlm_result)}" + ) + continue + + # Evaluate the VLM result. + if vlm_result.get("vlm_result") and vlm_result["vlm_result"].get("success"): + method = "vlm" + + # Check whether this evaluation already exists. + if self.is_evaluation_completed( + vlm_result["doc_id"], vlm_result["question"], method + ): + completed_count += 1 + self.logger.info(f" Skipping completed {method} evaluation") + # Add the existing result to the current batch. + existing_eval = self.get_existing_evaluation( + vlm_result["doc_id"], vlm_result["question"], method + ) + if existing_eval: + new_evaluations.append(existing_eval) + continue + + vlm_eval = await self.evaluate_single_answer( + question=vlm_result["question"], + expected_answer=str(vlm_result["expected_answer"]), + generated_answer=str(vlm_result["vlm_result"]["result"]), + evidence_pages=vlm_result.get("evidence_pages", ""), + evidence_sources=vlm_result.get("evidence_sources", ""), + doc_id=vlm_result["doc_id"], + evaluation_type=evaluation_type, + ) + vlm_eval["method"] = method + vlm_eval["model"] = vlm_result["vlm_result"].get("model", "unknown") + + new_evaluations.append(vlm_eval) + + # Update the lookup index. + key = (vlm_result["doc_id"], vlm_result["question"], method) + self.existing_evaluations[key] = vlm_eval + + # Save progress every 10 results. + if i % 10 == 0: + # Update evaluation_results and persist them. + self.update_evaluation_results_list(new_evaluations) + self.save_evaluation_results() + self.logger.info( + f"Saved the first {len(self.evaluation_results)} evaluation results" + ) + new_evaluations = [] # Clear the temporary list. + + total_time = time.time() - start_time + + # Update and save the final results. + if new_evaluations: + self.update_evaluation_results_list(new_evaluations) + self.save_evaluation_results() + + # Log summary statistics. + new_eval_count = len(new_evaluations) if new_evaluations else 0 + if skipped_count > 0: + self.logger.info(f"Skipped {skipped_count} VLM queries with errors") + if completed_count > 0: + self.logger.info(f"Skipped {completed_count} completed evaluations") + self.logger.info(f"Completed {new_eval_count} new evaluations") + + # Generate the evaluation report. + self.generate_evaluation_report(total_time) + + async def evaluate_standard_rag_results( + self, rag_results: List[Dict], evaluation_type: str + ): + """Evaluate standard RAG results for hybrid, mix, and naive methods.""" + start_time = time.time() + skipped_count = 0 + completed_count = 0 + new_evaluations = [] + + # Count existing evaluations. + if self.existing_evaluations: + existing_count = len(self.existing_evaluations) + self.logger.info( + f"Found {existing_count} existing LLM evaluations; duplicate evaluations will be skipped" + ) + + for i, rag_result in enumerate(rag_results, 1): + self.logger.info(f"\n[{i}/{len(rag_results)}] Evaluating RAG result") + + # Skip the entry if any error is present. + if self.has_any_error(rag_result): + skipped_count += 1 + self.logger.info( + f" Skipping RAG query with errors: {self.get_error_summary(rag_result)}" + ) + continue + + # Evaluate the hybrid result. + if rag_result.get("hybrid_result") and rag_result["hybrid_result"].get( + "success" + ): + method = "hybrid" + + # Check whether this evaluation already exists. + if self.is_evaluation_completed( + rag_result["doc_id"], rag_result["question"], method + ): + completed_count += 1 + self.logger.info(f" Skipping completed {method} evaluation") + # Add the existing result to the current batch. + existing_eval = self.get_existing_evaluation( + rag_result["doc_id"], rag_result["question"], method + ) + if existing_eval: + new_evaluations.append(existing_eval) + else: + hybrid_eval = await self.evaluate_single_answer( + question=rag_result["question"], + expected_answer=str(rag_result["expected_answer"]), + generated_answer=str(rag_result["hybrid_result"]["result"]), + evidence_pages=rag_result.get("evidence_pages", ""), + evidence_sources=rag_result.get("evidence_sources", ""), + doc_id=rag_result["doc_id"], + evaluation_type=evaluation_type, + ) + hybrid_eval["method"] = method + + new_evaluations.append(hybrid_eval) + + # Update the lookup index. + key = (rag_result["doc_id"], rag_result["question"], method) + self.existing_evaluations[key] = hybrid_eval + + # Evaluate the mix result. + if rag_result.get("mix_result") and rag_result["mix_result"].get("success"): + method = "mix" + + # Check whether this evaluation already exists. + if self.is_evaluation_completed( + rag_result["doc_id"], rag_result["question"], method + ): + completed_count += 1 + self.logger.info(f" Skipping completed {method} evaluation") + # Add the existing result to the current batch. + existing_eval = self.get_existing_evaluation( + rag_result["doc_id"], rag_result["question"], method + ) + if existing_eval: + new_evaluations.append(existing_eval) + else: + mix_eval = await self.evaluate_single_answer( + question=rag_result["question"], + expected_answer=str(rag_result["expected_answer"]), + generated_answer=str(rag_result["mix_result"]["result"]), + evidence_pages=rag_result.get("evidence_pages", ""), + evidence_sources=rag_result.get("evidence_sources", ""), + doc_id=rag_result["doc_id"], + evaluation_type=evaluation_type, + ) + mix_eval["method"] = method + + new_evaluations.append(mix_eval) + + # Update the lookup index. + key = (rag_result["doc_id"], rag_result["question"], method) + self.existing_evaluations[key] = mix_eval + + # Evaluate the naive result. + if rag_result.get("naive_result") and rag_result["naive_result"].get( + "success" + ): + method = "naive" + + # Check whether this evaluation already exists. + if self.is_evaluation_completed( + rag_result["doc_id"], rag_result["question"], method + ): + completed_count += 1 + self.logger.info(f" Skipping completed {method} evaluation") + # Add the existing result to the current batch. + existing_eval = self.get_existing_evaluation( + rag_result["doc_id"], rag_result["question"], method + ) + if existing_eval: + new_evaluations.append(existing_eval) + else: + naive_eval = await self.evaluate_single_answer( + question=rag_result["question"], + expected_answer=str(rag_result["expected_answer"]), + generated_answer=str(rag_result["naive_result"]["result"]), + evidence_pages=rag_result.get("evidence_pages", ""), + evidence_sources=rag_result.get("evidence_sources", ""), + doc_id=rag_result["doc_id"], + evaluation_type=evaluation_type, + ) + naive_eval["method"] = method + + new_evaluations.append(naive_eval) + + # Update the lookup index. + key = (rag_result["doc_id"], rag_result["question"], method) + self.existing_evaluations[key] = naive_eval + + # Save progress every 10 results. + if i % 10 == 0: + # Update evaluation_results and persist them. + self.update_evaluation_results_list(new_evaluations) + self.save_evaluation_results() + self.logger.info( + f"Saved the first {len(self.evaluation_results)} evaluation results" + ) + new_evaluations = [] # Clear the temporary list. + + total_time = time.time() - start_time + + # Update and save the final results. + if new_evaluations: + self.update_evaluation_results_list(new_evaluations) + self.save_evaluation_results() + + # Log summary statistics. + new_eval_count = len(new_evaluations) if new_evaluations else 0 + if skipped_count > 0: + self.logger.info(f"Skipped {skipped_count} RAG queries with errors") + if completed_count > 0: + self.logger.info(f"Skipped {completed_count} completed evaluations") + self.logger.info(f"Completed {new_eval_count} new evaluations") + + # Generate the evaluation report. + self.generate_evaluation_report(total_time) + + def save_evaluation_results(self): + """Save evaluation results.""" + # Save the detailed JSON output. + results_file = os.path.join( + self.config.output_dir, "llm_evaluation_results.json" + ) + results_tmp_file = f"{results_file}.tmp" + with open(results_tmp_file, "w", encoding="utf-8") as f: + json.dump(self.evaluation_results, f, ensure_ascii=False, indent=2) + os.replace(results_tmp_file, results_file) + + # Save the CSV summary. + summary_data = [] + for result in self.evaluation_results: + summary_data.append( + { + "doc_id": result["doc_id"], + "method": result.get("method", ""), + "source_file": result.get("source_file", ""), + "question": result["question"][:100] + "..." + if len(result["question"]) > 100 + else result["question"], + "expected_answer": str(result["expected_answer"])[:100] + "..." + if len(str(result["expected_answer"])) > 100 + else str(result["expected_answer"]), + "generated_answer": str(result["generated_answer"])[:200] + "..." + if len(str(result["generated_answer"])) > 200 + else str(result["generated_answer"]), + "accuracy": result.get("accuracy"), + "relevance": result.get("relevance"), + "completeness": result.get("completeness"), + "faithfulness": result.get("faithfulness"), + "clarity": result.get("clarity"), + "consistency": result.get("consistency"), + "overall_score": result.get("overall_score"), + "evaluation_time": result.get("evaluation_time"), + "success": result.get("success"), + "error": result.get("error", ""), + } + ) + + summary_file = os.path.join( + self.config.output_dir, "llm_evaluation_summary.csv" + ) + df = pd.DataFrame(summary_data) + summary_tmp_file = f"{summary_file}.tmp" + df.to_csv(summary_tmp_file, index=False, encoding="utf-8") + os.replace(summary_tmp_file, summary_file) + + def generate_evaluation_report(self, total_time: float): + """Generate an evaluation report.""" + total_evaluations = len(self.evaluation_results) + successful_evaluations = [ + r for r in self.evaluation_results if r.get("success") + ] + + if not successful_evaluations: + self.logger.warning( + "No successful evaluation results were found, so the report cannot be generated" + ) + return + + # Group statistics by method. + method_stats = {} + source_file_stats = {} + + for result in successful_evaluations: + method = result.get("method", "unknown") + source_file = result.get("source_file", "unknown") + + # Method-level statistics. + if method not in method_stats: + method_stats[method] = [] + method_stats[method].append(result) + + # Source-file-level statistics. + if source_file not in source_file_stats: + source_file_stats[source_file] = {} + if method not in source_file_stats[source_file]: + source_file_stats[source_file][method] = [] + source_file_stats[source_file][method].append(result) + + report = f""" +# LLM Answer Evaluation Report + +## Overall Statistics +- Total evaluations: {total_evaluations} +- Successful evaluations: {len(successful_evaluations)} +- Failed evaluations: {total_evaluations - len(successful_evaluations)} +- Total elapsed time: {total_time:.2f} seconds +- Average time per evaluation: {total_time/total_evaluations:.2f} seconds + +## Evaluation Configuration +- Evaluation model: gpt-4o-mini +- Evaluation temperature: 0.1 +- Max tokens: 1000 +""" + + # Source-file breakdown was intentionally removed to avoid exposing dataset-level statistics. + + # Generate statistics for each method. + for method, results in method_stats.items(): + accuracy_scores = [ + r.get("accuracy") for r in results if r.get("accuracy") is not None + ] + + report += f""" +## {method.upper()} Method Results + +### Accuracy Statistics +- Evaluated samples: {len(results)} +- Correct answers: {sum(accuracy_scores)} +- Accuracy rate: {(sum(accuracy_scores) / len(accuracy_scores) * 100):.1f}% + +""" + + # Include additional metrics when available. + if any(r.get("relevance") is not None for r in results): + relevance_scores = [ + r.get("relevance") + for r in results + if r.get("relevance") is not None + ] + completeness_scores = [ + r.get("completeness") + for r in results + if r.get("completeness") is not None + ] + faithfulness_scores = [ + r.get("faithfulness") + for r in results + if r.get("faithfulness") is not None + ] + clarity_scores = [ + r.get("clarity") for r in results if r.get("clarity") is not None + ] + consistency_scores = [ + r.get("consistency") + for r in results + if r.get("consistency") is not None + ] + overall_scores = [ + r.get("overall_score") + for r in results + if r.get("overall_score") is not None + ] + + if relevance_scores: + report += f"""### Multi-Dimensional Metrics +- Average relevance: {(sum(relevance_scores) / len(relevance_scores)):.3f} +- Average completeness: {(sum(completeness_scores) / len(completeness_scores)):.3f} +- Average faithfulness: {(sum(faithfulness_scores) / len(faithfulness_scores)):.3f} +- Average clarity: {(sum(clarity_scores) / len(clarity_scores)):.3f} +- Average consistency: {(sum(consistency_scores) / len(consistency_scores)):.3f} +- Average overall score: {(sum(overall_scores) / len(overall_scores)):.3f} + +""" + + # Compare methods. + if len(method_stats) > 1: + report += """ +## Method Comparison + +| Method | Samples | Accuracy | Average Overall Score | +|------|--------|--------|--------------| +""" + for method, results in method_stats.items(): + accuracy_scores = [ + r.get("accuracy") for r in results if r.get("accuracy") is not None + ] + overall_scores = [ + r.get("overall_score") + for r in results + if r.get("overall_score") is not None + ] + + accuracy_rate = ( + (sum(accuracy_scores) / len(accuracy_scores) * 100) + if accuracy_scores + else 0 + ) + avg_overall = ( + (sum(overall_scores) / len(overall_scores)) if overall_scores else 0 + ) + + report += f"| {method} | {len(results)} | {accuracy_rate:.1f}% | {avg_overall:.3f} |\n" + + # Analyze all documents, not only those with multiple methods. + doc_comparison = {} + for result in successful_evaluations: + original_doc_id = result["doc_id"] + method = result.get("method", "unknown") + source_file_path = result.get("source_file", "") + folder_name = ( + os.path.basename(os.path.dirname(source_file_path)) + if source_file_path + else "" + ) + # Build a display doc ID prefixed with the folder identifier when available. + display_doc_id = ( + f"{folder_name}/{original_doc_id}" if folder_name else original_doc_id + ) + + if display_doc_id not in doc_comparison: + doc_comparison[display_doc_id] = {} + if method not in doc_comparison[display_doc_id]: + doc_comparison[display_doc_id][method] = [] + doc_comparison[display_doc_id][method].append(result) + + # Show document analysis regardless of how many methods were used. + if doc_comparison: + # Split documents into multi-method and single-method groups. + multi_method_docs = { + doc_id: methods + for doc_id, methods in doc_comparison.items() + if len(methods) > 1 + } + single_method_docs = { + doc_id: methods + for doc_id, methods in doc_comparison.items() + if len(methods) == 1 + } + + if multi_method_docs: + report += f""" +## Same-Document Method Comparison + +{len(multi_method_docs)} documents were evaluated by multiple methods: + +| Document ID | Method | Correct Answers / Total Questions | Accuracy | +|--------|------|-------------------|--------| +""" + for doc_id_display, methods in multi_method_docs.items(): + for method, results in methods.items(): + accuracy_scores = [ + r.get("accuracy") + for r in results + if r.get("accuracy") is not None + ] + accuracy_count = sum(accuracy_scores) + total_count = len(accuracy_scores) + accuracy_rate = ( + (accuracy_count / total_count * 100) + if total_count > 0 + else 0 + ) + + short_doc_id = ( + doc_id_display[:30] + "..." + if len(doc_id_display) > 30 + else doc_id_display + ) + report += f"| {short_doc_id} | {method} | {accuracy_count}/{total_count} | {accuracy_rate:.1f}% |\n" + + if single_method_docs: + # Choose the method to display, preferring VLM when available. + available_methods = list(method_stats.keys()) + primary_method = ( + "vlm" if "vlm" in available_methods else available_methods[0] + ) + + report += f""" +## Document-Level Results ({primary_method.upper()} Method) + +Accuracy performance by document: + +| Document ID | Correct Answers / Total Questions | Accuracy | Document Type | +|--------|-------------------|--------|----------| +""" + # Build document rows for display. + doc_performance = [] + for doc_id_display, methods in single_method_docs.items(): + if primary_method in methods: + results = methods[primary_method] + accuracy_scores = [ + r.get("accuracy") + for r in results + if r.get("accuracy") is not None + ] + accuracy_count = sum(accuracy_scores) + total_count = len(accuracy_scores) + accuracy_rate = ( + (accuracy_count / total_count * 100) + if total_count > 0 + else 0 + ) + + # Infer document type information. + doc_types = set() + for r in results: + evidence_sources = r.get("evidence_sources", "") + if "arxiv" in evidence_sources.lower(): + doc_types.add("Academic paper") + elif "10k" in doc_id_display.lower(): + doc_types.add("Financial report") + elif any( + keyword in doc_id_display.lower() + for keyword in ["manual", "guide", "handbook"] + ): + doc_types.add("Manual / guide") + elif any( + keyword in doc_id_display.lower() + for keyword in ["report", "survey"] + ): + doc_types.add("Research report") + else: + doc_types.add("Other") + + doc_type = ", ".join(doc_types) if doc_types else "Unknown" + + doc_performance.append( + { + "doc_id": doc_id_display, + "accuracy_count": accuracy_count, + "total_count": total_count, + "accuracy_rate": accuracy_rate, + "doc_type": doc_type, + } + ) + + # Sort by numeric folder prefix in the document ID when available. + def _folder_num_from_doc_id(doc_id: str) -> int: + if "/" in doc_id: + folder = doc_id.split("/", 1)[0] + if folder.isdigit(): + return int(folder) + # Put entries without a parseable numeric prefix at the end. + return 10**9 + + doc_performance.sort( + key=lambda x: (_folder_num_from_doc_id(x["doc_id"]), x["doc_id"]) + ) + + # Display all documents. + display_docs = doc_performance + for doc_info in display_docs: + short_doc_id = ( + doc_info["doc_id"][:30] + "..." + if len(doc_info["doc_id"]) > 30 + else doc_info["doc_id"] + ) + report += f"| {short_doc_id} | {doc_info['accuracy_count']}/{doc_info['total_count']} | {doc_info['accuracy_rate']:.1f}% | {doc_info['doc_type']} |\n" + + # Aggregate statistics by document type. + type_stats = {} + for doc_info in doc_performance: + doc_type = doc_info["doc_type"] + if doc_type not in type_stats: + type_stats[doc_type] = { + "count": 0, + "total_questions": 0, + "correct_answers": 0, + } + type_stats[doc_type]["count"] += 1 + type_stats[doc_type]["total_questions"] += doc_info["total_count"] + type_stats[doc_type]["correct_answers"] += doc_info[ + "accuracy_count" + ] + + report += """ +### Statistics by Document Type + +| Document Type | Document Count | Total Questions | Correct Answers | Accuracy | +|----------|----------|----------|------------|--------| +""" + for doc_type, stats in type_stats.items(): + accuracy_rate = ( + (stats["correct_answers"] / stats["total_questions"] * 100) + if stats["total_questions"] > 0 + else 0 + ) + report += f"| {doc_type} | {stats['count']} | {stats['total_questions']} | {stats['correct_answers']} | {accuracy_rate:.1f}% |\n" + + report += f""" + +## Output Files +- Detailed evaluation results: {os.path.join(self.config.output_dir, 'llm_evaluation_results.json')} +- Evaluation summary: {os.path.join(self.config.output_dir, 'llm_evaluation_summary.csv')} +- Evaluation log: {os.path.join(self.config.output_dir, 'llm_evaluation.log')} +""" + + # Save the report. + report_file = os.path.join(self.config.output_dir, "llm_evaluation_report.md") + with open(report_file, "w", encoding="utf-8") as f: + f.write(report) + + self.logger.info("\n" + "=" * 50) + self.logger.info("LLM evaluation completed!") + self.logger.info( + f"Detailed results: {os.path.join(self.config.output_dir, 'llm_evaluation_results.json')}" + ) + self.logger.info( + f"Summary: {os.path.join(self.config.output_dir, 'llm_evaluation_summary.csv')}" + ) + self.logger.info(f"Report: {report_file}") + self.logger.info("=" * 50) + + def has_any_error(self, result: Dict[str, Any]) -> bool: + """Check whether the result contains any error.""" + # Check the top-level error. + if result.get("error"): + return True + + # Check the VLM result error. + vlm_result = result.get("vlm_result") + if vlm_result and ( + vlm_result.get("error") or not vlm_result.get("success", True) + ): + return True + + # Check the RAG hybrid result error. + hybrid_result = result.get("hybrid_result") + if hybrid_result and ( + hybrid_result.get("error") or not hybrid_result.get("success", True) + ): + return True + + # Check the RAG mix result error. + mix_result = result.get("mix_result") + if mix_result and ( + mix_result.get("error") or not mix_result.get("success", True) + ): + return True + + # Check the RAG naive result error. + naive_result = result.get("naive_result") + if naive_result and ( + naive_result.get("error") or not naive_result.get("success", True) + ): + return True + + return False + + def get_error_summary(self, result: Dict[str, Any]) -> str: + """Return a concise summary of evaluation errors.""" + errors = [] + + # Top-level error. + if result.get("error"): + error_msg = result["error"] + if "document not found" in error_msg.lower(): + errors.append("Document not found") + else: + errors.append(f"Top-level error: {error_msg[:50]}...") + + # VLM error. + vlm_result = result.get("vlm_result") + if vlm_result and ( + vlm_result.get("error") or not vlm_result.get("success", True) + ): + error_msg = vlm_result.get("error", "VLM query failed") + if "context_length_exceeded" in error_msg: + errors.append("VLM token limit exceeded") + else: + errors.append(f"VLM error: {error_msg[:50]}...") + + # RAG errors. + hybrid_result = result.get("hybrid_result") + if hybrid_result and ( + hybrid_result.get("error") or not hybrid_result.get("success", True) + ): + error_msg = hybrid_result.get("error", "Hybrid query failed") + errors.append(f"Hybrid error: {error_msg[:50]}...") + + mix_result = result.get("mix_result") + if mix_result and ( + mix_result.get("error") or not mix_result.get("success", True) + ): + error_msg = mix_result.get("error", "Mix query failed") + errors.append(f"Mix error: {error_msg[:50]}...") + + naive_result = result.get("naive_result") + if naive_result and ( + naive_result.get("error") or not naive_result.get("success", True) + ): + error_msg = naive_result.get("error", "Naive query failed") + errors.append(f"Naive error: {error_msg[:50]}...") + + return "; ".join(errors) if errors else "Unknown error" + + def load_existing_evaluations(self): + """Load previously saved evaluation results.""" + results_file = os.path.join( + self.config.output_dir, "llm_evaluation_results.json" + ) + + if os.path.exists(results_file): + try: + with open(results_file, "r", encoding="utf-8") as f: + existing_data = json.load(f) + + self.evaluation_results = existing_data + self.logger.info( + f"Loaded {len(existing_data)} existing LLM evaluation results" + ) + + # Build a fast lookup index: {(doc_id, question, method): result} + for result in existing_data: + key = ( + result["doc_id"], + result["question"], + result.get("method", ""), + ) + self.existing_evaluations[key] = result + + self.logger.info( + f"Built a lookup index for {len(self.existing_evaluations)} LLM evaluation results" + ) + + except Exception as e: + self.logger.warning( + f"Error loading existing LLM evaluation results: {e}; starting from scratch" + ) + self.evaluation_results = [] + self.existing_evaluations = {} + else: + self.logger.info( + "No existing LLM evaluation results file found; starting from scratch" + ) + + def is_evaluation_completed(self, doc_id: str, question: str, method: str) -> bool: + """Check whether the specified evaluation has already been completed.""" + key = (doc_id, question, method) + if key in self.existing_evaluations: + result = self.existing_evaluations[key] + # Check whether the evaluation completed successfully. + if result.get("success") is True and result.get("accuracy") is not None: + return True + return False + + def get_existing_evaluation(self, doc_id: str, question: str, method: str): + """Return an existing evaluation result if available.""" + key = (doc_id, question, method) + return self.existing_evaluations.get(key) + + def update_evaluation_results_list(self, new_results: List[Dict[str, Any]]): + """Update the evaluation results list by replacing matching old entries.""" + # Remove existing duplicate evaluations before appending new ones. + existing_keys = set() + for result in new_results: + key = (result["doc_id"], result["question"], result.get("method", "")) + existing_keys.add(key) + + # Remove old duplicate results. + self.evaluation_results = [ + r + for r in self.evaluation_results + if (r["doc_id"], r["question"], r.get("method", "")) not in existing_keys + ] + + # Append new results. + self.evaluation_results.extend(new_results) + + self.logger.debug( + f"Updated LLM evaluation results; current total count: {len(self.evaluation_results)}" + ) + + def persist_single_evaluation(self, evaluation_result: Dict[str, Any]): + """Persist a single evaluation immediately for fine-grained resume support.""" + self.update_evaluation_results_list([evaluation_result]) + self.save_evaluation_results() + + async def evaluate_qa_files( + self, + qa_files: List[str], + evaluation_type: str = "comprehensive", + max_evaluations: Optional[int] = None, + ) -> None: + """Evaluate a group of QA result files containing question, answer, and correct_answer fields.""" + start_time = time.time() + self.logger.info(f"Starting QA file evaluation for {len(qa_files)} files") + + skipped_count = 0 + completed_count = 0 + new_eval_count = 0 + + # Count existing evaluations. + if self.existing_evaluations: + existing_count = len(self.existing_evaluations) + self.logger.info( + f"Found {existing_count} existing LLM evaluations; duplicate evaluations will be skipped" + ) + + total_items = 0 + + for file_idx, qa_file in enumerate(qa_files, 1): + self.logger.info( + f"\n[{file_idx}/{len(qa_files)}] Processing QA file: {qa_file}" + ) + try: + with open(qa_file, "r", encoding="utf-8") as f: + qa_items = json.load(f) + except Exception as e: + self.logger.warning(f"Failed to load QA file: {qa_file}, error: {e}") + continue + + if not isinstance(qa_items, list): + self.logger.warning( + f"Invalid QA file format (expected an array), skipped: {qa_file}" + ) + continue + + # Limit the number of evaluations per file if requested. + if max_evaluations: + qa_items = qa_items[:max_evaluations] + + total_items += len(qa_items) + + # Infer doc_id from a PDF in the same directory, or fall back to the directory name. + qa_dir = os.path.dirname(qa_file) + try: + dir_entries = os.listdir(qa_dir) + except Exception: + dir_entries = [] + pdf_names = [name for name in dir_entries if name.lower().endswith(".pdf")] + doc_id_base = pdf_names[0] if pdf_names else os.path.basename(qa_dir) + + for i, item in enumerate(qa_items, 1): + question = str(item.get("question", "")).strip() + expected_answer = str(item.get("correct_answer", "")).strip() + generated_answer = str(item.get("answer", "")).strip() + + if not question: + skipped_count += 1 + self.logger.info(" Skipping item with a missing question") + continue + + method = "qa" + doc_id = doc_id_base + + # Check whether this evaluation already exists. + if self.is_evaluation_completed(doc_id, question, method): + completed_count += 1 + self.logger.info(" Skipping completed QA evaluation") + continue + + eval_result = await self.evaluate_single_answer( + question=question, + expected_answer=expected_answer, + generated_answer=generated_answer, + evidence_pages="", + evidence_sources="", + doc_id=doc_id, + evaluation_type=evaluation_type, + ) + + eval_result["method"] = method + eval_result["source_file"] = qa_file + + # Update the index for deduplication. + key = (doc_id, question, method) + self.existing_evaluations[key] = eval_result + self.persist_single_evaluation(eval_result) + new_eval_count += 1 + self.logger.info( + f" Saved current question evaluation result [{file_idx}/{len(qa_files)} file, {i}/{len(qa_items)} question]" + ) + + total_time = time.time() - start_time + + # Save once more so the report is generated from the latest results. + self.save_evaluation_results() + + # Log summary statistics. + if skipped_count > 0: + self.logger.info(f"Skipped {skipped_count} invalid QA items") + if completed_count > 0: + self.logger.info(f"Skipped {completed_count} completed evaluations") + self.logger.info(f"Completed {new_eval_count} new evaluations") + + # Generate the evaluation report. + self.generate_evaluation_report(total_time) + + async def evaluate_qa_directory( + self, + qa_data_dir: str, + evaluation_type: str = "comprehensive", + max_evaluations: Optional[int] = None, + ) -> None: + """Scan and evaluate all `qa_results_naive_mm*.json` files in a directory.""" + self.logger.info(f"Starting QA directory scan: {qa_data_dir}") + base_path = Path(qa_data_dir) + if not base_path.exists(): + self.logger.error(f"QA directory does not exist: {qa_data_dir}") + return + + qa_files: List[str] = [] + # Support `qa_results_naive_mm.json` as well. + patterns = ["**/qa_results_naive_mm.json", "**/qa_results_naive_mm*.json"] + for pattern in patterns: + for p in base_path.glob(pattern): + if p.is_file(): + qa_files.append(str(p)) + + # Deduplicate and sort for stable output. + qa_files = sorted(list(set(qa_files))) + + if not qa_files: + self.logger.warning( + "No QA result files found matching qa_results_naive_mm*.json" + ) + return + + self.logger.info(f"Discovered {len(qa_files)} QA result files") + await self.evaluate_qa_files(qa_files, evaluation_type, max_evaluations) + + +class EvaluationConfig: + def __init__(self, args): + # Support multiple result files. + if hasattr(args, "rag_results_files") and args.rag_results_files: + self.rag_results_files = args.rag_results_files + self.rag_results_file = None # Backward compatibility. + else: + self.rag_results_file = args.rag_results_file + self.rag_results_files = ( + [args.rag_results_file] if args.rag_results_file else [] + ) + + self.output_dir = args.output_dir + self.api_key = args.api_key + self.base_url = args.base_url + self.evaluation_type = args.evaluation_type + self.max_evaluations = args.max_evaluations + self.qa_data_dir = getattr(args, "qa_data_dir", None) + self.request_timeout = 15 + self.max_retries = 3 + + +def main(): + import argparse + + parser = argparse.ArgumentParser(description="LLM answer evaluator") + + # Support multiple result-file inputs (RAG/VLM), which can coexist with the QA directory option. + group = parser.add_mutually_exclusive_group(required=False) + group.add_argument( + "--rag-results-file", + "-r", + help="Path to a single RAG evaluation results file (JSON)", + ) + group.add_argument( + "--rag-results-files", + "-rf", + nargs="+", + help="Paths to multiple result files (supports mixed RAG and VLM JSON files)", + ) + parser.add_argument( + "--qa-data-dir", + "-qd", + default=str((Path(__file__).parent / "data").resolve()), + help="Directory containing qa_result*.json files (scanned recursively; default: code/docbench/data)", + ) + + parser.add_argument( + "--output-dir", + "-o", + default="./evaluation_results_naive_mm", + help="Output directory for evaluation results (default: ./llm_evaluation_results)", + ) + parser.add_argument( + "--api-key", + default=os.getenv("LLM_BINDING_API_KEY"), + help="OpenAI API key (defaults to the LLM_BINDING_API_KEY environment variable)", + ) + parser.add_argument( + "--base-url", + default=os.getenv("LLM_BINDING_HOST"), + help="Base API URL (optional)", + ) + parser.add_argument( + "--evaluation-type", + "-t", + choices=["accuracy_only", "comprehensive"], + default="comprehensive", + help="Evaluation type: accuracy_only or comprehensive (default: comprehensive)", + ) + parser.add_argument( + "--max-evaluations", + "-m", + type=int, + help="Maximum number of evaluations to run (useful for testing; evaluates all results if omitted)", + ) + + args = parser.parse_args() + + # Check the API key. + if not args.api_key: + print("Error: an OpenAI API key is required") + print("Set the LLM_BINDING_API_KEY environment variable or provide --api-key") + return + + # Check result files. + files_to_check = [] + if args.rag_results_file: + files_to_check = [args.rag_results_file] + elif args.rag_results_files: + files_to_check = args.rag_results_files + + for file_path in files_to_check: + if not os.path.exists(file_path): + print(f"Error: result file does not exist: {file_path}") + return + + # Create the configuration. + config = EvaluationConfig(args) + + # Create the evaluator. + evaluator = LLMAnswerEvaluator(config) + + # Start evaluation. + print("LLM Answer Evaluator") + print("=" * 50) + + if config.rag_results_files: + if len(config.rag_results_files) == 1: + print(f"RAG/VLM results file: {config.rag_results_files[0]}") + else: + print(f"RAG/VLM results files: {config.rag_results_files}") + else: + print(f"QA directory: {config.qa_data_dir}") + + print(f"Output directory: {config.output_dir}") + print(f"Evaluation type: {config.evaluation_type}") + if config.max_evaluations: + print(f"Maximum evaluations: {config.max_evaluations}") + print("=" * 50) + print("\nStarting evaluation...") + + # Run the evaluation. + try: + if config.rag_results_files: + if len(config.rag_results_files) > 1: + # Multi-file evaluation. + asyncio.run( + evaluator.evaluate_multiple_results( + config.rag_results_files, + config.evaluation_type, + config.max_evaluations, + ) + ) + else: + # Single-file evaluation for backward compatibility. + asyncio.run( + evaluator.evaluate_rag_results( + config.rag_results_files[0], + config.evaluation_type, + config.max_evaluations, + ) + ) + else: + # Evaluate QA files discovered by directory scan. + asyncio.run( + evaluator.evaluate_qa_directory( + config.qa_data_dir, config.evaluation_type, config.max_evaluations + ) + ) + except KeyboardInterrupt: + print("\nInterrupted by user, exiting") + except Exception as e: + print(f"\nAn error occurred during evaluation: {e}") + import traceback + + traceback.print_exc() + + +if __name__ == "__main__": + main() diff --git a/reproduce/query.py b/reproduce/query.py new file mode 100644 index 0000000..a602609 --- /dev/null +++ b/reproduce/query.py @@ -0,0 +1,337 @@ +#!/usr/bin/env python +""" +Example script demonstrating the integration of MinerU parser with RAGAnything + +This example shows how to: +1. Process documents with RAGAnything using MinerU parser +2. Perform pure text queries using aquery() method +3. Perform multimodal queries with specific multimodal content using aquery_with_multimodal() method +4. Handle different types of multimodal content (tables, equations) in queries +""" + +import os +import argparse +import asyncio +import logging +import logging.config +from pathlib import Path +from lightrag import LightRAG + +# Add project root directory to Python path +import sys + +sys.path.append(str(Path(__file__).parent.parent)) + +from lightrag.llm.openai import openai_complete_if_cache, openai_embed +from lightrag.utils import EmbeddingFunc, logger, set_verbose_debug +from raganything import RAGAnything, RAGAnythingConfig + +from dotenv import load_dotenv + +load_dotenv(dotenv_path=".env", override=False) + + +def configure_logging(): + """Configure logging for the application""" + # Get log directory path from environment variable or use current directory + log_dir = os.getenv("LOG_DIR", os.getcwd()) + log_file_path = os.path.abspath(os.path.join(log_dir, "raganything_example_qa.log")) + + print(f"\nRAGAnything example log file: {log_file_path}\n") + os.makedirs(os.path.dirname(log_dir), exist_ok=True) + + # Get log file max size and backup count from environment variables + log_max_bytes = int(os.getenv("LOG_MAX_BYTES", 10485760)) # Default 10MB + log_backup_count = int(os.getenv("LOG_BACKUP_COUNT", 5)) # Default 5 backups + + logging.config.dictConfig( + { + "version": 1, + "disable_existing_loggers": False, + "formatters": { + "default": { + "format": "%(levelname)s: %(message)s", + }, + "detailed": { + "format": "%(asctime)s - %(name)s - %(levelname)s - %(message)s", + }, + }, + "handlers": { + "console": { + "formatter": "default", + "class": "logging.StreamHandler", + "stream": "ext://sys.stderr", + }, + "file": { + "formatter": "detailed", + "class": "logging.handlers.RotatingFileHandler", + "filename": log_file_path, + "maxBytes": log_max_bytes, + "backupCount": log_backup_count, + "encoding": "utf-8", + }, + }, + "loggers": { + "lightrag": { + "handlers": ["console", "file"], + "level": "INFO", + "propagate": False, + }, + }, + } + ) + + # Set the logger level to INFO + logger.setLevel(logging.INFO) + # Enable verbose debug if needed + set_verbose_debug(os.getenv("VERBOSE", "false").lower() == "true") + + +async def process_with_rag( + file_path: str, + output_dir: str, + api_key: str, + base_url: str = None, + working_dir: str = None, + parser: str = None, +): + """ + Process document with RAGAnything + + Args: + file_path: Path to the document + output_dir: Output directory for RAG results + api_key: OpenAI API key + base_url: Optional base URL for API + working_dir: Working directory for RAG storage + """ + try: + # Create RAGAnything configuration + config = RAGAnythingConfig( + working_dir=working_dir or "./rag_storage", + parser=parser, # Parser selection: mineru or docling + parse_method="auto", # Parse method: auto, ocr, or txt + enable_image_processing=True, + enable_table_processing=True, + enable_equation_processing=True, + ) + + # Define LLM model function + def llm_model_func(prompt, system_prompt=None, history_messages=[], **kwargs): + return openai_complete_if_cache( + "gpt-4o-mini", + prompt, + system_prompt=system_prompt, + history_messages=history_messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + + # Define vision model function for image processing + def vision_model_func( + prompt, + system_prompt=None, + history_messages=[], + image_data=None, + messages=None, + **kwargs, + ): + # If messages format is provided (for multimodal VLM enhanced query), use it directly + if messages: + return openai_complete_if_cache( + "gpt-4o-mini", + "", + system_prompt=None, + history_messages=[], + messages=messages, + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Traditional single image format + elif image_data: + return openai_complete_if_cache( + "gpt-4o-mini", + "", + system_prompt=None, + history_messages=[], + messages=[ + {"role": "system", "content": system_prompt} + if system_prompt + else None, + { + "role": "user", + "content": [ + {"type": "text", "text": prompt}, + { + "type": "image_url", + "image_url": { + "url": f"data:image/jpeg;base64,{image_data}" + }, + }, + ], + } + if image_data + else {"role": "user", "content": prompt}, + ], + api_key=api_key, + base_url=base_url, + **kwargs, + ) + # Pure text format + else: + return llm_model_func(prompt, system_prompt, history_messages, **kwargs) + + # Define embedding function + embedding_func = EmbeddingFunc( + embedding_dim=3072, + max_token_size=8192, + func=lambda texts: openai_embed( + texts, + model="text-embedding-3-large", + api_key=api_key, + base_url=base_url, + ), + ) + from functools import partial + from lightrag.rerank import cohere_rerank + + rerank_model_func = partial( + cohere_rerank, + model=os.getenv("RERANK_MODEL"), + api_key=os.getenv("RERANK_BINDING_API_KEY"), + base_url=os.getenv("RERANK_BINDING_HOST"), + ) + lightrag = LightRAG( + working_dir=working_dir, + llm_model_func=llm_model_func, + embedding_func=embedding_func, + enable_llm_cache=False, + rerank_model_func=rerank_model_func, + ) + await lightrag.initialize_storages() + + # Initialize RAGAnything with new dataclass structure + rag = RAGAnything( + config=config, + lightrag=lightrag, + llm_model_func=llm_model_func, + vision_model_func=vision_model_func, + embedding_func=embedding_func, + ) + + import json + + folder_name = os.path.basename(os.path.dirname(file_path)) + qa_file_path = os.path.join( + os.path.dirname(file_path), f"{folder_name}_qa.jsonl" + ) + queries = [] + if os.path.exists(qa_file_path): + with open(qa_file_path, "r", encoding="utf-8") as f: + for line in f: + if line.strip(): + qa_data = json.loads(line) + queries.append( + { + "question": qa_data["question"], + "answer": qa_data.get("answer", ""), + } + ) + else: + logger.warning(f"QA file not found: {qa_file_path}") + return + + results = [] + for query in queries: + result = await rag.aquery( + query["question"], + mode="mix", + response_type="One Sentence", + vlm_enhanced=False, + ) + results.append( + { + "question": query["question"], + "answer": result, + "correct_answer": query["answer"], + } + ) + logger.info(f"Query: {query['question']}") + logger.info(f"Answer: {result}") + logger.info(f"Correct Answer: {query['answer']}") + + output_file = os.path.join(os.path.dirname(file_path), "qa_results_mix_mm.json") + with open(output_file, "w", encoding="utf-8") as f: + json.dump(results, f, ensure_ascii=False, indent=2) + logger.info(f"Results saved to {output_file}") + + except Exception as e: + logger.error(f"Error processing with RAG: {str(e)}") + import traceback + + logger.error(traceback.format_exc()) + + +def main(): + """Main function to run the example""" + parser = argparse.ArgumentParser(description="MinerU RAG Example") + parser.add_argument("file_path", help="Path to the document to process") + parser.add_argument( + "--working_dir", "-w", default="./rag_storage", help="Working directory path" + ) + parser.add_argument( + "--output", "-o", default="./output", help="Output directory path" + ) + parser.add_argument( + "--api-key", + default=os.getenv("LLM_BINDING_API_KEY"), + help="OpenAI API key (defaults to LLM_BINDING_API_KEY env var)", + ) + parser.add_argument( + "--base-url", + default=os.getenv("LLM_BINDING_HOST"), + help="Optional base URL for API", + ) + parser.add_argument( + "--parser", + default=os.getenv("PARSER", "mineru"), + help="Optional base URL for API", + ) + + args = parser.parse_args() + + # Check if API key is provided + if not args.api_key: + logger.error("Error: OpenAI API key is required") + logger.error("Set api key environment variable or use --api-key option") + return + + # Create output directory if specified + if args.output: + os.makedirs(args.output, exist_ok=True) + + # Process with RAG + asyncio.run( + process_with_rag( + args.file_path, + args.output, + args.api_key, + args.base_url, + args.working_dir, + args.parser, + ) + ) + + +if __name__ == "__main__": + # Configure logging first + configure_logging() + + print("RAGAnything Example") + print("=" * 30) + print("Processing document with multimodal RAG pipeline") + print("=" * 30) + + main() diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..e220b90 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,16 @@ +huggingface_hub +# LightRAG packages +lightrag-hku +# MinerU 2.0 packages (replaces magic-pdf) - handles PDF parsing with multiple backends +mineru[core] +# Progress bars for batch processing +tqdm +# Note: Optional dependencies are now defined in setup.py extras_require: +# - [image]: Pillow>=10.0.0 (for BMP, TIFF, GIF, WebP format conversion) +# - [text]: reportlab>=4.0.0 (for TXT, MD to PDF conversion) +# - [paddleocr]: paddleocr + pypdfium2 (for parser='paddleocr' - better OCR for scanned PDFs) +# - [office]: requires LibreOffice (external program, not Python package) +# - [all]: includes all optional dependencies +# +# Install with: pip install raganything[image,text] or pip install raganything[all] +# For best PDF handling: pip install raganything[paddleocr] diff --git a/scripts/create_tiktoken_cache.py b/scripts/create_tiktoken_cache.py new file mode 100644 index 0000000..bbcf079 --- /dev/null +++ b/scripts/create_tiktoken_cache.py @@ -0,0 +1,17 @@ +import tiktoken +import os + +# Define the directory where you want to store the cache +cache_dir = "./tiktoken_cache" +if "TIKTOKEN_CACHE_DIR" not in os.environ: + os.environ["TIKTOKEN_CACHE_DIR"] = cache_dir + +# Create the directory if it doesn't exist +if not os.path.exists(cache_dir): + os.makedirs(cache_dir) + +print("Downloading and caching tiktoken models...") +tiktoken.get_encoding("cl100k_base") +# tiktoken.get_encoding("p50k_base") + +print(f"tiktoken models have been cached in '{cache_dir}'") diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..ae88849 --- /dev/null +++ b/setup.py @@ -0,0 +1,116 @@ +import setuptools +from pathlib import Path + + +# Reading the long description from README.md +def read_long_description(): + try: + return Path("README.md").read_text(encoding="utf-8") + except FileNotFoundError: + return "A description of RAGAnything is currently unavailable." + + +# Retrieving metadata from __init__.py +def retrieve_metadata(): + vars2find = ["__author__", "__version__", "__url__"] + vars2readme = {} + try: + with open("./raganything/__init__.py") as f: + for line in f.readlines(): + for v in vars2find: + if line.startswith(v): + line = ( + line.replace(" ", "") + .replace('"', "") + .replace("'", "") + .strip() + ) + vars2readme[v] = line.split("=")[1] + except FileNotFoundError: + raise FileNotFoundError("Metadata file './raganything/__init__.py' not found.") + + # Checking if all required variables are found + missing_vars = [v for v in vars2find if v not in vars2readme] + if missing_vars: + raise ValueError( + f"Missing required metadata variables in __init__.py: {missing_vars}" + ) + + return vars2readme + + +# Reading dependencies from requirements.txt +def read_requirements(): + deps = [] + try: + with open("./requirements.txt") as f: + deps = [ + line.strip() for line in f if line.strip() and not line.startswith("#") + ] + except FileNotFoundError: + print( + "Warning: 'requirements.txt' not found. No dependencies will be installed." + ) + return deps + + +metadata = retrieve_metadata() +long_description = read_long_description() +requirements = read_requirements() + +# Define extras_require for optional features +extras_require = { + "image": ["Pillow>=10.0.0"], # For image format conversion (BMP, TIFF, GIF, WebP) + "text": ["reportlab>=4.0.0"], # For text file to PDF conversion (TXT, MD) + "office": [], # Office document processing requires LibreOffice (external program) + "paddleocr": [ + "paddleocr>=2.7.0", + "pypdfium2>=4.25.0", + ], # PaddleOCR parser for scanned PDFs + "all": [ + "Pillow>=10.0.0", + "reportlab>=4.0.0", + "paddleocr>=2.7.0", + "pypdfium2>=4.25.0", + "markdown>=3.4.0", + "weasyprint>=60.0", + "pygments>=2.10.0", + ], # All optional features + "markdown": [ + "markdown>=3.4.0", + "weasyprint>=60.0", + "pygments>=2.10.0", + ], # Enhanced markdown conversion +} + +setuptools.setup( + name="raganything", + url=metadata["__url__"], + version=metadata["__version__"], + author=metadata["__author__"], + description="RAGAnything: All-in-One RAG System", + long_description=long_description, + long_description_content_type="text/markdown", + packages=setuptools.find_packages( + exclude=("tests*", "docs*") + ), # Automatically find packages + classifiers=[ + "Development Status :: 4 - Beta", + "Programming Language :: Python :: 3", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", + "Intended Audience :: Developers", + "Topic :: Software Development :: Libraries :: Python Modules", + ], + python_requires=">=3.9", + install_requires=requirements, + extras_require=extras_require, + include_package_data=True, # Includes non-code files from MANIFEST.in + project_urls={ # Additional project metadata + "Documentation": metadata.get("__url__", ""), + "Source": metadata.get("__url__", ""), + "Tracker": f"{metadata.get('__url__', '')}/issues" + if metadata.get("__url__") + else "", + }, +) diff --git a/tests/testbatch_incremental.py b/tests/testbatch_incremental.py new file mode 100644 index 0000000..36d518e --- /dev/null +++ b/tests/testbatch_incremental.py @@ -0,0 +1,221 @@ +import importlib.util +import sys +import types +from pathlib import Path + + +class FakeParser: + OFFICE_FORMATS = {".docx"} + IMAGE_FORMATS = {".png"} + TEXT_FORMATS = {".txt", ".md"} + + def __init__(self): + self.processed_files = [] + + def check_installation(self): + return True + + def parse_document(self, file_path, output_dir, method="auto", **kwargs): + self.processed_files.append(file_path) + Path(output_dir).mkdir(parents=True, exist_ok=True) + return [{"type": "text", "text": Path(file_path).read_text()}] + + +def _make_batch_parser(monkeypatch): + fake_parser = FakeParser() + repo_root = Path(__file__).parents[1] + + package = types.ModuleType("raganything") + package.__path__ = [str(repo_root / "raganything")] + parser_module = types.ModuleType("raganything.parser") + parser_module.get_parser = lambda parser_type: fake_parser + + monkeypatch.setitem(sys.modules, "raganything", package) + monkeypatch.setitem(sys.modules, "raganything.parser", parser_module) + sys.modules.pop("raganything.batch_parser", None) + + spec = importlib.util.spec_from_file_location( + "raganything.batch_parser", + repo_root / "raganything" / "batch_parser.py", + ) + batch_parser_module = importlib.util.module_from_spec(spec) + monkeypatch.setitem(sys.modules, "raganything.batch_parser", batch_parser_module) + spec.loader.exec_module(batch_parser_module) + + batch_parser = batch_parser_module.BatchParser( + parser_type="fake", + max_workers=1, + show_progress=False, + skip_installation_check=True, + ) + return batch_parser, fake_parser + + +def test_incremental_batch_skips_unchanged_files(monkeypatch, tmp_path): + batch_parser, fake_parser = _make_batch_parser(monkeypatch) + docs_dir = tmp_path / "docs" + docs_dir.mkdir() + first_doc = docs_dir / "a.txt" + second_doc = docs_dir / "b.txt" + first_doc.write_text("alpha", encoding="utf-8") + second_doc.write_text("beta", encoding="utf-8") + output_dir = tmp_path / "out" + + first_result = batch_parser.process_batch( + [str(docs_dir)], + str(output_dir), + incremental=True, + ) + + assert set(first_result.successful_files) == {str(first_doc), str(second_doc)} + assert first_result.skipped_files == [] + assert set(fake_parser.processed_files) == {str(first_doc), str(second_doc)} + + fake_parser.processed_files.clear() + second_result = batch_parser.process_batch( + [str(docs_dir)], + str(output_dir), + incremental=True, + ) + + assert second_result.successful_files == [] + assert set(second_result.skipped_files) == {str(first_doc), str(second_doc)} + assert second_result.success_rate == 100.0 + assert fake_parser.processed_files == [] + + first_doc.write_text("alpha changed", encoding="utf-8") + third_result = batch_parser.process_batch( + [str(docs_dir)], + str(output_dir), + incremental=True, + ) + + assert third_result.successful_files == [str(first_doc)] + assert third_result.skipped_files == [str(second_doc)] + assert fake_parser.processed_files == [str(first_doc)] + + +def test_incremental_dry_run_reports_changed_and_skipped_files(monkeypatch, tmp_path): + batch_parser, fake_parser = _make_batch_parser(monkeypatch) + docs_dir = tmp_path / "docs" + docs_dir.mkdir() + first_doc = docs_dir / "a.txt" + second_doc = docs_dir / "b.txt" + first_doc.write_text("alpha", encoding="utf-8") + second_doc.write_text("beta", encoding="utf-8") + output_dir = tmp_path / "out" + + batch_parser.process_batch([str(docs_dir)], str(output_dir), incremental=True) + fake_parser.processed_files.clear() + + first_doc.write_text("alpha changed", encoding="utf-8") + dry_run_result = batch_parser.process_batch( + [str(docs_dir)], + str(output_dir), + incremental=True, + dry_run=True, + ) + + assert dry_run_result.dry_run is True + assert dry_run_result.successful_files == [str(first_doc)] + assert dry_run_result.skipped_files == [str(second_doc)] + assert fake_parser.processed_files == [] + + +def _seed_two_docs(tmp_path): + docs_dir = tmp_path / "docs" + docs_dir.mkdir() + first_doc = docs_dir / "a.txt" + second_doc = docs_dir / "b.txt" + first_doc.write_text("alpha", encoding="utf-8") + second_doc.write_text("beta", encoding="utf-8") + return docs_dir, first_doc, second_doc + + +def test_incremental_skip_does_not_rehash_unchanged_files(monkeypatch, tmp_path): + batch_parser, _ = _make_batch_parser(monkeypatch) + docs_dir, first_doc, second_doc = _seed_two_docs(tmp_path) + output_dir = tmp_path / "out" + + batch_parser.process_batch([str(docs_dir)], str(output_dir), incremental=True) + + # Second run: both files are unchanged, so the size+mtime fast path must + # skip them without hashing a single byte. + hashed = [] + real_md5 = type(batch_parser)._compute_md5 + + def counting_md5(file_path): + hashed.append(file_path) + return real_md5(file_path) + + monkeypatch.setattr(type(batch_parser), "_compute_md5", staticmethod(counting_md5)) + + result = batch_parser.process_batch( + [str(docs_dir)], str(output_dir), incremental=True + ) + + assert set(result.skipped_files) == {str(first_doc), str(second_doc)} + assert hashed == [] + + +def test_incremental_ignores_corrupt_manifest(monkeypatch, tmp_path): + batch_parser, fake_parser = _make_batch_parser(monkeypatch) + docs_dir, first_doc, second_doc = _seed_two_docs(tmp_path) + output_dir = tmp_path / "out" + + batch_parser.process_batch([str(docs_dir)], str(output_dir), incremental=True) + + manifest_path = output_dir / ".raganything_batch_manifest.json" + manifest_path.write_text("this is not valid json{", encoding="utf-8") + fake_parser.processed_files.clear() + + result = batch_parser.process_batch( + [str(docs_dir)], str(output_dir), incremental=True + ) + + # A corrupt manifest must be ignored and every file reprocessed. + assert set(result.successful_files) == {str(first_doc), str(second_doc)} + assert result.skipped_files == [] + + +def test_incremental_tolerates_unreadable_file(monkeypatch, tmp_path): + batch_parser, fake_parser = _make_batch_parser(monkeypatch) + docs_dir, first_doc, second_doc = _seed_two_docs(tmp_path) + output_dir = tmp_path / "out" + + batch_parser.process_batch([str(docs_dir)], str(output_dir), incremental=True) + fake_parser.processed_files.clear() + + # Simulate one file becoming unreadable between discovery and the scan. + real_metadata = type(batch_parser)._file_metadata + + def flaky_metadata(file_path): + if file_path == str(first_doc): + raise OSError("simulated unreadable file") + return real_metadata(file_path) + + monkeypatch.setattr( + type(batch_parser), "_file_metadata", staticmethod(flaky_metadata) + ) + + # Must not raise; the unreadable file is treated as changed (queued for + # processing) while the other unchanged file is still skipped. + result = batch_parser.process_batch( + [str(docs_dir)], str(output_dir), incremental=True + ) + + assert str(first_doc) in (result.successful_files + result.failed_files) + assert result.skipped_files == [str(second_doc)] + + +def test_incremental_dry_run_does_not_write_manifest(monkeypatch, tmp_path): + batch_parser, _ = _make_batch_parser(monkeypatch) + docs_dir, _first_doc, _second_doc = _seed_two_docs(tmp_path) + output_dir = tmp_path / "out" + + batch_parser.process_batch( + [str(docs_dir)], str(output_dir), incremental=True, dry_run=True + ) + + manifest_path = output_dir / ".raganything_batch_manifest.json" + assert not manifest_path.exists() diff --git a/tests/testpaddleocr_parser.py b/tests/testpaddleocr_parser.py new file mode 100644 index 0000000..5314f81 --- /dev/null +++ b/tests/testpaddleocr_parser.py @@ -0,0 +1,164 @@ +import importlib +import sys + +import pytest + +from raganything.parser import PaddleOCRParser, SUPPORTED_PARSERS, get_parser + + +def test_supported_parsers_include_paddleocr(): + assert "paddleocr" in SUPPORTED_PARSERS + + +def test_get_parser_returns_paddleocr_parser(): + parser = get_parser("paddleocr") + assert isinstance(parser, PaddleOCRParser) + + +def test_get_parser_rejects_unknown_parser(): + with pytest.raises(ValueError, match="Unsupported parser type"): + get_parser("unknown-parser") + + +def test_parser_module_import_does_not_import_paddleocr(): + sys.modules.pop("paddleocr", None) + sys.modules.pop("raganything.parser", None) + importlib.import_module("raganything.parser") + assert "paddleocr" not in sys.modules + + +def test_check_installation_false_when_dependency_missing(monkeypatch): + parser = PaddleOCRParser() + + def missing_dependency(): + raise ImportError("missing paddleocr") + + monkeypatch.setattr(parser, "_require_paddleocr", missing_dependency) + assert parser.check_installation() is False + + +def test_check_installation_true_when_pdf_renderer_missing(monkeypatch): + parser = PaddleOCRParser() + + monkeypatch.setattr(parser, "_require_paddleocr", lambda: object()) + + import builtins + + real_import = builtins.__import__ + + def fake_import(name, globals=None, locals=None, fromlist=(), level=0): + if name == "pypdfium2": + raise ImportError("missing pypdfium2") + return real_import(name, globals, locals, fromlist, level) + + monkeypatch.setattr(builtins, "__import__", fake_import) + + assert parser.check_installation() is True + + +def test_parse_pdf_raises_import_error_when_pdf_renderer_missing(monkeypatch, tmp_path): + parser = PaddleOCRParser() + fake_pdf = tmp_path / "sample.pdf" + fake_pdf.write_bytes(b"%PDF-1.4\n") + + monkeypatch.setattr(parser, "_require_paddleocr", lambda: object()) + + import builtins + + real_import = builtins.__import__ + + def fake_import(name, globals=None, locals=None, fromlist=(), level=0): + if name == "pypdfium2": + raise ImportError("missing pypdfium2") + return real_import(name, globals, locals, fromlist, level) + + monkeypatch.setattr(builtins, "__import__", fake_import) + + with pytest.raises(ImportError, match="pypdfium2"): + parser.parse_pdf(fake_pdf) + + +def test_parse_image_raises_import_error_with_install_hint(monkeypatch, tmp_path): + parser = PaddleOCRParser() + fake_image = tmp_path / "sample.png" + fake_image.write_bytes(b"not-a-real-image") + + def missing_dependency(): + raise ImportError("missing paddleocr") + + monkeypatch.setattr(parser, "_require_paddleocr", missing_dependency) + + with pytest.raises(ImportError, match="paddleocr"): + parser.parse_image(fake_image) + + +def test_parse_image_returns_content_list_schema(monkeypatch, tmp_path): + parser = PaddleOCRParser() + fake_image = tmp_path / "sample.png" + fake_image.write_bytes(b"image-bytes") + + class FakeOCR: + def ocr(self, input_data, cls=True): + return [ + [ + [[[0, 0], [1, 0], [1, 1], [0, 1]], ("First line", 0.99)], + [[[0, 2], [1, 2], [1, 3], [0, 3]], ("Second line", 0.95)], + ] + ] + + monkeypatch.setattr(parser, "_get_ocr", lambda lang=None: FakeOCR()) + + content_list = parser.parse_image(fake_image, page_idx=7) + + assert content_list == [ + {"type": "text", "text": "First line", "page_idx": 7}, + {"type": "text", "text": "Second line", "page_idx": 7}, + ] + + +def test_parse_image_preserves_repeated_ocr_lines(monkeypatch, tmp_path): + parser = PaddleOCRParser() + fake_image = tmp_path / "sample.png" + fake_image.write_bytes(b"image-bytes") + + class FakeOCR: + def ocr(self, input_data, cls=True): + return [ + [ + [[[0, 0], [1, 0], [1, 1], [0, 1]], ("Same", 0.99)], + [[[0, 2], [1, 2], [1, 3], [0, 3]], ("Same", 0.95)], + ] + ] + + monkeypatch.setattr(parser, "_get_ocr", lambda lang=None: FakeOCR()) + + content_list = parser.parse_image(fake_image, page_idx=1) + + assert content_list == [ + {"type": "text", "text": "Same", "page_idx": 1}, + {"type": "text", "text": "Same", "page_idx": 1}, + ] + + +def test_parse_pdf_assigns_page_index(monkeypatch, tmp_path): + parser = PaddleOCRParser() + fake_pdf = tmp_path / "sample.pdf" + fake_pdf.write_bytes(b"%PDF-1.4\n") + + monkeypatch.setattr( + parser, + "_extract_pdf_page_inputs", + lambda pdf_path: [(0, "page0"), (1, "page1")], + ) + monkeypatch.setattr( + parser, + "_ocr_rendered_page", + lambda rendered_page, lang=None, cls_enabled=True: [f"{rendered_page}-text"], + ) + + content_list = parser.parse_pdf(fake_pdf) + + assert content_list == [ + {"type": "text", "text": "page0-text", "page_idx": 0}, + {"type": "text", "text": "page1-text", "page_idx": 1}, + ] diff --git a/tests/testparser_kwargs.py b/tests/testparser_kwargs.py new file mode 100644 index 0000000..002d567 --- /dev/null +++ b/tests/testparser_kwargs.py @@ -0,0 +1,362 @@ +#!/usr/bin/env python3 +""" +Parser Validation Test Script for RAG-Anything (Pytest) + +This script validates the environment variable propagation and +argument validation logic for both MineruParser and DoclingParser. + +For MineruParser, env={...} is still propagated to the subprocess and is +asserted as such. For DoclingParser the implementation now uses the Docling +Python API rather than the `docling` CLI; the legacy env kwarg is therefore +accepted for backward compatibility but ignored, and the tests below +exercise the Python-API path through DocumentConverter mocks instead of +subprocess mocks. + +Requirements: +- RAG-Anything package +- pytest + +Usage: + pytest tests/testparser_kwargs.py +""" + +import pytest +from unittest.mock import patch, MagicMock +import os +import re +from raganything.parser import MineruParser, DoclingParser, Parser +import raganything.parser as parser_module +from pathlib import Path + + +@pytest.fixture +def mineru_parser(): + return MineruParser() + + +@pytest.fixture +def docling_parser(): + return DoclingParser() + + +@pytest.fixture +def dummy_path(): + return "dummy.pdf" + + +def _mock_docling_converter() -> MagicMock: + """Build a DocumentConverter mock with the minimum API surface used by + `DoclingParser._run_docling_python`.""" + fake_doc = MagicMock() + fake_doc.export_to_dict.return_value = {"body": {}} + fake_doc.export_to_markdown.return_value = "" + converter = MagicMock() + converter.convert.return_value = MagicMock(document=fake_doc) + return converter + + +@patch("subprocess.Popen") +@patch("pathlib.Path.exists") +@patch("pathlib.Path.mkdir") +def test_mineru_env_propagation( + mock_mkdir, mock_exists, mock_popen, mineru_parser, dummy_path +): + mock_exists.return_value = True + mock_process = MagicMock() + mock_process.poll.return_value = 0 + mock_process.wait.return_value = 0 + mock_process.stdout.readline.return_value = "" + mock_process.stderr.readline.return_value = "" + mock_popen.return_value = mock_process + + custom_env = {"MY_VAR": "test_value"} + + # Test env propagation + try: + mineru_parser._run_mineru_command(dummy_path, "out", env=custom_env) + except Exception: + pass + + args, kwargs = mock_popen.call_args + assert "env" in kwargs + assert kwargs["env"]["MY_VAR"] == "test_value" + assert kwargs["env"]["PATH"] == os.environ["PATH"] + + +@patch.object(DoclingParser, "_get_converter") +def test_docling_env_accepted_but_ignored( + mock_get_converter, docling_parser, dummy_path, tmp_path +): + """Docling now ignores `env={...}`: the call must succeed without raising + and the underlying DocumentConverter must still be invoked.""" + mock_get_converter.return_value = _mock_docling_converter() + + custom_env = {"DOCLING_VAR": "docling_value"} + docling_parser._run_docling_python( + input_path=dummy_path, + output_dir=tmp_path, + file_stem="stem", + env=custom_env, + ) + + # The Python-API path was used (no subprocess), env was silently dropped. + mock_get_converter.assert_called_once() + converter = mock_get_converter.return_value + converter.convert.assert_called_once_with(str(dummy_path)) + + +def test_mineru_unknown_kwargs(mineru_parser, dummy_path): + # Mineru should fail fast on unknown kwargs + with pytest.raises(TypeError) as excinfo: + mineru_parser._run_mineru_command(dummy_path, "out", unknown_arg="fail") + assert "unexpected keyword argument(s): unknown_arg" in str(excinfo.value) + + +@patch.object(DoclingParser, "_get_converter") +def test_docling_unknown_kwargs( + mock_get_converter, docling_parser, dummy_path, tmp_path +): + """Docling should accept unknown kwargs without raising — they are + forwarded to `_get_converter` and silently ignored if unrecognized.""" + mock_get_converter.return_value = _mock_docling_converter() + + docling_parser._run_docling_python( + input_path=dummy_path, + output_dir=tmp_path, + file_stem="stem", + unknown_arg="allow", + ) + mock_get_converter.assert_called_once() + + +def test_invalid_env_type(mineru_parser, docling_parser, dummy_path, tmp_path): + # Test non-dict env + with pytest.raises(TypeError, match="env must be a dictionary"): + mineru_parser._run_mineru_command(dummy_path, "out", env=["not", "a", "dict"]) + + # Validation happens before any converter call, so no mocking needed. + with pytest.raises(TypeError, match="env must be a dictionary"): + docling_parser._run_docling_python( + input_path=dummy_path, + output_dir=tmp_path, + file_stem="stem", + env="string", + ) + + +def test_invalid_env_contents(mineru_parser, docling_parser, dummy_path, tmp_path): + # Test non-string keys/values + with pytest.raises(TypeError, match="env keys and values must be strings"): + mineru_parser._run_mineru_command(dummy_path, "out", env={1: "string_val"}) + + with pytest.raises(TypeError, match="env keys and values must be strings"): + docling_parser._run_docling_python( + input_path=dummy_path, + output_dir=tmp_path, + file_stem="stem", + env={"key": 123}, + ) + + +def test_mineru_windows_unsafe_pdf_uses_safe_paths( + monkeypatch, mineru_parser, tmp_path +): + monkeypatch.setattr(parser_module, "_IS_WINDOWS", True) + source_dir = tmp_path / "docs" + source_dir.mkdir() + pdf_path = source_dir / "sample-测试 .pdf" + pdf_path.write_bytes(b"%PDF-1.4\n") + + captured = {} + + def fake_run_mineru_command(**kwargs): + captured.update(kwargs) + assert kwargs["input_path"].exists() + assert kwargs["input_path"].read_bytes() == b"%PDF-1.4\n" + + with ( + patch.object( + MineruParser, "_run_mineru_command", side_effect=fake_run_mineru_command + ), + patch.object(MineruParser, "_read_output_files", return_value=([], "")) as read, + ): + mineru_parser.parse_pdf(pdf_path, output_dir=tmp_path / "out") + + input_path = captured["input_path"] + output_dir = captured["output_dir"] + assert re.fullmatch(r"input_[0-9a-f]{10}\.pdf", input_path.name) + assert re.fullmatch(r"mineru_[0-9a-f]{10}", output_dir.name) + assert input_path.name.isascii() + assert output_dir.name.isascii() + assert read.call_args.args[1] == input_path.stem + + +def test_mineru_windows_safe_pdf_keeps_original_path( + monkeypatch, mineru_parser, tmp_path +): + monkeypatch.setattr(parser_module, "_IS_WINDOWS", True) + pdf_path = tmp_path / "sample.pdf" + pdf_path.write_bytes(b"%PDF-1.4\n") + output_dir = tmp_path / "out" + + captured = {} + + def fake_run_mineru_command(**kwargs): + captured.update(kwargs) + + with ( + patch.object( + MineruParser, "_run_mineru_command", side_effect=fake_run_mineru_command + ), + patch.object(MineruParser, "_read_output_files", return_value=([], "")) as read, + ): + mineru_parser.parse_pdf(pdf_path, output_dir=output_dir) + + assert captured["input_path"] == pdf_path + assert captured["output_dir"] == MineruParser._unique_output_dir( + output_dir, pdf_path + ) + assert read.call_args.args[1] == "sample" + + +def test_mineru_windows_unsafe_png_uses_safe_paths( + monkeypatch, mineru_parser, tmp_path +): + monkeypatch.setattr(parser_module, "_IS_WINDOWS", True) + source_dir = tmp_path / "docs" + source_dir.mkdir() + image_path = source_dir / "sample-测试 .png" + image_path.write_bytes(b"\x89PNG\r\n") + + captured = {} + + def fake_run_mineru_command(**kwargs): + captured.update(kwargs) + assert kwargs["method"] == "ocr" + assert kwargs["input_path"].exists() + assert kwargs["input_path"].read_bytes() == b"\x89PNG\r\n" + + with ( + patch.object( + MineruParser, "_run_mineru_command", side_effect=fake_run_mineru_command + ), + patch.object(MineruParser, "_read_output_files", return_value=([], "")) as read, + ): + mineru_parser.parse_image(image_path, output_dir=tmp_path / "out") + + input_path = captured["input_path"] + output_dir = captured["output_dir"] + assert re.fullmatch(r"input_[0-9a-f]{10}\.png", input_path.name) + assert re.fullmatch(r"mineru_[0-9a-f]{10}", output_dir.name) + assert input_path.name.isascii() + assert output_dir.name.isascii() + assert read.call_args.args[1] == input_path.stem + + +@patch.object(DoclingParser, "_get_converter") +def test_docling_converter_cache_reused( + mock_get_converter, docling_parser, dummy_path, tmp_path +): + """Two parses with the same kwargs must reuse the cached converter.""" + mock_get_converter.return_value = _mock_docling_converter() + + docling_parser._run_docling_python( + input_path=dummy_path, + output_dir=tmp_path, + file_stem="stem1", + ) + docling_parser._run_docling_python( + input_path=dummy_path, + output_dir=tmp_path, + file_stem="stem2", + ) + + # _get_converter was called twice (once per parse), but a real, unmocked + # implementation would build the underlying DocumentConverter only once + # thanks to `_converter_cache`. The cache itself is exercised in + # `test_docling_converter_cache_unit` below. + assert mock_get_converter.call_count == 2 + + +def test_docling_converter_cache_unit(docling_parser): + """Direct unit test for the cache: same kwargs return the same converter + instance, different kwargs build a new one.""" + sentinel_a = object() + sentinel_b = object() + + def fake_build(**kwargs): + # Mimic the real `_get_converter` cache_key: + key = ( + str(kwargs.get("table_mode", "fast")).lower(), + bool(kwargs.get("tables", True)), + bool(kwargs.get("allow_ocr", True)), + kwargs.get("artifacts_path"), + ) + cached = docling_parser._converter_cache.get(key) + if cached is not None: + return cached + new = sentinel_a if key[0] == "fast" else sentinel_b + docling_parser._converter_cache[key] = new + return new + + with patch.object(DoclingParser, "_get_converter", side_effect=fake_build): + a1 = docling_parser._get_converter() + a2 = docling_parser._get_converter() + b = docling_parser._get_converter(table_mode="accurate") + + assert a1 is a2 is sentinel_a + assert b is sentinel_b + assert a1 is not b + + +def test_windows_libreoffice_candidates_include_standard_install_dir( + monkeypatch, tmp_path +): + monkeypatch.setattr(parser_module, "_IS_WINDOWS", True) + monkeypatch.setattr(parser_module.shutil, "which", lambda command: None) + monkeypatch.setenv("PROGRAMFILES", str(tmp_path)) + monkeypatch.delenv("PROGRAMFILES(X86)", raising=False) + + soffice_path = tmp_path / "LibreOffice" / "program" / "soffice.exe" + soffice_path.parent.mkdir(parents=True) + soffice_path.write_text("", encoding="utf-8") + + candidates = Parser._libreoffice_command_candidates() + + assert str(soffice_path) in candidates + + +def test_convert_office_to_pdf_uses_windows_standard_libreoffice_path( + monkeypatch, tmp_path +): + monkeypatch.setattr(parser_module, "_IS_WINDOWS", True) + monkeypatch.setattr(parser_module.subprocess, "CREATE_NO_WINDOW", 0, raising=False) + monkeypatch.setattr(parser_module.shutil, "which", lambda command: None) + monkeypatch.setenv("PROGRAMFILES", str(tmp_path)) + monkeypatch.delenv("PROGRAMFILES(X86)", raising=False) + + soffice_path = tmp_path / "LibreOffice" / "program" / "soffice.exe" + soffice_path.parent.mkdir(parents=True) + soffice_path.write_text("", encoding="utf-8") + + doc_path = tmp_path / "sample.docx" + doc_path.write_bytes(b"docx") + output_dir = tmp_path / "out" + captured_commands = [] + + def fake_run(cmd, **kwargs): + captured_commands.append(cmd) + if cmd[0] != str(soffice_path): + raise FileNotFoundError(cmd[0]) + + pdf_path = Path(cmd[cmd.index("--outdir") + 1]) / "sample.pdf" + pdf_path.write_bytes(b"%PDF-1.4\n" + b"0" * 200) + return MagicMock(returncode=0, stderr="") + + monkeypatch.setattr(parser_module.subprocess, "run", fake_run) + + pdf_path = Parser.convert_office_to_pdf(doc_path, output_dir) + + assert captured_commands[-1][0] == str(soffice_path) + assert pdf_path == output_dir / "sample.pdf" + assert pdf_path.exists() diff --git a/tests/testparser_wiring.py b/tests/testparser_wiring.py new file mode 100644 index 0000000..13bb7ae --- /dev/null +++ b/tests/testparser_wiring.py @@ -0,0 +1,132 @@ +import pytest + +from raganything.batch_parser import BatchParser + + +def test_batch_parser_uses_paddleocr_parser(): + batch_parser = BatchParser( + parser_type="paddleocr", + show_progress=False, + skip_installation_check=True, + ) + assert batch_parser.parser.__class__.__name__ == "PaddleOCRParser" + + +def test_raganything_initializes_selected_parser(monkeypatch, tmp_path): + pytest.importorskip("lightrag") + + import raganything.raganything as rag_module + from raganything.config import RAGAnythingConfig + + class StubParser: + def check_installation(self): + return True + + captured = {} + + def fake_get_parser(parser_name): + captured["parser_name"] = parser_name + return StubParser() + + monkeypatch.setattr(rag_module, "get_parser", fake_get_parser) + monkeypatch.setattr(rag_module.atexit, "register", lambda *args, **kwargs: None) + + config = RAGAnythingConfig( + working_dir=str(tmp_path / "rag_workdir"), + parser="paddleocr", + ) + rag = rag_module.RAGAnything(config=config) + + assert captured["parser_name"] == "paddleocr" + assert isinstance(rag.doc_parser, StubParser) + + +@pytest.mark.asyncio +async def test_processor_parse_document_uses_selected_parser(monkeypatch, tmp_path): + import raganything.processor as processor_module + + class FakeLogger: + def info(self, *args, **kwargs): + pass + + def warning(self, *args, **kwargs): + pass + + def error(self, *args, **kwargs): + pass + + def debug(self, *args, **kwargs): + pass + + class FakeParser: + def parse_pdf(self, **kwargs): + return [{"type": "text", "text": "parsed by fake parser", "page_idx": 0}] + + def parse_image(self, **kwargs): + return [{"type": "text", "text": "image parsed", "page_idx": 0}] + + def parse_office_doc(self, **kwargs): + return [{"type": "text", "text": "office parsed", "page_idx": 0}] + + def parse_document(self, **kwargs): + return [{"type": "text", "text": "generic parsed", "page_idx": 0}] + + selected = {"calls": 0} + + def fake_get_parser(parser_name): + selected["parser_name"] = parser_name + selected["calls"] += 1 + return FakeParser() + + monkeypatch.setattr(processor_module, "get_parser", fake_get_parser) + + class DummyProcessor(processor_module.ProcessorMixin): + pass + + dummy = DummyProcessor() + dummy.config = type( + "Config", + (), + { + "parser": "paddleocr", + "parser_output_dir": str(tmp_path / "output"), + "parse_method": "auto", + "display_content_stats": False, + "use_full_path": False, + }, + )() + dummy.logger = FakeLogger() + dummy.parse_cache = None + + async def fake_store_cached_result(*args, **kwargs): + return None + + monkeypatch.setattr( + DummyProcessor, + "_store_cached_result", + fake_store_cached_result, + raising=False, + ) + monkeypatch.setattr( + DummyProcessor, + "_generate_content_based_doc_id", + lambda self, content_list: "doc-fixed", + raising=False, + ) + + fake_pdf = tmp_path / "sample.pdf" + fake_pdf.write_bytes(b"%PDF-1.4\n") + + content_list, doc_id = await dummy.parse_document(str(fake_pdf)) + content_list_2, doc_id_2 = await dummy.parse_document(str(fake_pdf)) + + assert selected["parser_name"] == "paddleocr" + assert selected["calls"] == 1 + assert doc_id == "doc-fixed" + assert doc_id_2 == "doc-fixed" + assert content_list == [ + {"type": "text", "text": "parsed by fake parser", "page_idx": 0} + ] + assert content_list_2 == [ + {"type": "text", "text": "parsed by fake parser", "page_idx": 0} + ]