Skip to main content

Models

Closed beta. Inference access is granted per engagement. Reach out to get a key.

You can ask a language model what a person will do next. It will answer fluently, because it has read an enormous amount of what people say about themselves: reviews, surveys, forum posts, interviews. What it has barely seen is what those same people then did.

Our models are trained the other way round. The training data is ordered sequences of real actions with real consequences attached, so predicting the next one is the task the model was built for rather than a thing it infers from self-report.

That is the claim. It is falsifiable, it is the one we care most about testing, and every engagement starts by scoring it against a holdout you withheld from us.

What that buys you

QuestionA language modelA behavioral model
What would someone say about this product?Strong. This is what it was trained on.Not the task.
What will this person do next?Inferred from how people describe themselves.Learned directly from sequences of what people did.
Which two of these people fit together?Reasons over stated preferences.Scored on outcomes that actually held.
How does a population respond to a change?One persona at a time, from description.Run the sequence model forward over a real distribution.

A behavioral model is narrower than a language model and better inside that range. If your question is really about language, use a language model. We are not trying to win that comparison.

What we serve

ModelTaskStatus
jean-rec-1Next-item recommendation over your catalogClosed beta

More heads come off the same pretrained backbone as they get good enough to be adaptations rather than separate systems. See Foundation models for how that is sequenced, and Simulation for where it leads.

Three ways to call a model

The endpoints overlap less than they look. Pick by what you want back.

You wantEndpointBound to
Ranked items from your catalogPOST /generateA fitted tokenizer
A distribution over what happens next, including action typePOST /models/{id}/predictA model
A vector for a person, to use in your own modelPOST /models/{id}/embedA model

/generate decodes semantic IDs under a beam constrained to your catalog, so everything it returns is a real item. /predict is the raw backbone: it does not need a tokenizer and it can answer about actions that are not catalog items at all. /embed skips prediction entirely and hands you the representation.

Deployment

HostedDedicatedYour environment
Operated byUsUsYou
IsolationShared capacityReserved capacityFull
Data leaves your boundaryYes, under the agreed scopeYes, under the agreed scopeNo
WeightsNot exposedNot exposedDelivered to you

Which one is right is usually decided by your data governance rather than by latency. That conversation happens during scoping.


Request beta access: jonathan@jeantechnologies.com