PROJEKTEINBLICK ·

Eine Nachricht an meinen Assistenten

Mein Assistent hatte inzwischen eine Weboberfläche, Widgets und einen Signal Desk. Der nächste Zugang musste nicht noch mehr auf dem Bildschirm zeigen. Mit Telegram konnte eine Nachricht vom Telefon aus denselben Assistenten erreichen. Damit kam aber auch eine neue Frage dazu: Wer durfte ihm auf diesem Weg überhaupt Aufträge geben?

KONZEPT · UMSETZUNGOliver Röschner
LESEZEIT5 Minuten
BEREICHTECHNOLOGIE
Ein Smartphone kommuniziert über eine warme Lichtspur mit einem lokalen Kleinrechner
KI GENERIERTES ARTIKELBILD | OPERUS

Bis dahin hatte ich viel Arbeit in die unmittelbare Bedienung gesteckt. Ich konnte mit meinem Assistenten sprechen, seine Antworten sehen und Informationen in den Widgets verfolgen. Mit Telegram kam eine andere Form der Eingabe dazu: eine Textnachricht über einen externen Dienst.

Die eigentliche Anwendung sollte dafür weiterhin auf meinem Rechner laufen. Ich wollte einen zusätzlichen Zugang zu den vorhandenen Fähigkeiten schaffen. Ein zweiter Assistent mit einer eigenen Umsetzung sämtlicher Befehle hätte das Projekt unnötig auseinandergezogen.

Der Eingang änderte sich, der Kern blieb

Der Telegram-Bot nahm Nachrichten entgegen und gab den enthaltenen Auftrag an den bestehenden Orchestrator weiter. Von dort ging es durch die vorhandene Verarbeitung. Die Antwort wurde anschließend an den Chat zurückgesendet.

Ein weiterer Zugang sollte die vorhandenen Fähigkeiten nutzen, statt sie ein zweites Mal zu erfinden.

Die Ausgabe brauchte allerdings eine Anpassung an den Kanal. Eine Telegram-Nachricht sollte ihre Antwort im Chat bekommen. Der Aufruf an den Orchestrator verwendete dafür den stillen Modus, sodass dieser Auftrag keine lokale Sprachausgabe auslöste.

Der Weg einer Nachricht
SchrittAufgabe
Nachricht empfangenTelegram liefert die Eingabe an den Bot
Absender prüfenDie Anwendung prüft die zugelassene Identität und gegebenenfalls den Chat
Auftrag weitergebenDer vorhandene Orchestrator verarbeitet den Text
Antwort zurücksendenDas Ergebnis erscheint als Nachricht im Chat

Der Bot war damit eine Verbindung zu meinem laufenden System. Wenn der Rechner oder die Anwendung nicht lief, stand dieser Zugang auch nicht zur Verfügung.

Der Absender gehörte jetzt zum Auftrag

Eine Nachricht über einen Bot durfte nicht einfach deshalb verarbeitet werden, weil sie angekommen war. Bevor der Text den Assistenten erreichte, musste klar sein, ob er von der vorgesehenen Person kam.

Die Konfiguration enthielt dafür eine zugelassene Benutzer-ID. Ohne diese Angabe wurde die Verarbeitung der Fernbefehle nicht aktiviert. Zusätzlich konnte der Zugriff auf einen bestimmten Chat begrenzt werden.

Das war eine neue Prüfung vor der eigentlichen Intent-Pipeline. Zuerst musste die Nachricht diesen Eingang passieren. Erst danach stellte sich die Frage, was der Auftrag bedeutete und welcher Ausführungspfad dazu passte.

Auch die Häufigkeit von Befehlen brauchte eine Grenze. Der Bot bekam deshalb eine Begrenzung für eingehende Kommandos. Zu viele Anfragen sollten nicht ungebremst in der gemeinsamen Verarbeitung landen.

Bekannt heißt nicht automatisch erlaubt

Die zugelassene Identität beantwortete eine wichtige Frage. Sie bedeutete aber nicht, dass jeder Auftrag unabhängig von seiner Wirkung ausgeführt werden sollte.

Eine Statusfrage und eine Aktion mit Folgen für Anwendungen oder Dateien blieben unterschiedliche Dinge. Die Regeln, die ich für die Fähigkeiten vorgesehen hatte, mussten auch bei diesem Zugang relevant bleiben.

Ich wollte dafür keinen Nebenweg schaffen, der an der bestehenden Verarbeitung vorbeiging. Die Nachricht wurde deshalb in den gemeinsamen Orchestrator eingespeist. Welche Aktion daraus entstand und ob sie eine Freigabe brauchte, gehörte weiterhin in die dafür zuständige Anwendungsschicht.

Damit wurde die Unterscheidung aus dem Wetter- und Signal-Desk-Teil noch einmal konkreter. Mein Assistent konnte lokal arbeiten und trotzdem einen bewusst eingerichteten Weg nach außen besitzen.

Erreichbar sein war eine eigene Fähigkeit

Der zusätzliche Kanal machte nicht plötzlich neue Skills nötig. Er veränderte, von wo aus vorhandene Fähigkeiten angesprochen werden konnten. Das war für die Architektur ein interessanter Unterschied.

Ein früher kompakter Terminalrechner steht neben einem modernen dunklen Display mit abstrakter Bedienoberfläche
KI-generierte Illustration. Ein weiterer Zugang zum selben Kern: Vorhandene Fähigkeiten werden über einen neuen Kanal erreichbar.

Der Bot konnte optional bleiben. Fehlende Konfiguration sollte nicht dazu führen, dass die übrige Anwendung ihre Arbeit verlor. Der lokale Assistent und seine Weboberfläche hatten weiterhin ihren eigenen Nutzen.

So wuchs das Projekt um einen weiteren Eingang, ohne dass ich sein Innenleben dafür verdoppeln musste. Gleichzeitig kamen Prüfungen hinzu, die an genau diesen Eingang gehörten: Identität, Chat, Konfiguration und die Anzahl eingehender Aufträge.

Während solche Erweiterungen neue Möglichkeiten eröffneten, blieb die direkte Unterhaltung eine eigene Baustelle. Gerade im Browser konnte ich sehr genau spüren, ob zwischen meinem Klick, meiner Eingabe und der ersten hörbaren Antwort zu viel Zeit verging.

Teil 11: Wann beginnt eine Antwort wirklich?Im nächsten Teil geht es wieder um Geschwindigkeit. Diesmal zählt der ganze Weg durch den Browser – und die Frage, wann eine Antwort für mich tatsächlich begonnen hat. JORIS