mimo-v2.5-pro @ none · api
apinone
- config
- mimo-v2.5-pro-eff-none--api--official--dev
- batch
- 2026-07-19--unified
- transport
- xiaomi-mimo-official-api
- protocol
- api · metered
- served model
- mimo-v2.5-pro
- captured
- Jul 18, 2026, 11:54 AM · N=4
variant
live
slot 0 · P-q · sandboxed iframe

The screenshot is the exact frozen pixels the similarity channels measured. Run live re-executes the raw output in a sandboxed iframe; its rendering depends on your browser and fonts and is not guaranteed to match the measured pixels.
similarity neighbors
nearest
claude-sonnet-4-6 @medium · kiro0.72claude-sonnet-4-6 @high · kiro0.70claude-opus-4-8 @medium · kiro0.69grok-4.5 @low · grok-cli0.69gemini-3.1-pro-preview @high · api0.67farthest
gpt-5.6-luna @medium · codex-oauth0.41gpt-5.5 @medium · codex-oauth0.42gpt-5.6-luna @low · codex-oauth0.44gpt-5.6-luna @high · kiro0.44gpt-5.5 @low · codex-oauth0.45within session 2026-07-19--unified
similarity measures convergence within this session — not quality.
Fidelity — does the card show the right data?
- namematch
- conditionmatch
- datematch
- max tempmatchshown: 25
- min tempmatchshown: 16
- hourlymatchcoverage 24/24 · 24 match · 0 mismatch · 0 not shown
- request sidematch0 violation(s)
extractor fidelity-extractor-v1+Berlin-2026-07-15
Source — raw model output, one byte unchanged
download card.html<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Weather Card</title>
<style>
*{margin:0;padding:0;box-sizing:border-box}
body{width:1280px;height:800px;overflow:hidden;font-family:'Segoe UI',system-ui,-apple-system,sans-serif;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);display:flex;align-items:center;justify-content:center;color:#fff}
.card{width:1100px;min-height:600px;border-radius:32px;background:rgba(255,255,255,0.07);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.12);box-shadow:0 25px 60px rgba(0,0,0,0.4);padding:48px 56px;display:flex;flex-direction:column;gap:36px;position:relative;overflow:hidden}
.card::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 20%,rgba(120,160,255,0.08) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(255,120,200,0.06) 0%,transparent 50%);pointer-events:none}
.header{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:1}
.location-info{display:flex;flex-direction:column;gap:8px}
.location-name{font-size:42px;font-weight:700;letter-spacing:-0.5px;text-shadow:0 2px 10px rgba(0,0,0,0.3)}
.location-date{font-size:20px;color:rgba(255,255,255,0.7);font-weight:400}
.weather-icon-wrap{display:flex;flex-direction:column;align-items:center;gap:8px}
.weather-icon{font-size:72px;line-height:1;filter:drop-shadow(0 4px 12px rgba(0,0,0,0.3))}
.weather-condition{font-size:18px;color:rgba(255,255,255,0.85);font-weight:500;text-align:center;max-width:200px}
.temp-section{display:flex;align-items:center;gap:48px;position:relative;z-index:1;padding:20px 0}
.temp-high,.temp-low{display:flex;flex-direction:column;align-items:center;gap:6px}
.temp-label{font-size:14px;text-transform:uppercase;letter-spacing:2px;color:rgba(255,255,255,0.5);font-weight:600}
.temp-value{font-size:64px;font-weight:300;letter-spacing:-2px}
.temp-high .temp-value{color:#ff9a6c}
.temp-low .temp-value{color:#7ec8f2}
.temp-divider{width:1px;height:80px;background:rgba(255,255,255,0.15)}
.hourly-section{flex:1;position:relative;z-index:1;display:flex;flex-direction:column;gap:16px}
.hourly-title{font-size:14px;text-transform:uppercase;letter-spacing:2px;color:rgba(255,255,255,0.5);font-weight:600}
.hourly-scroll{flex:1;display:flex;gap:6px;overflow-x:auto;padding-bottom:8px;align-items:flex-end}
.hourly-scroll::-webkit-scrollbar{height:6px}
.hourly-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,0.05);border-radius:3px}
.hourly-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.2);border-radius:3px}
.hour-col{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:40px}
.hour-temp{font-size:13px;font-weight:600;color:rgba(255,255,255,0.85)}
.hour-bar-wrap{flex:1;display:flex;align-items:flex-end;min-height:100px;width:100%;justify-content:center}
.hour-bar{width:100%;min-width:28px;border-radius:8px 8px 4px 4px;transition:height 0.5s ease;background:linear-gradient(180deg,rgba(255,180,120,0.9),rgba(120,160,255,0.9));box-shadow:0 2px 8px rgba(0,0,0,0.2)}
.hour-time{font-size:12px;color:rgba(255,255,255,0.45);white-space:nowrap}
.error-state{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:20px}
.error-icon{font-size:80px;opacity:0.6}
.error-text{font-size:24px;color:rgba(255,255,255,0.7);text-align:center;max-width:500px;line-height:1.5}
.loading{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:24px}
.spinner{width:56px;height:56px;border:4px solid rgba(255,255,255,0.15);border-top-color:rgba(255,255,255,0.7);border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.loading-text{font-size:20px;color:rgba(255,255,255,0.6)}
.fade-in{animation:fadeIn 0.6s ease forwards}
@keyframes fadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
</style>
</head>
<body>
<div class="card" id="card"></div>
<script>
(function(){
const params=new URLSearchParams(location.search);
const lat=params.get('lat')||'52.52';
const lon=params.get('lon')||'13.405';
const name=params.get('name')||'Berlin';
const today=new Date().toISOString().slice(0,10);
const date=params.get('date')||today;
const card=document.getElementById('card');
function weatherEmoji(code){
if(code===0)return'☀️';
if(code<=3)return['🌤️','⛅','🌥️'][code-1]||'⛅';
if(code<=49)return'🌫️';
if(code<=59)return'🌦️';
if(code<=69)return'🌧️';
if(code<=79)return'🌨️';
if(code<=82)return'🌧️';
if(code<=86)return'🌨️';
if(code===95)return'⛈️';
if(code<=99)return'⛈️';
return'🌡️';
}
function weatherDesc(code){
if(code===0)return'Clear sky';
if(code===1)return'Mainly clear';
if(code===2)return'Partly cloudy';
if(code===3)return'Overcast';
if(code<=49)return'Fog';
if(code<=59)return'Drizzle';
if(code<=69)return'Rain';
if(code<=79)return'Snow';
if(code<=82)return'Rain showers';
if(code<=86)return'Snow showers';
if(code>=95)return'Thunderstorm';
return'N/A';
}
function formatDate(d){
const dt=new Date(d+'T12:00:00Z');
const opts={weekday:'long',year:'numeric',month:'long',day:'numeric',timeZone:'UTC'};
return dt.toLocaleDateString('en-US',opts);
}
card.innerHTML='<div class="loading"><div class="spinner"></div><div class="loading-text">Loading weather data…</div></div>';
const apiUrl=date<=today?'/api/om/archive':'/api/om/forecast';
const url=`${apiUrl}?latitude=${lat}&longitude=${lon}&daily=temperature_2m_max,temperature_2m_min,weather_code&hourly=temperature_2m&timezone=UTC&temperature_unit=celsius&start_date=${date}&end_date=${date}`;
fetch(url).then(r=>{if(!r.ok)throw new Error('API error');return r.json()}).then(data=>{
if(!data.daily||!data.hourly||!data.daily.time||data.daily.time.length===0)throw new Error('No data');
const tMax=data.daily.temperature_2m_max[0];
const tMin=data.daily.temperature_2m_min[0];
const wCode=data.daily.weather_code[0];
const hours=data.hourly.temperature_2m;
const icon=weatherEmoji(wCode);
const desc=weatherDesc(wCode);
const formatted=formatDate(date);
let hourlyHTML='';
const temps=hours.filter((_,i)=>i<24);
const minT=Math.min(...temps);
const maxT=Math.max(...temps);
const range=maxT-minT||1;
for(let i=0;i<24;i++){
const t=temps[i]??0;
const pct=Math.max(20,((t-minT)/range)*100*0.85+15);
hourlyHTML+=`<div class="hour-col"><div class="hour-temp">${Math.round(t)}°</div><div class="hour-bar-wrap"><div class="hour-bar" style="height:0%"></div></div><div class="hour-time">${String(i).padStart(2,'0')}:00</div></div>`;
}
card.innerHTML=`<div class="header fade-in"><div class="location-info"><div class="location-name">${name}</div><div class="location-date">${formatted}</div></div><div class="weather-icon-wrap"><div class="weather-icon">${icon}</div><div class="weather-condition">${desc}</div></div></div><div class="temp-section fade-in" style="animation-delay:0.15s"><div class="temp-high"><div class="temp-label">High</div><div class="temp-value">${Math.round(tMax)}°</div></div><div class="temp-divider"></div><div class="temp-low"><div class="temp-label">Low</div><div class="temp-value">${Math.round(tMin)}°</div></div></div><div class="hourly-section fade-in" style="animation-delay:0.3s"><div class="hourly-title">Hourly Temperatures</div><div class="hourly-scroll">${hourlyHTML}</div></div>`;
const bars=card.querySelectorAll('.hour-bar');
bars.forEach((b,i)=>{setTimeout(()=>{b.style.height=b.parentElement.querySelector('.hour-bar').style.height},50+i*30)});
setTimeout(()=>{
card.querySelectorAll('.hour-bar').forEach((b,i)=>{
const t=temps[i]??0;
const pct=Math.max(20,((t-minT)/range)*100*0.85+15);
b.style.height=pct+'%';
});
},100);
}).catch(()=>{
card.innerHTML=`<div class="error-state fade-in"><div class="error-icon">⚠️</div><div class="error-text">Unable to load weather data.<br>Please check your connection or try a different date.</div></div>`;
});
})();
</script>
</body>
</html>L1 — cheap deterministic descriptors
| bytes total | 8,179 | html / css / js | 261 / 3,953 / 3,965 |
|---|---|---|---|
| dom nodes | 9 | dom depth | 3 |
| css rules | 41 | js present | yes |
| brightness | 56.5 | contrast | 18.4 |
| colorfulness | 21.6 | whitespace | 52.0% |
This slot's telemetry
| prompt tokens | 568 | completion tokens | 2,713 |
|---|---|---|---|
| total tokens | 3,281 | wall | 47 s |
| cost | — | request id | — |
config.json568 B
{
"N": 4,
"auth": {
"credential_ref": "WCB_MIMO_KEY",
"method": "api-key"
},
"billing": "metered",
"config_id": "mimo-v2.5-pro-eff-none--api--official--dev",
"effort": "none",
"family": "mimo",
"m": {
"min": 4,
"q": 4
},
"model_id": "mimo-v2.5-pro",
"protocol": "api",
"served_model": "mimo-v2.5-pro",
"telemetry": {
"completion_tokens": 25074,
"cost_usd": null,
"prompt_tokens": 4512,
"total_tokens": 29586,
"wall_ms": 408064
},
"transport": "xiaomi-mimo-official-api",
"vendor_sanction_ref": null
}send-log4.7 KB
{
"N": 4,
"batch_id": "2026-07-19--official-mimo",
"config_id": "mimo-v2.5-pro-eff-none--api--official--dev",
"positions": [
{
"attempts": [
{
"attempt_index": 0,
"backoff_ms": null,
"charged": true,
"ended_at": "2026-07-19T07:58:19.611840+00:00",
"http_status": 200,
"outcome": "valid",
"reached_model": true,
"reason": "ok",
"request_id": null,
"started_at": "2026-07-19T07:57:35.959655+00:00"
}
],
"block_index": 0,
"model_reaching_attempt_index": 0,
"slot_index": 0,
"terminal_state": "valid",
"variant": "P-min"
},
{
"attempts": [
{
"attempt_index": 0,
"backoff_ms": null,
"charged": true,
"ended_at": "2026-07-19T07:59:09.918184+00:00",
"http_status": 200,
"outcome": "valid",
"reached_model": true,
"reason": "ok",
"request_id": null,
"started_at": "2026-07-19T07:58:22.883109+00:00"
}
],
"block_index": 0,
"model_reaching_attempt_index": 0,
"slot_index": 0,
"terminal_state": "valid",
"variant": "P-q"
},
{
"attempts": [
{
"attempt_index": 0,
"backoff_ms": null,
"charged": true,
"ended_at": "2026-07-19T07:59:48.822009+00:00",
"http_status": 200,
"outcome": "valid",
"reached_model": true,
"reason": "ok",
"request_id": null,
"started_at": "2026-07-19T07:59:16.428883+00:00"
}
],
"block_index": 1,
"model_reaching_attempt_index": 0,
"slot_index": 1,
"terminal_state": "valid",
"variant": "P-min"
},
{
"attempts": [
{
"attempt_index": 0,
"backoff_ms": null,
"charged": true,
"ended_at": "2026-07-19T08:00:43.206472+00:00",
"http_status": 200,
"outcome": "valid",
"reached_model": true,
"reason": "ok",
"request_id": null,
"started_at": "2026-07-19T07:59:52.609774+00:00"
}
],
"block_index": 1,
"model_reaching_attempt_index": 0,
"slot_index": 1,
"terminal_state": "valid",
"variant": "P-q"
},
{
"attempts": [
{
"attempt_index": 0,
"backoff_ms": null,
"charged": true,
"ended_at": "2026-07-19T08:02:09.156945+00:00",
"http_status": 200,
"outcome": "valid",
"reached_model": true,
"reason": "ok",
"request_id": null,
"started_at": "2026-07-19T08:00:48.163172+00:00"
}
],
"block_index": 2,
"model_reaching_attempt_index": 0,
"slot_index": 2,
"terminal_state": "valid",
"variant": "P-q"
},
{
"attempts": [
{
"attempt_index": 0,
"backoff_ms": null,
"charged": true,
"ended_at": "2026-07-19T08:03:06.892550+00:00",
"http_status": 200,
"outcome": "valid",
"reached_model": true,
"reason": "ok",
"request_id": null,
"started_at": "2026-07-19T08:02:12.674852+00:00"
}
],
"block_index": 2,
"model_reaching_attempt_index": 0,
"slot_index": 2,
"terminal_state": "valid",
"variant": "P-min"
},
{
"attempts": [
{
"attempt_index": 0,
"backoff_ms": null,
"charged": true,
"ended_at": "2026-07-19T08:04:07.819683+00:00",
"http_status": 200,
"outcome": "valid",
"reached_model": true,
"reason": "ok",
"request_id": null,
"started_at": "2026-07-19T08:03:10.875942+00:00"
}
],
"block_index": 3,
"model_reaching_attempt_index": 0,
"slot_index": 3,
"terminal_state": "valid",
"variant": "P-q"
},
{
"attempts": [
{
"attempt_index": 0,
"backoff_ms": null,
"charged": true,
"ended_at": "2026-07-19T08:04:53.380615+00:00",
"http_status": 200,
"outcome": "valid",
"reached_model": true,
"reason": "ok",
"request_id": null,
"started_at": "2026-07-19T08:04:11.141912+00:00"
}
],
"block_index": 3,
"model_reaching_attempt_index": 0,
"slot_index": 3,
"terminal_state": "valid",
"variant": "P-min"
}
],
"retry_policy": {
"max_unreachable_retries": 5,
"rate_limit_backoff": {
"max_attempts": 4,
"max_total_ms": 60000
}
}
}