Abfragen und Lernen
Neue Frage, Goldens, Lernzyklus; Ablösung der ai-query-Oberfläche
Jede Frage an die Sammlungen wird ein Block in einem Notebook; ai-query bleibt die Bibliothek und der Dienst, der die Frage beantwortet, und seine eigene Oberfläche wird abgelöst, sobald das Notebook alles kann, was sie kann.
1 Eine Frage stellen
Neue Frage öffnet ein Eingabefeld. Darunter stehen die Sammlungen, die nach ihrer status.json durchsuchbar sind (overall: search_ready), als Auswahl. Die Frage landet im Notebook journal unter ~/Documents/Famulus/Notebooks/journal/, es sei denn, ein anderes Notebook wird gewählt.
Der neue Block bekommt die Kennung frage-<Datum>-<Uhrzeit> und die Partitur ai-query-phase1, dieselbe, die auch die ai-query-Oberfläche spielt. Der Viewer öffnet danach genau diesen Block und führt ihn aus. Die Frage steht damit samt Antwort und Ablauf im Journal, statt nach dem Schließen des Fensters verloren zu gehen.
Eine leere Frage und eine Frage, die selbst einen Codeblock enthält, weist der Dienst mit Grund ab.
2 Goldens als Notebook
Ein Golden ist eine Frage der Query-Pipeline mit bekanntem richtigem Ergebnis. Die Goldens stehen im Manifest von ai-query und in golden_ground der Agent-Memory. Ein Befehl macht daraus ein Notebook:
famulus-notebook goldens # nach ~/Documents/Famulus/Notebooks/goldens
famulus-notebook goldens --manifest-only # nur das Manifest, ohne golden_groundJedes Golden wird ein Block mit Sammlungen und Oracle, davor ein Absatz mit Rolle, Wahrheit und erwarteter Route. Am 23. September 2026 ergab der Befehl 41 Blöcke; 38 davon tragen ein Oracle, drei nicht. Die drei laufen, zeigen aber „ohne Oracle“.
Ein Lauf des ganzen Notebooks (Ausführen) ist damit ein Lauf der Golden-Prüfung, dessen Ergebnis als Dokument stehen bleibt.
3 Lernen
Die Ansicht Lernen zeigt den Lernzyklus von ai-query in drei Reitern:
Die Anmerkungen, die aus Notebooks und aus der ai-query-Oberfläche kamen, die neuesten zuerst, mit der Zahl der offenen.
Die Iterationen des Lernzyklus. Die Tabelle learning_iterations in assessment.duckdb ist leer; der Reiter zeigt deshalb, was der Zyklus tatsächlich geändert hat: die Versionswechsel der Instruktionen, jeweils mit Status (aktiv oder verworfen) und Grund.

Jede Instruktion eines Teilagenten mit ihrer aktiven Version und der Zahl ihrer Versionen.
Eine Anmerkung zu einem Block entsteht über Ergebnis bemängeln im Viewer. Sie geht an POST /api/annotations von ai-query und ist nur vom eigenen Rechner aus möglich.
4 Ablösung der ai-query-Oberfläche
ai-query bleibt, was die Notebooks brauchen: die Bibliothek ai_query, die die Partitur ai-query-phase1 ausführt, der Dienst auf Port 5113 mit seiner API, und das Such-Widget <ai-query-chat>, das die Editions-Viewer einbinden. Abgelöst wird nur die eigene Oberfläche des Dienstes, das Labor unter http://127.0.0.1:5113/. Sie trägt seit dem 23. September 2026 einen Hinweis mit Link auf das Notebook; er nennt Samples und Assessment als die Teile, die bis zur Übernahme dort bleiben.
Die Oberfläche verschwindet erst, wenn das Notebook jede ihrer Aufgaben übernommen hat. Stand am 23. September 2026:
| Reiter der ai-query-Oberfläche | Im Notebook | Stand |
|---|---|---|
| Chat | Neue Frage, Notebook journal |
übernommen |
| Resolve, Ablauf eines Laufs | Diagnose eines Blocks, Tabelle aus trace.json |
übernommen |
| Resolve, Anmerkung je Stufe | Die Anmerkung gilt für den ganzen Block | offen |
| Golden, Liste und Lauf | famulus-notebook goldens, Ausführen |
übernommen |
Golden, neue Goldens anlegen (/golden/seed) |
kein Gegenstück | offen |
| Learning, Anmerkungen, Verlauf, Instruktionen | Lernen | übernommen |
| Learning, Kennzahlen und Fortschritt, Lernlauf starten | kein Gegenstück | offen |
| Samples, Beispielfragen pflegen | eigene Notebooks; keine Taxonomie | offen |
| Assessment, Läufe bewerten und beschriften | kein Gegenstück | offen |
Fünf Zeilen sind offen. Bis sie geschlossen sind, bleibt die ai-query-Oberfläche in Betrieb.
5 Offene Befunde
Zwei Befunde aus der Arbeit an diesen Seiten betreffen ai-query, nicht das Notebook. Sie stehen hier, weil das Notebook sie sichtbar gemacht hat.
Obergrenze von 200 Zeilen. Die Abfragen in ai_query/sqldirect/mapper.py enden mit LIMIT 200, und pipeline/plan.py setzt limit_default auf 200. Für die Frage „Mit wem korrespondierte Pirckheimer zwischen 1520 und 1525?“ meldete die Pipeline 200 Briefe. Eine unabhängige Zählung im Register ergibt 237 Briefe in diesem Zeitraum (letters_resolved von pirckheimer, Jahr aus date_when). Die Antwort desselben Laufs sagt zugleich „No data in scope“, was ihrem eigenen Ergebnis widerspricht.
75 oder 77 Briefpartner. Das Golden golden-c782fab71c erwartet für Pirckheimer 1520–1530 genau 75 Briefpartner, und die Pipeline liefert 75. Das Register enthält 354 Briefe, alle datiert 1520–1527. Zählt man die verschiedenen ent_id des Gegenübers von Willibald Pirckheimer (Empfänger bei Richtung P_to_X, sonst Absender), ergeben sich 77; nach kanonischem Namen ebenfalls 77. Welche Zählung dem Golden zugrunde liegt, ist nicht dokumentiert. Solange das offen ist, belegt „bestanden“ bei diesem Block nur die Übereinstimmung mit dem Golden, nicht mit dem Register.

