Skip to content
Muhammad Ekram — home

01 / Projects

Projects

Each write-up states what was measured, on how much data, and against which baseline.

P01

Notes Agent

A tool-calling agent that manages a folder of Markdown notes, served as a CLI, an MCP server and an eval suite from one tool registry. Its prompt-injection defences live in code — a path allowlist and a human-approval gate — so they hold even when the model is fooled.

  • Python
  • MCP
  • Pydantic
  • FastAPI
  • pytest
  • Docker
  • GitHub Actions
Read the write-up: Notes Agent

injection attacks contained

injection attacks contained: 2/2

n = 2 attacks — an injected web page, a poisoned shared note

P02

Documentation Q&A (RAG)

Question answering over the FastAPI docs, grounded in the source with a citation on every claim, running fully offline. A 36-question golden set took hit@5 from 75% to 83.3% — and showed that two of three "obvious" retrieval upgrades were neutral or harmful.

  • Python
  • LangChain
  • FAISS
  • BM25
  • bge-small-en-v1.5
  • Qwen2.5-3B
  • llama.cpp
  • FastAPI
  • Docker
Read the write-up: Documentation Q&A (RAG)

hit@5

hit@5: from 75% to 83.3%

n = 36 questions · 141 docs