Sie können Ihre Agenten des Agent Development Kit (ADK) mit Cloud Storage verbinden. Durch diese Verbindung können Ihre Agenten die integrierten ADK-Toolsets verwenden.
Als KI-Entwickler können Sie ADK in Cloud Storage einbinden, um Ihre Agenten mit Ihren gespeicherten Daten zu verbinden. Diese Integration hilft Ihnen, Ihre agentenbasierten Arbeitslasten zu skalieren. Sie können Cloud Storage verwenden, um Status, Arbeitsspeicher und Checkpoints für zeitaufwendige Aufgaben beizubehalten. Außerdem können Sie Cloud Storage verwenden, um Zwischendateien in einem Workflow mit mehreren Agenten freizugeben.
In diesem Dokument werden die Vorteile der Integration von Cloud Storage in ADK beschrieben. Es werden häufige Anwendungsfälle und die Funktionen der verfügbaren Toolsets behandelt. Eine detaillierte Einrichtungsanleitung und Codebeispiele finden Sie im ADK-Integrationsleitfaden.
Vorteile der Cloud Storage-Integration in ADK
Wenn Sie Cloud Storage in Ihre Agenten einbinden, können diese große Dateien verarbeiten, den Unterhaltungsverlauf beibehalten und Ihre vorhandene Speicherinfrastruktur wiederverwenden.
- Dynamische Kontexterweiterung: Sie können Agenten Zugriff auf große Datasets, Handbücher oder Mediendateien gewähren, ohne die Beschränkungen für die Menge an Daten zu überschreiten, die ein LLM gleichzeitig lesen kann.
- Dauerhafte Artefaktpersistenz: Speichern Sie temporäre Dateien, Logs oder generierte Elemente wie Berichte oder Bilder zuverlässig außerhalb des Unterhaltungsverlaufs.
- Unterstützung für alle Artefakttypen: Verarbeiten und generieren Sie verschiedene Formate, darunter Text, Bilder, Audio und Video, und verwenden Sie Cloud Storage als freigegebenen Speicher.
- Fein abgestufte Zugriffssteuerung: Steuern Sie den Zugriff von Agenten auf Cloud Storage präzise mit IAM-Rollen. ADK verwendet die Standard Google Cloud authentifizierung, um sicherzustellen, dass Agenten nur die Mindestberechtigungen haben, die für den Zugriff auf Daten oder die Ausführung einer Aufgabe erforderlich sind.
Anwendungsfälle
Wenn Sie Ihre Agenten mit Cloud Storage-Funktionen ausstatten, können Sie die folgenden Anwendungsfälle abdecken:
- Dynamisches Abrufen von Kontext, auch als Retrieval-Augmented Generation (RAG) bezeichnet
- Artefaktpersistenz und -archivierung
- Verarbeitung großer Nutzlasten
- Automatisierte Ressourcenverwaltung
Dynamisches Abrufen von Kontext über RAG
Agenten können als Rechercheure fungieren, indem sie Dokumente in Cloud Storage suchen und lesen, um Fragen in Echtzeit zu beantworten. Dieser Ansatz ist nützlich für interne Wissensdatenbanken oder Support-Bots.
- Richtliniennachschlagen: Sie können einen Agenten die neuesten PDF-Handbücher in einem
compliance-docs-Bucket auflisten und lesen lassen, um Nutzeranfragen zu Unternehmensrichtlinien zu beantworten. - Synthese mehrerer Objekte: Sie können einen Agenten erstellen, der Informationen aus mehreren Speicherobjekten abruft und kombiniert, um eine einheitliche Zusammenfassung zu erstellen.
Artefaktpersistenz und -archivierung
Speichern Sie große Mengen von agentengenerierten Daten zuverlässig für die manuelle Überprüfung, andere Systeme oder Audits.
- Automatisierte Berichterstellung: Sie können einen Agenten erstellen, der Datenbankmesswerte analysiert, einen zusammengefassten Bericht erstellt und ihn in einen
reports-archiveBucket hochlädt. - Generierte Medien speichern: Sie können ein Multi-Agenten-System so konfigurieren, dass generierte Bilder oder Audioobjekte in Cloud Storage gespeichert werden und nur der Speicher-URI oder eine signierte URL zurückgegeben wird.
Verarbeitung großer Nutzlasten
Konfigurieren Sie Agenten so, dass sie Speicher-URIs (Dateipfade) verwenden, anstatt den vollständigen Dateiinhalt in den Chat einzufügen. So vermeiden Sie die hohen Kosten und Ineffizienzen, die mit dem Senden großer CSV-Dateien oder Codebasen an das LLM verbunden sind.
- Handler für Datenpipelines: Sie können Ihren Agenten einen Speicher-URI empfangen lassen, anstatt eine große CSV-Datei zu verarbeiten. Der Agent kann dann eine Analyse durchführen, indem er Datenblöcke verarbeitet oder Metadaten prüft, und ein zusammenfassendes Dashboard zurückgeben.
- Entkoppelte Workflows: Sie können einen Agenten als Supervisor konfigurieren, der einen Speicher-URI für ein Cloud Storage-Präfix, einen Ordner oder einen Bucket empfängt. Der Agent kann diesen URI an Backend-Worker weiterleiten, um die Objekte zu verarbeiten und die endgültigen Ergebnisse wieder in den Speicher zu schreiben. Dieses Muster ist mit ereignisgesteuerten Diensten wie Cloud Functions oder Cloud Run kompatibel, um Daten asynchron zu verarbeiten.
Automatisierte Ressourcenverwaltung
Agenten können dazu beitragen, die Speichernutzung zu optimieren, Verwaltungsaufgaben zu automatisieren und die Governance für mehrere Buckets durchzusetzen. Dies ist besonders nützlich für Teams, die eine umfangreiche Speicherinfrastruktur verwalten.
- Infrastruktur-Audit: Sie können einen Agenten erstellen, der Bucket-Konfigurationen (z. B. Standort oder Speicherklasse) scannt und Optimierungen vorschlägt oder nicht konforme Einstellungen identifiziert.
- Ressourcenbereinigung: Sie können einen Agenten erstellen, der leere oder veraltete Buckets identifiziert und den Bereinigungsprozess basierend auf Ihren Aufbewahrungsrichtlinien automatisiert.
ADK-Toolsets für Cloud Storage
ADK bietet die folgenden Toolsets in Python für Cloud Storage. Wenn Sie beide kennen, können Sie Agentenrollen definieren und ihre Berechtigungen einschränken.
GCSToolset für das Datenmanagement
Mit dem Toolset GCSToolset kann Ihr Agent Dateien in vorhandenen Buckets bearbeiten. Verwenden Sie es für Aufgaben wie das Lesen von Dokumenten, das Hochladen von Ergebnissen oder das Löschen temporärer Objekte.
- Objekte lesen: Rufen Sie Inhalte direkt mit
get_object_dataab. - Inhalte suchen: Listen Sie verfügbare Objekte mit
list_objectsauf. - Objekteigenschaften prüfen: Prüfen Sie die Objektgröße oder die
Content-TypeMetadaten mitget_object_metadata. - Hochladen und beibehalten: Erstellen Sie neue Objekte mit
create_object. - Objekte entfernen: Entfernen Sie temporäre Objekte mit
delete_objects.
GCSAdminToolset für die Infrastruktur
Verwenden Sie das Toolset GCSAdminToolset, um die Speicherinfrastruktur zu verwalten, z. B. Buckets zu erstellen oder Verwaltungsaufgaben zu automatisieren.
- Infrastruktur suchen: Listen Sie Buckets in einem Projekt mit
list_bucketsauf. - Speicher bereitstellen: Erstellen Sie neue Buckets mit
create_bucket. - Speicher neu konfigurieren: Ändern Sie Konfigurationen mit
update_bucket. - Speicher entfernen: Entfernen Sie Buckets mit
delete_bucket. - Bucket-Kontext prüfen: Rufen Sie Bucket-Metadaten mit
get_bucketab, um den Bucket-Standort, die Speicherklasse oder die Zugriffssteuerung zu prüfen.
Best Practices
Beachten Sie die folgenden Best Practices, um die Leistung und Sicherheit von Agenten bei der Integration in Cloud Storage zu optimieren:
- Große Nutzlasten vom Unterhaltungsverlauf entkoppeln: Übergeben Sie keine großen Dateien direkt an den Agenten. Speichern Sie sie in Cloud Storage und senden Sie stattdessen Dateireferenzen (URIs). So reduzieren Sie die Tokenkosten und vermeiden, dass die Kontextlimits erreicht werden.
- Prinzip der geringsten Berechtigung anwenden: Gewähren Sie dem Agenten nur die Mindestberechtigungen, die für die Ausführung seiner Aufgaben erforderlich sind. Vermeiden Sie umfassende Rollen wie
roles/storage.admin, es sei denn, Sie verwalten die Infrastruktur. Verwenden Sie für Standarddateivorgänge gezielte Rollen wieroles/storage.objectUseroderroles/storage.objectViewer, die auf bestimmte Buckets beschränkt sind. - Konfigurationen zentral verwalten: Vermeiden Sie es, Bucket-Namen oder Objektnamenpfade in Ihrer Agentenlogik fest zu codieren. Verwenden Sie Umgebungsvariablen oder Konfigurationsmanager, um zwischen Speicherumgebungen für Entwicklung, Tests und Produktion zu wechseln.
- Effiziente Abrufstrategien implementieren: Wenn Sie Cloud Storage als Ebene für den Wissensabruf verwenden, laden Sie nicht ganze große Dokumente in den Kontext des Agenten. Verarbeiten und unterteilen Sie Dokumente vorab oder verwenden Sie spezielle Suchtools, um nur die relevanten Segmente abzurufen.
Beschränkungen
Beachten Sie bei der Integration von Cloud Storage in ADK die folgenden Einschränkungen:
- Unveränderliche Objekte: Cloud Storage-Objekte sind unveränderlich. Sie können keine Daten an ein vorhandenes Objekt anhängen. Wenn Ihr Agent Ereignisse kontinuierlich in einer einzelnen Datei protokollieren muss, muss er das Objekt vollständig überschreiben oder mehrere kleine Objekte erstellen und diese später zusammensetzen.
- Latenz bei der häufigen Statusverwaltung: Cloud Storage eignet sich gut für die dauerhafte Artefaktspeicherung und große Nutzlasten. Wenn Sie Cloud Storage jedoch für häufige Statusaktualisierungen mit geringer Latenz verwenden, kann es zu Latenzen kommen. Beispielsweise kann das Tracking jeder Runde in einem schnellen Unterhaltungsaustausch langsamer sein als die Verwendung von In-Memory-Caches oder -Datenbanken.
- Keine Atomarität für mehrere Objekte: Cloud Storage-Vorgänge gelten für einzelne Objekte. Wenn Ihr Agent atomare Aktualisierungen für mehrere Dateien gleichzeitig benötigt, müssen Sie eine Koordinationslogik in Ihrer Anwendung implementieren.
Nächste Schritte
Detaillierte Codebeispiele, Einrichtungsanleitungen und Parameterreferenzen zum Initialisieren der Cloud Storage-Toolsets in Ihrer Python-Anwendung finden Sie im ADK-Integrationsleitfaden.