Benchmarks / Which Small AI Model Should You Run on a Mac? We Ran 312 Tests / Summarize + extract
summarize-extract-010
medium extractioninvoice
The prompt
user
Extract information from the utility bill (text version) below. Reply with only a JSON object with exactly these keys: - "utility" (string): utility company name - "account_number" (string): account number - "billing_start" (string "YYYY-MM-DD"): first day of the billing period - "billing_end" (string "YYYY-MM-DD"): last day of the billing period - "kwh_used" (number): kWh used this period - "amount_due" (number): amount due - "payment_date" (string "YYYY-MM-DD"): date the payment is due or will be drafted - "autopay" (boolean): true if the bill is paid automatically, else false Rules: include every key listed. Use null for any field that is not stated in the text (do not guess). Dates are YYYY-MM-DD. Times are HH:MM in 24-hour format. Amounts and counts are plain JSON numbers (no currency symbols, no commas). Phone numbers are in international format with + and the country code, for example +1 312 555 0100; leave out any national trunk prefix 0, so (0)20 or 020 becomes 20 after +44. Utility bill (text version): """ PRAIRIE VALLEY ELECTRIC COOPERATIVE Member: DOUGLAS & RUTH ABERNATHY Service address: 4471 County Road 12, Hesston KS Account No. 20-55871-03 Billing period: 09/14/2026 - 10/13/2026 (30 days) Meter readings: previous 48,212 current 48,913 Energy used this period: 701 kWh Same period last year: 655 kWh Energy charge 701 kWh x $0.1185 ....... $83.07 Facility charge ........................ $28.00 Power cost adjustment .................. $4.21 Total current charges .................. $115.28 AMOUNT DUE ............................. $115.28 This amount will be drafted automatically from your bank account on 11/02/2026. No payment is needed. """
What we expected
{
"kind": "extract",
"answer": {
"utility": "Prairie Valley Electric Cooperative",
"account_number": "20-55871-03",
"billing_start": "2026-09-14",
"billing_end": "2026-10-13",
"kwh_used": 701,
"amount_due": 115.28,
"payment_date": "2026-11-02",
"autopay": true
},
"fields": {
"utility": {
"type": "string"
},
"account_number": {
"type": "code"
},
"billing_start": {
"type": "date"
},
"billing_end": {
"type": "date"
},
"kwh_used": {
"type": "number"
},
"amount_due": {
"type": "number"
},
"payment_date": {
"type": "date"
},
"autopay": {
"type": "bool"
}
}
}What each model answered
MiMo-V2.6 Distill 9B
✓ pass · score 100 · 4.21 s
{"utility": "Prairie Valley Electric Cooperative", "account_number": "20-55871-03", "billing_start": "2026-09-14", "billing_end": "2026-10-13", "kwh_used": 701, "amount_due": 115.28, "payment_date": "2026-11-02", "autopay": true}Scoring detail
{
"fields": {
"utility": {
"score": 1,
"expected": "Prairie Valley Electric Cooperative",
"got": "Prairie Valley Electric Cooperative"
},
"account_number": {
"score": 1,
"expected": "20-55871-03",
"got": "20-55871-03"
},
"billing_start": {
"score": 1,
"expected": "2026-09-14",
"got": "2026-09-14"
},
"billing_end": {
"score": 1,
"expected": "2026-10-13",
"got": "2026-10-13"
},
"kwh_used": {
"score": 1,
"expected": 701,
"got": 701
},
"amount_due": {
"score": 1,
"expected": 115.28,
"got": 115.28
},
"payment_date": {
"score": 1,
"expected": "2026-11-02",
"got": "2026-11-02"
},
"autopay": {
"score": 1,
"expected": true,
"got": true
}
},
"fields_correct": 8,
"fields_total": 8
}Ornith-1.5 9B
✗ fail · score 88 · 3.74 s
```json
{
"utility": "PRAIRIE VALLEY ELECTRIC COOPERATIVE",
"account_number": "20-55871-03",
"billing_start": "2026-09-14",
"billing_end": "2026-10-13",
"kwh": 701,
"amount_due": 115.28,
"payment_date": "2026-11-02",
"autopay": true
}
```Scoring detail
{
"fields": {
"utility": {
"score": 1,
"expected": "Prairie Valley Electric Cooperative",
"got": "PRAIRIE VALLEY ELECTRIC COOPERATIVE"
},
"account_number": {
"score": 1,
"expected": "20-55871-03",
"got": "20-55871-03"
},
"billing_start": {
"score": 1,
"expected": "2026-09-14",
"got": "2026-09-14"
},
"billing_end": {
"score": 1,
"expected": "2026-10-13",
"got": "2026-10-13"
},
"kwh_used": {
"score": 0,
"expected": 701,
"got": "<missing>"
},
"amount_due": {
"score": 1,
"expected": 115.28,
"got": 115.28
},
"payment_date": {
"score": 1,
"expected": "2026-11-02",
"got": "2026-11-02"
},
"autopay": {
"score": 1,
"expected": true,
"got": true
}
},
"fields_correct": 7,
"fields_total": 8
}Granite 4.2 8B
✓ pass · score 100 · 3.66 s
{
"utility": "PRAIRIE VALLEY ELECTRIC COOPERATIVE",
"account_number": "20-55871-03",
"billing_start": "2026-09-14",
"billing_end": "2026-10-13",
"kwh_used": 701,
"amount_due": 115.28,
"payment_date": "2026-11-02",
"autopay": true
}Scoring detail
{
"fields": {
"utility": {
"score": 1,
"expected": "Prairie Valley Electric Cooperative",
"got": "PRAIRIE VALLEY ELECTRIC COOPERATIVE"
},
"account_number": {
"score": 1,
"expected": "20-55871-03",
"got": "20-55871-03"
},
"billing_start": {
"score": 1,
"expected": "2026-09-14",
"got": "2026-09-14"
},
"billing_end": {
"score": 1,
"expected": "2026-10-13",
"got": "2026-10-13"
},
"kwh_used": {
"score": 1,
"expected": 701,
"got": 701
},
"amount_due": {
"score": 1,
"expected": 115.28,
"got": 115.28
},
"payment_date": {
"score": 1,
"expected": "2026-11-02",
"got": "2026-11-02"
},
"autopay": {
"score": 1,
"expected": true,
"got": true
}
},
"fields_correct": 8,
"fields_total": 8
}Spark-X2.5 4B
✓ pass · score 100 · 2.86 s
{
"utility": "PRAIRIE VALLEY ELECTRIC COOPERATIVE",
"account_number": "20-55871-03",
"billing_start": "2026-09-14",
"billing_end": "2026-10-13",
"kwh_used": 701,
"amount_due": 115.28,
"payment_date": "2026-11-02",
"autopay": true
}Scoring detail
{
"fields": {
"utility": {
"score": 1,
"expected": "Prairie Valley Electric Cooperative",
"got": "PRAIRIE VALLEY ELECTRIC COOPERATIVE"
},
"account_number": {
"score": 1,
"expected": "20-55871-03",
"got": "20-55871-03"
},
"billing_start": {
"score": 1,
"expected": "2026-09-14",
"got": "2026-09-14"
},
"billing_end": {
"score": 1,
"expected": "2026-10-13",
"got": "2026-10-13"
},
"kwh_used": {
"score": 1,
"expected": 701,
"got": 701
},
"amount_due": {
"score": 1,
"expected": 115.28,
"got": 115.28
},
"payment_date": {
"score": 1,
"expected": "2026-11-02",
"got": "2026-11-02"
},
"autopay": {
"score": 1,
"expected": true,
"got": true
}
},
"fields_correct": 8,
"fields_total": 8
}Mellum2.1 12B-A2.5B
✓ pass · score 100 · 1.88 s
{
"utility": "PRAIRIE VALLEY ELECTRIC COOPERATIVE",
"account_number": "20-55871-03",
"billing_start": "2026-09-14",
"billing_end": "2026-10-13",
"kwh_used": 701,
"amount_due": 115.28,
"payment_date": "2026-11-02",
"autopay": true
}Scoring detail
{
"fields": {
"utility": {
"score": 1,
"expected": "Prairie Valley Electric Cooperative",
"got": "PRAIRIE VALLEY ELECTRIC COOPERATIVE"
},
"account_number": {
"score": 1,
"expected": "20-55871-03",
"got": "20-55871-03"
},
"billing_start": {
"score": 1,
"expected": "2026-09-14",
"got": "2026-09-14"
},
"billing_end": {
"score": 1,
"expected": "2026-10-13",
"got": "2026-10-13"
},
"kwh_used": {
"score": 1,
"expected": 701,
"got": 701
},
"amount_due": {
"score": 1,
"expected": 115.28,
"got": 115.28
},
"payment_date": {
"score": 1,
"expected": "2026-11-02",
"got": "2026-11-02"
},
"autopay": {
"score": 1,
"expected": true,
"got": true
}
},
"fields_correct": 8,
"fields_total": 8
}Ling-3.0-tiny (7.9B-A1.3B)
✓ pass · score 100 · 1.20 s
{"utility": "Prairie Valley Electric Cooperative", "account_number": "20-55871-03", "billing_start": "2026-09-14", "billing_end": "2026-10-13", "kwh_used": 701, "amount_due": 115.28, "payment_date": "2026-11-02", "autopay": true}Scoring detail
{
"fields": {
"utility": {
"score": 1,
"expected": "Prairie Valley Electric Cooperative",
"got": "Prairie Valley Electric Cooperative"
},
"account_number": {
"score": 1,
"expected": "20-55871-03",
"got": "20-55871-03"
},
"billing_start": {
"score": 1,
"expected": "2026-09-14",
"got": "2026-09-14"
},
"billing_end": {
"score": 1,
"expected": "2026-10-13",
"got": "2026-10-13"
},
"kwh_used": {
"score": 1,
"expected": 701,
"got": 701
},
"amount_due": {
"score": 1,
"expected": 115.28,
"got": 115.28
},
"payment_date": {
"score": 1,
"expected": "2026-11-02",
"got": "2026-11-02"
},
"autopay": {
"score": 1,
"expected": true,
"got": true
}
},
"fields_correct": 8,
"fields_total": 8
}MiniCPM5 2B
✓ pass · score 100 · 1.48 s
{
"utility": "PRAIRIE VALLEY ELECTRIC COOPERATIVE",
"account_number": "20-55871-03",
"billing_start": "2026-09-14",
"billing_end": "2026-10-13",
"kwh_used": 701,
"amount_due": 115.28,
"payment_date": "2026-11-02",
"autopay": true
}Scoring detail
{
"fields": {
"utility": {
"score": 1,
"expected": "Prairie Valley Electric Cooperative",
"got": "PRAIRIE VALLEY ELECTRIC COOPERATIVE"
},
"account_number": {
"score": 1,
"expected": "20-55871-03",
"got": "20-55871-03"
},
"billing_start": {
"score": 1,
"expected": "2026-09-14",
"got": "2026-09-14"
},
"billing_end": {
"score": 1,
"expected": "2026-10-13",
"got": "2026-10-13"
},
"kwh_used": {
"score": 1,
"expected": 701,
"got": 701
},
"amount_due": {
"score": 1,
"expected": 115.28,
"got": 115.28
},
"payment_date": {
"score": 1,
"expected": "2026-11-02",
"got": "2026-11-02"
},
"autopay": {
"score": 1,
"expected": true,
"got": true
}
},
"fields_correct": 8,
"fields_total": 8
}K2-Horizon 0.9B
✓ pass · score 100 · 1.78 s
{
"utility": "PRAIRIE VALLEY ELECTRIC COOPERATIVE",
"account_number": "20-55871-03",
"billing_start": "2026-09-14",
"billing_end": "2026-10-13",
"kwh_used": 701,
"amount_due": 115.28,
"payment_date": "2026-11-02",
"autopay": true
}Scoring detail
{
"fields": {
"utility": {
"score": 1,
"expected": "Prairie Valley Electric Cooperative",
"got": "PRAIRIE VALLEY ELECTRIC COOPERATIVE"
},
"account_number": {
"score": 1,
"expected": "20-55871-03",
"got": "20-55871-03"
},
"billing_start": {
"score": 1,
"expected": "2026-09-14",
"got": "2026-09-14"
},
"billing_end": {
"score": 1,
"expected": "2026-10-13",
"got": "2026-10-13"
},
"kwh_used": {
"score": 1,
"expected": 701,
"got": 701
},
"amount_due": {
"score": 1,
"expected": 115.28,
"got": 115.28
},
"payment_date": {
"score": 1,
"expected": "2026-11-02",
"got": "2026-11-02"
},
"autopay": {
"score": 1,
"expected": true,
"got": true
}
},
"fields_correct": 8,
"fields_total": 8
}← summarize-extract-009All Summarize + extract itemssummarize-extract-011 →