So funktioniert Amazon Bedrock Agents - Amazon Bedrock

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

So funktioniert Amazon Bedrock Agents

Amazon Bedrock Agents besteht aus den folgenden zwei Hauptgruppen von API Vorgängen, die Sie bei der Einrichtung und Ausführung eines Agenten unterstützen:

  • APIBuild-Time-Operationen zur Erstellung, Konfiguration und Verwaltung Ihrer Agenten und der zugehörigen Ressourcen

  • APILaufzeitvorgänge zum Aufrufen Ihres Agenten mit Benutzereingaben und zum Initiieren der Orchestrierung zur Ausführung einer Aufgabe.

Konfiguration zur Erstellungszeit

Ein Agent umfasst folgende Komponenten:

  • Foundation-Modell — Sie wählen ein Foundation Model (FM) aus, das der Agent aufruft, um Benutzereingaben und nachfolgende Eingabeaufforderungen in seinem Orchestrierungsprozess zu interpretieren. Der Agent ruft das FM auch auf, um Antworten und Folgeschritte in seinem Prozess zu generieren.

  • Anweisungen — Sie schreiben Anweisungen, die beschreiben, wofür der Agent konzipiert ist. Mit erweiterten Eingabeaufforderungen können Sie die Anweisungen für den Agenten bei jedem Schritt der Orchestrierung weiter anpassen und Lambda-Funktionen einbeziehen, um die Ausgabe jedes Schritts zu analysieren.

  • Mindestens eine der folgenden Optionen:

    • Aktionsgruppen — Sie definieren die Aktionen, die der Agent für den Benutzer ausführen soll, indem Sie die folgenden Ressourcen bereitstellen:

      • Eines der folgenden Schemas zur Definition der Parameter, die der Agent vom Benutzer abrufen muss (jede Aktionsgruppe kann ein anderes Schema verwenden):

        • Importieren in &S3; OpenAPI Schema zur Definition der API Operationen, die der Agent aufrufen kann, um seine Aufgaben auszuführen. Das Tool OpenAPI Das Schema enthält die Parameter, die dem Benutzer abgerufen werden müssen.

        • Ein Funktionsdetailschema zur Definition der Parameter, die der Agent dem Benutzer entnehmen kann. Diese Parameter können dann für die weitere Orchestrierung durch den Agenten verwendet werden, oder Sie können festlegen, wie sie in Ihrer eigenen Anwendung verwendet werden sollen.

      • (Optional) Eine Lambda-Funktion mit der folgenden Eingabe und Ausgabe:

        • Eingabe — Der API Vorgang und/oder die Parameter, die während der Orchestrierung identifiziert wurden.

        • Ausgabe — Die Antwort auf den API Aufruf .

    • Wissensdatenbanken — Ordnen Sie Wissensdatenbanken einem Agenten zu. Der Agent fragt die Wissensdatenbank nach zusätzlichem Kontext ab, um die Antwortgenerierung und die Eingaben in die einzelnen Schritte des Orchestrierungsprozesses zu verbessern.

  • Vorlagen für Eingabeaufforderungen — Vorlagen für Eingabeaufforderungen sind die Grundlage für die Erstellung von Eingabeaufforderungen, die dem FM zur Verfügung gestellt werden. Amazon Bedrock Agents stellt die vier standardmäßigen Standardvorlagen für Eingabeaufforderungen zur Verfügung, die während der Vorverarbeitung, Orchestrierung, Generierung von Knowledge-Base-Antworten und Nachbearbeitung verwendet werden. Sie können diese Basisvorlagen für Eingabeaufforderungen optional bearbeiten, um das Verhalten Ihres Agenten bei jedem Schritt seiner Sequenz anzupassen. Sie können die Schritte auch deaktivieren, um Probleme zu beheben oder wenn Sie der Meinung sind, dass ein Schritt nicht erforderlich ist. Weitere Informationen finden Sie unter Verbessern Sie die Genauigkeit Ihrer Mitarbeiter mithilfe erweiterter Vorlagen für Eingabeaufforderungen in Amazon Bedrock.

Bei der Erstellung werden all diese Komponenten zusammengeführt, um Basisaufforderungen zu erstellen, anhand derer der Agent die Orchestrierung durchführen kann, bis die Benutzeranforderung abgeschlossen ist. Mit erweiterten Eingabeaufforderungen können Sie diese grundlegenden Eingabeaufforderungen mit zusätzlicher Logik und wenigen Beispielen modifizieren, um die Genauigkeit der einzelnen Schritte des Agentenaufrufs zu verbessern. Die Basisvorlagen für Eingabeaufforderungen enthalten Anweisungen, Aktionsbeschreibungen, Beschreibungen der Wissensdatenbank und den Konversationsverlauf, die Sie alle anpassen können, um den Agenten an Ihre Bedürfnisse anzupassen. Anschließend bereiten Sie Ihren Agenten vor, der alle Komponenten der Agents, einschließlich der Sicherheitskonfigurationen, zusammenfasst. Durch die Vorbereitung wird der Agent in einen Zustand versetzt, in dem er zur Laufzeit getestet werden kann. Die folgende Abbildung zeigt, wie Ihr Agent durch API Build-Time-Operationen aufgebaut wird.

Wie Build-Time APIs Ihren Agenten konstruiert. Eine Aktionsgruppe besteht aus OpenAPI Schema und eine Lambda-Funktion, um zu definieren, welche API Operationen ein Agent aufrufen kann und wie der Agent die Anfragen und Antworten behandeln soll. Der Agent synthetisiert Informationen aus den Basisvorlagen für Eingabeaufforderungen, den ihm zur Verfügung gestellten Anweisungen und allen angehängten Aktionsgruppen und Wissensdatenbanken, um anhand des von ihm verwendeten Modells Eingabeaufforderungen zu generieren. Die Eingabeaufforderungen werden dem Eingabeaufforderungsspeicher des Agenten hinzugefügt.

