Verwendung von Aurora Postgre SQL als Wissensdatenbank für Amazon Bedrock - Amazon Aurora

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.

Verwendung von Aurora Postgre SQL als Wissensdatenbank für Amazon Bedrock

Sie können einen Aurora SQL Postgre-DB-Cluster als Wissensdatenbank für Amazon Bedrock verwenden. Weitere Informationen finden Sie unter Erstellen eines Vektorspeichers in Amazon Aurora. Eine Wissensdatenbank nimmt automatisch unstrukturierte Textdaten, die in einem Amazon S3 S3-Bucket gespeichert sind, konvertiert sie in Textblöcke und Vektoren und speichert sie in einer Postgre-Datenbank. SQL Mit den generativen KI-Anwendungen können Sie Agents for Amazon Bedrock verwenden, um die in der Wissensdatenbank gespeicherten Daten abzufragen und die Ergebnisse dieser Abfragen zu verwenden, um die Antworten zu erweitern, die von grundlegenden Modellen bereitgestellt werden. Dieser Workflow wird Retrieval Augmented Generation () genannt. RAG Weitere Informationen zu finden Sie unter Retrieval Augmented Generation () RAG. RAG

Ausführliche Informationen zur Verwendung von Aurora Postgre SQL zur Erstellung generativer KI-Anwendungen finden Sie in diesem Blogbeitrag. RAG

Voraussetzungen

Machen Sie sich mit den folgenden Voraussetzungen vertraut, um den Aurora SQL Postgre-Cluster als Wissensdatenbank für Amazon Bedrock zu verwenden. Auf hoher Ebene müssen Sie die folgenden Dienste für die Verwendung mit Bedrock konfigurieren:

  • Der Amazon Aurora SQL Postgre-DB-Cluster wurde in einer der folgenden Versionen erstellt:

    • 16.1 und alle höheren Versionen

    • 15.4 und höhere Versionen

    • 14.9 und höhere Versionen

    • 13.12 und höhere Versionen

    • 12.16 und höhere Versionen

    Anmerkung

    Sie müssen die pgvector Erweiterung in Ihrer Zieldatenbank aktivieren und Version 0.5.0 oder höher verwenden. Weitere Informationen finden Sie unter pgvector v0.5.0 mit Indizierung. HNSW

  • RDSDaten API

  • Ein Benutzer hat verwaltet in AWS Secrets Manager. Weitere Informationen finden Sie unterPasswortverwaltung mit , Amazon Aurora und AWS Secrets Manager.

Vorbereitung von Aurora Postgre für SQL die Verwendung als Wissensdatenbank für Amazon Bedrock

Folgen Sie den in den folgenden Abschnitten erläuterten Schritten, um Aurora Postgre für SQL die Verwendung als Wissensdatenbank für Amazon Bedrock vorzubereiten.

Aurora Postgre erstellen und konfigurieren SQL

Um Amazon Bedrock mit einem Aurora SQL Postgre-DB-Cluster zu konfigurieren, müssen Sie zunächst einen Aurora SQL Postgre-DB-Cluster erstellen und sich die wichtigen Felder für die Konfiguration mit Amazon Bedrock notieren. Weitere Hinweise zur Erstellung eines Aurora SQL Postgre-DB-Clusters finden Sie unterErstellen eines DB-Clusters von Aurora PostgreSQL und Herstellen einer Verbindung.

  • Aktivieren Sie Daten API beim Erstellen des Aurora SQL Postgre-DB-Clusters. Weitere Informationen zu den unterstützten Versionen finden Sie unterRDSDaten verwenden API.

  • Notieren Sie sich unbedingt die Amazon-Ressourcennamen (ARN) Ihres Aurora SQL Postgre-DB-Clusters. Sie benötigen es, um den DB-Cluster für die Verwendung mit Amazon Bedrock zu konfigurieren. Weitere Informationen finden Sie unter Amazon Resource Names (ARNs).

Verbindung zu einer Datenbank herstellen und pgvector installieren

Sie können mit jedem der Verbindungsdienstprogramme eine Verbindung zu Aurora Postgre SQL herstellen. Ausführlichere Informationen zu diesen Dienstprogrammen finden Sie unterVerbindung zu einem Amazon Aurora SQL Postgre-DB-Cluster herstellen. Alternativ können Sie den Abfrage-Editor der RDS Konsole verwenden, um die Abfragen auszuführen. Sie benötigen einen Aurora-DB-Cluster mit API aktivierten RDS Daten, um den Abfrage-Editor verwenden zu können.

  1. Melden Sie sich mit Ihrem Master-Benutzer bei der Datenbank an und richten Sie pgvector ein. Verwenden Sie den folgenden Befehl, wenn die Erweiterung nicht installiert ist:

    CREATE EXTENSION IF NOT EXISTS vector;

    Verwenden Sie pgvector 0.5.0 und eine höhere Version, die HNSW Indizierung unterstützt. Weitere Informationen finden Sie unter pgvector v0.5.0 mit Indizierung. HNSW

  2. Verwenden Sie den folgenden Befehl, um die Version der installierten Version zu überprüfen: pg_vector

    SELECT extversion FROM pg_extension WHERE extname='vector';

