FormGuide — AI-assisted pre-check for Wohngeld applications

Short tagline: Local, privacy-preserving AI that pre-checks income-proof PDFs and extracts key applicant data.

Inspiration

Applying for Wohngeld is often confusing and time-consuming, especially when applicants aren’t sure whether their income documents meet submission standards. We built FormGuide to reduce that uncertainty and give applicants a quick, private pre-check, all running locally on their machine.

What it does

FormGuide converts uploaded income-proof PDFs to text, verifies whether the document is a valid income proof, and extracts essential fields such as last name, first name, and monthly income. The entire pipeline runs locally: GPU-accelerated PDF processing, a local Gemma 3 (27B) model via Ollama for validation and extraction, and a lightweight Flask UI/API for uploads and results.

How we built it

  • PDF processing: Docling with CUDA for fast, GPU-accelerated PDF → text conversion.
  • AI validation & extraction: A LangChain agent using ChatOllama (Gemma 3 27B) evaluates document validity and extracts the required fields via prompt engineering.
  • Frontend: Minimal Flask app exposing an upload UI and a JSON /upload endpoint.
  • Local-first: Ollama serves the model locally so no cloud data leaves the user's machine.

Challenges we ran into

Government-issued documents vary widely in layout and formatting. Building robust validation and consistent extraction across real-world, messy documents was the biggest engineering challenge.

Accomplishments we’re proud of

  • A fully local AI pipeline with no cloud dependency.
  • A practical tool that reduces bureaucratic friction while keeping humans in the loop for final checks.
  • A working prototype delivered within hackathon constraints.

What we learned

Agentic AI is useful, but the real improvements came from careful prompt design, document-processing robustness, and pragmatic glue code.

What’s next

  • Broader document-type coverage and support for multi-page proofs.
  • Structured JSON outputs for easier integration into administrative workflows.
  • Improved UI accessibility and multilingual support.
  • Optional offline fine-tuning to boost accuracy on German government forms.

Built With

Share this project:

Updates