Skip to content

Tutorials

Eight Jupyter notebooks, in order. Each one runs offline, downloads no model, uses only synthetic data, and is executed in CI on every change — a tutorial that stopped working would fail the build.

The notebooks need Openbtk 0.7.0 or later (the tagged 0.6.0 that first added them was never published).

To run them yourself:

pip install "openbtk[text,ehr,langchain,langgraph,notebooks]" faiss-cpu
jupyter lab notebooks/
# Notebook You will
1 Your first pipeline load notes, de-identify, section and chunk them; read the run manifest; validate, run and replay from a config
2 De-identification see all five transform modes and the audit report, see what the default recognizer misses, and score it on labelled data
3 EHR to text load FHIR patients, select a cohort, render a timeline as text, and de-identify it like a note
4 Chunking for retrieval compare fixed-size and section-aware chunking on one note
5 Retrieval with provenance index chunks in FAISS, rerank by shared concepts, and answer with a SourceRef to every source
6 Guardrails and terminology check output for PHI and unsupported claims, and see what a partial vocabulary can and cannot say
7 Evaluation measure retrieval, clinical QA accuracy and groundedness, and check the checker
8 LangChain and LangGraph use Openbtk components as Runnables, a vector store and a graph node

The notebooks stand in for real models with two tiny offline providers (a hashing "encoder" and an extractive "LLM") that implement Openbtk's real interfaces, so swapping in a real model changes a line or two. They demonstrate the plumbing; they make no claim about retrieval or answer quality. For the numbers this project does publish, and what they do not show, see Benchmarks.