Before you start, configure Volcengine AK/SK credentials or obtain valid short-lived STS credentials through
agentkit login. Evaluation is currently in Preview. The CLI first resolves whether the current account uses the Coze or TEA evaluation backend; run agentkit eval backend to inspect the resolved backend.End-to-end flow
1
Initialize and deploy an agent
Follow High-code agents to initialize a project, configure its model, and deploy it as Supply the actual Runtime ID. The remaining examples show the TEA backend. Coze and TEA have different templates and version requirements; use the results returned for your account
qa-agent, or use an existing callable Runtime. Verify the target and evaluation backend2
Create a dataset and add cases
The dataset is the data source for an experiment. Create it with the After adding, run
input and reference_output fields, then add cases one at a time or in bulk:cases.json is an array of {field: value} objects:cases.json
agentkit eval dataset show qa-set to verify the cases.3
Create an evaluator
An evaluator is the judging model that assigns scores. Derive one from a built-in template and point it at your own Ark model endpoint:The TEA backend requires an evaluator version. Replace the template placeholder with a name returned by the list command, then submit a version after creating or updating the draft. Coze users skip this step and omit
--evaluator-version 0.0.1 from subsequent commands:4
Run an experiment
Submit the dataset, evaluator, and target runtime as one experiment. On the first run, add
--dry-run to confirm the resolved dataset version, evaluator version, target, and field mapping are correct:On Coze you may omit
--evaluator-version; on TEA you must pass one --evaluator-version for each --evaluator. To confirm available target versions, first run agentkit eval target version-list --source-target-id <source-target-id>.5
View results
Use the returned experiment id to view the aggregate scores and per-case results:
6
Iterate
Improve the agent’s prompt, tools, or model based on the results, redeploy, then run the experiment again with the same dataset and evaluator. Compare the aggregate scores and per-case results of the two runs to judge whether the change is an improvement or a regression:
Wire it into CI
The evaluation commands need no browser login and all support--json, so they can be orchestrated directly in a CI pipeline: the experimentId returned by eval run feeds into eval experiment show or results.
Practical guidance
- Fix the dataset: use the same dataset across iterations so results can be compared side by side. Stabilize it before changing the agent.
- Keep only stable inputs and reference answers: a dataset typically needs only
inputandreference_output. The model’s actual output is produced by the evaluated target during the experiment and should not be written into the dataset. - Prefer deriving evaluators from built-in templates:
evaluator template listprovides mature scoring rubrics; clone one and swap in your own judge model rather than writing one from scratch. - Use a strong judging model: point
--modelat a capable Ark endpoint; weaker models produce noisier scores. - Weight multiple evaluators: a single
eval runcan take several--evaluatorflags to score across dimensions such as relevance and completeness. - Confirm the target runtime is online:
--targetmust point to a deployed, responsive runtime, or cases will fail. When cases fail without an experiment-level error, the target runtime usually did not respond correctly — it is not an evaluation-config problem.