Direkt zum Hauptinhalt

Wie Sie Genie-Agenten sowohl in strukturierten Daten als auch in Dokumenten verankern, ohne die Governance zu verlieren

Genie-Agenten können Ihre Tabellen, Metriken und Dokumente gleichzeitig analysieren, um kontext- und berechtigungsbezogene Erkenntnisse zu liefern.

von Doyoung Jung

• Basieren Sie Genie-Agenten auf strukturierten Daten (Managed Tables, External Tables, Foreign Tables, Views, Metric Views und Materialized Views) und unstrukturierten Dateien (Unity Catalog Volumes), sodass ein einziger Agent Antworten über alle diese Daten hinweg liefern kann.
• Die Agent-Governance ist auf der Katalogebene angesiedelt, nicht auf der Modellebene. Die Governance skaliert mit dem Agenten, anstatt außer Kontrolle zu geraten.
• Mit Automatic Identity Management (AIM), Object Privileges, ABAC, Row Filters und Column Masks in Unity Catalog werden Genie-Agenten unter der Identität des Benutzers ausgeführt, und jede Antwort wird durch die Berechtigungen dieses Benutzers gefiltert.

Einen Agenten zur Automatisierung einfacher Geschäftsaufgaben zu erstellen, kann einfach sein. Aber einen zu entwickeln, der Ihr Unternehmen tatsächlich versteht und Ihre bestehende Data Governance respektiert, ist weitaus schwieriger.

Lange Zeit mussten Teams separate Systeme nutzen, um strukturierte und unstrukturierte Daten zu analysieren, und verbrachten oft Wochen damit, beide Welten miteinander zu verbinden. Indem sie Analysen direkt aus Tabellen und unstrukturierten Dateien ermöglichen, vereinfachen Genie-Agenten diese Architektur. So können Sie einen einzelnen Agenten sowohl auf strukturierten als auch auf unstrukturierten Daten aufbauen.

Wenn Sie diese Daten konsolidieren, stellt sich eine entscheidende Frage: Wenn ein einziger Agent Zugriff auf alles hat, was hindert ihn dann daran, der falschen Person die falschen Informationen zu geben?

Die gute Nachricht ist, dass die Antwort bei Databricks bereits in Ihrer bestehenden Data-Governance-Grundlage liegt. Dieselben Unity Catalog-Mechanismen, auf die Sie sich heute schon verlassen (Identitätssynchronisierung, Objektberechtigungen, ABAC, Zeilenfilter und Spaltenmasken), steuern Genie-Agenten automatisch und ohne zusätzlichen Einrichtungsaufwand. Diese nahtlose Vererbung basiert auf einer gut durchdachten Governance-Strategie, die wir im Detail untersuchen werden.

Um diese Konzepte zu veranschaulichen, werden wir diese Szenarien anhand von Beispielen von Brickstore, einem fiktiven globalen Bausteinhändler, als Referenzpunkt durchgehen.

Der Governance-Vertrag: Genie-Agenten werden mit den Anmeldedaten des Endbenutzers ausgeführt

Das architektonische Grundprinzip ist einfach: Genie-Agenten werden mit den Anmeldedaten des Endbenutzers ausgeführt. Unity Catalog setzt Governance standardmäßig durch und stellt sicher, dass der Zugriff auf Tabellen und Volumes direkt an die bestehende Identität und die Berechtigungen des Endbenutzers gebunden ist.

Dies ist von entscheidender Bedeutung, da viele selbst entwickelte Systeme Agenten weitreichenden Zugriff gewähren und sich auf Prompt Engineering verlassen, um Ergebnisse auf der Modellebene zu filtern. Dadurch wird das LLM praktisch zu Ihrer Sicherheitsgrenze – ein gefährliches Risiko, da Modelle manipuliert oder umgangen werden können. Einem Auditor zu sagen: „Ich habe Anweisungen hinzugefügt, die besagen, dass eingeschränkte Daten nicht angezeigt werden dürfen“, ist keine vertretbare Governance-Kontrolle.

Mit dem in diesem Artikel beschriebenen Governance-Framework bleibt Unity Catalog Ihre Sicherheitsgrenze und nicht das Modell, genau wie im gesamten Rest von Databricks. Während Genie bestimmt, wie die Daten abgefragt werden, ist es nicht in der Lage, einen Datensatz zurückzugeben, für den der Endbenutzer keine Berechtigung hat, da jede Antwort auf Datenebene gefiltert wird, bevor sie das Lakehouse verlässt.

