Spaces:
Sleeping
Day 1: Ingestion & Structuring (The Foundation)
Goal: Turn a PDF into a clean, multi-modal dataset with UUIDs.
Tasks:
Set up a Python script with Docling to parse the provided test PDFs.
Write a function to intercept any extracted Image or Table, send it to the VLM API, and get a text description.
Format the final output into a flat list of dictionaries, where every element has a chunk_id, type (text/table/image), content, and parent_header_id.
Checkpoint: You can print a clean JSON payload representing the entire document layout.
Day 2: Hybrid Memory & Graph Mapping (The Brain)
Goal: Build the search and relationship engine.
Tasks:
Initialize ChromaDB. Embed the content of every chunk and store it with its chunk_id in the metadata.
Initialize a NetworkX directed graph.
Write the logic to iterate through your parsed JSON and add nodes and edges (e.g., Header_1 $\rightarrow$ Paragraph_A, Paragraph_A $\rightarrow$ Table_1).
Wrap this ingestion process in a FastAPI /upload endpoint that stores the resulting NetworkX graph in app.state.
Checkpoint: You can query ChromaDB for a keyword, get a chunk_id, and successfully print its neighboring nodes from NetworkX.
Day 3: Agentic UI & Demo Polish (The Wow Factor)
Goal: Connect the brain to the user and make it fast.
Tasks:
Build the LangGraph agent: Query -> Vector DB (Find ID) -> NetworkX (Expand Context up to depth=1) -> LLM Prompt -> Answer.
Implement StreamingResponse in FastAPI so the answer types out instantly.
Build the React frontend. Implement the chat window on the left, and use React Flow on the right to visualize the nodes the AI traversed.
Checkpoint: End-to-end testing with sample Dell documents. Practice the pitch.
Day 1: Ingestion & Structuring (The Foundation)
Goal: Turn a PDF into a clean, multi-modal dataset with UUIDs.
Tasks:
Set up a Python script with Docling to parse the provided test PDFs.
Write a function to intercept any extracted Image or Table, send it to the VLM API, and get a text description.
Format the final output into a flat list of dictionaries, where every element has a chunk_id, type (text/table/image), content, and parent_header_id.
Checkpoint: You can print a clean JSON payload representing the entire document layout.
Day 2: Hybrid Memory & Graph Mapping (The Brain)
Goal: Build the search and relationship engine.
Tasks:
Initialize ChromaDB. Embed the content of every chunk and store it with its chunk_id in the metadata.
Initialize a NetworkX directed graph.
Write the logic to iterate through your parsed JSON and add nodes and edges (e.g., Header_1 $\rightarrow$ Paragraph_A, Paragraph_A $\rightarrow$ Table_1).
Wrap this ingestion process in a FastAPI /upload endpoint that stores the resulting NetworkX graph in app.state.
Checkpoint: You can query ChromaDB for a keyword, get a chunk_id, and successfully print its neighboring nodes from NetworkX.
Day 3: Agentic UI & Demo Polish (The Wow Factor)
Goal: Connect the brain to the user and make it fast.
Tasks:
Build the LangGraph agent: Query -> Vector DB (Find ID) -> NetworkX (Expand Context up to depth=1) -> LLM Prompt -> Answer.
Implement StreamingResponse in FastAPI so the answer types out instantly.
Build the React frontend. Implement the chat window on the left, and use React Flow on the right to visualize the nodes the AI traversed.
Checkpoint: End-to-end testing with sample Dell documents. Practice the pitch.