Home

Projects

A smaller set of projects I want to keep building.

Multi-agent GraphRAG

Restaurant Decision Assistant

A local-first multi-agent GraphRAG learning project that turns Yelp-style structured business data and review text into evidence-backed restaurant recommendations.

GraphRAGGoogle ADKMulti-AgentOllamaNeo4jGuardrailsLLMOps

What it does

  • - Demonstrates Google Agent Development Kit / ADK, multi-agent design, local LLMs with Ollama, Neo4j graph construction, and GraphRAG retrieval.
  • - Supports product questions such as quiet vegetarian-friendly brunch spots, affordable vegetarian options, restaurant comparisons, rating explanations, and declining sentiment signals.
  • - Grounds every answer in structured graph data, review-level evidence, controlled retrieval, guardrail checks, and evidence validation.
  • - Includes LLMOps metrics, observability, deployment-readiness thinking, and engineering management-style reporting.
Neo4j graph query showing restaurant review evidence connected to business and aspect nodes.
Graph schema and evidence paths for review-grounded restaurant reasoning.
Neo4j query table showing restaurant review aspects, sentiment, evidence, and confidence scores.
Aspect-level sentiment evidence with confidence scores.

Quant finance

Multi-Asset Portfolio Optimisation

A portfolio construction project for allocating across multiple assets while studying constraints, volatility, diversification, and risk-adjusted performance.

PythonPandasOptimizationFinance

What it does

  • - Compares allocation methods across asset classes
  • - Tracks risk, return, drawdown, and concentration
  • - Built to support experiments with constraints and rebalancing

Asset pricing ML

Attention on Cross Section

A cross-sectional attention model that learns relationships between stocks from firm characteristics to construct dollar-neutral equity portfolios.

Attention ModelsAsset PricingPortfolio ConstructionPyTorchAblation Studies

What it does

  • - Developed an attention-based model for learning stock-to-stock relationships from firm-level characteristics.
  • - Constructed dollar-neutral equity portfolios and evaluated performance out of sample.
  • - Benchmarked against linear and neural baselines to understand incremental predictive value.
  • - Used attention diagnostics and ablation studies to investigate model behavior and feature interactions.
Attention head heatmaps for cross-sectional stock relationships sorted by firm characteristics.
Attention head diagnostics across a cross-section of securities.
Attention behavior diagnostics showing row entropy, breadth, self-attention mass, and query variation over time.
Out-of-sample diagnostics for attention breadth, entropy, and stability.
Ablation charts comparing learned attention against no-attention baselines using Sharpe, cumulative P&L, exposure, and training loss.
Attention mode ablation comparing learned attention with a no-attention baseline.

Climate ML

Climate ML for Soil Salinity Prediction

A geospatial machine learning project using Landsat imagery and environmental features to predict soil salinity risk.

LandsatGeospatial MLPythonRemote Sensing

What it does

  • - Processes satellite-derived features for salinity modelling
  • - Connects remote sensing data with interpretable ML outputs
  • - Designed for climate risk mapping and research communication
Grayscale Landsat scene showing coastal river networks and land-water boundaries.
Landsat scene used for extracting spectral and spatial features.
Two-dimensional density plot comparing Landsat B6 reflectance and B5 reflectance.
Density relationship between Landsat B6 and B5 reflectance.

RAG writing assistant

Quill RAG

An editor application that lets users write and ask questions simultaneously, using retrieval-augmented generation to surface context-aware responses from a research-paper knowledge base.

RAGReflexOllamaChromaLangChainPython
GitHub

What it does

  • - Built a Reflex-based writing interface with an integrated RAG chat workflow
  • - Used Chroma as the vector database over references from computational argumentation research
  • - Integrated local LLM generation through Ollama with Mistral-7B for contextual answers
Quill RAG editor interface with a writing pane and Ollama chat assistant.
Quill RAG writing interface with an integrated Ollama chat assistant.