Schritt 0: Es beginnt mit der Identität: Automatic Identity Management (AIM) und Just-in-Time-Bereitstellung (JIT)

Das architektonische Fundament beginnt mit der Sicherstellung, dass Ihre Unternehmensidentitäten sowohl präzise als auch aktuell sind.

Zugriffskontrollen sind grundsätzlich nur so zuverlässig wie die Identitäten, die sie bewerten. Eine Richtlinie, die besagt: „Mitglieder von brickstore_apac können nur APAC-Bestellungen sehen“, ist bedeutungslos, wenn Ihre Gruppenmitgliedschaften in Databricks eine veraltete, manuell gepflegte Kopie der Daten Ihres Identitätsanbieters sind.

Automatic Identity Management für Microsoft Entra ID und Okta schließt diese Lücke. Wenn diese Option aktiviert ist, werden Benutzer, Gruppen, Gruppenmitgliedschaften und Dienstprinzipale automatisch von diesen Identitätsanbietern in Databricks synchronisiert, ohne dass eine SCIM-Anwendung erforderlich ist. Die Just-in-Time-Bereitstellung ist immer aktiv. Ein Benutzer, der sich noch nie bei Databricks angemeldet hat, wird also bei der ersten Anmeldung bereitgestellt und bringt seine bestehenden Gruppenmitgliedschaften bereits mit.

Hier ist der Ablauf Schritt für Schritt:

  1. Der IdP ist die Source of Truth. Jemand tritt der APAC-Vertriebsorganisation bei; Ihr Identitätsanbieter fügt ihn der Gruppe brickstore_apac hinzu.
  2. AIM synchronisiert dies mit Databricks – einschließlich der Gruppenmitgliedschaft. JIT stellt den Benutzer auf Databricks bereit, wenn er Genie One zum ersten Mal öffnet.
  3. Unity Catalog-Richtlinien basieren auf diesen Gruppen – Objektberechtigungen, ABAC-Richtlinien, Zeilenfilter und Spaltenmasken werten die Gruppenmitgliedschaft zum Abfragezeitpunkt aus.
  4. Der Benutzer stellt einem Genie-Agenten eine Frage, und die Antwort wird genau durch das bestimmt, was seine Gruppenberechtigung zulässt. Nicht mehr und nicht weniger.

Der Vorteil ist, dass Governance kontinuierlich erfolgt und keine einmalige Einrichtung ist. Wenn ein Mitarbeiter von APAC zu AMER wechselt, verschiebt der IdP ihn zwischen den Gruppen, die Synchronisierung überträgt dies, und die nächste Frage, die er Genie stellt, liefert die AMER-Ansicht – ohne dass jemand ein Ticket erstellen oder Änderungen am Genie-Agenten vornehmen muss. Wenn der Mitarbeiter das Unternehmen verlässt, wird er im IdP deaktiviert und sein Zugriff auf alle Genie-Agenten wird sofort entzogen.

Schritt 1: Strukturierte Daten verankern und vier Zugriffsebenen steuern

Sobald die Identitäten ordnungsgemäß eingerichtet sind, können wir uns darauf konzentrieren, was sie sehen dürfen. Bei strukturierten Daten kann ein Genie-Agent auf alle Daten-Assets von Unity Catalog zugreifen – Tabellen, Views, materialisierte Views, Metrik-Views, Streaming-Tabellen und sogar fremde Tabellen, die aus externen Systemen föderiert wurden.

Zum Beispiel sind Delta-Tabellen die Fakten und Dimensionen. Bei Brickstore sind das brickstore.sales.orders (jede Bestellung mit einer region und einer customer_email) und brickstore.sales.products (der Bausteinkatalog). Metric Views sind die gesteuerte semantische Schicht darüber – sie codieren die Definitionen Ihrer Geschäftskennzahlen (z. B. was „Nettoumsatz“ bedeutet, wie „verkaufte Bausteine“ berechnet wird, was als „meistverkaufter Baustein“ gilt) einmal in YAML, sodass jeder Konsument sie auf dieselbe Weise berechnet.

Über diesen Assets liegen vier Ebenen der Zugriffskontrolle, die in der Praxis oft miteinander verwechselt werden:

Ebene

Beantwortete Frage

Mechanismus

Objektberechtigungen

Wer hat welche Zugriffsebene auf welche Ressource?

GRANT SELECT auf den Katalog/das Schema/die Tabelle

Attributbasierte Zugriffskontrolle (ABAC)

Welche Richtlinie gilt und wofür?

Durch gesteuerte Tags gesteuerte Richtlinien, die einmal zugewiesen werden und sich vererben (z. B. ist jede Spalte mit dem Tag „PII“ nur für bestimmte Gruppen verfügbar)

