Akshat Karani
Senior ML Engineer · Needl.ai · Mumbai
I'm a Senior ML Engineer at Needl.ai, where I build and own the agent platform and the LLM layer behind AskNeedl, Needl's answer engine for financial and enterprise data.
Journey
Today first, then back one year at a time to where it started. Scroll, or jump to a year.
-
now
Agents
harness, LLM layer, evalsTurning the answer pipeline into the agent platform.
- Agent harness: config-driven agents, a shared tool registry, skills, tool-call budgets, citations, tracing
- LLM layer: OpenAI, Azure OpenAI, Gemini and Claude behind one interface, with fallback, retries and cost tracking
- Evals & guardrails: LLM graders, nightly regression gates, input guards, read-only SQL for text-to-SQL agents
- AI-native engineering: Claude Code skills for deploys, alert triage and agent-session debugging
- One loop runs sub-minute chat and twenty-minute due-diligence reports
-
2024
Answers
AskNeedl, retrieval to generationPrimary engineer on AskNeedl, the answer engine.
- Rebuilt the pipeline on Haystack
- Fine-tuned cross-encoder rerankers as the context filter
- Gated every model and prompt change on benchmarks
- Shipped the first multi-step agentic mode
-
2023
Document AI
query understanding, summariesTeaching the system to read.
- Query understanding: an LLM extracts the companies, sources and dates a question is about
- Earnings-call summaries with sentence-level references mapped to PDF regions
- Table extraction, the job service behind it, and near-duplicate detection for news
-
2022
Search
Elasticsearch over filings, callsOwning the search layer over filings and earnings calls.
- Moved the search API from Node.js to Python
- Added proximity search, synonym and ticker expansion, spell correction, multi-index querying
- Guarded it with a regression framework against golden responses
-
2021
Connectors
mail, drives, chat, the webGetting the documents in.
- Built the Microsoft Teams integration, a public-source crawler and the RSS pipeline
- Hardened the Gmail, Google Drive, Outlook and Telegram connectors: resumable state, throttling, backoff
- Why it matters: if the document never arrives, nothing downstream does
-
2019
Google Summer of Code
coala, static-analysis frameworkA summer on an open-source static-analysis framework.
- Reworked coala's action system so analysis plugins can define their own fixes
- Added support for suggesting several alternative patches
- Wrote an eight-part log and the final report
-
2017
IIT Dharwad
B.Tech, Computer ScienceWhere it started.
- Studied Computer Science and Engineering, graduating in 2021
- Found open source through coala, a static-analysis framework, and kept contributing
- Mentored at the campus Open Source Society and helped freshers settle in
Experience
- Needl.aiSenior ML EngineerAug 2024 – now
- Needl.aiML EngineerMay 2022 – Jul 2024
- Needl.aiData EngineerJun 2021 – Apr 2022
Skills
- agent harness design
- multi-agent orchestration
- tool calling
- MCP
- context engineering
- structured outputs
- OpenAI
- Azure OpenAI
- Gemini
- Claude
- LLM-as-judge graders
- golden datasets
- regression gates
- benchmarking
- Langfuse
- OpenTelemetry
- Prometheus
- prompt-injection guards
- text-to-SQL safety
- sandboxed code execution
- provider fallback
- cost tracking
- Elasticsearch
- cross-encoder reranking
- citation grounding
- query understanding
- PyTorch
- sentence-transformers
- Python
- FastAPI
- asyncio
- PostgreSQL
- Snowflake
- DuckDB
- Docker
- Kubernetes
- Helm
- Terraform
- AWS
- GitHub Actions
- Claude Code
Writing
Google Summer of Code 2019 · coala
An eight-part log of my GSoC project with coala: reworking its action system so that analysis plugins (“bears”) can define their own fixes and suggest multiple alternative patches. Final report.