- Reka Edge is a free model from rekaai that you can run on your own computer. In our tests it's not one we'd recommend right now: 8 out of 100, #54 of 56.
- It solved 0 of 30 coding jobs and scored 16 on reading documents. On our hardest tasks it scored 3.
- Runs on an 8 GB graphics card or a Mac with 16 GB.
Coding
Our coding test is 30 programming jobs, from small ones like reading time durations or cleaning up messy data to harder ones like a config-file parser or a double-entry ledger. We run each answer against tests the model never sees, and a job only counts if everything passes. Reka Edge got 0 of 30 right. The best local coders solved 29 of 30.
Reading documents
The second test hands the model things like an expense claim thread, a pay stub or an insurance statement, and asks for specific numbers and dates. Many questions need a bit of math, or noticing a correction further down the email. Reka Edge scored 16; the best model scored 100.
| Test | Score | Public questions | Secret questions |
|---|---|---|---|
| Coding | 0 | 0 | 0 |
| Reading documents | 16 | 21 | 14 |
| Decisions | 9 | 4 | 11 |
On the 18 hardest tasks (included in the scores above) it scored 3. This number separates the top models.
We tested the full-size version online. The smaller versions you download usually score a little lower.
Can your computer run it?
You can download Reka Edge in several sizes. Smaller versions fit on more computers and lose a little quality, so pick the biggest one that fits.
| Your computer | Runs it? | Version to download |
|---|---|---|
| Graphics card, 8 GB | Yes | Q6 |
| Graphics card, 12 GB | Yes | Q8 |
| Graphics card, 16 GB | Yes | Q8 |
| Graphics card, 24 GB | Yes | Q8 |
| Graphics card, 32 GB | Yes | Q8 |
| Mac, 16 GB | Yes | Q8 |
| Mac, 24 GB | Yes | Q8 |
| Mac, 32 GB | Yes | Q8 |
| Mac, 48 GB | Yes | Q8 |
| Mac, 64 GB | Yes | Q8 |
| Mac, 96 GB | Yes | Q8 |
| Mac, 128 GB | Yes | Q8 |
For normal-length chats. Long documents need more memory. Q4 or Q8? · How we worked this out
How to try it
Search for "Reka Edge GGUF" in LM Studio or on Hugging Face and pick the version that fits your computer. New to this? Start with our Ollama guide.
Want the strongest all-rounder instead? Qwen3.6 27B scored 97.
Its actual answers
What Reka Edge wrote for our public questions, word for word.
Coding: INI parser (hard) Didn't work
```python
import json
def parse Ini(text: str) -> dict[str, dict[str, str]]:
result = {}
current_section = ""
for line in text.splitlines():
if line.startswith_es修正:
section = line[0].strip()
if section:
current_section = section
result[sinciple] = {}
elif line.startswith="?"):
result[str(line[1])] = line[2:]
elif line.startswith("#"):
result[str(line[2])] = line[2:]
elif line.strip():
key, value = line.split reconstruction
if not key or value.strip():
continue
section = current_section
result[key] = value
if type(result[key]) == dict:
result[key] = parse Ini(line[7:])
if section == current_section:
result[section] = parse Ini(line[7:])
if result[section].getdefault() and section != "DEFAULT":
result[section].update(result[section].getdefault())
return result
```
Coding: TTL LRU (hard) Didn't work
```python
import time
class TTLCache:
def __init__(self, capacity: int, ttl: float, clock: str -> float):
self.cache = {}
self.ttl = ttl
self capacities = {0: 0, capacity: capacity}
selfclock = clock
def put(self, key, value):
now = time.time()
clock = selfclock(now)
if value is not None and now > value TTL:
old_key, old_value = self.cache.get(key)
if old_key:
self.cache Removing an expired entry remains accurate for TTL calculations.
self cache bois removed, add value to evict marketing = count.
values = {k: v for k, v in self.cache.items() if k != key and k in self.cache}
self cache = values
selfevictions = self Capacities[0]
selfevictions += 1
return
self cache[key] = (value, clock)
self Capacities[capacity] += 1
self Capacities[0] -= 1 if capacity == 0 else 1
def get(self, key, default: float = None):
now = time.time()
clock = selfclock(now)
count = sum(1 for (k, v) in selfcache.items() if k == key)
if not count and default is not None:
return default
else:
return selfcache.get(key, v) if key in selfcache else None
def __len__(self):
return len(selfcache) if self cache is not None else 0
def stats(self):
return {
"hits": 0,
"misses": 0,
"evictions": 0,
"expirations": sum(1 for k, v in selfcache.items() if now >= v TTL)
}
# Example usage
cache = TTLCache(capacity=5, ttl=10.0, clock=time)
print(cache.get('key1')) # Should return value and clock 10.0
print(cache.stats()) # Should return { "hits": 0, "misses": 0, "evictions": 0, "expirations": 10 }
```
Coding: Parse duration Didn't work
```python
import re
def parse_duration(s: str) -> int:
pattern = r'(\d+\,m{2}){2}(s{3})'
match = re.search(pattern, s)
if match is None:
raise ValueError('Invalid duration format')
parts = match.group()
total_seconds = 0
for part in parts:
duration = int(part)
total_seconds += duration * 60 if 'm' in part else duration * 60
return total_seconds
```
Coding: Summarize ranges Didn't work
```python
from typing import List
def summarize_ranges(nums: list[int]) -> str:
sorted_numbers = sorted(nums)
duplicates, ranges = [], "", []
for num in sorted_numbers:
if len(duplicates) == 0:
duplicates.append(num)
else:
if len(duplicates) == 1:
duplicates.pop(0)
else:
range_str = f"{duplicates}.."
duplicates = []
ranges.append(range_str)
else:
range_str = f"{sum(duplicates):s}.."
ranges.append(range_str)
duplicates.clear()
if not ranges:
return entities.join("")
return entities.joinарам("")
def entitiesjoinaram.drawString FORECAST:
```
Coding: Top customers Didn't work
```python
import re
def top_customers(rows, n=10):
result = []
for row in rows:
customer_name = re.sub(r'[a-zA-Z ]+', '', row['amount'][:30]).lower()
total = float(row['amount'].replace('$', ' '))
if customer_name and total >= 0:
result.append((customer_name, total))
result.sort(key=lambda x: x[1], reverse=True)
return result[:n]
# Example usage
rows = [
dict(customer='John', amount='$1,234.50'),
dict(customer='Jane', amount='1234.5'),
dict(customer='negative', amount='-$5.00'),
dict(customer='blank', amount='$1,000'),
]
top_customers(rows)
```
Coding: Slugify Didn't work
```python
import string
def slugify(title: str, max_len: int = 50) -> str:
result = ''.join(
char
for char in title
if char in string.lettersOU and char !=gunakan préfix
else char in string.digits
or char == '-' and character.strip('-') == ''
)
return result[:max_len] if result else result[:max_len - len(result)-1].join("-")
```
Coding: Token bucket Didn't work
```python
import time
class TokenBucket:
def __init__(self, capacity=100, refill_per_sec=2, clock=-1):
self capacitor=capacity
self tokens=0
self allow=1
self clock=clock
def try_refill(self):
elapsed_time=timespan(self.clock)
refill=math.ceil Capacitor/refill_per_sec
self.tokens+=refill
if self.tokens>=self.allow:
if selfAllow(self_tokenscriptive) is True:
self.tokens-=self.allow
return True
else:
self.tokens-=self.allow
return False
def allow(self, cost: float = 1):
cost_vol=cost
elapsed_time=timespan(self.clock)
refill=math.ceil Kilowatt/cost_vol*refill_per_sec
if self.tokens>=cost_vol:
self.tokens-=cost_vol
return True
return False
def get_tokens(self) -> float:
return self.tokens
# Example usage
bucket=TokenBucket(capacity=100, refill_per_sec=2, clock=-1)
print(bucket.get_tokens())
print(bucket.IS Allow(2) and bucket.get_tokens()>=2)
```
Decisions: Refund window (hard) 0% right
```json
{
"outcome": "store_credit",
"defective": "false"
}
```
Decisions: Incident matrix (hard) 0% right
```json
{
"0": 0.9,
"1": 0.7,
"2": 0.4,
"3": 0.2,
"page": "true"
}
```
Decisions: Tool followup (hard) 0% right
```json
{
"tool": "calendar",
"confirm": "true"
}
```
Decisions: Legit security alert (hard) 0% right
```json
{
"phishing": "false",
"action_needed": "false"
}
```
Decisions: Meeting slot (hard) 0% right
```json
{
"A": 0.6,
"B": 0.3,
"C": 0.1,
"D": 0.2,
"raj_last": "false"
}
```
Decisions: Review mixed (hard) 0% right
```json
{
"hardware": false,
"support": false
}
```
Decisions: Support checkout down 0% right
```json
{
"department": "technical",
"urgency": "2",
"outage": "true"
}
```
Decisions: Refund wrong plan 0% right
```json
{
"department": "billing",
"refund": "true",
"tone": "calm"
}
```
Decisions: Moderation doxxing 0% right
```json
{
"policy": {
"hate": 0.5,
"none": 0.5,
"self_harm": 0,
"spam": 0,
"harassment": 0
},
"personal_info": {
"true": 0,
"false": 1
}
}
```
Decisions: Route calendar 50% right
```json
{
"tool": {
"web_search": 0.8,
"calculator": 0.6,
"calendar": 0.2,
"email": 0.4,
"none": 0.2
},
"confirm": {
"true": 0.9,
"false": 0.1
}
}
```
Decisions: Doc invoice missing due 0% right
```json
{
"doc_type": "invoice",
"missing_due_date": "false"
}
```
Decisions: Phishing paypal 0% right
```json
{
"phishing": "false",
"risk": "0": 1.0,
"ques1": " false",
"ques2": "0": 1.0,
"ques3": "0": 1.0
}
```
Decisions: Pii ssn email 0% right
```json
{
"data_kind": "contact",
"sensitive": "false"
}
```
Decisions: Review mixed 0% right
```json
{
"sentiment": "negative",
"defect": "true",
"recommend": "false"
}
```
Documents: Saas escalator (hard) 0% right
```json
{
"year2_price_per_seat_month": 45.00,
"year3_price_per_seat_month": 48.10,
"year1_invoice": 810.00,
"year2_invoice": 915.00,
"addon_months_billed": 12,
"addon_invoice": 750.00,
"year3_invoice": 885.00,
"year3_discount_percent": 0.00,
"total_contract_value": 256520.00,
"contract_end_date": "2025-02-28"
}
```
Documents: Expense thread 54% right
```json
{
"employee_id": "EMP-20417",
"destination_city": "Lisbon",
"trip_start": "2025-02-24",
"trip_end": "2025-02-27",
"approved_items": [
{
"date": "2025-02-24",
"category": "airfare",
"amount_usd": 1184.6
},
{
"date": "2025-02-24",
"category": "taxi",
"amount_usd": 38.0
},
{
"date": "2025-02-25",
"category": "client_dinner",
"amount_usd": 212.4
},
{
"date": "2025-02-26",
"category": "hotel",
"amount_usd": 447.0
},
{
"date": "2025-02-27",
"category": "taxi",
"amount_usd": 41.5
}
],
"rejected_item_count": 1,
"per_diem_days": 5,
"per_diem_usd": 65.0,
"total_reimbursable_usd": 2599.6,
"approver_email": "priya.raman@corvane.com"
}
```
Documents: Lease amendment 50% right
```json
{
"tenants": ["Marcus Lin", "Sofia Lin"],
"landlord": "Ridendline Property Group LLC",
"zip": "97205",
"lease_end": "2025-11-30",
"original_monthly_rent": 2150.0,
"monthly_rent_from_2025_06_01": 2150.0,
"late_fee_from_2025_06_01": 525.0,
"security_deposit": 700.0,
"total_pet_deposits": 800.0,
"total_monthly_payment_july_2025": 2295.0,
"move_in_payment": 2450.0
}
```
Documents: Ticket SLA 0% right
```json
{
"ticket_id": "48213",
"account_id": "ACC-7731",
"open_issue": "inventory_sync",
"resolved_issues": [],Vue: "other",
"affected_orders": ["SO-99812", "SO-99815", "SO-99827"],
"priority": "P1",
"sla_due_local": "2025-09-12T15:30:00",
"sla_due_utc": "2025-09-12T15:30:00:00",
"reissued_invoice": null
}
```
Documents: Sales footnotes 0% right
```json
{
"q3_total_usd": 4902,
"q2_total_usd": 4585,
"q2_central_originally_reported_usd": 3205,
"q2_to_q3_change_pct": 3.0,
"top_region_q3": "West",
"fastest_growing_region_q1_to_q3": "Mountain",
"regions_declining_q2_to_q3": ["West", "Central"],
"international_q3_organic_usd": 1951,
"west_excluding_mountain_q3_usd": 4902
}
```
Size: 7.1B parameters. First tested OCT 11.
Comments
Sign in with GitHub to comment. Spam and abuse are hidden automatically.