Zeilenfilter

Auf welche Zeilen hat ein Benutzer Zugriff?

Benutzerdefinierte SQL-Funktion (UDF), die jede Zeile zum Abfragezeitpunkt auswertet (Zeilen, bei denen die Funktion FALSE zurückgibt, werden aus den Abfrageergebnissen ausgeschlossen)

Spaltenmasken

Welche Spalten sollen wie maskiert werden?

SQL-UDF, die den Spaltenwert als Eingabe entgegennimmt und den ursprünglichen Wert oder eine maskierte Version zurückgibt

Objektberechtigungen sind die erste Zugriffsebene: Ohne SELECT kann Genie die Tabelle nicht im Namen des Endbenutzers abfragen. Aber den Zugriff auf eine Tabelle zu gewähren bedeutet nicht, dass Sie allen Zugriff gewähren müssen. Sie legen Zeilenfilter und Spaltenmasken über diese Berechtigungen, sodass ein Regionalleiter die Bestellungstabelle abfragen kann, während er nur die Zeilen seiner eigenen Region und niemals die unverschlüsselte E-Mail-Adresse des Kunden sieht. Diese Zeilen- und Spaltensteuerungen basieren auf genau denselben Gruppen, die Ihre Berechtigungen bereits verwenden – is_account_group_member('brickstore_apac') und ähnlichen. ABAC, das als Nächstes folgt, ersetzt nichts davon; es ist lediglich eine Möglichkeit, dieselben Filter und Masken über eine Richtlinie statt Tabelle für Tabelle zuzuweisen.

ABAC: Definieren Sie die Richtlinie einmal, lassen Sie sie sich vererben

Der alte Weg für die Zeilen- und Spaltensicherheit war tabellenspezifisch: Schreiben Sie einen Zeilenfilter, hängen Sie ihn an orders an; schreiben Sie eine Spaltenmaske, hängen Sie sie an eine andere Tabelle an; wiederholen Sie dies endlos. Für einmalige Logik mag das passen, aber bei Hunderten von Tabellen ist diese Konfiguration anfällig für Lücken.

ABAC-Richtlinien, die jetzt zusammen mit verwalteten Tags und automatischer Datenklassifizierung in Unity Catalog GA sind, kehren dies um. Sie kennzeichnen sensible Daten mit verwalteten Tags (Schlüssel-Wert-Paare auf Kontoebene mit kontrolliertem Zugriff wie pii:email), und Sie schreiben eine Richtlinie, die besagt: „Überall dort, wo dieses Tag erscheint, wird dieser Schutz angewendet.“ Neue Tabellen erben den Schutz in dem Moment, in dem sie getaggt werden, sodass kein Aufwand pro Tabelle entsteht.

Eine Spaltenmaske + ABAC-Richtlinie, die jede E-Mail-Spalte im Katalog schützt, in einer einzigen Anweisung:

Und ein Zeilenfilter + ABAC-Richtlinie, gesteuert durch die Gruppenmitgliedschaft, sodass jeder Manager nur die Bestellungen seiner Region sieht:

Das Ergebnis: Der APAC-Manager stellt eine Frage zu Bestellungen und der Genie Agent gibt nur APAC-Zeilen zurück, wobei customer_email maskiert ist. Der AMER-Manager fragt dieselbe Tabelle ab und erhält AMER-Zeilen.

Schritt 2: Ausweitung derselben Governance auf Dokumente

In der Vergangenheit war die Governance-Strategie für Teams beim Umgang mit unstrukturierten Daten eine größere Herausforderung. Während strukturierte Daten sicher in einem Data Warehouse oder einer Datenbank verwaltet werden, werden Dokumente oft in einem isolierten Speichersystem aufbewahrt, das durch separate ACLs geregelt wird.

Die Lösung besteht darin, Dateien innerhalb derselben Governance-Ebene wie Ihre strukturierten Daten aufzubewahren. Sie können sie in Unity Catalog Volumes ablegen, und sie werden wie alles andere zu sicherungsfähigen Objekten. Sie erteilen den Gruppen und Benutzern, die sie sehen dürfen, das Recht GRANT READ VOLUME, und Genie analysiert sie unter demselben Identitätsvertrag:

