optimize ux

This commit is contained in:
team 1
2026-04-05 19:37:50 +02:00
parent 41d4e1991d
commit bd818f5228
15 changed files with 323 additions and 271 deletions

View File

@@ -1,11 +1,11 @@
{% extends 'admin/base.html.twig' %}
{% block title %}Retrieval Wissensbasis (Chunk-Index){% endblock %}
{% block title %}Retrieval Wissensbasis{% endblock %}
{% block body %}
<div class="d-flex justify-content-between align-items-center mb-4">
<h1 class="h3">Retrieval Wissensbasis (Chunk-Index)</h1>
<h1 class="h3"><i class="bi bi-robot"></i> Retrieval Wissensbasis</h1>
<a href="{{ path('admin_dashboard') }}"
class="btn btn-sm btn-outline-secondary">
@@ -17,10 +17,10 @@
{# Index Meta Section #}
{# ============================= #}
<div class="card bg-black border-secondary mb-5">
<div class="card bg-dark border-secondary mb-5">
<div class="card-body">
<h5 class="text-info mb-3">Wissensdaten Generierungsmatrix Index Meta (index_meta.json)</h5>
<h5 class="text-info mb-3">Generierungsmatrix (index_meta.json)</h5>
{% if meta.error is defined %}
<div class="alert alert-danger">
@@ -35,12 +35,12 @@
<tbody>
{% for key, value in meta %}
<tr>
<th style="width:260px;" class="text-secondary">
<td style="width:260px;" class="text-info">
{{ key }}
</th>
</td>
<td>
{% if value is iterable %}
<pre class="mb-0 small text-info">
<pre class="mb-0 small text-light">
{{ value|json_encode(constant('JSON_PRETTY_PRINT')) }}
</pre>
{% else %}
@@ -75,7 +75,7 @@
<div class="d-flex justify-content-between align-items-center mb-3">
<h5 class="text-info mb-0">
Chunks Index | NDJSON-Index Übersicht (index.ndjson)
Wissensdaten Chunks | Übersicht (index.ndjson)
</h5>
<div class="btn-group">
@@ -83,7 +83,7 @@
page: currentPage > 1 ? currentPage - 1 : 1,
limit: currentLimit
}) }}"
class="btn btn-sm btn-outline-light">
class="btn btn-sm btn-outline-info">
← Zurück
</a>
@@ -91,7 +91,7 @@
page: currentPage + 1,
limit: currentLimit
}) }}"
class="btn btn-sm btn-outline-light">
class="btn btn-sm btn-outline-info">
Weiter →
</a>
</div>
@@ -131,13 +131,14 @@
{% for item in ndjson.items|default([]) %}
<tr>
<td class="small">{{ item.chunk_id ?? '-' }}</td>
<td class="small text-info">{{ item.chunk_id ?? '-' }}</td>
<td>
<td class="small text-info">
{% if item.document_id %}
{{ item.document_id }}<br>
<a href="{{ path('admin_document_show', {id: item.document_id}) }}"
class="text-decoration-none text-light">
{{ item.document_id }}
class="text-light small">
ansehen
</a>
{% else %}
-

View File

@@ -6,58 +6,63 @@
<div class="container-fluid">
<!-- Flash Messages -->
{% for message in app.flashes('success') %}
<div class="alert alert-success mb-5">{{ message }}</div>
{% endfor %}
{% for message in app.flashes('danger') %}
<div class="alert alert-danger mb-5">{{ message }}</div>
{% endfor %}
<!-- HEADER -->
<div class="d-flex justify-content-between align-items-center mb-4">
<h1 class="h3">System Prompt Verwaltung</h1>
<h1 class="h3"><i class="bi bi-chat-right-dots-fill"></i> System Prompt Verwaltung</h1>
</div>
{# ========================================================= #}
{# SYSTEM PROMPT DESCRIPTION #}
{# ========================================================= #}
<div class="card bg-black border-secondary text-light mb-4 shadow-sm">
<div class="card-body">
<div class="card bg-dark border-secondary text-light mb-4 shadow-sm">
<div class="card-body row">
<h5 class="text-info mb-3">Was steuert der System Prompt?</h5>
<div class="col-lg-6">
<h5 class="text-info mb-3">Was steuert der System Prompt?</h5>
<p class="small text-light mb-3">
Der System Prompt definiert das globale Antwortverhalten des LLM.
Er ist die oberste Steuerungsebene des Systems und beeinflusst:
</p>
<p class="small text-light mb-3">
Der System Prompt definiert das globale Antwortverhalten des LLM.
Er ist die oberste Steuerungsebene des Systems und beeinflusst:
</p>
<ul class="small text-light mb-3">
<li>Ton und Stil der Antworten</li>
<li>Struktur der Ausgaben</li>
<li>Umgang mit Unsicherheiten</li>
<li>Bezug auf Wissensquellen</li>
</ul>
<ul class="small text-light mb-3">
<li>Ton und Stil der Antworten</li>
<li>Struktur der Ausgaben</li>
<li>Umgang mit Unsicherheiten</li>
<li>Bezug auf Wissensquellen</li>
</ul>
</div>
<h6 class="text-info mt-3">Architektur-Prinzip</h6>
<div class="col-lg-6">
<h6 class="text-info mt-3">Architektur-Prinzip</h6>
<p class="small text-light mb-3">
Der System Prompt ist strikt von der Wissensebene getrennt.
Er verändert keine Dokumente, Chunks oder Vektoren,
sondern nur die Interpretation und Darstellung der Retrieval-Ergebnisse.
</p>
<p class="small text-light mb-3">
Der System Prompt ist strikt von der Wissensebene getrennt.
Er verändert keine Dokumente, Chunks oder Vektoren,
sondern nur die Interpretation und Darstellung der Retrieval-Ergebnisse.
</p>
<h6 class="text-info mt-3">Warum Versionierung?</h6>
<h6 class="text-info mt-3">Warum Versionierung?</h6>
<p class="small text-light mb-0">
Jede Änderung kann das Antwortverhalten signifikant verändern.
Daher ist der Prompt versioniert, rollbackfähig und nur eine Version kann aktiv sein.
Aktivierungen wirken unmittelbar auf alle nachfolgenden Anfragen.
</p>
<p class="small text-light mb-0">
Jede Änderung kann das Antwortverhalten signifikant verändern.
Daher ist der Prompt versioniert, rollbackfähig und nur eine Version kann aktiv sein.
Aktivierungen wirken unmittelbar auf alle nachfolgenden Anfragen.
</p>
</div>
</div>
</div>
<!-- Flash Messages -->
{% for message in app.flashes('success') %}
<div class="alert alert-success">{{ message }}</div>
{% endfor %}
{% for message in app.flashes('danger') %}
<div class="alert alert-danger">{{ message }}</div>
{% endfor %}
<div class="row g-4">
<!-- LEFT SIDE Versionen -->