Spaces:
Sleeping
Sleeping
A newer version of the Gradio SDK is available:
6.4.0
graph TD subgraph User_Interface[User Interface - Gradio] UI_AppPy["app.py (Gradio UI)"] UI_Uploads["Image/Form Uploads (Receipts, Child Fee, Medical)"] UI_Inputs["User Inputs (Employee Details, etc.)"] UI_Outputs["Processed Info / Filled PDFs"] end
subgraph Processing_Pipeline[Processing Pipeline]
P_PipelinePy["pipeline.py"]
P_OpenAI["OpenAI GPT-4o (Image to Text & Structured Data Extraction)"]
P_ModelsPy["models.py (Pydantic Data Models)"]
P_FormFillPy["form_fill.py (PDF Population)"]
P_FraudPy["fraud.py (Fraud Detection)"]
P_DataJson["data.json (Storage for Processed Receipts)"]
P_TemplatesDir["templates/ (PDF Templates)"]
P_OutputsDir["outputs/ (Generated PDFs)"]
end
UI_AppPy --> P_PipelinePy;
UI_Uploads --> P_PipelinePy;
UI_Inputs -- Employee Data etc. --> P_PipelinePy;
P_PipelinePy -- Extracted Info / PDF Paths --> UI_Outputs;
P_PipelinePy -- Sends Image Data --> P_OpenAI;
P_OpenAI -- Returns Structured JSON --> P_PipelinePy;
P_PipelinePy -- Validates/Uses --> P_ModelsPy;
P_PipelinePy -- Sends Data for PDF --> P_FormFillPy;
P_FormFillPy -- Uses PDF Templates from --> P_TemplatesDir;
P_FormFillPy -- Saves Filled PDF to --> P_OutputsDir;
P_PipelinePy -- Sends Receipt Data for Fraud Check --> P_FraudPy;
P_FraudPy -- Loads/Saves Receipt Data --> P_DataJson;
P_FraudPy -- Returns Fraud Status --> P_PipelinePy;
P_TemplatesDir -.-> P_FormFillPy;
P_OutputsDir <-.- P_FormFillPy;
P_DataJson -.-> P_FraudPy;
%% Styling
classDef ui fill:#D6EAF8,stroke:#3498DB,stroke-width:2px;
classDef process fill:#D5F5E3,stroke:#2ECC71,stroke-width:2px;
classDef external fill:#FCF3CF,stroke:#F1C40F,stroke-width:2px;
classDef storage fill:#EBDEF0,stroke:#8E44AD,stroke-width:2px;
class UI_AppPy,UI_Uploads,UI_Inputs,UI_Outputs ui;
class P_PipelinePy,P_ModelsPy,P_FormFillPy,P_FraudPy process;
class P_OpenAI external;
class P_DataJson,P_TemplatesDir,P_OutputsDir storage;