Generativ dataintelligens

Bygga skalbara, säkra och pålitliga RAG-applikationer med hjälp av kunskapsbaser för Amazon Bedrock | Amazon webbtjänster

Datum:

Generativ artificiell intelligens (AI) har tagit betydande fart med organisationer som aktivt utforskar dess potentiella tillämpningar. När framgångsrika proof-of-concepts övergår till produktion, är organisationer i allt större behov av skalbara företagslösningar. Men för att låsa upp den långsiktiga framgången och livskraften för dessa AI-drivna lösningar är det avgörande att anpassa dem till väletablerade arkitektoniska principer.

AWS Well-Architected Framework ger bästa praxis och riktlinjer för att designa och driva pålitliga, säkra, effektiva och kostnadseffektiva system i molnet. Att anpassa generativa AI-applikationer till detta ramverk är viktigt av flera skäl, inklusive att tillhandahålla skalbarhet, upprätthålla säkerhet och integritet, uppnå tillförlitlighet, optimera kostnader och effektivisera driften. Att anamma dessa principer är avgörande för organisationer som vill använda kraften i generativ AI och driva innovation.

Det här inlägget utforskar de nya funktionerna i företagsklass för Kunskapsbaser om Amazons berggrund och hur de överensstämmer med AWS Well-Architected Framework. Med Knowledge Bases for Amazon Bedrock kan du snabbt bygga applikationer med hjälp av Retrieval Augmented Generation (RAG) för användningsfall som svar på frågor, kontextuella chatbots och personlig sökning.

Här är några funktioner som vi kommer att täcka:

  1. AWS CloudFormation-stöd
  2. Privata nätverkspolicyer för Amazon OpenSearch Serverless
  3. Flera S3-buckets som datakällor
  4. Support för servicekvoter
  5. Hybridsökning, metadatafilter, anpassade uppmaningar för RetreiveAndGenerate API och maximalt antal hämtningar.

AWS välarbetade designprinciper

RAG-baserade applikationer byggda med kunskapsbaser för Amazon Bedrock kan ha stor nytta av att följa AWS välarkitekterade ramverk. Detta ramverk har sex pelare som hjälper organisationer att se till att deras applikationer är säkra, högpresterande, motståndskraftiga, effektiva, kostnadseffektiva och hållbara:

  • Operativ Excellence – Väl utformade principer effektiviserar verksamheten, automatiserar processer och möjliggör kontinuerlig övervakning och förbättring av generativ AI-appprestanda.
  • Säkerhet – Att implementera starka åtkomstkontroller, kryptering och övervakning hjälper till att säkra känslig data som används i din organisations kunskapsbas och förhindra missbruk av generativ AI.
  • Pålitlighet – Väl utformade principer styr utformningen av fjädrande och feltoleranta system, vilket ger konsekvent värdeleverans till användarna.
  • Prestandaoptimering – Genom att välja lämpliga resurser, implementera cachingstrategier och proaktivt övervaka prestandastatistik säkerställs att applikationer ger snabba och exakta svar, vilket leder till optimal prestanda och en förbättrad användarupplevelse.
  • Kostnadsoptimering – Väl utformade riktlinjer hjälper till att optimera resursanvändningen, använda kostnadsbesparande tjänster och övervaka utgifter, vilket resulterar i långsiktig lönsamhet för generativa AI-projekt.
  • Hållbarhet – Väl utformade principer främjar effektivt resursutnyttjande och minimerar koldioxidavtryck, och tar itu med miljöpåverkan från ökande generativ AI-användning.

Genom att anpassa sig till Well-Architected Framework kan organisationer effektivt bygga och hantera RAG-applikationer av företagsklass med hjälp av Knowledge Bases for Amazon Bedrock. Låt oss nu dyka djupt in i de nya funktionerna som lanserats inom Knowledge Bases för Amazon Bedrock.

AWS CloudFormation-stöd

För organisationer som bygger RAG-applikationer är det viktigt att tillhandahålla effektiv och effektiv drift och konsekvent infrastruktur i olika miljöer. Detta kan uppnås genom att implementera metoder som att automatisera distributionsprocesser. För att åstadkomma detta erbjuder Knowledge Bases for Amazon Bedrock nu stöd för AWS molnformation.

