Small decisions. Interesting possibilities.Submit contentSubmit

How it uses Jev

The course demonstrates typed Jev decisions in three LangChain patterns: classify a support ticket with Choice, Noul, and Score questions; route each task to a fast or powerful model with Choice; and gate a destructive tool call on whether the user requested it. Application code reads the typed answer to report classifications, choose a model, or allow/block the tool.

What Jev decides

Support-ticket classification example (illustrative)Example answers · not a recorded Jev response · Source ↗
Question 1 · department
YOUR APP
INSTRUCTION

Choose the team that should handle this ticket.

STATE

The source-defined ticket text describes a payment integration outage, prior unanswered emails, and a cancellation threat.

JEV · CHOICE
  1. billing
  2. technical
  3. sales
  4. other
Question 2 · urgent
YOUR APP
INSTRUCTION

Decide whether the ticket requires a response within the hour, using the source criteria about blocking or financial loss.

STATE

The source-defined ticket text describes a payment integration outage, prior unanswered emails, and a cancellation threat.

JEV · NOUL
YesNo
Question 3 · frustration
YOUR APP
INSTRUCTION

Score the customer's apparent frustration using the three ordered levels from calm to angry.

STATE

The source-defined ticket text describes a payment integration outage, prior unanswered emails, and a cancellation threat.

JEV · SCORE
02

App workflow

  1. Classify a ticket

    Define Choice, Noul, and Score questions with criteria, pass ticket state and questions to `TypeSafeClassifier`, then read typed result maps.

  2. Route an agent task

    Configure fast and powerful model choices, attach router middleware to an agent, and invoke it with task text.

  3. Gate tool calls

    Register note tools and configure AutoMode to gate `delete_note`; invoke the agent, then inspect remaining notes and any blocked tool error.

Why it is interesting

The examples show how one probabilistic decision layer can serve different control points: extracting several ticket attributes in one request, choosing model cost/capability per task, and checking user intent before a destructive tool runs.