I build the safety layer between your data and the model.
I'm Akhil Vallala. I lead ML engineering at Blocsmith, where I built the document intelligence and PII/PHI redaction engine behind MoatDrop.
I ship LLM systems that are fast, cheap, and safe: extraction that runs 25x faster than the baseline, a p95 cut from 16.4s to 5.2s, and guardrails that learn from their own misses.
Before LLMs, five years of data engineering at Infosys and Accenture. So the pipelines underneath are solid too.
Runs entirely in your browser, so nothing you type leaves this page. A toy version of the regex tier; production adds Presidio, Google DLP, per-industry rule bundles, and an LLM safety net.
- Now
- Lead ML Engineer, Blocsmith
- Experience
- 6+ years in data and ML, 2 building LLM systems
- Education
- MS Data Science, FAU · 3.95 GPA · Graduate Leadership Award
- Location
- Boca Raton, FL · remote US or relocation · H-1B, transfer only
- Targeting
- AI/ML, GenAI/LLM, Applied AI / FDE, AI Platform
Impact, in numbers
Measured, not estimatedFaster contract extraction than the chunked baseline, at higher quality (0.79 vs 0.70).
Blocsmith · CUAD benchmarkp95 latency, down from 16.4s at equal answer quality, after leading the Gemini 3.x migration.
Blocsmith · paired A/BCached-token hit rate on repeat queries, while keeping zero data retention.
Blocsmith · prompt-prefix designPII instances redacted across every document size band and retrieval route.
Blocsmith · redaction pipelineLower model cost than routing everything to frontier models.
Conduit · two-stage routerHeld-out attacks that leaked past piiguard with its classifier on. Rules alone cut leaks from 76.7% to 16.7% at zero false positives.
piiguard · award winner, SFHiring for a specific role?
Pick the role you're filling. The page pulls the relevant proof and highlights the matching projects below.
Answered by Claude using only the facts on this page. Uses your own Claude account, and it asks before the first question.
Selected work
6 projects · 2024 to now- Winner · Best Use of NemoClaw & OpenShellOpen sourceSelf-hardening
piiguard
A PII leak guard for sandboxed AI agents that hardens itself. Sandboxes decide where an agent may send data; piiguard checks what is inside it.
Picked from 109 projects at the Recursive Agents Hackathon, San Francisco, October 2026. Built solo in one day, 65 commits.
agent in OpenShell→guard proxy→allowed API→restore tokensred team attacks→coach rewrites rules→gate→git tag gen-N↺- The gap: an agent allowed to call a search API can paste a customer's SSN into the query, and the sandbox lets it through because the host is on the allow-list.
- Guard proxy: swaps PII for reversible tokens before anything leaves the sandbox, then restores the real values on the way back so the agent still finishes its job.
- Red team: Nemotron 3 Super on Crusoe tries to sneak PII past the guard with base64, hex, reversed strings, spelled-out digits, and unicode tricks.
- Coach and gate: a coach rewrites the rules from what leaked. A change is kept only if leaks drop and false positives don't rise, and every accepted generation is a git tag, so reviewers read a regex diff, not a black box.
- Results on held-out attacks: leak rate 76.7% to 16.7% with rules alone and zero false positives; 0 of 30 with the Nemotron 3.5 Lightning classifier; insurance pack 90% to 20%; 92.8% recall on structured identifiers in NVIDIA's Nemotron-PII set vs 68.5% for Presidio.
Presidio still leads on semantic PII like names and places. The repo publishes that too.
- Open sourceSelf-improvingAgent security
AgentShield
A guardrail proxy for agent-to-agent traffic that learns new PII rules from its own misses and unlearns the ones that misfire.
agent A→regex + Presidio→agent Bauditor finds miss→synthesize rule→validator gate→human approves→hot-load↺- Fast path: compiled regex and Presidio, no LLM inline, so latency stays predictable.
- Learns: an async LLM auditor reviews traffic for leaks the rules missed. A synthesizer turns each miss into a candidate regex rule and retries on validator feedback.
- Gated: a candidate must pass false-positive checks on 500 clean messages and precision/recall on a labeled eval set, then get human approval. It hot-loads through a MongoDB change stream with no restart.
- Unlearns: the gateway tracks live hits per rule. A rule with over 20% false positives across 5+ hits from 2+ sessions is proposed for retirement, demoted to shadow, and pulled from the live gateway.
- Every change writes a new eval generation, so improvement is measured over time. The auditor never sees raw values, only their shape.
- Open source50.8% cost cutModel routing
Conduit
A proxy-first AI gateway. Every model call goes through one OpenAI-compatible API.
auth→ingress guard→router→provider adapter→egress guard→telemetry- Six-stage pipeline every call must pass through. Vendor SDKs are isolated and enforced in CI, so swapping providers is a config change.
- Two-stage router: a zero-cost heuristic resolves 80%+ of traffic, and a cached LLM tie-break handles the rest. 50.8% cheaper than all-frontier routing.
- Guards: DLP and Presidio redaction with lossless entity rehydration, and prompt-injection detection at 100% on a held-out probe.
- An LLM-as-judge suite blocks CI on any quality regression. Built with FastAPI, LangGraph, and pytest; routes across Claude, GPT, and Ollama.
- ProductionBlocsmith · MoatDrop
MoatDrop engine
Share documents with AI agents without handing over the file. Agents ask questions, and answers come back with personal data removed.
upload→DLP + Presidio→Gemini 3.x→LLM safety net→MCP / SSE- Latency: led the Gemini 3.x migration with split regional routing, cutting p95 from 16.4s to 5.2s at equal answer quality on a paired A/B.
- Extraction: replaced chunked extraction with a full-document Gemini mode after CUAD showed 0.79 quality in 4.6s vs 0.70 in 114s. Now the production default.
- Privacy: a zero-data-retention answering path. Rejected explicit caching because it stores document text, and reached an 89% cached-token hit rate through prompt-prefix design instead.
- Redaction: DLP and Presidio across finance, legal, and healthcare, with an LLM safety net re-checking answers. 221 of 221 PII instances redacted.
- Retrieval: RAGAS ablations picked the strategy; adaptive routing for 120k+ token documents, and reranking cut at a quality tie for 28% lower cost.
- Delivery: remote MCP server for Claude Desktop, Cursor, and Claude Code, run on Cloud Run with field-level encryption, PII-scrubbed logs, and on-call.
Proprietary codebase, so it is described here at the system level.
- ITCHATHON 2nd placeSan Francisco
AdPilot
An AI ad assistant for independent wealth managers.
weekly financial news+manager's view→Meta ad→live campaign- Turns the week's financial news plus the advisor's own take into a ready-to-run Meta ad.
- Sets up the campaign directly in the advisor's ad account.
- Took 2nd place at ITCHATHON in San Francisco, September 2026.
- MS thesisOn-device LLMs
Tiny-Physics
Small language models that solve physics word problems on a phone.
GPT-4o agents→6,000+ QA pairs→SmolLM2 + LoRA→GGUF Q4_K_M- Fine-tuned SmolLM2-360M and 135M with LoRA and full instruction tuning.
- Built a multi-agent synthetic data pipeline that produced 6,000+ validated question-answer pairs.
- 30%+ over the base model on MMLU College Physics, shipped as quantized GGUF builds for real-time on-device inference.
Watch AgentShield learn and unlearn
A replay of a real run. Every message, finding, regex, and verdict below is from the run's recorded outputs, on synthetic data.
A message slips through
Generation 0 runs Presidio only. It catches the name and phone, wrongly tags part of the claim ID as a phone number, and lets the policy number and adjuster badge through. The Claims agent repeats them back.
The auditor catches it, off the hot path
An LLM auditor reviews forwarded traffic after delivery, so it adds no latency. It sees only the shape of each value, never the raw value.
Each miss becomes a candidate rule
A synthesizer turns every finding into a compiled regex with its own positive and negative test cases, and retries on validator feedback.
\bINS-[A-Z]{2}-\d{4}-[A-Z]\b(?<![A-Z0-9-])\bINS-[A-Z]{2}-\d{4}-[A-Z]\b(?![A-Z0-9-])(?<![A-Za-z0-9-])\bADJ#\d{2}-\d{4}\b(?![A-Za-z0-9-])Each draft ships with 8 should-match and 8 to 12 should-not-match examples, such as SKU-INS-AB-1234-C and ADJ#12-3456A.
Validated, approved, hot-loaded
A rule only goes live after it passes false-positive checks on 500 clean messages and precision/recall on a labeled eval set, and a human approves it. A MongoDB change stream pushes it into the running gateway with no restart.
rule … ACTIVE (INSURANCE_POLICY_NUMBER) -> liverule … ACTIVE (ADJUSTER_BADGE) -> liveEvery approval also writes a new eval generation, so the improvement is measured, not assumed.
Next time, it holds
The same kind of message now goes through the compiled rule in microseconds. No LLM call on the request path.
Then the rule starts misfiring
Marketing launches products whose codes look exactly like policy numbers. The live rule tokenizes them, and a hit review judges each match in context.
not personal The matched value is identified as a product reference in a brochure distribution message, not an identifier tied to a person, account, policy, or claim.
not personal The value is explicitly described as a product code for a catalog, so it is not tied to a specific person, account, policy, or claim.
not personal The value is described in connection with a starter package discount, indicating a product or package reference rather than a person-, account-, policy-, or claim-specific identifier.
Plus three more like these, six sessions in all.
And it unlearns
6 of the policy rule's 7 live hits were judged not personal. That's an 86% false-positive rate, far past the 20% limit, across 5+ hits from 2+ sessions. Retirement is proposed, a human approves, and the rule is demoted to shadow and pulled from the live gateway.
rule … now shadow -> removed from live setThis is why the real engine in the console above ships with the badge rule but not the policy rule.
Faster than the RLM baseline, with higher answer quality. Reading the whole document in context beat chunked recursive retrieval on both speed and accuracy, so it shipped as the default for every document size.
Experience & education
Most recent first-
Aug 2025 to now
Lead Machine Learning Engineer
Blocsmith LLC · the company behind MoatDropOwn the LLM stack end to end: the Gemini 3.x migration (p95 16.4s to 5.2s), full-document extraction, a zero-data-retention answering path, the PII/PHI redaction pipeline, RAGAS-driven retrieval, and the remote MCP server. On call for production on Cloud Run.
-
Jun to Jul 2025
Data Science Intern
Aventusoft LLC · Boca RatonBuilt AIMEE, a voice AI assistant that checks in on heart failure patients after discharge (OpenAI, ElevenLabs, Twilio), with a prompt evaluation pipeline and automatic escalation emails to doctors.
-
Aug 2023 to Jun 2025
Research Assistant (NSF funded), then Teaching Assistant
Florida Atlantic University · NSF-funded researchStudied how teachers and students talk about generative AI, across about 15,000 Reddit posts and news sources, then taught the graduate seminar. MS in Data Science, 3.95 GPA.
-
Aug 2021 to Jul 2023
Platform Development Analyst
Accenture · Hyderabad · Role: Data AnalystShipped a TensorFlow recommendation engine (+24% conversion) and an XGBoost pricing model handling 50K+ products an hour (+16% annual revenue). Spark on Databricks made batch jobs 3x faster.
-
Mar 2019 to Jul 2021
Systems Engineer, then Senior Systems Engineer
Infosys · Mysuru · Role: Data Engineer, financial services clientConfig-driven ETL in Python and SQL with Azure DevOps CI/CD, plus a data-quality library that cut validation time by 90%.
-
Sep 2018 to Feb 2019
Technical Support Engineer
EDS Technologies · HyderabadTriaged and resolved engineering software issues for enterprise users. First role after the B.Tech.
-
May 2018
B.Tech, Mechanical Engineering
Vasavi College of Engineering · Osmania University, Hyderabad
Research & wins
- Winner, Best Use of NemoClaw & OpenShellpiiguard · Recursive Agents Hackathon, San Francisco · out of 109 projects2026
- ITCHATHON, 2nd placeAdPilot · San Francisco2026
- Unpacking Generative AI in EducationIEEE Transactions on Computational Social Systems · second author2025
- Tiny-PhysicsMS thesis on on-device physics LLMs · FAU2025
- Graduate Leadership AwardFlorida Atlantic University2025
- Responsible AI Hackathon, 3rd placePlus the Innovative Solution Award, out of 20+ teams2024
- CMBB Biotech Hackathon, 3rd placeFAU2024
- Founder & President, PACE Club300+ members, 30+ sessions with IEEE speakers and industry engineers2024
Stack
LLM & retrieval
Safety & privacy
Models & training
Systems & data
Writing & video
I write and record about building with LLMs: what shipped, what broke, and what the numbers said.
Let's build something that doesn't leak.
AI/ML Engineer, GenAI/LLM Engineer, Applied AI or Forward Deployed Engineer, AI Platform / LLMOps.
Remote in the US, South Florida, or relocation anywhere in the US, including SF and NYC. Currently on an H-1B, so a new role is a transfer with no lottery.
Teams putting LLMs in front of sensitive data, where speed, cost, and safety all have to hold up in production.