{% extends "base.html" %} {% block content %}

Admin

Settings

{{ total | compact_number }}Stored rows {{ trim_count | compact_number }}Older than {{ days | compact_number }} days
{% if error %}
{{ error }}
{% endif %} {% set current_incoming_host = incoming_host | default('localhost', true) %} {% set current_incoming_port = incoming_port | default(8080, true) %} {% set current_expose_all_ips = expose_all_ips | default(false, true) %} {% set configured_model_routes = model_routes | default([], true) %} {% set configured_providers = providers | default([], true) %} {% set configured_model_prices = model_prices | default([], true) %} {% set configured_default_fixes_text = default_compat_fixes_text | default('', true) %} {% set known_compat_fixes = available_compat_fixes | default([], true) %}

Incoming Server

{{ current_incoming_host }}:{{ current_incoming_port }}

Upstream URL

Base /v1 endpoint

Default Compatibility Fixes

{{ 'off' if not configured_default_fixes_text else 'configured' }}
{% if known_compat_fixes %}
{% for fix in known_compat_fixes %}

{{ fix.id }} {{ fix.description }} {{ fix.risk_note }}

{% endfor %}
{% endif %}

Model Routes

{{ configured_model_routes | length }} configured
{% if configured_model_routes %}
{% for route in configured_model_routes %} {% endfor %}
Source Model Upstream Upstream Model Provider Fixes API Key Actions
{{ 'Settings' if route.editable else 'Startup' }} {{ route.model }} {{ route.upstream_url }} {{ route.upstream_model }} {% if route.provider_slug %} {{ route.provider_name | default(route.provider_slug, true) }} {% else %} Auto {% endif %} {% if route.fixes %} {{ route.fixes | join(', ') }} {% else %} None {% endif %} {{ route.api_key_state }} {% if route.api_key_env %} {{ route.api_key_env }} {% elif route.api_key_state == 'configured' %} direct key {% endif %} {% if route.editable %}
{% else %} Locked {% endif %}
{% else %}

No model routes are configured. Requests use the global upstream fallback.

{% endif %}

Model Providers

{{ configured_providers | length }} configured
{% if configured_providers %}
{% for provider in configured_providers %} {% endfor %}
Slug Name Upstream URL Currency Actions
{{ provider.slug }} {{ provider.name }} {{ provider.upstream_url | default('-', true) }} {{ provider.currency }}
{% endif %}

Model Pricing

{{ configured_model_prices | length }} configured
{% if configured_model_prices %}
{% for price in configured_model_prices %} {% endfor %}
Provider Model Display Name Input / 1M Cached Input / 1M Output / 1M Aliases Active Actions
{{ price.provider_name }} {{ price.model }} {{ price.display_name | default('-', true) }} {{ price.input_usd_per_million | usd }} {{ price.cached_input_usd_per_million | usd }} {{ price.output_usd_per_million | usd }} {{ price.aliases | default('-', true) }} {{ 'yes' if price.active else 'no' }}
{% endif %}

Test Upstream

Send sample chat requests
{% if test_result %}
{{ test_result.status_code | default('error', true) }} {{ test_result.kind }} {{ test_result.model_route | default('global fallback', true) }} {% if test_result.upstream_model %} {{ test_result.upstream_model }} {% endif %} {{ test_result.duration_ms | duration_ms }}
{{ test_result.url }} {% if test_result.error %}

{{ test_result.error }}

{% else %}
{{ test_result.body }}
{% endif %}
{% endif %}

Trim History

Delete older records

Current preview: {{ trim_count | compact_number }} row{{ '' if trim_count == 1 else 's' }} will be deleted.

Refresh Count
{% endblock %}