Datenbankobjekte und -berechtigungen einrichten

  1. Erstellen Sie ein bestimmtes Schema, mit dem Bedrock die Daten abfragen kann. Verwenden Sie den folgenden Befehl, um ein Schema zu erstellen:

    CREATE SCHEMA bedrock_integration;
  2. Erstellen Sie eine neue Rolle, mit der Bedrock die Datenbank abfragen kann. Verwenden Sie den folgenden Befehl, um eine neue Rolle zu erstellen:

    CREATE ROLE bedrock_user WITH PASSWORD 'password' LOGIN;
    Anmerkung

    Notieren Sie sich dieses Passwort, da Sie es später benötigen, um ein Secrets Manager Manager-Passwort zu erstellen.

    Wenn Sie den psql Client verwenden, verwenden Sie die folgenden Befehle, um eine neue Rolle zu erstellen:

    CREATE ROLE bedrock_user LOGIN; \PASSWORD password;
  3. Erteilen Sie die bedrock_user Berechtigungen zur Verwaltung des bedrock_integration Schemas. Dies bietet die Möglichkeit, Tabellen oder Indizes innerhalb des Schemas zu erstellen.

    GRANT ALL ON SCHEMA bedrock_integration to bedrock_user;
  4. Melden Sie sich als an bedrock_user und erstellen Sie eine Tabelle in derbedrock_integration schema.

    CREATE TABLE bedrock_integration.bedrock_kb (id uuid PRIMARY KEY, embedding vector(1024), chunks text, metadata json);

    Dieser Befehl erstellt die bedrock_kb Tabelle im bedrock_integration Schema mit Titan V2-Einbettungen.

  5. Wir empfehlen Ihnen, einen Index mit dem Kosinus-Operator zu erstellen, den das Grundgestein zur Abfrage der Daten verwenden kann.

    CREATE INDEX ON bedrock_integration.bedrock_kb USING hnsw (embedding vector_cosine_ops);
  6. Wir empfehlen Ihnen, den Wert von auf 256 für Versionen der Version pgvector 0.6.0 und höher ef_construction zu setzen, die parallel Indexerstellung verwenden.

    CREATE INDEX ON bedrock_integration.bedrock_kb USING hnsw (embedding vector_cosine_ops) WITH (ef_construction=256);

Erstellen Sie ein Geheimnis in Secrets Manager

Mit Secrets Manager können Sie Ihre Aurora-Anmeldeinformationen speichern, sodass sie sicher an Anwendungen übertragen werden können. Wenn Sie das nicht gewählt haben AWS Secrets-Manager-Option Wenn Sie einen Aurora SQL Postgre-DB-Cluster erstellen, können Sie jetzt ein Geheimnis erstellen. Weitere Informationen zum Erstellen AWS Secrets Manager Geheimer Datenbankschlüssel, siehe AWS Secrets Manager Manager-Datenbankgeheimnis.

Eine Wissensdatenbank in der Bedrock-Konsole erstellen

Während Sie Aurora Postgre SQL für die Verwendung als Vektorspeicher für eine Wissensdatenbank vorbereiten, müssen Sie die folgenden Informationen sammeln, die Sie der Amazon Bedrock-Konsole zur Verfügung stellen müssen.

  • Amazon Aurora Aurora-DB-Cluster ARN — Der ARN Ihres DB-Clusters.

  • ARNGeheim — Das ARN von AWS Secrets Manager Manager-Schlüssel für Ihren DB-Cluster.

  • Datenbankname — Der Name Ihrer Datenbank. Sie können beispielsweise die Standarddatenbank verwenden postgres.

  • Tabellenname — Wir empfehlen Ihnen, bei der Erstellung der Tabelle einen schemaqualifizierten Namen anzugeben. Verwenden Sie dazu einen Befehl, der dem folgenden ähnelt:

    CREATE TABLE bedrock_integration.bedrock_kb;

    Mit diesem Befehl wird die bedrock_kb Tabelle im bedrock_integration Schema erstellt.

  • Achten Sie beim Erstellen der Tabelle darauf, sie mit den angegebenen Spalten und Datentypen zu konfigurieren. Sie können Ihre bevorzugten Spaltennamen anstelle der in der Tabelle aufgeführten verwenden. Denken Sie daran, sich die Namen zu notieren, die Sie bei der Einrichtung der Wissensdatenbank als Referenz ausgewählt haben.

    Spaltenname Datentyp Beschreibung
    id UUIDPrimärschlüssel

    Enthält eindeutige Bezeichner für jeden Datensatz.

    Brocken Text

    Enthält die Rohtextblöcke aus Ihren Datenquellen.

    Einbettung Vektor

    Enthält die Vektoreinbettungen der Datenquellen.

    Metadaten JSON

    Enthält Metadaten, die für die Quellenzuweisung und die Datenaufnahme und -abfrage erforderlich sind.

Mit diesen Details können Sie jetzt eine Wissensdatenbank in der Bedrock-Konsole erstellen. Ausführlichere Informationen zum Einrichten eines Vektorindex und zum Erstellen einer Wissensdatenbank finden Sie unter Erstellen eines Vektorspeichers in Amazon Aurora und Erstellen eines Vektorspeichers in Amazon Aurora.

Nachdem Sie Aurora als Wissensdatenbank hinzugefügt haben, können Sie jetzt Ihre Datenquellen für Suchen und Abfragen aufnehmen. Weitere Informationen finden Sie unter Importieren Sie Ihre Datenquellen in die Wissensdatenbank.