Ein Verhalten sollten Sie verstehen, bevor Sie Ihren Agenten entwerfen: Wenn Sie ein Volume an einen Genie Agent anhängen, wird es zu einer erforderlichen Quelle. Das bedeutet, dass der Agent beim Laden den Zugriff auf jede angehängte Quelle überprüft. Ein Benutzer, der kein READ VOLUME-Recht für ein angehängtes Volume besitzt, kann diesen Agenten also überhaupt nicht verwenden. Mit anderen Worten: Volume-Berechtigungen regeln Dokumente als Voraussetzung für die Nutzung des Agenten. Stellen Sie also sicher, dass Sie die Dokumentenquellen jedes Agenten auf die Zielgruppe abstimmen, die diesen Agenten verwenden soll. Wenn zwei Zielgruppen unterschiedliche Dokumente benötigen, müssen Sie ihnen möglicherweise verschiedene Genie Agents bereitstellen (die jeweils nur die Volumes mounten, die der Benutzer lesen kann).

Denken Sie auch daran, dass ein Unity Catalog Volume die kleinste sicherungsfähige Einheit ist, sodass Berechtigungen für das gesamte Volume und nicht für einzelne Dateien gelten. Sie können nicht bestimmte Dateien zur Freigabe auswählen; Sie müssen den Zugriff auf das gesamte Volume oder gar nicht gewähren.

Unter Berücksichtigung dieser Aspekte können Volumes direkt an Genie Agents als Wissensquelle angehängt werden, genau wie Sie es bei einer Tabelle oder Ansicht tun würden. Genie Agents lesen weit mehr als nur PDFs – zu den unterstützten Formaten gehören PDF, Bilddateien (JPG, JPEG, PNG, TIFF, TIF) und Office-Dokumente (DOC, DOCX, PPT, PPTX) sowie Klartext und Markdown. In der Praxis bedeutet das, dass gescannte Verträge, Präsentationen und Spezifikationsblätter gleichermaßen geeignet sind, nicht nur saubere PDFs. (Siehe die Dokumentation zu Genie Agents Volumes für die vollständige Liste und die aktuellen Grenzwerte.)

Genie-Volume

Um ein genaues Routing und eine optimale Leistung zu gewährleisten, befolgen Sie diese Best Practices für die Konfiguration Ihrer Volumes:

  • Fügen Sie eine klare Beschreibung hinzu: Beschreiben Sie genau, welche Inhalte das Volume enthält, wie es organisiert ist und wie der Agent es verwenden soll. Verwenden Sie keine generischen Platzhalter. Verwenden Sie beispielsweise statt „regionale Dateien“ lieber „APAC-Marktbericht – Nachfragetreiber, Trends und Beobachtungspunkte für die APAC-Region“. Genie verlässt sich auf diese Beschreibung, um das richtige Volume auszuwählen.
  • Vermeiden Sie doppelte Inhalte: Das Anhängen mehrerer Volumes mit überschneidenden Informationen erschwert es dem Agenten, relevante Dokumente abzurufen. Dasselbe gilt für einzelne Dateien innerhalb eines Volumes.
  • Vermeiden Sie irrelevante Dateien: Fügen Sie nur Dateien hinzu, die für den Bereich des Agenten relevant sind. Irrelevante Dateien können den Agenten verwirren.
  • Verwenden Sie klare Dateinamen: Verwenden Sie aussagekräftige Dateinamen, damit der Agent zwischen den Dateien unterscheiden kann.

Schritt 3: Genie Agents in der Produktion: Gleiche Frage, unterschiedliche Antworten

An diesem Punkt ist der Genie Agent voll befähigt, als echter Fachexperte zu agieren – mit vollem Zugriff auf strukturierte und unstrukturierte Daten. Die zugrunde liegende Wissensdatenbank ist weiterhin durch Zeilenfilter, Spaltenmasken und Volume-Berechtigungen basierend auf benutzerbezogenen Berechtigungen umfassend geschützt.

Wir testen unsere Implementierung, indem wir sie mit zwei verschiedenen Benutzern prüfen, die genau dieselbe Frage stellen, was zu zwei jeweils korrekten Antworten führen sollte.

Stellen Sie sich zwei gleichzeitige Genie Agent-Sitzungen vor, die beide auf denselben Assets basieren – der Tabelle orders, dem Katalog products und dem Volume market_report. Während ein Anfragender zu brickstore_apac gehört und der andere zu brickstore_amer, senden beide genau dieselbe Anfrage:

„Welches Produkt ist in diesem Quartal unser Bestseller und was treibt diese Nachfrage an? Listen Sie außerdem die wichtigsten Kunden auf, die hinter diesen Verkäufen stehen, sowie deren E-Mails.“

Antwort 1 – für den APAC-Manager

APAC-Ergebnisse

