Agents: this page is also Markdown; every page is in llms.txt.
Add examples
Examples are inputs, and the right answers when you have them. They show Facet what the job looks like in your app. You don't need many: Facet writes more on its own.
Where to add them
- When you make a Task: under the description, paste inputs or upload a file. Facet uses them to draft the Task and its Expectations.
- On an Expectation: open it and choose Upload JSONL or CSV to add examples to that one statement. Turn on Hide these to keep them for checks only.
- From your agent: the
add_examplestool adds examples to an Expectation.
Formats
CSV with a header row. Facet reads the input from a column named input, prompt, text or question, and the answer from output, completion, expected, answer or label. Without an input column, the whole row is the input.
input,output
"I was charged twice this month",billing
"The export button does nothing",bug
JSON lines, one object per line, with the same field names. Any other object is taken whole as the input.
{"input": "I was charged twice this month", "output": "billing"}
{"input": "The export button does nothing", "output": "bug"}
A JSON array of the same objects works too, as does plain text with one input per line. An upload reads up to 500 rows.
Answers with several fields. When a Task returns fields, the answer is the whole object: an object in JSON lines, or the same JSON as text in the CSV cell.
{"input": "I was charged twice this month", "output": {"label": "billing", "urgent": true}}
input,output
"I was charged twice this month","{""label"": ""billing"", ""urgent"": true}"
How many
- To start: 5 to 20 real inputs. More helps only if they show something new.
- Per Expectation: a few that show what it means, including the hard cases.
- Answers: optional. Without them Facet writes its own and checks them; with them, Facet matches yours.
Facet writes examples until each Expectation has about 200 to build from, and keeps some hidden to check with. You see every example it writes, and you can edit or remove any of them.
What to leave out
- Personal data you don't need. Facet treats everything you upload as private, but a Task rarely needs real names or account numbers to learn the job.
- Examples that disagree with each other. If two tickets that read the same have different labels, Facet can't know which one you mean.
Next steps
- Write good Expectations: what to say about your examples
- Privacy and data: who sees what you upload