Laufzeitprozess

Runtime wird verwaltet von InvokeAgentAPIBetrieb. Dieser Vorgang startet die Agentensequenz, die aus den folgenden drei Hauptschritten besteht.

  1. Vorverarbeitung — Steuert, wie der Agent Benutzereingaben kontextualisiert und kategorisiert, und kann zur Validierung von Eingaben verwendet werden.

  2. Orchestrierung — Interpretiert die Benutzereingaben, ruft Aktionsgruppen auf und fragt Wissensdatenbanken ab und gibt die Ausgabe an den Benutzer zurück oder als Eingabe für die weitere Orchestrierung. Die Orchestrierung besteht aus den folgenden Schritten:

    1. Der Agent interpretiert die Eingabe anhand eines Basismodells und generiert eine Begründung, in der die Logik für den nächsten Schritt dargelegt wird.

    2. Der Agent sagt voraus, welche Aktion in einer Aktionsgruppe er aufrufen oder welche Wissensdatenbank er abfragen soll.

    3. Wenn der Agent voraussagt, dass er eine Aktion aufrufen muss, sendet der Agent die anhand der Benutzeraufforderung ermittelten Parameter an die für die Aktionsgruppe konfigurierte Lambda-Funktion oder gibt die Steuerung zurück, indem er die Parameter in der InvokeAgentAntwort. Wenn der Agent nicht über genügend Informationen verfügt, um die Aktion auszulösen, kann er eine der folgenden Aktionen ausführen:

      • Fragen Sie eine zugehörige Wissensdatenbank ab (Knowledge Base-Antwortgenerierung), um zusätzlichen Kontext abzurufen und die Daten zusammenzufassen, um die Generierung zu verbessern.

      • Fordert den Benutzer erneut auf, alle für die Aktion erforderlichen Parameter zu sammeln.

    4. Der Agent generiert eine Ausgabe, die als Beobachtung bezeichnet wird, indem er eine Aktion aufruft und/oder Ergebnisse aus einer Wissensdatenbank zusammenfasst. Der Agent verwendet die Beobachtung zur Erweiterung der grundlegenden Eingabeaufforderung, die dann mit einem Basismodell interpretiert wird. Der Agent bestimmt dann, ob er den Orchestrierungsprozess wiederholen muss.

    5. Diese Schleife wird fortgesetzt, bis der Agent eine Antwort an den Benutzer zurückgibt oder bis er den Benutzer zur Eingabe zusätzlicher Informationen auffordern muss.

    Während der Orchestrierung wird die Basisvorlage für Eingabeaufforderungen um die Anweisungen, Aktionsgruppen und Wissensdatenbanken erweitert, die Sie dem Agenten hinzugefügt haben. Anschließend wird die erweiterte Basisaufforderung verwendet, um das FM aufzurufen. Das FM prognostiziert die bestmöglichen Schritte und Trajektorien, um die Benutzereingaben zu erfüllen. Bei jeder Iteration der Orchestrierung prognostiziert das FM, welcher API Vorgang aufgerufen oder welche Wissensdatenbank abgefragt werden soll.

  3. Nachbearbeitung — Der Agent formatiert die endgültige Antwort so, dass sie an den Benutzer zurückgesendet wird. Diese Option ist standardmäßig deaktiviert.

Wenn Sie Ihren Agenten aufrufen, können Sie zur Laufzeit eine Ablaufverfolgung aktivieren. Mit der Ablaufverfolgung können Sie die Beweggründe, Aktionen, Abfragen und Beobachtungen des Agenten in jedem Schritt der Agentensequenz verfolgen. Die Ablaufverfolgung umfasst die vollständige Eingabeaufforderung, die bei jedem Schritt an das Foundation-Modell gesendet wurde, sowie die Ergebnisse des Foundation-Modells, die API Antworten und die Knowledgebase-Abfragen. Sie können den Trace verwenden, um die Argumentation des Agenten bei jedem Schritt nachzuvollziehen. Weitere Informationen finden Sie unter Verfolgen Sie den step-by-step Argumentationsprozess des Agenten mithilfe von Trace

Während die Benutzersitzung mit dem Agenten weitere InvokeAgent Anfragen bearbeitet, bleibt der Konversationsverlauf erhalten. Durch den Konversationsverlauf wird die für die Orchestrierung verwendete Vorlage für Eingabeaufforderungen kontinuierlich um Kontext erweitert, wodurch die Genauigkeit und Leistung des Agenten verbessert wird. Das folgende Diagramm zeigt den Prozess des Agenten während der Laufzeit:

Wie Ihr Agent während der Laufzeit arbeitet. Nach dem Empfang von Benutzereingaben ruft der Agent erweiterte Eingabeaufforderungen aus dem Eingabeaufforderungsspeicher und den Konversationsverlauf aus dem Sitzungsspeicher ab. Wenn der Vorverarbeitungsschritt aktiviert ist, ruft der Agent das FM mit der Vorverarbeitungsaufforderung auf, um die Benutzereingabe zu überprüfen. Im Orchestrierungsschritt ruft der Agent das FM mit der Orchestrierungsaufforderung auf und analysiert die Antwort. Anschließend bestimmt er Aktionsgruppen und fragt bei Bedarf Wissensdatenbanken ab und generiert eine Beobachtung, die eine neue Orchestrierungsaufforderung auslösen könnte. Die Orchestrierungsphase wiederholt sich, bis die Beobachtung eine endgültige Antwort an den Benutzer zurückgibt.