{% extends "base.html" %} {% block title %}Modelle und Zugänge{% endblock %} {% macro csrf() %}{% endmacro %} {% block content %}
Gilt für die ganze Plattform. Workspaces nutzen das Standardmodell oder wählen ein anderes aktives Modell; der Key kommt vom Team des Workspace.
{{ error }}
{{ notice }}
Keys können nicht gespeichert werden: AIW_SECRET_KEY ist nicht gesetzt. Einen Key erzeugen mit uv run aiw gen-key und in die .env eintragen.
OpenAI-kompatibel mit Responses API: in der Entwicklung https://api.openai.com/v1, später das AI Gateway.
| Name | Basis-URL | Status | |
|---|---|---|---|
| {{ pr.name }} | {{ pr.base_url }} | {{ 'aktiv' if pr.active else 'inaktiv' }} |
Bearbeiten |
Ein Key für alle Teams (z. B. OpenAI in der Entwicklung) oder je Team (Gateway). Der Team-Key hat Vorrang. Keys werden verschlüsselt gespeichert und nie wieder angezeigt, nur ersetzt.
{% if keys %}| Endpunkt | Gilt für | Key | Geändert | |
|---|---|---|---|---|
| {{ row.provider.name }} | {{ row.team.name if row.team else 'alle Teams' }} | …{{ row.key.hint }} |
{{ row.key.updated.strftime('%d.%m.%Y %H:%M') }} |
Erst einen Endpunkt anlegen.
{% endif %}| Anzeige | Modell | Endpunkt | Klasse | Kontext | Preis je 1 Mio. | Status | |
|---|---|---|---|---|---|---|---|
| {{ m.label }} | {{ m.name }} |
{{ provider_names[m.provider_id] }} | {{ m.model_class }} | {{ '{:,}'.format(m.context_window).replace(',', '.') }} | {% if m.input_price is not none %}{{ '{:f}'.format(m.input_price.normalize()).replace('.', ',') }} / {{ '{:f}'.format(m.output_price.normalize()).replace('.', ',') }} {{ currency }}{% else %}–{% endif %} | {% if m.is_default %}Standard{% endif %} {{ 'aktiv' if m.active else 'inaktiv' }} |
{% if m.active and not m.is_default %}
{% endif %}
Bearbeiten{% with model = m %}{% include "_model_form.html" %}{% endwith %} {% if not m.is_default %} {% endif %} |