Antwort 2 – für den AMER-Manager

AMER-Ergebnisse

Es gibt drei Dinge, die erwähnenswert sind:

  • Die Zahlen sind unterschiedlich, und beide sind korrekt. Die Abfragen beider Manager nach den „meistverkauften Bricks“ rufen Daten aus denselben Tabellen ab – der Unterschied liegt rein in den Zeilen, für die sie berechtigt sind, nicht in der Art und Weise, wie die Metrik berechnet wurde.
  • Der Unterschied erforderte keinerlei benutzerspezifisches Prompt Engineering. Niemand hat geschrieben: „Wenn der Benutzer APAC ist, blende andere Regionen aus.“ Die Anweisungen des Agenten sind identisch. Unity Catalog hat die Filterung zum Zeitpunkt der Abfrage durchgeführt – sowohl für die Zeilen als auch für die maskierte Spalte. Beachten Sie, dass die E-Mail-Spalte maskiert ist, um PII zu schützen.
  • Strukturierte Daten, angereichert durch unstrukturiertes Wissen. Ohne die regionalen Dokumente hätte Genie die Frage nach dem „Was“ vielleicht leicht beantworten können, hätte aber Schwierigkeiten gehabt, herauszufinden, welche Faktoren die Nachfrage antreiben. Mit unstrukturierten Daten hat Genie den vollen Kontext für das Unternehmen.

Muster, auf die Sie achten sollten

Hier sind einige Muster, auf die Sie achten sollten, wenn Sie die Erkenntnisse aus diesem Blog in die Produktion übertragen:

  • Erst taggen, dann Richtlinien festlegen. Maskieren Sie nicht Tabelle für Tabelle. Der erste Impuls ist oft, die drei Tabellen direkt vor Ihnen abzusichern. Widerstehen Sie diesem Impuls. Definieren Sie kontrollierte Tags und ABAC-Richtlinien, um Ihre Data Governance zukunftssicher zu machen.
  • Eine Zielgruppe pro Volume. Da das Volume die kleinste Einheit ist, für die Berechtigungen erteilt werden können, sollten Sie den Dokumentenzugriff an der Volume-Grenze festlegen. Wenn zwei Dokumente unterschiedliche Leser erfordern, benötigen sie unterschiedliche Volumes und unterschiedliche Genie-Agents – planen Sie die Struktur im Voraus.
  • Seien Sie vorsichtig, wenn Sie Genie One oder Genie-Agents extern über MCP oder API bereitstellen – Sie müssen sorgfältig mit Identitäten umgehen. Im Gegensatz zur Ausführung über die Databricks-Benutzeroberfläche sind Sie nicht immer berechtigt, die Identität des Endbenutzers zu verwenden (z. B. bei der Verwendung eines Service Principal zur Authentifizierung). Es gibt spezifische Muster, die Sie anwenden sollten, und Databricks beschreibt die U2M-, M2M- und OBO-Konfigurationen im Detail unter Access Genie everywhere.
  • Testen Sie durch Identitätswechsel (Impersonation), nicht durch bloße Überprüfung. Validieren Sie Ihre Governance nicht, indem Sie die Richtlinie lesen und sich selbst davon überzeugen, dass sie korrekt ist. Stellen Sie stattdessen dieselbe Frage als Mitglied der jeweiligen Gruppe und vergleichen Sie die Antworten. Machen Sie daraus einen Regressionstest und führen Sie ihn aus, wann immer sich Richtlinien oder Gruppierungen ändern.

Das Fazit

Einen Agent zu erstellen kann einfach sein, aber seine Governance erfordert echte Konzeptionsarbeit. In Databricks werden Enterprise-Identitäten vom IdP synchronisiert, Objektberechtigungen regeln den Zugriff, ABAC und kontrollierte Tags bieten Schutz in großem Umfang, Zeilenfilter und Spaltenmasken steuern, welche Daten zurückgegeben werden, und Dokumente werden im selben System wie die Daten aufbewahrt.

Mit diesem Setup erben Genie-Agents die gesamte Governance ohne zusätzliche Konfiguration.

Um mit der Erstellung Ihres ersten kontrollierten Genie-Agents zu beginnen, besuchen Sie die Genie-Dokumentation und die Dokumentation zu ABAC-Richtlinien.

(Dieser Blogbeitrag wurde mit KI-gestützten Tools übersetzt.) Originalbeitrag

Erhalten Sie die neuesten Beiträge in Ihrem Posteingang

Abonnieren Sie unseren Blog und erhalten Sie die neuesten Beiträge direkt in Ihren Posteingang.