Datenintelligenz von Platon.
Vertikale Suche & KI.

Erstellen skalierbarer, sicherer und zuverlässiger RAG-Anwendungen mithilfe von Wissensdatenbanken für Amazon Bedrock | Amazon Web Services

Datum:

Generative künstliche Intelligenz (KI) hat erheblich an Dynamik gewonnen, da Unternehmen aktiv ihre potenziellen Anwendungen erforschen. Mit dem erfolgreichen Übergang von Proof-of-Concepts in die Produktion benötigen Unternehmen zunehmend skalierbare Unternehmenslösungen. Um jedoch den langfristigen Erfolg und die Realisierbarkeit dieser KI-gestützten Lösungen zu ermöglichen, ist es entscheidend, sie an etablierten Architekturprinzipien auszurichten.

Das AWS Well-Architected Framework bietet Best Practices und Richtlinien für den Entwurf und Betrieb zuverlässiger, sicherer, effizienter und kostengünstiger Systeme in der Cloud. Die Ausrichtung generativer KI-Anwendungen an diesem Framework ist aus mehreren Gründen unerlässlich, darunter die Bereitstellung von Skalierbarkeit, die Wahrung von Sicherheit und Datenschutz, das Erreichen von Zuverlässigkeit, die Optimierung von Kosten und die Rationalisierung von Abläufen. Die Einhaltung dieser Grundsätze ist für Unternehmen, die die Leistungsfähigkeit der generativen KI nutzen und Innovationen vorantreiben möchten, von entscheidender Bedeutung.

In diesem Beitrag werden die neuen Funktionen für Unternehmen untersucht Wissensdatenbanken auf Amazon Bedrock und wie sie mit dem AWS Well-Architected Framework übereinstimmen. Mit Knowledge Bases für Amazon Bedrock können Sie mithilfe von Retrieval Augmented Generation (RAG) schnell Anwendungen für Anwendungsfälle wie die Beantwortung von Fragen, kontextbezogene Chatbots und personalisierte Suche erstellen.

Hier sind einige Funktionen, die wir behandeln werden:

  1. AWS CloudFormation-Unterstützung
  2. Private Netzwerkrichtlinien für Amazon OpenSearch Serverless
  3. Mehrere S3-Buckets als Datenquellen
  4. Unterstützung für Servicekontingente
  5. Hybridsuche, Metadatenfilter, benutzerdefinierte Eingabeaufforderungen für RetreiveAndGenerate API und maximale Anzahl von Abrufen.

AWS Well-Architected-Designprinzipien

RAG-basierte Anwendungen, die mithilfe von Wissensdatenbanken für Amazon Bedrock erstellt wurden, können von der Befolgung der folgenden großen Vorteile profitieren AWS Well-Architated-Framework. Dieses Framework besteht aus sechs Säulen, die Unternehmen dabei helfen, sicherzustellen, dass ihre Anwendungen sicher, leistungsstark, belastbar, effizient, kosteneffektiv und nachhaltig sind:

  • Betriebliche Abläufe – Gut durchdachte Prinzipien rationalisieren Abläufe, automatisieren Prozesse und ermöglichen eine kontinuierliche Überwachung und Verbesserung der Leistung generativer KI-Apps.
  • Sicherheit – Die Implementierung starker Zugriffskontrollen, Verschlüsselung und Überwachung trägt dazu bei, vertrauliche Daten in der Wissensdatenbank Ihres Unternehmens zu schützen und den Missbrauch generativer KI zu verhindern.
  • Zuverlässigkeit – Well-Architected-Prinzipien leiten den Entwurf belastbarer und fehlertoleranter Systeme und sorgen für eine konsistente Wertbereitstellung für Benutzer.
  • Leistungsoptimierung – Die Auswahl der geeigneten Ressourcen, die Implementierung von Caching-Strategien und die proaktive Überwachung von Leistungsmetriken stellen sicher, dass Anwendungen schnelle und genaue Antworten liefern, was zu optimaler Leistung und einem verbesserten Benutzererlebnis führt.
  • Kostenoptimierung – Gut durchdachte Richtlinien helfen bei der Optimierung der Ressourcennutzung, der Nutzung kostensparender Dienste und der Überwachung von Ausgaben, was zu einer langfristigen Rentabilität generativer KI-Projekte führt.
  • Nachhaltigkeit – Gut durchdachte Prinzipien fördern eine effiziente Ressourcennutzung und die Minimierung des CO2-Fußabdrucks und berücksichtigen die Umweltauswirkungen des zunehmenden Einsatzes generativer KI.

