An eval is a test suite for a model or an agent workflow. It pairs inputs with a definition of an acceptable result, and it is run the same way every time so that changes can be compared. A benchmark is someone else's eval; yours is built from your own tasks, your own failures, and your own definition of done.
A useful eval has three properties. The tasks come from real work, not from a vendor page. The rubric is written before the outputs are seen, so it measures the result rather than the model's tone. The run is reproducible: same prompt, same settings, same model version, same fixtures.
For an agent, evaluate the trajectory as well as the final answer: which tools were called, with what arguments, and what changed outside the workspace. Keep the set in the repository and rerun it when the model, prompt, or tool schema changes. See test an agent workflow and test a model on your own tasks.