Skip to content
View kiran-bal's full-sized avatar

Block or report kiran-bal

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
kiran-bal/README.md

Kiran Bal

Senior Data Scientist · Kochi, India

Seven years building and shipping AI systems in healthcare, industrial automation and e-commerce. I own delivery end to end: requirements, architecture, modelling, deployment and monitoring on AWS.

What I work on

  • Agentic systems — LangGraph supervisor agents, tool calling, LLM-based routing, MCP client integrations, workflow automation for manufacturing and back-office processes.
  • Retrieval-augmented generation — grounding LLM responses in live PostgreSQL, queues, APIs and vector stores (FAISS, Qdrant, pgvector), including self-hosted open-weight models to control inference cost.
  • Document intelligence — spaCy named-entity extraction, summarisation and Tesseract OCR pipelines over unstructured clinical reports, running as asynchronous, message-driven services.
  • Speech and voice — real-time STT → LLM → TTS voice agents with conversation state and interruption handling, including Malayalam and other Indic languages.
  • Computer vision — CNN and transfer-learning models for clinical and sensor imagery, served behind Flask and FastAPI.
  • Production engineering — containerised services on AWS (Lambda, S3, serverless), RabbitMQ, Docker, CI/CD, and leading cross-functional backend, data and frontend teams.

Selected public projects

Most of my production work is proprietary. The repositories below are personal projects that show the same patterns in the open.

Repository What it shows Stack
queryflow-rag-chat Streaming RAG chat with hybrid BM25 + dense retrieval, abstention when nothing is relevant, and an evaluation harness (recall@k, MRR, LLM-judged faithfulness) gated in CI FastAPI, SSE, Next.js, sentence-transformers, Docker Compose
smarthire-agent-workflows Config-driven multi-agent workflow engine: YAML-registered agents, tasks and tools; linear, parallel and conditional graphs; tested with fake nodes LangGraph, CrewAI, Flask, Pydantic
voice-guided-surgical-arm Voice command → LLM structured output → OpenCV tool detection → ESP32 robotic arm; parser evaluated on labelled spoken instructions LangChain, Ollama/OpenAI, OpenCV, Flask, Arduino
disaster-tweet-classification Five models from TF-IDF to fine-tuned DistilBERT under one evaluation protocol: CV-chosen thresholds, calibration, error analysis showing label noise, served model with per-prediction explanations scikit-learn, PyTorch, Transformers, FastAPI, Docker
multi-persona-local-chat Persona-switching chat over local DeepSeek models Streamlit, Ollama

Toolbox

Languages and data Python, SQL, PostgreSQL, MongoDB, FAISS, Qdrant, pgvector
Generative AI LangChain, LangGraph, CrewAI, MCP, OpenAI, Claude, Ollama, Hugging Face, open-weight models
ML and NLP TensorFlow, Keras, scikit-learn, spaCy, CNNs and transfer learning, NER, summarisation, OCR
Speech Sarvam AI, STT/TTS pipelines
Backend FastAPI, Flask, Django, REST, RabbitMQ, asynchronous processing
Cloud and MLOps AWS, Azure, GCP, Docker, CI/CD, model deployment and monitoring

Microsoft Certified: Azure AI Engineer Associate (AI-102).

Contact

LinkedIn · iamkiranbal@gmail.com

Pinned Loading

  1. disaster-tweet-classification disaster-tweet-classification Public

    Disaster-tweet NLP: five models from TF-IDF to fine-tuned DistilBERT under one evaluation protocol, with calibration, error analysis, tests, FastAPI and Docker.

    Jupyter Notebook

  2. multi-persona-local-chat multi-persona-local-chat Public

    Streamlit chat over local Ollama DeepSeek models with switchable personas and English→Hindi translation.

    Python

  3. queryflow-rag-chat queryflow-rag-chat Public

    Streaming RAG chat: hybrid BM25 + dense retrieval with abstention, pluggable LLM providers, and an evaluation harness (recall@k, MRR, LLM-judged faithfulness). FastAPI + Next.js.

    TypeScript

  4. smarthire-agent-workflows smarthire-agent-workflows Public

    Config-driven LangGraph/CrewAI workflow engine with YAML-registered agents, tasks and tools. Demo: interview questions generated from a resume and emailed.

    Python

  5. voice-guided-surgical-arm voice-guided-surgical-arm Public

    Voice command → LLM structured output → OpenCV tool detection → ESP32 robotic arm. Speech, vision and LLM in one control loop.

    Python