Durch die Ausrichtung auf das Well-Architected Framework können Unternehmen mithilfe von Wissensdatenbanken für Amazon Bedrock RAG-Anwendungen der Enterprise-Klasse effektiv erstellen und verwalten. Lassen Sie uns nun tief in die neuen Funktionen eintauchen, die in den Wissensdatenbanken für Amazon Bedrock eingeführt wurden.

AWS CloudFormation-Unterstützung

Für Unternehmen, die RAG-Anwendungen entwickeln, ist es wichtig, effiziente und effektive Abläufe und eine konsistente Infrastruktur in verschiedenen Umgebungen bereitzustellen. Dies kann durch die Implementierung von Praktiken wie der Automatisierung von Bereitstellungsprozessen erreicht werden. Um dies zu erreichen, bietet Knowledge Bases für Amazon Bedrock jetzt Unterstützung für AWS CloudFormation.

Mit AWS CloudFormation und dem AWS Cloud-Entwicklungskit (AWS CDK) können Sie jetzt Wissensdatenbanken und zugehörige Datenquellen erstellen, aktualisieren und löschen. Die Einführung von AWS CloudFormation und dem AWS CDK zur Verwaltung von Wissensdatenbanken und zugehörigen Datenquellen optimiert nicht nur den Bereitstellungsprozess, sondern fördert auch die Einhaltung der Well-Architected-Prinzipien. Durch die Ausführung von Vorgängen (Anwendungen, Infrastruktur) als Code können Sie konsistente und zuverlässige Bereitstellungen in mehreren AWS-Konten und AWS-Regionen bereitstellen und versionierte und überprüfbare Infrastrukturkonfigurationen beibehalten.

Das Folgende ist ein Beispiel CloudFormation-Skript im JSON-Format zum Erstellen und Aktualisieren einer Wissensdatenbank in Amazon Bedrock:

{
    "Type" : "AWS::Bedrock::KnowledgeBase", 
    "Properties" : {
        "Name": String,
        "RoleArn": String,
        "Description": String,
        "KnowledgeBaseConfiguration": {
  		"Type" : String,
  		"VectorKnowledgeBaseConfiguration" : VectorKnowledgeBaseConfiguration
},
        "StorageConfiguration": StorageConfiguration,            
    } 
}

Type Gibt eine Wissensdatenbank als Ressource in einer Vorlage der obersten Ebene an. Sie müssen mindestens die folgenden Eigenschaften angeben:

  • Name und Vorname – Geben Sie einen Namen für die Wissensdatenbank an.
  • RolleArn – Geben Sie den Amazon-Ressourcennamen (ARN) des an AWS Identity and Access Management and (IAM)-Rolle mit Berechtigungen zum Aufrufen von API-Vorgängen in der Wissensdatenbank. Weitere Informationen finden Sie unter Erstellen Sie eine Servicerolle für Wissensdatenbanken für Amazon Bedrock.
  • KnowledgeBaseConfiguration – Geben Sie die Einbettungskonfiguration der Wissensdatenbank an. Die folgenden Untereigenschaften sind erforderlich:
    • Typ – Geben Sie den Wert an VECTOR.
    • VectorKnowledgeBaseConfiguration – Enthält Details zum Modell, das zum Erstellen von Vektoreinbettungen für die Wissensdatenbank verwendet wird.
  • Speicherkonfiguration – Geben Sie Informationen zum Vektorspeicher an, in dem sich die Datenquelle befindet gelagert. Die folgenden Untereigenschaften sind erforderlich:
    • Typ – Geben Sie den von Ihnen verwendeten Vektorspeicherdienst an.
    • Sie müssten außerdem einen der von Wissensdatenbanken unterstützten Vektorspeicher auswählen, z. B. OpenSearchServerless, Pinecone oder Amazon PostgreSQL, und die Konfiguration für den ausgewählten Vektorspeicher bereitstellen.

Einzelheiten zu allen Feldern und zur Bereitstellung der Konfiguration verschiedener Vektorspeicher, die von Knowledge Bases für Amazon Bedrock unterstützt werden, finden Sie unter AWS::Bedrock::KnowledgeBase.

Redis Enterprise Cloud-Vektorspeicher werden zum jetzigen Zeitpunkt in AWS CloudFormation nicht unterstützt. Aktuelle Informationen finden Sie in der Dokumentation oben.

Nachdem Sie eine Wissensdatenbank erstellt haben, müssen Sie daraus eine Datenquelle erstellen Amazon Simple Storage-Service (Amazon S3)-Bucket, der die Dateien für Ihre Wissensdatenbank enthält. Es nennt die CreateDataSource und DeleteDataSource APIs.

