Projects

Academic and personal projects I've worked on

Trust Lens – Browser-Based LLM Fact-Checking System (Master Thesis)

A browser extension–driven misinformation detection system leveraging LLMs and structured claim verification pipelines.

Go
Python
LLMs
Browser Extension
NLP
LIAR2
  • Built a browser extension and Go backend that extract web content, normalize claims, and route them through an LLM-based fact-checking pipeline.
  • Evaluated claim verification with the LIAR2 dataset and improved robustness using prompt-engineering and retrieval strategies.

AI-Powered Adaptive Learning Roadmap System

Multi-stage AI system that converts large technical documents into structured, personalized learning roadmaps.

Go
Python
LLMs
RAG
PostgreSQL
  • Built a multi-stage AI pipeline that turns 4000+ pages of technical documents into dependency-aware learning topics.
  • Generated personalized roadmaps by combining learner goals, background, time constraints, adaptive difficulty, and explanation preferences.

AI Voice Agent for Telephony Networks (MVP)

Real-time conversational AI system bridging LLM-based speech agents with WebRTC and global VoIP/PSTN infrastructure.

WebRTC
Go
Node.js
OpenAI Realtime API
ElevenLabs API
  • Built a production-oriented WebRTC architecture for low-latency speech-to-speech AI conversations.
  • Integrated SIP/WebRTC routing so AI agents can answer and place calls through VoIP infrastructure.

Backdoor Detection in Federated Learning

Dynamic adversary‑detection framework that isolates poisoned model updates.

Go
Gorgonia
  • Developing an adversary‑detection algorithm in Go that flags poisoned model updates from dynamic malicious nodes.
  • On a 20‑node testbed with 4 malicious clients, lifted accuracy from 75.9 % → 93.4 % by auto‑isolating attackers.

Raft‑FL

Fault‑tolerant federated‑learning system without a central server.

Go
gRPC
Raft
  • Integrated Raft consensus into FL; on a 3‑node cluster achieved 97.6 % ± 0.1 accuracy on MNIST.
  • Recovered from forced leader failure in < 3 s with only ≈ 75 s training‑time overhead.