Med AWS CloudFormation och AWS Cloud Development Kit (AWS CDK), kan du nu skapa, uppdatera och ta bort kunskapsbaser och tillhörande datakällor. Att anta AWS CloudFormation och AWS CDK för hantering av kunskapsbaser och associerade datakällor effektiviserar inte bara distributionsprocessen, utan främjar också efterlevnaden av de välarchiterade principerna. Genom att utföra operationer (applikationer, infrastruktur) som kod kan du tillhandahålla konsekventa och tillförlitliga distributioner i flera AWS-konton och AWS-regioner, och underhålla versionerade och granskningsbara infrastrukturkonfigurationer.

Följande är ett exempel CloudFormation-skript i JSON-format för att skapa och uppdatera en kunskapsbas i Amazon Bedrock:

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

Type anger en kunskapsbas som en resurs i en mall på toppnivå. Som minimum måste du ange följande egenskaper:

  • Namn – Ange ett namn för kunskapsbasen.
  • RollArn – Ange Amazon Resource Name (ARN) för AWS identitets- och åtkomsthantering (IAM) roll med behörighet att anropa API-operationer på kunskapsbasen. För mer information, se Skapa en tjänstroll för kunskapsbaser för Amazon Bedrock.
  • KnowledgeBaseConfiguration – Ange inbäddningskonfigurationen för kunskapsbasen. Följande underegenskaper krävs:
    • Typ – Ange värdet VECTOR.
    • VectorKnowledgeBaseConfiguration – Innehåller detaljer om modellen som används för att skapa vektorinbäddningar för kunskapsbasen.
  • Lagringskonfiguration – Ange information om det vektorlager där datakällan finns lagras. Följande underegenskaper krävs:
    • Typ – Ange vektorbutikstjänsten som du använder.
    • Du skulle också behöva välja en av vektorbutikerna som stöds av kunskapsbaser som OpenSearchServerless, Pinecone eller Amazon PostgreSQL och tillhandahålla konfiguration för den valda vektorbutiken.

För detaljer om alla fält och tillhandahållande av konfiguration av olika vektorbutiker som stöds av Knowledge Bases for Amazon Bedrock, se AWS::Bedrock::KnowledgeBase.

Redis Enterprise Cloud vektorbutiker stöds inte när detta skrivs i AWS CloudFormation. För den senaste informationen, se dokumentationen ovan.

När du har skapat en kunskapsbas måste du skapa en datakälla från Amazon enkel lagringstjänst (Amazon S3) hink som innehåller filerna för din kunskapsbas. Den kallar CreateDataSource och DeleteDataSource API: er.

Följande är provet CloudFormation-skript i 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 anger en datakälla som en resurs i en mall på toppnivå. Som minimum måste du ange följande egenskaper:

  • Namn – Ange ett namn för datakällan.
  • KnowledgeBaseId – Ange ID för kunskapsbasen som datakällan ska tillhöra.
  • DataSourceConfiguration – Ange information om S3-hinken som innehåller datakällan. Följande underegenskaper krävs:
    • Typ – Ange värdet S3.
    • S3 Konfiguration – Innehåller detaljer om konfigurationen av S3-objektet som innehåller datakällan.
  • VectorIngestionConfiguration – Innehåller information om hur man matar in dokumenten i en datakälla. Du måste tillhandahålla "ChunkingConfiguration” där du kan definiera din chunking-strategi.
  • ServerSideEncryptionConfiguration – Innehåller konfigurationen för serversideskryptering, där du kan ange Amazon Resource Name (ARN) för AWS KMS-nyckeln som används för att kryptera resursen.

För mer information om hur du ställer in datakällor i Amazon Bedrock, se Skapa en datakälla för din kunskapsbas.

Obs! Du kan inte ändra chunking-konfigurationen efter att du skapat datakällan.

CloudFormation-mallen låter dig definiera och hantera dina kunskapsbasresurser med hjälp av infrastruktur som kod (IaC). Genom att automatisera installationen och hanteringen av kunskapsbasen kan du tillhandahålla en konsekvent infrastruktur över olika miljöer. Detta tillvägagångssätt är i linje med pelaren Operational Excellence, som betonar att utföra operationer som kod. Genom att behandla hela din arbetsbelastning som kod kan du automatisera processer, skapa konsekventa svar på händelser och i slutändan minska mänskliga fel.

Privata nätverkspolicyer för Amazon OpenSearch Serverless