Das Folgende ist das Beispiel CloudFormation-Skript im JSON-Format:

{
    "Type" : "AWS::Bedrock::DataSource", 
    "Properties" : {
        "KnowledgeBaseId": String,
        "Name": String,
        "RoleArn": String,
        "Description": String,
        "DataSourceConfiguration": {
  		"S3Configuration" : S3DataSourceConfiguration,
  		"Type" : String
},
ServerSideEncryptionConfiguration":ServerSideEncryptionConfiguration,           
"VectorIngestionConfiguration": VectorIngestionConfiguration
    } 
}

Type Gibt eine Datenquelle als Ressource in einer Vorlage der obersten Ebene an. Sie müssen mindestens die folgenden Eigenschaften angeben:

  • Name und Vorname – Geben Sie einen Namen für die Datenquelle an.
  • KnowledgeBaseId – Geben Sie die ID der Wissensdatenbank an, zu der die Datenquelle gehören soll.
  • DataSourceConfiguration – Geben Sie Informationen zum S3-Bucket an, der die Datenquelle enthält. Die folgenden Untereigenschaften sind erforderlich:
    • Typ – Geben Sie den Wert S3 an.
    • S3Konfiguration – Enthält Details zur Konfiguration des S3-Objekts, das die Datenquelle enthält.
  • VectorIngestionConfiguration – Enthält Details zum Erfassen der Dokumente in einer Datenquelle. Sie müssen Folgendes angeben:ChunkingConfiguration”, wo Sie Ihre Chunking-Strategie definieren können.
  • ServerSideEncryptionConfiguration – Enthält die Konfiguration für die serverseitige Verschlüsselung, in der Sie den Amazon-Ressourcennamen (ARN) des AWS KMS-Schlüssels angeben können, der zum Verschlüsseln der Ressource verwendet wird.

Weitere Informationen zum Einrichten von Datenquellen in Amazon Bedrock finden Sie unter Richten Sie eine Datenquelle für Ihre Wissensdatenbank ein.

Hinweis: Sie können die Chunking-Konfiguration nicht mehr ändern, nachdem Sie die Datenquelle erstellt haben.

Mit der CloudFormation-Vorlage können Sie Ihre Wissensdatenbankressourcen mithilfe von Infrastructure as Code (IaC) definieren und verwalten. Durch die Automatisierung der Einrichtung und Verwaltung der Wissensdatenbank können Sie eine konsistente Infrastruktur über verschiedene Umgebungen hinweg bereitstellen. Dieser Ansatz steht im Einklang mit der Säule „Operational Excellence“, bei der die Ausführung von Operationen als Code im Vordergrund steht. Indem Sie Ihre gesamte Arbeitslast als Code behandeln, können Sie Prozesse automatisieren, konsistente Reaktionen auf Ereignisse erstellen und letztendlich menschliche Fehler reduzieren.

Private Netzwerkrichtlinien für Amazon OpenSearch Serverless

Für Unternehmen, die RAG-Anwendungen entwickeln, ist es von entscheidender Bedeutung, dass die Daten sicher bleiben und der Netzwerkverkehr nicht in das öffentliche Internet gelangt. Um dies zu unterstützen, unterstützen Knowledge Bases für Amazon Bedrock jetzt private Netzwerkrichtlinien für Amazon OpenSearch ohne Server.

Knowledge Bases für Amazon Bedrock bietet eine Option zur Verwendung von OpenSearch Serverless als Vektorspeicher. Sie können jetzt auf OpenSearch Serverless-Sammlungen zugreifen, die über eine private Netzwerkrichtlinie verfügen, was den Sicherheitsstatus Ihrer RAG-Anwendung weiter verbessert. Um dies zu erreichen, müssen Sie eine OpenSearch Serverless-Sammlung erstellen und diese für den privaten Netzwerkzugriff konfigurieren. Erstellen Sie zunächst einen Vektorindex innerhalb der Sammlung, um die Einbettungen zu speichern. Legen Sie dann beim Erstellen der Sammlung fest Netzwerkzugriffseinstellungen zu Privat und geben Sie den VPC-Endpunkt für den Zugriff an. Wichtig ist, dass Sie jetzt bereitstellen können privater Netzwerkzugriff auf OpenSearch Serverless Kollektionen speziell für Amazon Bedrock. Wählen Sie dazu aus Privater Zugriff auf den AWS-Service und angeben bedrock.amazonaws.com als der Dienst.

