Spaces:
Paused
Paused
| """FDAM Pipeline - Fire Damage Assessment Processing. | |
| This module provides the core processing pipeline for generating | |
| fire damage assessment reports using AI vision analysis and | |
| RAG-enhanced methodology lookup. | |
| Lazy imports to avoid chromadb dependency at module load time for local development. | |
| """ | |
| __all__ = [ | |
| "ChatHandler", | |
| "FDAMCalculator", | |
| "DispositionEngine", | |
| "DocumentGenerator", | |
| "FDAMPipeline", | |
| "PipelineResult", | |
| "PDFGenerator", | |
| "PDFResult", | |
| "generate_sow_pdf", | |
| ] | |
| def __getattr__(name): | |
| """Lazy import pipeline modules only when accessed.""" | |
| if name == "FDAMCalculator": | |
| from .calculations import FDAMCalculator | |
| return FDAMCalculator | |
| elif name == "ChatHandler": | |
| from .chat import ChatHandler | |
| return ChatHandler | |
| elif name == "DispositionEngine": | |
| from .dispositions import DispositionEngine | |
| return DispositionEngine | |
| elif name == "DocumentGenerator": | |
| from .generator import DocumentGenerator | |
| return DocumentGenerator | |
| elif name == "FDAMPipeline": | |
| from .main import FDAMPipeline | |
| return FDAMPipeline | |
| elif name == "PipelineResult": | |
| from .main import PipelineResult | |
| return PipelineResult | |
| elif name == "PDFGenerator": | |
| from .pdf_generator import PDFGenerator | |
| return PDFGenerator | |
| elif name == "PDFResult": | |
| from .pdf_generator import PDFResult | |
| return PDFResult | |
| elif name == "generate_sow_pdf": | |
| from .pdf_generator import generate_sow_pdf | |
| return generate_sow_pdf | |
| raise AttributeError(f"module {__name__!r} has no attribute {name!r}") | |