För företag som bygger RAG-applikationer är det avgörande att data förblir säker och att nätverkstrafiken inte går till offentligt internet. För att stödja detta stöder Knowledge Bases for Amazon Bedrock nu privata nätverkspolicyer för Amazon OpenSearch Serverlös.

Kunskapsbaser för Amazon Bedrock ger ett alternativ för att använda OpenSearch Serverless som en vektorbutik. Du kan nu komma åt OpenSearch Serverless-samlingar som har en privat nätverkspolicy, vilket ytterligare förbättrar säkerhetsställningen för din RAG-applikation. För att uppnå detta måste du skapa en OpenSearch Serverless-samling och konfigurera den för privat nätverksåtkomst. Skapa först ett vektorindex i samlingen för att lagra inbäddningarna. Sedan, medan du skapar samlingen, ställ in Inställningar för nätverksåtkomst till Privat och ange VPC-slutpunkten för åtkomst. Viktigt är att du nu kan tillhandahålla privat nätverksåtkomst till OpenSearch Serverless samlingar specifikt för Amazon Bedrock. För att göra detta, välj AWS-tjänst privat åtkomst och specificera bedrock.amazonaws.com som tjänsten.

Denna privata nätverkskonfiguration ser till att dina inbäddningar lagras säkert och endast är tillgängliga för Amazon Bedrock, vilket förbättrar den övergripande säkerheten och integriteten för dina kunskapsbaser. Den ligger nära i linje med Säkerhetspelare för att kontrollera trafik på alla lager, eftersom all nätverkstrafik hålls inom AWS-stamnätet med dessa inställningar.

Hittills har vi utforskat automatiseringen av att skapa, ta bort och uppdatera kunskapsbasresurser och den förbättrade säkerheten genom privata nätverkspolicyer för OpenSearch Serverless för att lagra vektorinbäddningar på ett säkert sätt. Låt oss nu förstå hur man bygger mer tillförlitliga, heltäckande och kostnadsoptimerade RAG-applikationer.

Flera S3-buckets som datakällor

Kunskapsbaser för Amazon Bedrock stöder nu att lägga till flera S3-segment som datakällor inom en enda kunskapsbas, inklusive åtkomst över flera konton. Denna förbättring ökar kunskapsbasens heltäckande och precision genom att tillåta användare att samla och använda information från olika källor sömlöst.

Följande är nyckelfunktioner:

  • Flera S3 hinkar – Kunskapsbaser för Amazon Bedrock kan nu införliva data från flera S3-hinkar, vilket gör det möjligt för användare att kombinera och använda information från olika källor utan ansträngning. Denna funktion främjar mångfald av data och ser till att relevant information är lätt tillgänglig för RAG-baserade applikationer.
  • Dataåtkomst över flera konton – Kunskapsbaser för Amazon Bedrock stöder konfigurationen av S3-buckets som datakällor över olika konton. Du kan tillhandahålla de nödvändiga referenserna för att komma åt dessa datakällor, vilket utökar utbudet av information som kan införlivas i deras kunskapsbaser.
  • Effektiv datahantering – När du skapar en datakälla i en kunskapsbas kan du ange om data som tillhör den datakällan ska behållas eller raderas om datakällan raderas. Den här funktionen säkerställer att din kunskapsbas förblir uppdaterad och fri från föråldrade eller irrelevanta data, vilket bibehåller integriteten och noggrannheten i RAG-processen.

Genom att stödja flera S3-buckets som datakällor elimineras behovet av att skapa flera kunskapsbaser eller redundanta datakopior, vilket optimerar kostnaderna och främjar ekonomihantering i molnet. Dessutom möjliggör åtkomstmöjligheter över flera konton utveckling av motståndskraftiga arkitekturer, i linje med Reliability-pelaren i AWS Well-Architected Framework, vilket ger hög tillgänglighet och feltolerans.

Andra nyligen tillkännagivna funktioner för Knowledge Bases

