Synthetic Faces
A synthetic face is defined by a boolean formula over existing faces. Its psychological primitives are assembled on the fly — no separate compilation, no extra training. The formula is evaluated at inference time by taking the union, intersection, or difference of the contributing faces’ compiled knowledge.Formula syntax
| Operator | Meaning |
|---|---|
a | b | Union — everything from a and everything from b |
a & b | Intersection — only what a and b share |
a - b | Difference — everything from a that is not in b |
a ^ b | Symmetric difference — everything unique to either a or b |
Create a synthetic face
Pass aformula instead of uploading documents:
username. All referenced faces must:
- Be owned by you
- Be concrete (non-synthetic) faces
422.
Update the formula
Chat with a synthetic face
Exactly the same as chatting with any face:Validation rules
- All referenced usernames must be owned by you at create/update time.
- Referenced faces must be concrete (not synthetic themselves).
- The formula must be a valid boolean expression using
|,&,-,^, parentheses, and valid usernames.
422 Unprocessable Entity with a description of the problem.
How it works
When a chat request arrives for a synthetic face, the profiler service:- Evaluates the formula, reading the compiled knowledge graphs for each referenced face.
- Applies the boolean operations to produce a merged knowledge set.
- Retrieves and ranks the most relevant primitives from the merged set.
- Injects them into the system prompt as if they were compiled for a single face.
Use cases
- Blended expertise:
designer | engineer— draw on both knowledge domains in a single persona. - Constrained character:
alice & mentor— only the facets of Alice that overlap with a mentor archetype. - Differenced persona:
senior-dev - junior-dev— the characteristics that distinguish a senior developer from a junior one. - A/B testing: Create
alice | bobandalice & bobto compare unioned vs. intersected personas.