kommt in vielen Anwendungen immer häufiger vor. Die Integration von Agenten in Ihre Anwendung bedeutet jedoch viel mehr, als nur einem LLM Zugriff auf alle Daten und Funktionen zu gewähren. Sie müssen außerdem wirksame Leitplanken aufbauen, die sicherstellen, dass der Agent nur Zugriff auf relevante Daten hat, und einen Missbrauch von Funktionen verhindern. Sie müssen dies tun und gleichzeitig sicherstellen, dass das Modell effektiv mit Zugriff auf die erforderlichen Daten arbeiten und so viele Funktionen wie möglich nutzen kann, ohne dass ein Mensch auf dem Laufenden sein muss.
Mein Ziel in diesem Artikel ist es, auf einer übergeordneten Ebene hervorzuheben, wie man wirksame Agentenleitplanken erstellt, um sicherzustellen, dass Ihr Agent nur Zugriff auf die erforderlichen Daten und Funktionen hat und gleichzeitig eine gute Benutzererfahrung gewährleistet wird, indem beispielsweise die Häufigkeit, mit der ein Mensch den Zugriff eines Agenten genehmigen muss, minimiert wird. Ich werde zunächst erörtern, warum Leitplanken so wichtig sind, bevor ich mich einer entscheidenden Komponente von Leitplanken zuwende: der feinkörnigen Autorisierung. Als Nächstes bespreche ich die Erstellung von Leitplanken für Ihre Daten und gehe weiterhin auf Leitplanken für Funktionen ein.