Diese private Netzwerkkonfiguration stellt sicher, dass Ihre Einbettungen sicher gespeichert werden und nur für Amazon Bedrock zugänglich sind, wodurch die Gesamtsicherheit und der Datenschutz Ihrer Wissensdatenbanken erhöht werden. Es stimmt eng mit dem überein Sicherheitssäule Es ist möglich, den Datenverkehr auf allen Ebenen zu steuern, da mit diesen Einstellungen der gesamte Netzwerkdatenverkehr innerhalb des AWS-Backbones gehalten wird.

Bisher haben wir die Automatisierung des Erstellens, Löschens und Aktualisierens von Wissensdatenbankressourcen sowie die verbesserte Sicherheit durch private Netzwerkrichtlinien für OpenSearch Serverless untersucht, um Vektoreinbettungen sicher zu speichern. Lassen Sie uns nun verstehen, wie Sie zuverlässigere, umfassendere und kostenoptimiertere RAG-Anwendungen erstellen können.

Mehrere S3-Buckets als Datenquellen

Wissensdatenbanken für Amazon Bedrock unterstützen jetzt das Hinzufügen mehrerer S3-Buckets als Datenquellen innerhalb einer einzelnen Wissensdatenbank, einschließlich kontoübergreifendem Zugriff. Diese Verbesserung erhöht die Vollständigkeit und Genauigkeit der Wissensdatenbank, indem sie es Benutzern ermöglicht, Informationen aus verschiedenen Quellen nahtlos zu aggregieren und zu nutzen.

Die folgenden Hauptmerkmale sind:

  • Mehrere S3-Buckets – Wissensdatenbanken für Amazon Bedrock können jetzt Daten aus mehreren S3-Buckets integrieren, sodass Benutzer Informationen aus verschiedenen Quellen mühelos kombinieren und nutzen können. Diese Funktion fördert die Datenvielfalt und stellt sicher, dass relevante Informationen für RAG-basierte Anwendungen leicht verfügbar sind.
  • Kontoübergreifender Datenzugriff – Knowledge Bases für Amazon Bedrock unterstützt die Konfiguration von S3-Buckets als Datenquellen über verschiedene Konten hinweg. Sie können die erforderlichen Anmeldeinformationen für den Zugriff auf diese Datenquellen bereitstellen und so den Umfang der Informationen erweitern, die in ihre Wissensdatenbanken integriert werden können.
  • Effizientes Datenmanagement – Wenn eine Datenquelle oder Wissensdatenbank gelöscht wird, werden die zugehörigen oder vorhandenen Elemente in den Vektorspeichern automatisch entfernt. Diese Funktion stellt sicher, dass die Wissensdatenbank aktuell und frei von veralteten oder irrelevanten Daten bleibt, wodurch die Integrität und Genauigkeit des RAG-Prozesses gewahrt bleibt.

Durch die Unterstützung mehrerer S3-Buckets als Datenquellen entfällt die Notwendigkeit, mehrere Wissensdatenbanken oder redundante Datenkopien zu erstellen, wodurch die Kosten optimiert und das Cloud-Finanzmanagement gefördert werden. Darüber hinaus ermöglichen die kontoübergreifenden Zugriffsfunktionen die Entwicklung belastbarer Architekturen, die sich an der Zuverlässigkeitssäule des AWS Well-Architected Framework orientieren und hohe Verfügbarkeit und Fehlertoleranz bieten.

Weitere kürzlich angekündigte Funktionen für Wissensdatenbanken

Um die Zuverlässigkeit Ihrer RAG-Anwendung weiter zu verbessern, erweitert Knowledge Bases für Amazon Bedrock jetzt die Unterstützung für Servicekontingente. Diese Funktion bietet eine zentrale Übersicht zur Anzeige der angewendeten AWS-Kontingentwerte und -Nutzung. Beispielsweise haben Sie jetzt schnellen Zugriff auf Informationen wie die zulässige Anzahl von „RetrieveAndGenerate API-Anfragen pro Sekunde.

Mit dieser Funktion können Sie Ressourcenkontingente effektiv verwalten, eine Überbereitstellung verhindern und die API-Anfrageraten begrenzen, um Dienste vor potenziellem Missbrauch zu schützen.

Sie können die Leistung Ihrer Anwendung auch verbessern, indem Sie kürzlich angekündigte Funktionen wie verwenden Hybridsuche, Filterung basierend auf Metadaten, benutzerdefinierte Eingabeaufforderungen für die RetreiveAndGenerate-API und maximale Anzahl von Abrufen. Diese Funktionen verbessern gemeinsam die Genauigkeit, Relevanz und Konsistenz der generierten Antworten und stimmen mit der Leistungseffizienz-Säule des AWS Well-Architected Framework überein.