För att ytterligare förbättra tillförlitligheten hos din RAG-applikation utökar Knowledge Bases för Amazon Bedrock nu stödet för Servicekvoter. Den här funktionen tillhandahåller en enda glasruta för att se tillämpade AWS-kvotvärden och användning. Till exempel har du nu snabb tillgång till information som det tillåtna antalet `RetrieveAndGenerate API-förfrågningar per sekund.

Med den här funktionen kan du effektivt hantera resurskvoter, förhindra överprovisionering och begränsa API-begäran för att skydda tjänster från potentiellt missbruk.

Du kan också förbättra din applikations prestanda genom att använda nyligen annonserade funktioner som hybridsökning, filtrering baserat på metadata, anpassade uppmaningar för RetreiveAndGenerate API och maximalt antal hämtningar. Dessa funktioner förbättrar tillsammans noggrannheten, relevansen och konsistensen hos genererade svar och är i linje med Performance Efficiency-pelaren i AWS Well-Architected Framework.

Kunskapsbaser för Amazon Bedrock överensstämmer med Sustainability-pelaren i AWS Well-Architected Framework genom att använda hanterade tjänster och optimera resursutnyttjandet. Som en helt hanterad tjänst tar Knowledge Bases for Amazon Bedrock bort bördan av att tillhandahålla, hantera och skala den underliggande infrastrukturen, och därigenom minska miljöpåverkan i samband med drift och underhåll av dessa resurser.

Dessutom, genom att anpassa sig till AWS Well-Architected-principerna, kan organisationer designa och driva sina RAG-applikationer på ett hållbart sätt. Praxis som att automatisera distributioner genom AWS CloudFormation, implementera privata nätverkspolicyer för säker dataåtkomst och använda effektiva tjänster som OpenSearch Serverless bidrar till att minimera miljöpåverkan från dessa arbetsbelastningar.

Sammantaget ger Knowledge Bases for Amazon Bedrock, i kombination med AWS Well-Architected Framework, organisationer möjlighet att bygga skalbara, säkra och pålitliga RAG-applikationer samtidigt som miljömässig hållbarhet prioriteras genom effektivt resursutnyttjande och införande av hanterade tjänster.

Slutsats

De nya funktionerna i företagsklass, som AWS CloudFormation-stöd, privata nätverkspolicyer, möjligheten att använda flera S3-buckets som datakällor och stöd för Service Quotas, gör det enkelt att bygga skalbara, säkra och pålitliga RAG-applikationer med kunskapsbaser för Amazon Bedrock. Genom att använda AWS-hanterade tjänster och följa välstrukturerade bästa praxis kan organisationer fokusera på att leverera innovativa generativa AI-lösningar samtidigt som de tillhandahåller driftsexpertis, robust säkerhet och effektivt resursutnyttjande. När du bygger applikationer på AWS, ger anpassning av RAG-applikationer till AWS Well-Architected Framework en solid grund för att bygga företagslösningar som driver affärsvärde samtidigt som de följer industristandarder.

För ytterligare resurser, se följande:


Om författarna

Mani Khanuja är en Tech Lead – Generative AI Specialists, författare till boken Applied Machine Learning and High Performance Computing på AWS, och medlem i styrelsen för Women in Manufacturing Education Foundation Board. Hon leder maskininlärningsprojekt inom olika domäner som datorseende, naturlig språkbehandling och generativ AI. Hon talar på interna och externa konferenser som AWS re:Invent, Women in Manufacturing West, YouTube-webinarier och GHC 23. På fritiden gillar hon att gå långa löpturer längs stranden.

Nitin Eusebius är Sr. Enterprise Solutions Architect på AWS, erfaren inom mjukvaruteknik, Enterprise Architecture och AI/ML. Han brinner djupt för att utforska möjligheterna med generativ AI. Han samarbetar med kunder för att hjälpa dem att bygga väldesignade applikationer på AWS-plattformen och är dedikerad till att lösa tekniska utmaningar och hjälpa till med deras molnresa.

Pallavi Nargund är en Principal Solutions Architect på AWS. I sin roll som möjliggörare av molnteknik arbetar hon med kunder för att förstå deras mål och utmaningar och ge föreskrivande vägledning för att uppnå deras mål med AWS-erbjudanden. Hon brinner för kvinnor inom teknik och är en kärnmedlem i Women in AI/ML på Amazon. Hon talar på interna och externa konferenser som AWS re:Invent, AWS Summits och webbseminarier. Utanför jobbet tycker hon om volontärarbete, trädgårdsarbete, cykling och vandring.

plats_img

Senaste intelligens

plats_img

Chatta med oss

Hallå där! Hur kan jag hjälpa dig?