Inspiration

I’ve approved hundreds of contracts—$100K to $250K deals at Mailgun, helped Sendspark with their sales process, and built the sales ops team at a $100M company. The same thing always slowed us down: legal. Reps were stuck waiting on redlines, or didn’t know how to push back. I built ApproveThis to help with approvals, but users started pasting in contract language and asking, “What does this mean?” That’s when I realized sales teams needed a faster way to handle negotiation themselves.

What it does

RapidRedline helps salespeople get to “yes” faster. Drop in a contract, and it highlights key terms, explains the language, flags issues, and suggests redlines—without needing a lawyer. It’s built to help reps move deals forward without slowing down for legal every time.

How we built it

If you've ever tried to compare documents with a simple LLM, you know that it's subject to hallucination, context issues, and input/output cutoff. We used a combination of Azure's prebuilt contract document models and RAG to analyze terms on a line-by-line level to ensure that every change is caught. When differences are found, we expand the context and send to an LLM and risk comparison. Finally, we used our existing ApproveThis platform to determine who the approver would be for that specific change if it's not something a user can accept themselves.

Challenges we ran into

Finding the right size of output to vectorize was the biggest challenge. If its's too large, it's inefficient and will flag large sections of the contract for minor changes. I really wanted to run full contracts through an LLM the large context models (Gemini 1.5 / 2.5 Pro) weren't doing a great job. I'll probably revisit this given more time.

The second big challenge was building into an existing application. I though it would be an advantage, but it really wasn't. Sure, I have a head start with some utilities, file, and user management... and maybe some user patterns... but I was locked into the existing infrastructure which really slowed things down.

Accomplishments we’re proud of

I've been wanting to build this feature for a long time and this hackathon was the push I needed. I'm super proud that I was able to build a functional, full-featured tool in 48 hours (I found out about this late).

What we learned

I had been under the impression that RAG was going to stop being necessary as context windows got larger but I don't think that's going to be the case. Even with a large context window, the output limits are still too low and the accuracy is still pretty crappy once the context gets large.

What’s next for RapidRedline

RapidRedline is going to be ApproveThis's most interesting and valuable feature. I hope to get it in beta and in production next week.

Built With

Share this project:

Updates