Knowledge Bases für Amazon Bedrock orientiert sich an der Nachhaltigkeitssäule des AWS Well-Architected Framework, indem es verwaltete Dienste nutzt und die Ressourcennutzung optimiert. Als vollständig verwalteter Dienst entlastet Knowledge Bases for Amazon Bedrock die Bereitstellung, Verwaltung und Skalierung der zugrunde liegenden Infrastruktur und reduziert so die Umweltauswirkungen, die mit dem Betrieb und der Wartung dieser Ressourcen verbunden sind.

Darüber hinaus können Unternehmen durch die Ausrichtung an den AWS Well-Architected-Prinzipien ihre RAG-Anwendungen auf nachhaltige Weise entwerfen und betreiben. Praktiken wie die Automatisierung von Bereitstellungen über AWS CloudFormation, die Implementierung privater Netzwerkrichtlinien für sicheren Datenzugriff und die Verwendung effizienter Dienste wie OpenSearch Serverless tragen dazu bei, die Umweltauswirkungen dieser Arbeitslasten zu minimieren.

Insgesamt ermöglichen Knowledge Bases für Amazon Bedrock in Kombination mit dem AWS Well-Architected Framework Unternehmen, skalierbare, sichere und zuverlässige RAG-Anwendungen zu erstellen und gleichzeitig die ökologische Nachhaltigkeit durch effiziente Ressourcennutzung und die Einführung verwalteter Dienste in den Vordergrund zu stellen.

Zusammenfassung

Die neuen Funktionen der Enterprise-Klasse, wie AWS CloudFormation-Unterstützung, private Netzwerkrichtlinien, die Möglichkeit, mehrere S3-Buckets als Datenquellen zu verwenden und Unterstützung für Servicekontingente, machen es einfach, skalierbare, sichere und zuverlässige RAG-Anwendungen mit Wissensdatenbanken zu erstellen für Amazon Bedrock. Durch die Verwendung von AWS Managed Services und die Befolgung der Best Practices von Well-Architected können sich Unternehmen auf die Bereitstellung innovativer generativer KI-Lösungen konzentrieren und gleichzeitig betriebliche Exzellenz, robuste Sicherheit und effiziente Ressourcennutzung bieten. Wenn Sie Anwendungen auf AWS erstellen, bietet die Ausrichtung von RAG-Anwendungen mit dem AWS Well-Architected Framework eine solide Grundlage für die Entwicklung unternehmenstauglicher Lösungen, die den Geschäftswert steigern und gleichzeitig Branchenstandards einhalten.

Weitere Ressourcen finden Sie hier:


Über die Autoren

Mani Chanuja ist Tech Lead – Generative AI Specialists, Autorin des Buches Applied Machine Learning and High Performance Computing on AWS und Mitglied des Vorstands der Women in Manufacturing Education Foundation. Sie leitet Projekte zum maschinellen Lernen in verschiedenen Bereichen wie Computer Vision, Verarbeitung natürlicher Sprache und generative KI. Sie spricht auf internen und externen Konferenzen wie AWS re:Invent, Women in Manufacturing West, YouTube-Webinaren und GHC 23. In ihrer Freizeit unternimmt sie gerne lange Läufe am Strand.

Nitin Eusebius ist Sr. Enterprise Solutions Architect bei AWS, erfahren in Software Engineering, Unternehmensarchitektur und KI/ML. Ihm liegt die Erforschung der Möglichkeiten generativer KI sehr am Herzen. Er arbeitet mit Kunden zusammen, um ihnen beim Aufbau gut strukturierter Anwendungen auf der AWS-Plattform zu helfen, und widmet sich der Lösung technologischer Herausforderungen und der Unterstützung bei ihrer Cloud-Reise.

Pallavi Nargund ist Principal Solutions Architect bei AWS. In ihrer Rolle als Cloud-Technologie-Enabler arbeitet sie mit Kunden zusammen, um deren Ziele und Herausforderungen zu verstehen und präskriptive Anleitungen zu geben, damit sie ihr Ziel mit AWS-Angeboten erreichen. Sie engagiert sich leidenschaftlich für Frauen in der Technologiebranche und ist Kernmitglied von Women in AI/ML bei Amazon. Sie spricht auf internen und externen Konferenzen wie AWS re:Invent, AWS Summits und Webinaren. Außerhalb der Arbeit engagiert sie sich gerne ehrenamtlich, arbeitet im Garten, fährt Fahrrad und wandert.

spot_img

Neueste Intelligenz

spot_img

Chat mit uns

Hallo! Wie kann ich dir helfen?