Postal address parsing has two well-worn approaches: hand-tuned rule engines that break down outside their home locale, and large language models too heavy to ship to a browser. Mailwoman is a compact neural sequence labeler fed by reference data (postal registries, gazetteers, postcode indexes) supplied to the model as soft evidence rather than hard overrides.
The result is a full geocoder. A shared ~40 MB int8 ONNX model (SentencePiece tokenization; BIO decoding with transition masking and Viterbi) covers every locale, and each additional locale ships as an overlay of a few hundred kilobytes. The same weights run under Node.js and in the browser over WebGPU or WASM, next to a SQLite-WASM gazetteer, so the entire parse-then-geocode path can execute client-side. For existing tooling, Mailwoman exposes drop-in Nominatim, Photon, and libpostal-compatible APIs.
This talk covers what we learned shipping it: how we ruled out the rules-engine, and how OpenStreetMap, Overture, Who's on First, and national open-address registers (BAN in France, LINZ in New Zealand, TIGER in the US) feed the training and resolution pipeline. We close it off with the recipe for the en-GB build, and how the same pipeline can be used to add any locale with a gazetteer and a labeled corpus.
Attendees will leave able to evaluate whether their own address pipeline could benefit from a neural parser, and with a concrete recipe for adding a new locale.