GT Financial Services Innovation Lab partners with Atlanta-area regional banks to help speed up their loan turnaround process.
Before a credit analyst can assess risk of a borrower, they spend ~2–4 hours manually navigating 100–200 page documents. GenAI can make this faster, but if it hallucinates a value, that’s a compliance risk.
CreditSeer reimagines credit agreement review with a source-grounded, analyst-ready workspace that surfaces critical terms and verifies them, accelerating review time by 50% without sacrificing control.
Smart Extraction


Source Verification

Human-in-loop



CreditSeer is live in pilot with an Atlanta-area regional bank. My work didn't stop there, it became infrastructure the lab still uses.
50%
Weeks → Days
Faster product validation cycles
Annotation Schema
Used to tag data and train the proprietary extraction model
Design System Components
Reused across lab projects
Domain Documentation
Used for team alignment and onboarding
This problem space wasn't just slow. It was expensive for banks.
For regional banks, slow loan cycle means lost deals. And lost revenue.
To identify where the greatest friction was highest, I spoke with people across banking roles and mapped their workflows. Credit agreement analysis emerged as a recurring task across roles and throughout the loan lifecycle.

I reviewed real agreements, interviewed analysts, studied LSTA standards, model constraints, and compliance requirements to ground how information should be surfaced.

Analysts needed traceable data, while leadership wanted portfolio-level insights, all within engineering and timeline constraints.
I used rapid prototypes and iterative conversations with all stakeholders to make these tradeoffs tangible, ultimately helping the team converge on an MVP direction

The first prototype exposed a major product roadblock...
I connected the UI and model early on in the process to test with real data rather than assumptions.
But then the UI broke down. The proprietary model wasn’t yet reliable on real agreements, and the design system had no graceful way to handle its failures.

Testing with dummy data wasn't an option; it wouldn't reflect how analysts actually work.
Designing a reliable experience meant waiting for the model to mature, costing valuable stakeholder access and user testing time.
So, I paused the UX work.
I wanted to first understand what such LLM models can reliably extract from credit agreements.
So I built a lightweight extraction pipeline to design around those constraints rather than ideal outputs.
The pipeline revealed exactly where model could be reliable and where it was not. Now I could design for real outputs and not just the happy path.
Adaptive Layouts
After: Each value type maps to the component best suited to display it.

Making Uncertainty Visible
After: Four states, confident, loading, ambiguous, and missing, make uncertainty explicit

Source Verification
After: Direct way to trace value back to the source by Document View
- Opens directly at the source clause without leaving the dashboard
- Preserves the clause’s position within the agreement
- Supports flexible multi-monitor workflows
Because source review requires a click, analysts could still use extracted values without verifying them. I kept verification easy, but not mandatory for MVP.
Future solutions:
- Track behavior: Monitor when analysts check sources
- Review / Audit modes: Values for fast scanning vs. value + source always visible
- Copy to verify: Open the source when an analyst copies a value
Iterations that were rejected:

The process got faster. The lab got a foundation to build on.
This project changed how I think about product design in AI systems. I learned that designing the interface alone isn’t enough, you sometimes need to understand and shape the underlying system to create an experience you can actually trust.
Building with AI tools allowed me to develop even ML pipelines and learning the domain showed me how much context is required to simplify complex information well.
Most importantly, working with imperfect models reinforced the value of designing for uncertainty and getting access to real users and data early, especially in high-stakes workflows.
Looking back, I'd test feasibility before designing screens. Early testing showed the model's inconsistent outputs could break the interface, so next time I'd run a small extraction test on a handful of agreements first, and design screens only once I knew which fields were reliable.
I'd also keep a standing loop with stakeholders and end users: in B2B work, the people who use the product and the people who buy it are different, and both need constant contact, so I'd set up recurring check-ins from the start rather than letting feedback stall between ad-hoc meetings.
What's next is deeper integration into the loan lifecycle, extending beyond credit analysis to the other roles that touch the same agreement, like Relationship Manager, Legal, Credit Committee, and Loan Admin, along with governance layers such as role-based access and version tracking, building on the existing edit history and the system-generated versus user-modified distinction.