The Cooperative Principle in Machine Learning

If you're an attentive reader you'll notice I dropped Grice into the title card on the front. As a linguist, I believe better chatbots adhere to the maxims of human cooperation. As a practical computer user I believe chatbots are really justy UI elements like a slightly smarter text box, and most "Chatbots" are simply functional interfaces masquerading as conversation partners. So...

If the world is bifurcated: Information Seeking vs. Conversational, let's push that position a little. We'll give a super quick look at how we can get information in and out of UI components including chatbots in this regard and see if we can't do a little better taking our principled approach.

Phase 1: "Defective" Scripts

This is engagement without state; an over-engineered search bar. It ignores as Grice woulds say the Maxim of Relation because it doesn't know who or where you are. Therefore it's largely ignorant of, and irrelevant to any context.

Bot: Hello! Ask me for a joke.

The Side-by-Side Reality

Observe the same data delivery in a completely different way. On the left, the "Chatbot" adds artificial latency to simulate a persona. On the right, the "Widget" delivers the joke instantly. Without having to do a tremendous amount of introspection, you'll note the internet is full of sites like this. They're like ad word slot machines.

Functional Layer

System Idle. Awaiting Trigger...

Phase 2: Contextual Intelligence

To move from a "script" to a "partner," a system should know what it needs to know in order to be useful. In our case, it needs to understand your Where and your When and have some idea about Now. Imagine a virtual assistant booking a train from Princeton Junction to DC; it doesn't ask for your life story—it asks the relevant details. How many seats do you need? What date are you travelling? What time of day? Regional or Acela? Maybe what you want to pay for the seat... business or coach.

In our case, to discuss the week's text meaningfully, the system needs the precise timing of the Sabbos candle lighting. We could force you through four dropdown menus and a stack of ambiguous address fields—a relic of the 1990s web. Like with any good personal assistant, we should either prompt you, verbally or with text. Or really, since we're a chatbot we should be able to get it out of casual but directed conversation.

Instead, we'll use something more effective than "stupid chatter". We'll use Acctual Geo Coordinates and A Clock! One pin. One click. High-precision data that respects the Gricean Maxim of Quantity: giving the machine exactly what it needs to be cooperative, and nothing more.

Clarity Crushes Ambiguity

Human language is beautifully imprecise, but for a machine, it is a minefield of ambiguity. In a standard "dropdown" interface, a user might type "Princeton." Does the system assume New Jersey? West Virginia? British Columbia?

The misspelling rate for city names is high, and matching a user's typed string against a limited database list is a "First World Problem" that creates unnecessary friction. We could ask for a Zip Code, but that requires even more localized data processing—a "defective" and high-hassle approach.

To be maximally cooperative, we bypass the linguistic mess. One pin drop on the map below provides the Latitude and Longitude—the only data points required to calculate the exact temporal truth of the Sabbath.

Coordinates: Awaiting Selection...

Phase 3: A Better Product

We have deconstructed the script. We have captured the user's actual (self reported) state of affairs and now, we can rescue these pieces from the "defective" model and assemble them into a high-fidelity, agentive environment.

Follow the data to the Torah Go-llm — a stateful, cooperative assistant that understands exactly where, when, and who you are.