{% extends "base.html" %} {% from "catalogue/use_bundle.html" import use_bundle %} {% block title %}{{ b.title }} — Nullius{% endblock %} {% block crumb %}/ benchmarks / {{ b.key }}{% endblock %} {% block head %}{% endblock %} {% block body %} {% set ds = cat.datasets_of(b) %}{% set tasks = cat.tasks_of(b) %}{% set files = cat.files(b.key) %} {% set ways = (['the Nullius standard'] if 'standard' in b.harness else []) + (['Harbor'] if 'harbor' in b.harness else []) %}{% set runs_with = ways|join(' or ') if ways else 'no harness here' %}
{% if b.category %}{{ b.category }}{% endif %}{{ b.label }}

{{ b.title }}

{% if b.domain %}

{{ b.domain }}

{% endif %}
{% if b.usable_routes %}Build a run {% endif %} {% if b.citation %}Cite{% endif %} {% if editable %}Edit{% endif %} {#- deleting asks first, in place: the button opens the question, never a dialog #} {% if restore_bundle %}{% if local %}{{ use_bundle('benchmarks', b.key, csrf) }}{% endif %} {% elif editable and deletable %}
Delete
Delete {{ b.key }} and its folder? Runs made from it stay.
{% endif %}
{% if b.blocker %}

No usable route — {{ b.blocker }}

{% endif %}
{% if std %} {#- The standard's proofs of it, per dataset (standard/prove.py): its controls as chips, their source in the title - the builder's dataset step draws the same - then its units and leak checks; and Prove it, cli prove as a run. -#} {% macro proof(rec, failed, expect) -%} {%- if rec %}✓ {{ rec.passed }}{% if rec.limit %} · first {{ rec.limit }}{% endif %} {%- elif failed and failed.value is defined %}{% set e = (failed.expect or expect or {'at_least': 1}) %}{% set k = e|list|first %}✕ {{ failed.value }} {{ '>' if k == 'at_most' else '<' }} {{ e[k] }} {%- elif failed %}✕ not proven {%- else %}not run{% endif -%} {%- endmacro %} {% macro chip(c) -%} {{ c.key }}{{ proof(c.proven, c.failed, c.expect) }} {%- endmacro %} {% macro check(name, says, rec, failed) -%} {{ name }}{% if rec %}✓{% else %}{{ proof(rec, failed) }}{% endif %} {%- endmacro %} {%- if std.setups %}

Setup

{% set x = std.setups[0] %}

Original

Model Choose in the run builder
How it runs

{{ x.summary }}

{{ std.ref }}:original
{%- endif %}

Proofs

{% if std.upstream.repository %}

{{ std.upstream.repository|replace('https://github.com/', '') }} @ {% if std.upstream.tag %}{{ std.upstream.tag }} · {% endif %}{{ std.upstream.tested[:7] }}

{% endif %}

Null and reference controls check the scorer; stability and leak checks validate the tasks.

{% for d in std.datasets %} {% endfor %}
{{ d.label }}{% if d.units %}{{ d.units }} {{ std.units.nouns }}{% endif %}
{{ check('stable', 'the same ids twice, each unique', d.proofs.units, (d.failed or {}).units) }} {% if std.controls|selectattr('key', 'equalto', 'oracle')|list %}{{ check('no leak', 'nothing of the reference shows before the run', d.proofs.leak, (d.failed or {}).leak) }}{% endif %} {% for c in d.controls %}{{ chip(c) }}{% endfor %}
{%- for c in d.controls if c.proven and c.proven.job in std_jobs %}{{ c.key }}'s job{% endfor %}
{% if local %}
Run control checks

Check dataset stability, answer leaks and control scores. Results update the recorded proofs. {% if std.judged %}The judge needs a model key.{% else %}No model calls or key required.{% endif %}

{% if std.datasets|length == 1 %}
Dataset{{ std.datasets[0].label }}
{% else %} {% endif %} {% if std.judged %} {% if providers %}{% endif %} {% endif %}
{% if std.judged and not providers %}

The judge needs a model key first: set one in Settings.

{% else %}{% endif %}
{% endif %}
{% if std.options %} {#- Its own options (a search, a mode): each value, a line on it, what it needs; the machine setup some need. -#}

Options

{% for n, o in std.options.items() %}

{{ o.label }}{% if o.datasets %} {{ o.datasets|join(', ') }}{% endif %}

{{ o.summary }}

{% if o.pattern %}
{{ 'Provider default' if n == 'temperature' and o.default == 'default' else o.default }} {% if n == 'temperature' %}Custom decimal, e.g. 0.5{% else %}{{ o.pattern }}{% endif %}
{% else %}
    {% for v in o['values'] %}{% set need = o.needs.get(v) or {} %}
  • {{ v }}{% if v == o.default and v != 'default' %} default{% endif %} {% if need.embeddings %}OpenAI key · {{ need.embeddings }}{% endif %} {% for h in need.host or [] %}needs {{ h }}{% endfor %} {% if o.about.get(v) %}{{ o.about[v] }}{% endif %}
  • {% endfor %}
{% endif %} {% endfor %} {% for h, r in std.host.items() %}

Setup: {{ h }}

{{ r.summary }} Checked by {{ r.check|join(', ') }} on PATH, on each machine a run uses; the builder's Where step checks it{% if r.install %} and can install it{% else %}: a machine's own hardware, nothing installs it{% endif %}.

{% if r.install %}
install, on each machine
{{ r.install|join('\n') }}
{% endif %}
{% endfor %}
{% endif %} {% if licences %} {#- Its licences, per environment: kept for this benchmark alone, outside the repository; a value is never shown back. #}

Licences

What {{ std.label }}'s environments need of licensed software. Each is kept for {{ std.label }} alone, in your licence storage outside the application, and sent only where it says, to the units whose environment needs it. A unit whose licence is missing is recorded as not run - no one's result.

{% for e in licences %}

{{ e.environment }}{{ e.summary }}

    {% for s in e.needs %}
  • {{ s.name }} {{ {'value': 'a key', 'file': 'a licence file', 'server': 'a licence server'}[s.kind] }} {% if s.status.set %}set {{ s.status.on }}{% if s.status.filename %} · {{ s.status.filename }}{% endif %}{% if s.status.expires %} · {% if s.status.expired %}expired {{ s.status.expires }}{% else %}expires {{ s.status.expires }}{% endif %}{% endif %}{% else %}missing{% endif %}
    {% if s.summary %}{{ s.summary }} · {% endif %}{% if s.kind == 'file' %}{% if s.to == 'agent' %}mounted read-only at {{ s.path }} in the agent's container{% if s.env %}, its path in {{ s.env }}{% endif %}{% else %}to the driver, which scores: its path in {{ s.env }}{% endif %}{% elif s.kind == 'server' %}host:port, as {{ s.name }}{% if s.to == 'agent' %} - on docker the one address the agent's container may reach{% else %} to the driver, which scores{% endif %}{% else %}as {{ s.name }}, to the {{ "agent's container" if s.to == 'agent' else 'driver, which scores' }}{% endif %} {% if local %}
    {% if s.kind == 'file' %} {% else %}{% endif %}
    {% if s.status.set %}
    {% endif %} {% if s.name in movable %}
    {% endif %}
    {% endif %}
  • {% endfor %}
{% endfor %} {% if not local %}

Licences are set from a browser on the application host only.

{% endif %}
{% endif %} {% endif %} {% if ds %}

{{ 'Datasets' if ds|length > 1 else 'Dataset' }}{% if ds|length > 1 %} {{ ds|length }}{% endif %}

{# Several datasets are tabs, # selecting one; without the script they are stacked, each under its title. #} {% if ds|length > 1 %}{% endif %} {% for d in ds %}
1 %} role="tabpanel" aria-labelledby="tab-{{ d.key }}"{% endif %}>

{{ d.title }}

Tasks{{ '{:,}'.format(d.tasks) if d.tasks else '—' }}
{% if not data[d.key] %}
Source{{ d.source }}
{% endif %} {% if d.official %}{% endif %}
{% if d.notes %}

{{ d.notes }}

{% endif %}
{% if d.verifier %}
Verifier
{{ d.verifier }}
{% endif %} {#- One row per way it runs: where that harness reads the data, at which pin. The harness fetches it when a run starts; nobody downloads anything by hand. #} {% if data[d.key] %}
Data
    {% for r in data[d.key] %}
  • {{ r.label }} {{ r.from }} {% if r.href %}{{ r.name }}{% else %}{{ r.name }}{% endif %} {% if r.pin %}{{ r.pin }}{% endif %} {{ r.by }}{% if r.files %} · {% for f in r.files %}{{ f.name }}{% if f.size %} {{ f.size }}{% endif %}{% if not loop.last %}, {% endif %}{% endfor %}{% if r.files|selectattr('checked')|list|length == r.files|length %}, checked by sha256{% endif %}{% endif %}
  • {% endfor %}
{% endif %}
{% endfor %}
{% endif %} {% if b.good_to_know %}

Good to know

    {% for note in b.good_to_know %}
  • {{ note }}
  • {% endfor %}
{% endif %}
{% if b.upstream_limitations %}

Upstream limitations

    {% for l in b.upstream_limitations %}
  • {{ l }}
  • {% endfor %}
{% endif %}

Nullius limitations

    {% for l in b.limitations %}
  • {{ l }}
  • {% else %}
  • none recorded
  • {% endfor %}
{% if b.citation %}

Citation

{% if papers|length > 1 %}{% endif %}
{%- if papers %}{% set p = papers[0] %} {#- the venue seal: the venue, year and kind turning slowly round the year, beside the paper as a reader names it #}

{{ p.title }}

{{ p.authors_short }}

{{ p.venue }}

{% if p.url %}Read the paper ↗{% endif %}
{% if papers|length > 1 %}
    {% for q in papers[1:] %}
  • {{ q.title }} {{ q.venue_short }} {{ q.year }}
  • {% endfor %}
{% endif %} {%- else %}
{{ b.citation }}
{%- endif %}
{% endif %} {%- if b.published %} {#- A Harbor benchmark runs as published through Harbor's own agent for it, on any model: the builder names it. -#}

As published

Harbor's {{ b.published.agent }}: {{ b.published.says }}

{%- endif %}
{% endblock %} {% block scripts %}{% endblock %}