Handling Natural-Language Appointment Requests Without Endless Regex Rules
The phrase list always grows
Appointment requests look structured until real people write them. “Thursday at twelve” is one thing. “Sometime tomorrow afternoon,” “as soon as possible,” a dialect spelling, or a message that combines a qualification answer with a preferred time are different problems.
I do not want an endless collection of regular expressions to become the hidden product specification. Rules are excellent when the grammar is intentionally narrow. They become brittle when asked to stand in for open-ended language.
A hybrid path
The approach I prefer has three layers:
safe deterministic parsing
→ natural-language interpretation
→ calendar-backed fallback
The deterministic layer handles things that are structurally clear: selecting option one, confirming a proposal, cancelling, or giving an explicit date and time. A language model can help turn less predictable wording into structured intent and constraints.
The model is not the final authority. It may infer that “around lunch on Thursday” expresses a time preference. It cannot decide whether that time is within callback hours, respects lead time, or is still free.
Availability remains deterministic
Only the appointment rules and calendar should decide what can be booked. That protects the conversation from plausible-sounding but false promises.
When interpretation is unclear or the requested slot cannot be used, the useful response is not a technical error. It is a set of real alternatives. I wrote more about that product decision in falling back to real available appointment slots.
What I learned
LLMs are useful at the ambiguity boundary, not as a replacement for operational validation. The valuable split is interpretation first, deterministic booking second.
What should happen next
I want a regression suite with misspellings, relative dates, mixed languages, dialects, and deliberately ambiguous messages. The test set should grow from real failure modes, not from an imagined perfect grammar.