home
Senior AI Leader | Head of AI & Innovations
Edinburgh, UK |
I build AI systems that work in production, not just in notebooks. Over the past decade I have led teams delivering real-time personalisation, RAG and GraphRAG knowledge systems, agentic AI, and LLM evaluation infrastructure at scale -- most recently as Head of AI at Viator (Tripadvisor Group), where I built the AI function from zero to 12+ scientists and engineers and delivered GBP 50M+ in measurable business impact. My research focus is the gap between what AI systems appear to do and what they actually do in production -- from trajectory-level agent evaluation (where per-turn metrics substantially overstate end-to-end quality) to cost-aware prompt optimisation (published at ACM KDD 2025). I co-designed a GenAI safety and evaluation research programme with the University of Edinburgh. I am also the founder of NC, a research-backed AI companion for real-time intent prediction in digital communication, grounded in a pre-registered randomised controlled trial and a computational psychiatry collaboration with Prof Peggy Series at the University of Edinburgh. Core work: Production LLM systems and agentic AI | RAG and GraphRAG | LLM evaluation methodology | Responsible AI governance | ML team leadership |
Posts
-
Evaluating AI agents is not the same as evaluating LLMs
-
Building a production NLP evaluation stack: lessons from rewriting travel listings at scale
-
Search Has Undergone a Dramatic Transformation - Part I
-
FAQ Extraction is a System Design Problem, Not a Prompting Problem
-
Markov Chain Attribution Modelling
-
Everything you need to know about Recommender Systems
-
5 Regression diagnostics every data scientist must know
-
Imbalanced Data - Real Time Bidding
-
Descent carefully on a gradient
-
Build a Model in SageMaker over 5 steps Using Low Level API
-
Build a Model in SageMaker over 5 steps Using High Level API
-
GitHub for Data Scientists: Part1
-
GitHub for Data Scientists: Part 2
-
GitHub for Data Scientists: Commit
-
Build Naive Bayes Spam Classifier on PySpark
-
Named Entity Recognition (NER) using Keras Bidirectional LSTM
-
Multi-Label Classification using Bag of Words (BoW) and TF-IDF
-
Image processing and classification with Python and Keras
-
Data Cleaning
subscribe via RSS