Benchmarks / Which Small AI Model Should You Run on a Mac? We Ran 312 Tests / Summarize + extract
summarize-extract-002
medium extractionreceipt
The prompt
user
Extract information from the receipt (OCR text from a photo) below. Reply with only a JSON object with exactly these keys:
- "merchant" (string): store name without the store number
- "date" (string "YYYY-MM-DD"): purchase date
- "subtotal" (number): subtotal before tax
- "tax" (number): tax amount
- "total" (number): total amount
- "payment_method" (string): one of "cash", "credit", "debit", "other"
- "card_last4" (string): last four digits of the card/account, as a string
- "items_count" (number): number of items sold
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.
Receipt (OCR text from a photo):
"""
FRESHWAY MARKET #0412
2280 HOLLIS AVE OAKDALE, MN 55128
TEL 651-555-0188
ST# 0412 OP# 117 TE# 03 TR# 08841
BANANAS 0.68 LB @ 0.59/LB
0.40 F
GRND BEEF 80/20 7.49 F
WHL MILK 1GAL 3.79 F
PAPER T0WELS 6PK 9.99 T
DISH S0AP 3.29 T
SUBT0TAL 24.96
TAX 1 7.375% 0.98
T0TAL 25.94
DEBIT TEND 25.94
CHANGE DUE 0.00
ACCT # ************7720
APPR CODE 4471O2
05/02/26 18:07:33
# ITEMS SOLD 5
"""What we expected
{
"kind": "extract",
"answer": {
"merchant": "Freshway Market",
"date": "2026-05-02",
"subtotal": 24.96,
"tax": 0.98,
"total": 25.94,
"payment_method": "debit",
"card_last4": "7720",
"items_count": 5
},
"fields": {
"merchant": {
"type": "string",
"accept": [
"Freshway Market #0412",
"Freshway Market 0412"
]
},
"date": {
"type": "date"
},
"subtotal": {
"type": "number"
},
"tax": {
"type": "number"
},
"total": {
"type": "number"
},
"payment_method": {
"type": "enum"
},
"card_last4": {
"type": "last4"
},
"items_count": {
"type": "number"
}
}
}What each model answered
MiMo-V2.6 Distill 9B
✓ pass · score 100 · 3.32 s
{"merchant": "FRESHWAY MARKET", "date": "2026-05-02", "subtotal": 24.96, "tax": 0.98, "total": 25.94, "payment_method": "debit", "card_last4": "7720", "items_count": 5}Scoring detail
{
"fields": {
"merchant": {
"score": 1,
"expected": "Freshway Market",
"got": "FRESHWAY MARKET"
},
"date": {
"score": 1,
"expected": "2026-05-02",
"got": "2026-05-02"
},
"subtotal": {
"score": 1,
"expected": 24.96,
"got": 24.96
},
"tax": {
"score": 1,
"expected": 0.98,
"got": 0.98
},
"total": {
"score": 1,
"expected": 25.94,
"got": 25.94
},
"payment_method": {
"score": 1,
"expected": "debit",
"got": "debit"
},
"card_last4": {
"score": 1,
"expected": "7720",
"got": "7720"
},
"items_count": {
"score": 1,
"expected": 5,
"got": 5
}
},
"fields_correct": 8,
"fields_total": 8
}Ornith-1.5 9B
✓ pass · score 100 · 2.77 s
{"merchant": "FRESHWAY MARKET", "date": "2026-05-02", "subtotal": 24.96, "tax": 0.98, "total": 25.94, "payment_method": "debit", "card_last4": "7720", "items_count": 5}Scoring detail
{
"fields": {
"merchant": {
"score": 1,
"expected": "Freshway Market",
"got": "FRESHWAY MARKET"
},
"date": {
"score": 1,
"expected": "2026-05-02",
"got": "2026-05-02"
},
"subtotal": {
"score": 1,
"expected": 24.96,
"got": 24.96
},
"tax": {
"score": 1,
"expected": 0.98,
"got": 0.98
},
"total": {
"score": 1,
"expected": 25.94,
"got": 25.94
},
"payment_method": {
"score": 1,
"expected": "debit",
"got": "debit"
},
"card_last4": {
"score": 1,
"expected": "7720",
"got": "7720"
},
"items_count": {
"score": 1,
"expected": 5,
"got": 5
}
},
"fields_correct": 8,
"fields_total": 8
}Granite 4.2 8B
✓ pass · score 100 · 3.25 s
{
"merchant": "FRESHWAY MARKET",
"date": "2026-05-02",
"subtotal": 24.96,
"tax": 0.98,
"total": 25.94,
"payment_method": "debit",
"card_last4": "7720",
"items_count": 5
}Scoring detail
{
"fields": {
"merchant": {
"score": 1,
"expected": "Freshway Market",
"got": "FRESHWAY MARKET"
},
"date": {
"score": 1,
"expected": "2026-05-02",
"got": "2026-05-02"
},
"subtotal": {
"score": 1,
"expected": 24.96,
"got": 24.96
},
"tax": {
"score": 1,
"expected": 0.98,
"got": 0.98
},
"total": {
"score": 1,
"expected": 25.94,
"got": 25.94
},
"payment_method": {
"score": 1,
"expected": "debit",
"got": "debit"
},
"card_last4": {
"score": 1,
"expected": "7720",
"got": "7720"
},
"items_count": {
"score": 1,
"expected": 5,
"got": 5
}
},
"fields_correct": 8,
"fields_total": 8
}Spark-X2.5 4B
✓ pass · score 100 · 2.42 s
{
"merchant": "FRESHWAY MARKET",
"date": "2026-05-02",
"subtotal": 24.96,
"tax": 0.98,
"total": 25.94,
"payment_method": "debit",
"card_last4": "7720",
"items_count": 5
}Scoring detail
{
"fields": {
"merchant": {
"score": 1,
"expected": "Freshway Market",
"got": "FRESHWAY MARKET"
},
"date": {
"score": 1,
"expected": "2026-05-02",
"got": "2026-05-02"
},
"subtotal": {
"score": 1,
"expected": 24.96,
"got": 24.96
},
"tax": {
"score": 1,
"expected": 0.98,
"got": 0.98
},
"total": {
"score": 1,
"expected": 25.94,
"got": 25.94
},
"payment_method": {
"score": 1,
"expected": "debit",
"got": "debit"
},
"card_last4": {
"score": 1,
"expected": "7720",
"got": "7720"
},
"items_count": {
"score": 1,
"expected": 5,
"got": 5
}
},
"fields_correct": 8,
"fields_total": 8
}Mellum2.1 12B-A2.5B
✓ pass · score 100 · 1.50 s
{
"merchant": "FRESHWAY MARKET",
"date": "2026-05-02",
"subtotal": 24.96,
"tax": 0.98,
"total": 25.94,
"payment_method": "debit",
"card_last4": "7720",
"items_count": 5
}Scoring detail
{
"fields": {
"merchant": {
"score": 1,
"expected": "Freshway Market",
"got": "FRESHWAY MARKET"
},
"date": {
"score": 1,
"expected": "2026-05-02",
"got": "2026-05-02"
},
"subtotal": {
"score": 1,
"expected": 24.96,
"got": 24.96
},
"tax": {
"score": 1,
"expected": 0.98,
"got": 0.98
},
"total": {
"score": 1,
"expected": 25.94,
"got": 25.94
},
"payment_method": {
"score": 1,
"expected": "debit",
"got": "debit"
},
"card_last4": {
"score": 1,
"expected": "7720",
"got": "7720"
},
"items_count": {
"score": 1,
"expected": 5,
"got": 5
}
},
"fields_correct": 8,
"fields_total": 8
}Ling-3.0-tiny (7.9B-A1.3B)
✓ pass · score 100 · 0.97 s
{"merchant": "FRESHWAY MARKET", "date": "2026-05-02", "subtotal": 24.96, "tax": 0.98, "total": 25.94, "payment_method": "debit", "card_last4": "7720", "items_count": 5}Scoring detail
{
"fields": {
"merchant": {
"score": 1,
"expected": "Freshway Market",
"got": "FRESHWAY MARKET"
},
"date": {
"score": 1,
"expected": "2026-05-02",
"got": "2026-05-02"
},
"subtotal": {
"score": 1,
"expected": 24.96,
"got": 24.96
},
"tax": {
"score": 1,
"expected": 0.98,
"got": 0.98
},
"total": {
"score": 1,
"expected": 25.94,
"got": 25.94
},
"payment_method": {
"score": 1,
"expected": "debit",
"got": "debit"
},
"card_last4": {
"score": 1,
"expected": "7720",
"got": "7720"
},
"items_count": {
"score": 1,
"expected": 5,
"got": 5
}
},
"fields_correct": 8,
"fields_total": 8
}MiniCPM5 2B
✗ fail · score 88 · 1.10 s
{"merchant":"FRESHWAY MARKET","date":"05-02-26","subtotal":24.96,"tax":0.98,"total":25.94,"payment_method":"debit","card_last4":"7720","items_count":5}Scoring detail
{
"fields": {
"merchant": {
"score": 1,
"expected": "Freshway Market",
"got": "FRESHWAY MARKET"
},
"date": {
"score": 0,
"expected": "2026-05-02",
"got": "05-02-26"
},
"subtotal": {
"score": 1,
"expected": 24.96,
"got": 24.96
},
"tax": {
"score": 1,
"expected": 0.98,
"got": 0.98
},
"total": {
"score": 1,
"expected": 25.94,
"got": 25.94
},
"payment_method": {
"score": 1,
"expected": "debit",
"got": "debit"
},
"card_last4": {
"score": 1,
"expected": "7720",
"got": "7720"
},
"items_count": {
"score": 1,
"expected": 5,
"got": 5
}
},
"fields_correct": 7,
"fields_total": 8
}K2-Horizon 0.9B
✗ fail · score 63 · 1.88 s
{
"merchant": "FRESHWAY MARKET",
"date": "2026-02-05",
"subtotal": 24.96,
"tax": 0.98,
"total": 25.94,
"payment_method": null,
"card_last4": null,
"items_count": 5
}Scoring detail
{
"fields": {
"merchant": {
"score": 1,
"expected": "Freshway Market",
"got": "FRESHWAY MARKET"
},
"date": {
"score": 0,
"expected": "2026-05-02",
"got": "2026-02-05"
},
"subtotal": {
"score": 1,
"expected": 24.96,
"got": 24.96
},
"tax": {
"score": 1,
"expected": 0.98,
"got": 0.98
},
"total": {
"score": 1,
"expected": 25.94,
"got": 25.94
},
"payment_method": {
"score": 0,
"expected": "debit",
"got": null
},
"card_last4": {
"score": 0,
"expected": "7720",
"got": null
},
"items_count": {
"score": 1,
"expected": 5,
"got": 5
}
},
"fields_correct": 5,
"fields_total": 8
}← summarize-extract-001All Summarize + extract itemssummarize-extract-003 →