gpt-5.6-terra @ low · cursor

cursorlow
config
gpt-5.6-terra-eff-low--cli--cursor--dev
batch
2026-07-19--unified
transport
cursor-agent-cli-isolated-home
protocol
cli · plan
served model
gpt-5.6-terra-low
采集于
2026年7月18日 11:54 · N=2
variant
live
slot 0 · P-q · sandboxed iframe
gpt-5.6-terra @low · cursor P-q slot 0 截图

截图是 similarity 通道测量时的原始像素。运行 live 会在 sandboxed iframe 中重新执行原始输出;渲染结果取决于你的浏览器和字体,不保证与测量像素一致。

similarity 邻居

限于 session 2026-07-19--unified

similarity 衡量本 session 内的趋同程度 —— 不是质量。

Fidelity —— 卡片展示的数据对不对?

  • namematch
  • conditionmismatchother-wmo-code
  • datematch
  • max tempmatch展示值:25
  • min tempmatch展示值:16
  • hourlymatchcoverage 12/24 · 12 命中 · 0 不符 · 12 未展示
  • request sidematch0 处违规

extractor fidelity-extractor-v1+Berlin-2026-07-15

源码 —— 原始模型输出,一字节未改

下载 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>
  :root {
    --ink: #eff6ff;
    --muted: #a7b9d4;
    --line: rgba(255,255,255,.13);
    --panel: rgba(13, 27, 57, .72);
    --accent: #ffc85b;
  }
  * { box-sizing: border-box; }
  body {
    margin: 0;
    min-width: 960px;
    min-height: 800px;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color: var(--ink);
    background:
      radial-gradient(circle at 17% 14%, rgba(96, 176, 255, .28), transparent 30%),
      radial-gradient(circle at 84% 82%, rgba(151, 91, 255, .24), transparent 32%),
      linear-gradient(135deg, #102a55 0%, #152d57 44%, #172344 100%);
    display: grid;
    place-items: center;
    overflow: hidden;
  }
  .orb {
    position: fixed;
    width: 430px; height: 430px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.07);
    top: -190px; right: -105px;
    box-shadow: 0 0 0 42px rgba(255,255,255,.025), 0 0 0 86px rgba(255,255,255,.018);
  }
  main {
    width: 1060px;
    min-height: 610px;
    padding: 42px 46px 32px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 30px;
    background: linear-gradient(125deg, rgba(29, 54, 97, .88), rgba(14, 27, 58, .77));
    box-shadow: 0 28px 90px rgba(3, 10, 29, .42), inset 0 1px 0 rgba(255,255,255,.08);
    backdrop-filter: blur(20px);
  }
  .topline, .meta, .summary, .hours-head { display: flex; align-items: center; }
  .topline { justify-content: space-between; }
  .eyebrow {
    margin: 0 0 7px;
    color: #b7cae7;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;
  }
  h1 { margin: 0; font-size: 35px; line-height: 1.05; letter-spacing: -.045em; }
  .date {
    padding: 10px 15px;
    border: 1px solid var(--line);
    border-radius: 100px;
    color: #d8e5f7;
    font-size: 14px;
    background: rgba(255,255,255,.055);
  }
  .summary {
    min-height: 246px;
    margin: 26px 0 20px;
    padding: 25px 30px;
    justify-content: space-between;
    border-radius: 22px;
    background: linear-gradient(110deg, rgba(255,255,255,.12), rgba(255,255,255,.035));
    border: 1px solid rgba(255,255,255,.11);
  }
  .condition { display: flex; align-items: center; gap: 23px; }
  .weather-icon {
    width: 124px; height: 124px;
    flex: 0 0 auto;
    color: var(--accent);
    filter: drop-shadow(0 9px 13px rgba(255, 190, 54, .2));
  }
  .condition-name { margin: 0 0 5px; font-size: 23px; font-weight: 650; letter-spacing: -.025em; }
  .condition-detail { margin: 0; color: var(--muted); font-size: 14px; }
  .temperature {
    font-size: 117px;
    font-weight: 250;
    line-height: .83;
    letter-spacing: -.09em;
  }
  .degree { font-size: .45em; vertical-align: top; margin-left: 6px; font-weight: 350; }
  .range {
    display: grid;
    grid-template-columns: auto auto;
    gap: 13px 30px;
    padding-left: 38px;
    border-left: 1px solid var(--line);
  }
  .range span { display: block; color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .1em; }
  .range strong { display: block; margin-top: 5px; font-size: 24px; font-weight: 550; letter-spacing: -.04em; }
  .hours-head { justify-content: space-between; margin: 2px 3px 15px; }
  .hours-head h2 { margin: 0; font-size: 14px; letter-spacing: .01em; }
  .hours-head span { color: var(--muted); font-size: 12px; }
  .hourly {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 8px;
  }
  .hour {
    min-height: 126px;
    padding: 13px 7px 11px;
    border-radius: 15px;
    text-align: center;
    border: 1px solid transparent;
    background: rgba(255,255,255,.035);
  }
  .hour.now { background: rgba(255, 202, 85, .16); border-color: rgba(255, 211, 107, .35); }
  .hour time { display: block; color: var(--muted); font-size: 11px; }
  .hour b { display: block; margin-top: 29px; font-size: 17px; font-weight: 600; letter-spacing: -.04em; }
  .bar { width: 3px; margin: 10px auto 0; border-radius: 99px; background: #78baff; opacity: .85; }
  .error {
    display: grid;
    place-items: center;
    height: 390px;
    text-align: center;
    color: #e6efff;
    font-size: 19px;
  }
  .error small { display: block; margin-top: 9px; color: var(--muted); font-size: 14px; }
  .loading { opacity: .72; }
</style>
</head>
<body>
<div class="orb"></div>
<main id="card" class="loading" aria-live="polite">
  <div class="topline">
    <div>
      <p class="eyebrow">Daily weather</p>
      <h1 id="location">Berlin</h1>
    </div>
    <div class="date" id="date">Loading date…</div>
  </div>
  <section class="summary">
    <div class="condition">
      <svg class="weather-icon" id="icon" viewBox="0 0 128 128" aria-hidden="true"></svg>
      <div>
        <p class="condition-name" id="condition">Loading weather…</p>
        <p class="condition-detail">Temperature in Celsius</p>
      </div>
    </div>
    <div class="temperature"><span id="current">—</span><span class="degree">°</span></div>
    <div class="range">
      <div><span>High</span><strong id="max">—°</strong></div>
      <div><span>Low</span><strong id="min">—°</strong></div>
    </div>
  </section>
  <div class="hours-head">
    <h2>Hourly temperature</h2>
    <span>UTC</span>
  </div>
  <section class="hourly" id="hourly"></section>
</main>
<script>
(() => {
  const qs = new URLSearchParams(location.search);
  const utcToday = new Date().toISOString().slice(0, 10);
  const validDate = /^\d{4}-\d{2}-\d{2}$/.test(qs.get("date") || "") && !isNaN(Date.parse(qs.get("date") + "T00:00:00Z"));
  const date = validDate ? qs.get("date") : utcToday;
  const lat = Number(qs.get("lat"));
  const lon = Number(qs.get("lon"));
  const latitude = Number.isFinite(lat) && lat >= -90 && lat <= 90 ? lat : 52.52;
  const longitude = Number.isFinite(lon) && lon >= -180 && lon <= 180 ? lon : 13.405;
  const name = (qs.get("name") || "Berlin").trim() || "Berlin";
  const $ = id => document.getElementById(id);

  $("location").textContent = name;
  $("date").textContent = new Intl.DateTimeFormat("en-US", {
    weekday: "long", month: "long", day: "numeric", year: "numeric", timeZone: "UTC"
  }).format(new Date(date + "T12:00:00Z"));

  const symbols = {
    sunny: '<circle cx="64" cy="64" r="21" fill="none" stroke="currentColor" stroke-width="6"/><g stroke="currentColor" stroke-width="6" stroke-linecap="round"><path d="M64 15v11M64 102v11M15 64h11M102 64h11M29 29l8 8M91 91l8 8M99 29l-8 8M37 91l-8 8"/></g>',
    cloudy: '<path d="M39 94h54c15 0 25-10 25-23 0-14-11-25-25-25-3 0-6 1-8 2C81 34 69 26 55 26c-17 0-31 13-32 30-12 2-21 12-21 25 0 16 13 29 29 29h8" fill="rgba(255,255,255,.2)" stroke="currentColor" stroke-width="6" stroke-linejoin="round"/>',
    rain: '<path d="M31 80h63c16 0 27-10 27-24 0-15-12-27-27-27-3 0-5 0-8 1C81 19 70 14 57 14 39 14 25 27 24 45 11 48 4 58 4 69c0 16 12 27 27 27" fill="rgba(255,255,255,.18)" stroke="currentColor" stroke-width="6"/><g stroke="#7fd5ff" stroke-width="6" stroke-linecap="round"><path d="M39 94l-4 15M64 94l-4 15M89 94l-4 15"/></g>',
    snow: '<path d="M31 77h63c16 0 27-10 27-24 0-15-12-27-27-27-3 0-5 0-8 1C81 19 70 14 57 14 39 14 25 27 24 45 11 48 4 58 4 69c0 16 12 27 27 27" fill="rgba(255,255,255,.18)" stroke="currentColor" stroke-width="6"/><g fill="#e9f7ff"><circle cx="40" cy="101" r="5"/><circle cx="65" cy="105" r="5"/><circle cx="89" cy="101" r="5"/></g>',
    storm: '<path d="M31 78h63c16 0 27-10 27-24 0-15-12-27-27-27-3 0-5 0-8 1C81 20 70 15 57 15 39 15 25 28 24 46 11 49 4 59 4 70c0 16 12 27 27 27" fill="rgba(255,255,255,.18)" stroke="currentColor" stroke-width="6"/><path d="M68 77L50 103h16l-8 17 28-33H69z" fill="#ffd251"/>'
  };
  function weather(code) {
    if (code === 0) return ["Clear sky", "sunny"];
    if ([1, 2].includes(code)) return ["Partly cloudy", "sunny"];
    if (code === 3 || [45, 48].includes(code)) return [code === 3 ? "Overcast" : "Foggy", "cloudy"];
    if ([71, 73, 75, 77, 85, 86].includes(code)) return ["Snow showers", "snow"];
    if ([95, 96, 99].includes(code)) return ["Thunderstorms", "storm"];
    return ["Rain showers", "rain"];
  }
  function temp(value) { return Math.round(value) + "°"; }

  const params = new URLSearchParams({
    latitude, longitude,
    daily: "temperature_2m_max,temperature_2m_min,weather_code",
    hourly: "temperature_2m",
    timezone: "UTC",
    temperature_unit: "celsius",
    start_date: date,
    end_date: date
  });
  const endpoint = date < utcToday ? "/api/om/archive" : "/api/om/forecast";

  fetch(endpoint + "?" + params)
    .then(r => { if (!r.ok) throw new Error("Request failed"); return r.json(); })
    .then(data => {
      const daily = data.daily;
      const max = daily?.temperature_2m_max?.[0], min = daily?.temperature_2m_min?.[0], code = daily?.weather_code?.[0];
      const times = data.hourly?.time, temps = data.hourly?.temperature_2m;
      if (![max, min, code].every(Number.isFinite) || !Array.isArray(times) || !Array.isArray(temps)) throw new Error("Incomplete data");
      const [label, icon] = weather(code);
      $("condition").textContent = label;
      $("icon").innerHTML = symbols[icon];
      $("max").textContent = temp(max);
      $("min").textContent = temp(min);
      const nowHour = new Date().toISOString().slice(11, 13);
      $("current").textContent = Math.round(temps[Number(nowHour)] ?? (max + min) / 2);
      const hourly = $("hourly");
      const indices = [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22];
      const values = indices.map(i => temps[i]).filter(Number.isFinite);
      const lowest = Math.min(...values), highest = Math.max(...values);
      indices.forEach(i => {
        if (!Number.isFinite(temps[i])) return;
        const hour = document.createElement("div");
        hour.className = "hour" + (String(i).padStart(2, "0") === nowHour && date === utcToday ? " now" : "");
        const h = 16 + ((temps[i] - lowest) / Math.max(1, highest - lowest)) * 26;
        hour.innerHTML = `<time>${String(i).padStart(2, "0")}:00</time><b>${temp(temps[i])}</b><i class="bar" style="height:${h}px"></i>`;
        hourly.appendChild(hour);
      });
      $("card").classList.remove("loading");
    })
    .catch(() => {
      $("card").innerHTML = '<div class="error">Weather data could not be loaded.<small>Please try again shortly.</small></div>';
    });
})();
</script>
</body>
</html>

L1 —— 廉价的确定性描述量

bytes 总计10,508html / css / js1,226 / 4,264 / 5,018
dom 节点35dom 深度7
css 规则32含 js是
brightness49.6contrast18.2
colorfulness26.6留白85.5%

该 slot 的 telemetry

prompt tokens3completion tokens3,742
total tokens3,745wall36.7 s
cost—request id—
config.json568 B
{
  "N": 2,
  "auth": {
    "credential_ref": "WCB_NONE",
    "method": "oauth-login"
  },
  "billing": "plan",
  "config_id": "gpt-5.6-terra-eff-low--cli--cursor--dev",
  "effort": "low",
  "family": "gpt",
  "m": {
    "min": 2,
    "q": 2
  },
  "model_id": "gpt-5.6-terra",
  "protocol": "cli",
  "served_model": "gpt-5.6-terra-low",
  "telemetry": {
    "completion_tokens": 15862,
    "cost_usd": null,
    "prompt_tokens": 21,
    "total_tokens": 15883,
    "wall_ms": 235784
  },
  "transport": "cursor-agent-cli-isolated-home",
  "vendor_sanction_ref": null
}
send-log2.5 KB
{
  "N": 2,
  "batch_id": "2026-08-13--cursor-s0",
  "config_id": "gpt-5.6-terra-eff-low--cli--cursor--dev",
  "positions": [
    {
      "attempts": [
        {
          "attempt_index": 0,
          "backoff_ms": null,
          "charged": true,
          "ended_at": "2026-08-12T20:26:29.178234+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-08-12T20:25:52.457496+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-08-12T20:28:19.611755+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-08-12T20:26:33.445033+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-08-12T20:29:25.976499+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-08-12T20:28:23.299699+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-08-12T20:29:59.961431+00:00",
          "http_status": null,
          "outcome": "valid",
          "reached_model": true,
          "reason": "ok",
          "request_id": null,
          "started_at": "2026-08-12T20:29:29.738779+00:00"
        }
      ],
      "block_index": 1,
      "model_reaching_attempt_index": 0,
      "slot_index": 1,
      "terminal_state": "valid",
      "variant": "P-q"
    }
  ],
  "retry_policy": {
    "max_unreachable_retries": 5,
    "rate_limit_backoff": {
      "max_attempts": 4,
      "max_total_ms": 60000
    }
  }
}