Sometimes, you don’t need an AI model to generate text.

You need it to route a support ticket, choose the right tool, or make a structured decision.

In my previous JEV vs. SemIf benchmark, I tested whether a small local model could compete with JEV.

This time, I tested Cloudflare’s purpose-built Clef models through llama.cpp.

Three local variants. Three tests. 1,370 decisions per model.

And the biggest surprise?

Clef-Flash beat both 27B Clef variants on two of the three tests.

Do you prefer watching instead? Check out the full breakdown and live benchmark video here:

How Clef Works

Clef takes a state plus typed questions and returns structured decisions with probabilities.

Cloudflare built the 27B model from Qwen3.8-27B with a custom decision head, while Clef-Flash uses a smaller Qwen3.5-9B backbone.

In llama.cpp, both run through:

POST /v1/systemone

The API supports:

  • Choice -pick from named options

  • Score -score against ordered levels

  • Noul -estimate whether something is true

Benchmark Setup

  • GPU: RTX 5060 Ti 16GB

  • CPU: Intel i9-9900K

  • Runner: llama.cpp + CUDA

  • Models: Clef Q8_0, Clef Q4_K_M, Clef-Flash Q8_0

  • Hosted comparison: JEV 1.13

  • Total: 770 source records / 1,370 decisions per model

These were text-only tests.

Test 1 -Email Triage

300 support tickets, 900 total decisions.

Each ticket required:

  • Queue

  • Priority

  • Human-attention decision

Model

Accuracy

Avg. time / decision

JEV 1.13

53.6%

15 ms

Clef Q8_0

50.8%

394 ms

Clef Q4_K_M

50.7%

384 ms

Clef-Flash Q8_0

47.2%

151 ms

Winner: JEV

The two 27B Clef variants were almost identical.

Flash gave up some accuracy, but was much faster.

Test 2 -AI Model Router

150 prompts routed to:

  • Cheap model

  • Mid-tier model

  • Frontier model

  • Human approval

Model

Accuracy

Avg. time / decision

JEV 1.13

97.3%

32 ms

Clef Q8_0

93.3%

552 ms

Clef Q4_K_M

93.3%

508 ms

Clef-Flash Q8_0

94.0%

134 ms

Winner: JEV

But Clef-Flash was the strongest local model.

Test 3 -BANKING77

320 examples across 16 closely related banking intents.

Model

Accuracy

Avg. time / decision

JEV 1.13

89.1%

31 ms

Clef Q8_0

90.9%

800 ms

Clef Q4_K_M

90.0%

762 ms

Clef-Flash Q8_0

92.2%

222 ms

Winner: Clef-Flash

All three Clef variants beat JEV on this test.

The number of wrong answers made with at least 80% confidence was also interesting:

Model

Confidently wrong

JEV 1.13

25

Clef Q8_0

2

Clef Q4_K_M

1

Clef-Flash Q8_0

2

Run Clef Locally

These are the three variants I tested:

Start the server:

./build-cuda/bin/llama-server \
  -m "/path/to/Clef-Q8_0.gguf" \
  -ngl auto \
  -c 16384 \
  -fa on \
  --host 127.0.0.1 \
  --port 8091

Then send a decision request:

curl http://127.0.0.1:8091/v1/systemone \
  -H "Content-Type: application/json" \
  -d '{
    "state": "The customer says their invoice was charged twice.",
    "questions": {
      "route": {
        "type": "choice",
        "instructions": "Which team should handle this ticket?",
        "criteria": {
          "billing": "Charges, invoices, and payments.",
          "technical": "Software errors and troubleshooting.",
          "sales": "Purchasing and product enquiries."
        }
      }
    }
  }'

The Verdict

Across my tests:

  • Email triage: JEV won

  • Model routing: JEV won

  • BANKING77: Clef-Flash won

  • Fastest local model: Clef-Flash

  • Best overall local model: Clef-Flash

The 27B Clef models were solid, but Clef-Flash is the one that stood out.

It’s much smaller, much faster on my hardware, and still delivered the strongest local accuracy on two of the three tests.

JEV still has the edge on some workloads, but local decision models are now competitive enough that I wouldn’t automatically assume the hosted option is better.

Want the Prompts and Datasets?

They’re all in my previous benchmark post.

For more deep dives into open-source AI, benchmarks, and local LLM architectures, make sure to check out my YouTube channel HERE.

Until next time,

Keep building.