The Problem

We have reached a strange point in AI.

AI can generate an answer in seconds. It can write the explanation, cite information, and sound completely confident.

But confidence is not correctness.

A wrong answer delivered confidently can be more dangerous than an obviously incomplete one.

So we asked a different question:

What if an AI had to try to prove itself wrong before we trusted it?

That question became VERDANT

Our Idea

VERDANT is an AI verification system that adds an adversarial reasoning layer between “AI generated an answer”and “a human trusted the answer.”

Instead of stopping at:

Question → Answer

VERDANT works through:

Question → Solve → Attack → Re-evaluate → Verify → Verdict

The first reasoning stage tries to solve the user's problem.

Then VERDANT deliberately changes perspective.

Its adversarial stage is told not to defend the answer, but to break it.

It searches for:

  • hidden assumptions
  • contradictory evidence
  • alternative explanations
  • edge cases
  • logical mistakes
  • conditions under which the conclusion would fail

The original reasoning is then re-evaluated using those attacks.

The result is not simply an answer.

It is a conclusion that has survived an attempt to disprove it.

What Makes VERDANT Different

We did not want to build another chatbot with a “confidence score.”

We wanted to make verification itself part of the AI's reasoning process.

That distinction is fundamental.

A normal AI can say:

“I am confident this is correct.”

VERDANT instead asks:

"What would make this wrong?”

If the adversarial stage finds a serious flaw, VERDANT can revise its conclusion.

If the challenge does not overturn the reasoning, the final response explains why the conclusion survived and what uncertainty still remains.

This creates something we believe is missing from many AI interactions:

a visible path from an answer to justified trust.

How We Built It

We built VERDANT as a multi-stage agentic pipeline:

User Input ↓
Nemotron Reasoning Agent ↓
Initial Conclusion ↓
Adversarial Verification Agent ↓
Counterarguments & Failure Cases ↓
Re-evaluation ↓
Final Verdict

We use NVIDIA Nemotron through Nebius Token Factory as the core intelligence layer, with Python and FastAPI powering the backend and a web interface for interaction.

The most important architectural decision was giving the verification stage a different objective from the generation stage.

The first agent asks:

“How can I solve this?”

The verifier asks:

How can this solution fail?

That tension is what makes VERDANT more than a conventional question-answering application.

The Hardest Part

Our biggest challenge was discovering that simply asking an AI to “check its answer” is not enough.

The model can easily produce a second response that sounds like a verification while still protecting the original conclusion.

So we designed verification as an adversarial task.

The verifier is explicitly encouraged to search for evidence and reasoning that contradict the initial conclusion.

This forced us to think about AI not just as a generator, but as a system of competing reasoning roles.

We also learned that uncertainty should not be hidden behind a number.

A useful verification system needs to show the user what was assumed, what was challenged, what survived, and what remains uncertain.

What We Learned

Building VERDANT changed our understanding of what an AI agent should do.

At first, we thought the goal was to make AI produce a better answer.

We realized the harder and more valuable problem is:

**How do we know when an answer deserves to be trusted?

We learned how to build multi-stage agentic workflows, integrate an LLM into a real application,

Built With

Share this project:

Updates

Submission history