Sample report · one-day evaluation

Before you train, measure.

This is what you receive after the one-day evaluation (€1,900, credited against a pilot): the task, the frozen test set, the scores, what goes wrong and a written recommendation.

Built from our own public work (Sraka 27B), not from a customer. A customer report has the same sections, on your task and your data. All numbers are on the model card.

TaskSlovenian assistant that answers and calls tools
Test sets3,500 + 2,471 examples, frozen
Compareduntuned open 27B model vs tuned
Timeone working day

The task and what "good" means

An assistant that answers in fluent, correct Slovenian and, in the middle of a conversation, decides whether to call a tool, which one and with which arguments. "Good" was agreed before any model was run:

  • Slovenian knowledge and reasoning: the share of correct answers on seven Slovenian tasks.
  • Tool use: four separate scores, because they fail differently: should it call at all, the right tool, the right arguments, and staying silent when no tool is needed.

In a customer evaluation this step uses fifty of your real examples and the people who know the work. The definition of "good" is written down and signed off before measuring, so the result cannot be argued afterwards.

The frozen test sets

  • Slovenian-LLM-Eval (cjvt/slovenian-llm-eval): 500 examples per task, 7 tasks, 3,500 in total, zero-shot, the same code for every model.
  • Next-step tool calling: 2,471 held-out conversation steps the model never saw in training.

Frozen means the sets are versioned and never change. Every later model, retrain or update is scored on the same examples, which is how a regression is caught before it reaches users.

Results: Slovenian knowledge and reasoning

TaskUntuned baseTunedΔ
arc_easy0.9680.982+0.014
arc_challenge0.9420.950+0.008
hellaswag0.6860.752+0.066
piqa0.8520.862+0.010
openbookqa0.8760.920+0.044
winogrande0.7080.748+0.040
boolq0.8780.886+0.008
Average0.8440.871+0.027

The evaluation itself produces the first column. The second shows what training later changed, so you can see both halves of the cycle on one page.

Results: tool use

ScoreUntuned baseTunedΔ
Decides correctly whether to call a tool0.8930.922+0.029
Picks the right tool0.7920.801+0.009
Fills in the right arguments0.6280.651+0.023
Stays silent when no tool is needed0.8470.956+0.109

The biggest gain is the least visible one: knowing when not to call a tool. An untuned model calls a tool in roughly one of seven cases where it should just answer. In production that means wasted calls, and in a system with approvals, a person approving things nobody asked for.

What goes wrong, with examples

Scores hide the type of error, so every report lists the failures that matter, grouped by cause:

Knowledge gap · still present after trainingAsked who wrote Cvetje v jeseni, the model answers Oton Župančič. It is Ivan Tavčar.
Knowledge gap · fixed by continued pre-trainingAn earlier version invented the height of Triglav and named non-existent "greatest Slovenian poets". After continued pre-training on Slovenian text it answers 2,864 m and names Prešeren, Kosovel and Župančič.
Trade-off · a deliberate choiceCutting tool-calling data from 96 % to 63 % of the training mix cost about 1.9 points in picking the right tool and bought 2.9 points of Slovenian. The report states such trade-offs so you can choose.

This part decides what to do next: knowledge gaps call for text or targeted data, format errors for more examples, and some errors are simply not worth fixing.

Recommendation

  • Train: yes, for tool use. The gap in "stay silent when no tool is needed" is large and it closes with training.
  • Slovenian: continued pre-training, not longer fine-tuning. A second pass over the same fine-tuning data bought nothing: tool scores moved by less than a point and Slovenian dropped slightly. Slovenian text is what moved the knowledge scores.
  • Keep checking facts. Knowledge errors remain. For answers that must be exact, pair the model with retrieval from your documents.
  • Deploy locally as GGUF on one workstation for a small team; the same weights serve a department through vLLM.
Next step: a fixed-price pilot. Pilot S (€3,900, 2–3 weeks) when your data exists; Pilot M (€12,000, 4–5 weeks) when it has to be built. The evaluation fee is credited.

What a customer report adds

  • Your fifty examples and your definition of "good", signed off before measuring.
  • The same test set scored on several candidates, including a large model through an API, so you see what training has to beat.
  • A cost comparison: API fees at your volume against your own model.
  • Where the data stayed: your examples are anonymised and not used for anything else.

Want this on your task? One day, fixed price, credited against a pilot.