← Back to Portfolio

Emotech · Contract

LLM-as-a-Judge Evaluation Framework for Conversational AI

Built an automated evaluation pipeline for a customer service voice AI — GPT generates adversarial test scenarios, drives live conversations, and judges outputs across design bugs, logic bugs, and quality metrics. Scaled from 7 to 42 test cases across 14 categories.

LLM-as-a-Judge Gen AI Conversational AI
View Details →

AxessAll · Self-employed

RAG Autocomplete System for Accessibility Audits

Built and deployed a RAG service that auto-drafts structured accessibility issue fields for auditors, integrated directly into the audit team's YouTrack workflow — now in beta ahead of full rollout.

RAG FastAPI Qdrant NLP
View Details →

AxessAll · Self-employed

NLP Analytics Pipeline for Unstructured Text

Built a portable topic-modelling and RAG analytics pipeline — 22,000+ records indexed in Qdrant, a multi-page Dash dashboard, and agentic thematic allocation making the data directly accessible to stakeholders.

Topic Modelling UMAP HDBSCAN Plotly Dash
View Details →

AxessAll · Self-employed

Agentic Accessibility Scanner

An LLM tool-call layer over deterministic Playwright automation that detects WCAG violations and captures targeted screenshots — validated against real Wikipedia pages, catching a real detection bug along the way.

Agentic AI Playwright WCAG 2.2
View Details →

AxessAll · Self-employed

AI Strategy & Roadmap for a National Accessibility Platform

Led AI strategy and roadmap planning for a national government digital accessibility programme — a seven-layer platform architecture, a three-agent automation model, and direct contribution to bid and proposal development.

AI Strategy Systems Architecture Roadmapping
View Details →

EMIF / ISD

Pro-Kremlin Influence Network Mapping

Mapped pro-Kremlin influence networks across 7.8 million Telegram posts in France, Germany and Italy.

NLP Topic Modelling Contrastive Learning Python
View Details →

Gates Foundation

Global Fund Advocacy Evaluation

Evaluated social media advocacy for the Global Fund's 7th replenishment across 5 markets and 43,000 posts.

Social Media Analysis Thematic Framework NLP
View Details →

FCDO / BII

Investor Sentiment in South African Energy

Built an investor sentiment index for South Africa's energy sector validated as predictive of investment flows.

Sentiment Analysis Transformers NLP Python
View Details →

Swedish Institute

Sweden's Global Image Under Pressure

Analysed the impact of two sensitive international incidents on Sweden's image across 9 countries and 7 languages.

Multilingual NLP Topic Modelling Machine Translation
View Details →

Ofcom

Disinformation Landscape Mapping

Built a multilayered topic modelling system to profile disinformation actors on social media.

Topic Modelling BERTopic Actor Profiling
View Details →

BBC Monitoring

China's Public Diplomacy on Twitter and Facebook

Mapped China's diplomatic social media activity across Twitter and Facebook — 432,800 messages collected across 372 accounts, with 102,883 classified across 9 themes in 4 languages.

Python scikit-learn Twitter API CrowdTangle Pandas Plotly
View Details →

The Islamic Foundation

Muslim Population & Community Insight Dashboard

Built and deployed a national-to-neighbourhood demographic dashboard — census religion, ethnicity, age and deprivation data across 318 local authorities and 7,264 neighbourhoods in England & Wales, with a local drill-down for Coalville and Markfield — helping the charity see where Muslim communities and families are concentrated.

Streamlit Python Geospatial Analysis Census Data
View Details →

Spike Insight · via University of Sussex RISE

Customer Review Topic, Theme & Sentiment Analysis

Analysed ~13,000 customer reviews for a guided-walking-holiday operator — topic modelling, thematic annotation and a zero-shot correction layer lifted macro-F1 from 0.69–0.79 to 0.85–0.95.

Topic Modelling BERTopic Zero-Shot Classification Sentiment Analysis UMAP
View Details →