Das Problem
Ein Sprachmodell lügt nicht absichtlich. Es sagt die wahrscheinlichste Fortsetzung voraus, und wenn ihm eine Information fehlt, ersetzt es sie durch etwas Glaubwürdiges. In einer einfachen Unterhaltung ergibt das einen Fehler im Detail. Bei einem Assistenten, der handelt, sind die Folgen konkreter: eine Route, die den Namen „Alexander Weber“ selbst als Ziel nimmt, oder eine erfundene Erklärung wie „dein Kalender ist nicht eingerichtet“, die dich nach einer Störung suchen lässt, die es nicht gibt. Mit Überzeugung vorgetragen, ist ein solcher Fehler gefährlicher als ein einfaches „ich weiß es nicht“, weil du danach handelst.
Was ich wollte
Ich wollte eine einfache Regel: LIA präsentiert dir als Tatsache nur, was sie von einem Werkzeug erhalten, in der Unterhaltung gelesen oder berechnet hat. Was sich reparieren lässt, ohne deine Absicht zu erraten, wird repariert. Der Rest wird abgelehnt, mit einer Meldung, die dem Modell hilft, sich zu korrigieren.
Vor dem Handeln
- Erfundene Optionen werden entfernt. Fügt das Modell einem Werkzeug eine Option hinzu, die es nicht gibt, etwa eine Sortierung, die das Werkzeug nicht kennt, wird sie vor dem Aufruf entfernt, und der Plan läuft weiter.
- Zahlen werden in ihre Grenzen zurückgeholt. Wer von einem Werkzeug, das zwanzig Ergebnisse akzeptiert, hundert verlangt, bekommt zwanzig. Ein Wert, den man nicht korrigieren kann, ohne etwas zu erfinden, etwa ein Datum in einem unlesbaren Format, bleibt ein gemeldeter Fehler.
- Ein Name ist keine Adresse. Parameter, die eine Adresse oder eine E-Mail erwarten, werden direkt vor dem Aufruf kontrolliert. Enthalten sie den Namen einer in der Unterhaltung erwähnten Person, wird der Aufruf blockiert, bevor Kosten entstehen, mit einer klaren Anweisung: Hol zuerst die Adresse des Kontakts. Im Zweifel lässt die Kontrolle durch, um eine berechtigte Anfrage nicht zu behindern.
- Ein fehlender Wert bleibt fehlend. Wenn ein Schritt eine Aktion über eine Liste wiederholt und einem Element das erwartete Feld fehlt, bleibt der Parameter leer: Das Werkzeug erhält nicht das ausgeschriebene Wort „null“, und es wendet seinen eigenen Standardwert an.
- Der Plan wird auf Lücken gelesen. Ein Prüfer sieht gut, was ein Plan enthält, viel weniger, was er vergisst. Der von LIA listet deshalb zuerst alles auf, was deine Anfrage verlangt, und prüft dann, dass ein Schritt jedes davon abdeckt, bevor er sein Urteil abgibt.
In der Antwort
Wenn LIA dir eine Uhrzeit, ein Datum, eine Zahl, einen Namen oder eine Adresse nennt, muss dieser Wert in den Daten der Runde stehen, in den kürzlich abgerufenen Elementen oder wortwörtlich in einer früheren Nachricht. Sonst sagt sie dir, dass die Information fehlt, und bietet an, sie zu holen. Die Elemente, die sie gerade gelesen hat, bleiben ihr einige Runden lang verfügbar: Eine Folgefrage wie „und wann fängt er an?“ stützt sich so auf die Daten selbst.
Was exakt sein muss, wird berechnet. Ein Modell sagt Text voraus, es rechnet nicht. Ein Prozentsatz, die Zahl der Tage bis zu einem Datum oder eine Währungsumrechnung laufen über eigene Werkzeuge: eine exakte Dezimalrechnung, die sagt, wann sie runden musste, eine Dauer, gezählt zwischen zwei echten Zeitpunkten, Zeitumstellung inklusive, und der Referenzkurs der Europäischen Zentralbank, mit seinem Datum.
Wenn etwas scheitert
Wenn ein Werkzeug scheitert, sagt LIA es dem Modell über einen einzigen Kanal, der das Werkzeug nennt und die genaue Zahl der gescheiterten Schritte angibt. Das Modell muss also nicht raten, was passiert ist. Ein halb gelungener Plan gibt dir zurück, was funktioniert hat, und sagt, was nicht funktioniert hat.
Zwei weitere Regeln gehen in dieselbe Richtung. Das Urteil eines Prüfers reicht nicht, um eine Blockade zu melden: Eine Fähigkeit gilt nur als blockiert, wenn sie gar nicht gestartet wurde. Und eine vorbereitete Anfrage, eine ausstehende Bestätigung und eine gespeicherte Änderung sind drei verschiedene Zustände, die LIA in ihrem Bericht nicht verwechselt.
Wenn LIA die Werkzeuge selbst nacheinander aufruft, im ReAct-Modus, endet jede Information, die sie holen wollte, als erhalten oder als fehlend gemeldet, zusammen mit dem, was sie versucht hat. Ein Werkzeug, das einen Wert nicht versteht, lehnt ihn ab und erklärt das erwartete Format.
Die Grenzen
- Diese Schutzmaßnahmen verringern Erfindungen, ohne sie zu beseitigen. Ein Modell kann eine Angabe, die es richtig erhalten hat, immer noch falsch umformulieren.
- Die Namenskontrolle kennt nur die Personen, die während der Runde erkannt wurden. Wichtige Aktionen laufen ohnehin über deine Bestätigung.
- Wenn dein Administrator sie aktiviert, bleiben Kennzeichnungen an deinen E-Mails (Kategorie, Dringlichkeit, Betrugsverdacht) Hinweise: Das Fehlen einer Warnung beweist nicht, dass eine Nachricht sicher ist.
Weiterlesen: Die Kontrolle behalten, ohne gestört zu werden: Wie LIA dich um Zustimmung bittet; LIAs Anweisungen, geschrieben und geprüft wie Code.
