4.3 KiB
Wirksame Kategorie- und Quellenfilter
Diese Version korrigiert die Filtersemantik und ergänzt Quellenfilter für Lernen, Anzeige und Thinking.
Zwei Ebenen
Die Environment-Variablen sind administrative Obergrenzen:
BRAIN_LEARNING_CATEGORIES=
BRAIN_DISPLAY_CATEGORIES=
BRAIN_THINKING_CATEGORIES=
BRAIN_LEARNING_SOURCES=
BRAIN_DISPLAY_SOURCES=
BRAIN_THINKING_SOURCES=
Die WebUI speichert zusätzliche Laufzeiteinschränkungen in runtime-settings.json.
wirksamer Filter = Environment ∩ WebUI
Eine leere Environment-Liste oder * ist unbegrenzt. Eine leere WebUI-Liste bedeutet „alle durch das Environment erlaubten Werte“. Sind Environment und WebUI disjunkt, ist der wirksame Filter absichtlich leer und nicht versehentlich „alle“.
Die API liefert sowohl die veränderbaren Werte als auch die effektiven und administrativen Bereiche:
{
"learning_categories": [],
"learning_sources": ["internal-kb"],
"effective_learning": {
"categories": ["IT-Security"],
"sources": ["internal-kb"],
"categories_restricted": true,
"sources_restricted": true,
"matches_none": false
},
"admin_learning": {
"categories": ["IT-Security", "Netzwerk"],
"sources": ["GLPI Knowledge Base", "internal-kb"],
"categories_restricted": true,
"sources_restricted": true,
"matches_none": false
}
}
Ältere runtime-settings.json-Dateien werden feldweise eingelesen. Fehlende neue Felder setzen vorhandene Schalter, Ansicht oder Performancewerte nicht mehr auf Nullwerte zurück.
Kombinationsregeln
Innerhalb einer Dimension gilt ODER:
Kategorie = IT-Security ODER Netzwerk
Zwischen Kategorie und Quelle gilt UND:
(Kategorie = IT-Security ODER Netzwerk)
UND
(Quelle = GLPI Knowledge Base ODER internal-kb)
Verglichen wird exakt und ohne Beachtung der Groß-/Kleinschreibung. Die virtuellen Werte sind:
__uncategorized__ = ohne Kategorie
__unsourced__ = ohne erkennbare Quelle
Welche Quelle wird verwendet?
Die logische Quelle eines Wissensknotens wird in dieser Reihenfolge bestimmt:
metadata.sourcebeziehungsweise dassource-Feld des KB-Dokuments;- bei Webrecherche die Domain der URL, beispielsweise
learn.microsoft.com; - als Rückfall der technische
origin-Wert.
Damit können produktive GLPI-Beiträge, lokale KB-Dateien, AI-Synthesis-Beiträge und einzelne Webdomains getrennt gesteuert werden.
Lernen
Der wirksame Lernfilter gilt jetzt für:
- neue oder geänderte Embeddings;
- lokale Fallback-Embeddings;
- semantische Abfragen über
/api/query; - sofortiges Lernen neuer AI-Synthesis-Artikel;
- sofortiges Lernen akzeptierter Research-Evidence.
Bereits vorhandene Vektoren außerhalb des Filters bleiben in SQLite gespeichert, werden aber bei Retrieval und neuem Lernen nicht verwendet. Eine spätere Filtererweiterung kann sie ohne erneute Berechnung wieder aktivieren.
Anzeige
Die Anzeige filtert zunächst ausschließlich knowledge, ai-think und external. Danach werden nur direkt angeschlossene Taxonomie-Nodes ergänzt:
category;source;concept.
Semantische Kanten dürfen keine anders kategorisierten oder aus einer anderen Quelle stammenden Wissensartikel mehr in die Ansicht hineinziehen. Das gilt für Neural, Honeycomb und Constellation.
Der Anzeige-Filter ist weiterhin eine Rendersteuerung und keine Zugriffskontrolle; /api/graph liefert den vollständigen Graphen.
Thinking
Der wirksame Thinking-Filter gilt jetzt für:
- beide Nodes eines Relationskandidaten;
- zusätzliche Quellen des Themenverbunds;
- AI-Synthesis-Quellenauswahl;
- wiederverwendete Research-Evidence;
- SearXNG-Treffer der Relationsrecherche;
- neu akzeptierte Volltextbelege der iterativen Artikelrecherche.
Eine externe Quelle außerhalb des Thinking-Quellenfilters wird nicht als Beleg akzeptiert und nicht in die Artikelsynthese übernommen.
WebUI
Unter FILTER stehen nun sechs Listen zur Verfügung:
- Kategorien: Lernen, Anzeige, Thinking;
- Quellen: Lernen, Anzeige, Thinking.
Die WebUI zeigt die wirksame Schnittmenge an. Optionen außerhalb der Environment-Obergrenze werden deaktiviert und als durch ENV ausgeschlossen markiert.
APIs
GET /api/runtime-settings
PUT /api/runtime-settings
GET /api/categories
GET /api/sources