Warum Sie Leitplanken für Ihre Agenten benötigen
Zunächst möchte ich beschreiben, warum wir Leitplanken für KI-Agenten brauchen. Theoretisch könnten Sie dem Agenten einfach Zugriff auf alle Datenbanken und Funktionen in Ihren Anwendungen gewähren, oder?
Es gibt mehrere Gründe, warum Leitplanken notwendig sind. Der Hauptgrund besteht darin, zu verhindern, dass der Agent unerwünschte Aktionen ausführt, beispielsweise das Löschen von Datenbanktabellen. Darüber hinaus müssen Sie sicherstellen, dass Agenten nur Zugriff auf Daten innerhalb eines bestimmten Bereichs haben. So stellen Sie beispielsweise sicher, dass ein Agent, der von einem Kunden verwendet wird, nicht die Daten eines anderen Kunden verwenden kann.
Einige Leitplanken können automatisch eingerichtet werden und erfordern kein menschliches Eingreifen. Der Datenbankzugriff erfolgt auf einer solchen Leitplanke, bei der Sie den Umfang festlegen, in dem ein Agent tätig ist (z. B. innerhalb eines Kunden), und dem Agenten nur Zugriff auf die Daten dieses Kunden gewähren. Andere Leitplanken erfordern jedoch menschliche Interaktion. Stellen Sie sich vor, ein Agent möchte einen Befehl ausführen. Wie stellen wir dann sicher, dass der Agent keine destruktive Aktion ausführt (z. B. das Löschen einer Datenbanktabelle) und der Benutzer den Befehl zulässt?
In diesen Szenarien handelt es sich um einen Human-in-the-Loop, bei dem der Agent um Erlaubnis bittet, eine bestimmte Aktion auszuführen. Wenn der Benutzer es zulässt, kann der Agent fortfahren, und wenn es nicht erlaubt ist, muss sich der Agent für eine andere Vorgehensweise entscheiden.
Fein abgestufte Berechtigungen
Eine wahrscheinliche Voraussetzung für die Arbeit mit Agenten sind fein abgestufte Berechtigungen. Dies bedeutet, dass Sie leicht überprüfen können, ob eine Funktion oder einige Daten in einem bestimmten Bereich verfügbar sind, z. B.:
- Hat dieser Kunde 1 Zugriff auf die Datenbanktabelle A?
- Hat Benutzer 2 Zugriff auf Funktion B?
- Hat Organisation 3 Zugriff auf Funktion C?
Es ist von entscheidender Bedeutung, dass in Ihrer Anwendung eine detaillierte Autorisierung implementiert ist. Es gibt zahlreiche Anbieter, die diese Funktionalität anbieten.
Wenn Sie eine differenzierte Autorisierung implementiert haben, müssen Sie diese in alle Funktionen Ihrer Anwendungen implementieren und sowohl das Szenario bewältigen, in dem der Zugriff gewährt wird, als auch das Szenario, in dem der Zugriff verweigert wird. Wenn der Zugriff beispielsweise verweigert wird, können Sie erwägen, eine Nachricht hinzuzufügen, die besagt, dass Sie einen Administrator um eine bestimmte Zugriffsebene bitten müssen, um eine bestimmte Aktion ausführen zu können.
Agentische Leitplanken für Daten
Nachdem Sie fein abgestufte Berechtigungen implementiert haben, können wir mit der Erörterung der Leitplanken für Ihre Daten beginnen. Es ist wichtig, dass Ihr Agent Zugriff auf so viele Daten wie möglich hat, um Benutzerfragen effektiv beantworten zu können. Sie müssen dies dann mit der Tatsache in Einklang bringen, dass der Agent nicht auf eingeschränkte Daten zugreifen oder unnötige Informationen abrufen sollte, die er nicht zur Beantwortung der Benutzeranfrage benötigt
Zugriff auf eingeschränkte Daten
Die Beschränkung des Zugriffs auf Daten für Ihre Agenten hängt größtenteils von der detaillierten Autorisierung ab. In Ihren Funktionen, die eine Datensuche durchführen (Datenbanksuche, Bucket-Abruf usw.), sollten Sie zuerst den Zugriffsbereich des Benutzers überprüfen.
Darüber hinaus sollten Sie auch darüber nachdenken, Ihrem Agenten in der Eingabeaufforderung mitzuteilen, was er tun darf. Wenn der Agent versucht, auf Daten zuzugreifen, und ihm dann aus irgendeinem Grund der Zugriff verweigert wird, kann dies kostspielig sein, sowohl hinsichtlich der Token-Nutzung als auch hinsichtlich der Zeit.
Vermeiden Sie das Abrufen unnötiger Informationen
Wenn Sie Ihrem Agenten Zugriff auf alle Datenbanktabellen und Datenbereiche gewähren, kann es zu Problemen kommen, da die Agenten zu viele Optionen haben und es für den Agenten schwierig wird, die richtige Dokumenttabelle und die richtigen Felder auszuwählen. Dies ist auch ein Thema, über das ich kürzlich gesprochen habe Mein Artikel über das Erstellen von Instruments für effektive AgentenS.
Um dieses Downside zu lösen, würde ich mich darauf konzentrieren, den Agenten nur über relevante Informationsquellen zu informieren. Wenn der Agent an einer Aufgabe arbeitet, von der Sie wissen, dass sie nur mit Datenbank A gelöst werden kann, sollten Sie erwägen, den Agenten nur über Datenbank A zu informieren und alle anderen Datenbanken aus der Eingabeaufforderung des Agenten herauszulassen. Dies setzt natürlich voraus, dass Sie wissen, welche Daten für den Agenten potenziell related sind, um Anfragen zu beantworten.
Agentische Leitplanken für Funktionen
Ich denke, das Thema der Erstellung von Agentenleitplanken für Funktionen ist noch interessanter. Der Grund dafür ist, dass beim Bau dieser Leitplanken viele Elemente zu berücksichtigen sind:
- Wie verhindern Sie destruktive Handlungen?
- Wie minimieren Sie menschliche Interaktionen?
Wie verhindern Sie destruktive Handlungen?
Das wichtigste Unterthema zu Funktionsleitplanken ist die Verhinderung destruktiver Aktionen. Um dieses Downside zu lösen, sollten Sie alle Funktionen danach markieren, ob sie funktionieren irreversible Handlungen. Zum Beispiel
- Das Löschen einer Datenbanktabelle ist unumkehrbar (Sie können natürlich ein Backup laden, aber das erfordert etwas Arbeit)
- Das Lesen aus einer Tabelle hat keine destruktive Wirkung
Wenn der Agent eine leicht rückgängig zu machende Aktion ausführt (sie kann durch Klicken auf die Schaltfläche „Rückgängig“ rückgängig gemacht werden) oder eine Aktion ausführt, die keine zerstörerischen Auswirkungen hat, können Sie dem Agenten wahrscheinlich einfach erlauben, die Funktion auszuführen.
Wenn eine Funktion jedoch eine irreversible Aktion ausführt, sollten Sie den Agenten darüber informieren und den menschlichen Benutzer wahrscheinlich fragen, ob der Agent diese Aktion ausführen kann.
Wie minimieren Sie die Interaktionen zwischen Menschen?
Natürlich möchten Sie destruktive Handlungen verhindern. Sie möchten den Benutzer jedoch auch nicht zu sehr belästigen, indem Sie ihn fragen, ob der Agent eine Aktion ausführen kann oder nicht.
Ein guter Ansatz zur Minimierung menschlicher Interaktionen besteht darin, Funktionen auf eine Whitelist zu setzen, z. B. das, was Cursor für die Ausführung von Terminalbefehlen tut: Wenn Cursor zum ersten Mal einen Befehl ausführen möchte, z. B.:
- cd in einen Ordner
- Laufen Pytest-Checks
- Verschieben Sie eine Datei von einem Ort an einen anderen
Der Cursor fragt den Benutzer, ob er einen Befehl ausführen darf. Anschließend können Sie eine der drei folgenden Optionen wählen:
- Lehnen Sie die Anfrage ab
- Akzeptieren Sie die Anfrage (einmalig)
- Setzen Sie den Befehl auf die Whitelist (nehmen Sie die Anfrage jetzt und in Zukunft an)
Whitelisting funktioniert intestine, weil Sie sicherstellen, dass der Benutzer dem Agenten erlaubt, eine Funktion oder einen Befehl auszuführen, Sie ihn aber künftig nicht mehr mit genau dieser Funktion belästigen müssen. Allerdings hat das Whitelisting den Nachteil, dass einige Befehle nicht auf die Whitelist gesetzt werden können, wenn man bedenkt, dass ein Benutzer den Kontext jedes Mal überprüfen muss, wenn der Agent die Ausführung einiger Funktionen vorschlägt (z. B. das Löschen einer Datenbanktabelle).
Abschluss
In diesem hochrangigen Artikel habe ich besprochen, wie Sie beim Erstellen von Agentenanwendungen im Hinblick auf Leitplanken vorgehen sollten. Leitplanken sind erforderlich, da Sie sicherstellen müssen, dass der Agent sich wie gewünscht verhält und ohne ausdrückliche Genehmigung des Benutzers keine Aktionen wie das Abrufen von Informationen außerhalb des Zugriffsbereichs oder destruktive Aktionen ausführen darf. Ich habe über die Erstellung von Leitplanken für Ihre Daten und die Funktionen gesprochen, die Sie Ihrem Agenten zur Verfügung stellen. Ich bin davon überzeugt, dass Leitplanken ein wichtiger Teil der Erstellung von Agentenanwendungen sind und bei der Erstellung von Agentenanwendungen immer im Auge behalten werden sollten. Durch die Sicherstellung geeigneter Schutzmaßnahmen wird die Verwendung Ihrer Agenten sicherer, was von entscheidender Bedeutung ist, wenn man bedenkt, dass es schwierig sein wird, das Vertrauen des Benutzers wiederherzustellen, wenn das Vertrauen eines Benutzers in den Agent gebrochen ist.
👉 Finden Sie mich in den sozialen Netzwerken:
✍️ Medium
Sie können auch einige meiner anderen Artikel lesen:
