Retrieval-Augmented Generation LangChain, Amazon SageMaker JumpStart és MongoDB Atlas szemantikus keresés segítségével | Amazon webszolgáltatások

Retrieval-Augmented Generation LangChain, Amazon SageMaker JumpStart és MongoDB Atlas szemantikus keresés segítségével | Amazon webszolgáltatások

Generatív AI a modellek forradalmasíthatják a vállalati működést, de a vállalkozásoknak alaposan meg kell fontolniuk, hogyan hasznosítsák erejüket, miközben leküzdik az olyan kihívásokat, mint például az adatok védelme és a mesterséges intelligencia által generált tartalom minőségének biztosítása.

A Retrieval-Augmented Generation (RAG) keretrendszer több forrásból (például dokumentumtárakból, adatbázisokból vagy API-kból) származó külső adatokkal egészíti ki a kéréseket, hogy az alapmodelleket hatékonyan lehessen elvégezni a tartományspecifikus feladatokhoz. Ez a bejegyzés bemutatja a RAG-modell képességeit, és kiemeli a MongoDB Atlas átalakító potenciálját a Vector Search funkcióval.

MongoDB Atlasz adatszolgáltatások integrált csomagja, amely felgyorsítja és leegyszerűsíti az adatvezérelt alkalmazások fejlesztését. Vektoros adattárolója zökkenőmentesen integrálható az operatív adattárolással, így nincs szükség külön adatbázisra. Ez az integráció hatékony szemantikai keresési lehetőségeket tesz lehetővé vektoros keresés, a szemantikus keresés és a mesterséges intelligencia által vezérelt alkalmazások gyors létrehozásának módja.

Amazon SageMaker lehetővé teszi a vállalatok számára, hogy gépi tanulási (ML) modelleket építsenek, képezzenek és telepítsenek. Amazon SageMaker JumpStart előre betanított modelleket és adatokat biztosít az ML használatának megkezdéséhez. A SageMaker JumpStart nyitóoldalán keresztül elérheti, testreszabhatja és telepítheti az előre betanított modelleket és adatokat. Amazon SageMaker Studio néhány kattintással.

Amazon Lex egy párbeszédes felület, amely segít a vállalkozásoknak olyan chatbotokat és hangrobotokat létrehozni, amelyek természetes, élethű interakciókat folytatnak. Az Amazon Lex és a generatív mesterséges intelligencia integrálásával a vállalkozások holisztikus ökoszisztémát hozhatnak létre, ahol a felhasználói bevitel zökkenőmentesen átváltozik koherens és kontextuálisan releváns válaszokká.

Megoldás áttekintése

A következő ábra a megoldás architektúráját mutatja be.

Megoldás áttekintése

A következő szakaszokban a megoldás és összetevői megvalósításának lépéseit mutatjuk be.

Hozzon létre egy MongoDB-fürtöt

Ingyenes szintű MongoDB Atlas-fürt létrehozásához kövesse az alábbi utasításokat Hozzon létre egy klasztert. Állítsa be az adatbázist hozzáférés és hálózat hozzáférés.

Telepítse a SageMaker beágyazási modellt

Kiválaszthatja a beágyazási modellt (ALL MiniLM L6 v2) a SageMaker JumpStart Modellek, notebookok, megoldások cimre.

SageMaker JumpStart Modellek, notebookok, megoldások

A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Telepítése a modell üzembe helyezéséhez.

Ellenőrizze a modell sikeres telepítését, és ellenőrizze, hogy létrejött-e a végpont.

modell sikeresen üzembe helyezve

Vektor beágyazás

Vektor beágyazás egy szöveg vagy kép vektoros ábrázolássá alakításának folyamata. A következő kóddal vektoros beágyazásokat generálhatunk a SageMaker JumpStart segítségével, és minden dokumentumhoz frissíthetjük a gyűjteményt a létrehozott vektorral:

payload = {"text_inputs": [document[field_name_to_be_vectorized]]}
query_response = query_endpoint_with_json_payload(json.dumps(payload).encode('utf-8'))
embeddings = parse_response_multiple_texts(query_response) # update the document
update = {'$set': {vector_field_name :  embeddings[0]}}
collection.update_one(query, update)

A fenti kód bemutatja, hogyan frissíthet egyetlen objektumot a gyűjteményben. Az összes objektum frissítéséhez kövesse a utasítás.

MongoDB vektor adattár

MongoDB atlasz vektoros keresés egy új szolgáltatás, amely lehetővé teszi vektoradatok tárolását és keresését a MongoDB-ben. A vektoradatok olyan típusú adatok, amelyek egy nagy dimenziós térben lévő pontot képviselnek. Az ilyen típusú adatokat gyakran használják az ML és a mesterséges intelligencia alkalmazásokban. A MongoDB Atlas Vector Search az ún k-legközelebbi szomszédok (k-NN) hasonló vektorok kereséséhez. A k-NN úgy működik, hogy megtalálja az adott vektorhoz leginkább hasonló k vektort. A leginkább hasonló vektorok azok, amelyek az euklideszi távolságot tekintve a legközelebb állnak az adott vektorhoz.

A vektoradatok operatív adatok melletti tárolása javíthatja a teljesítményt azáltal, hogy csökkenti a különböző tárolórendszerek közötti adatmozgatás szükségességét. Ez különösen előnyös azoknál az alkalmazásoknál, amelyek valós idejű hozzáférést igényelnek a vektoros adatokhoz.

Hozzon létre egy vektoros keresési indexet

A következő lépés az a MongoDB Vector Search index az előző lépésben létrehozott vektormezőn. A MongoDB a knnVector típusú vektorbeágyazások indexeléséhez. A vektormezőt számok tömbjeként kell ábrázolni (csak BSON int32, int64 vagy kettős adattípusok).

Hivatkozni Tekintse át a knnVector típusú korlátozásokat további információért a korlátozásokról knnVector típus.

A következő kód egy indexdefiníció minta:

{ "mappings": { "dynamic": true, "fields": { "egVector": { "dimensions": 384, "similarity": "euclidean", "type": "knnVector" } } }
}

Vegye figyelembe, hogy a méretnek meg kell egyeznie a beágyazási modell méretével.

A vektoradattár lekérdezése

A vektoros adattárat lekérdezheti a Vector Search aggregációs folyamat. A Vector Search indexet használja, és végrehajtja a szemantikai keresés a vektoros adattárban.

A következő kód egy minta keresési meghatározás:

{ $search: { "index": "<index name>", // optional, defaults to "default" "knnBeta": { "vector": [<array-of-numbers>], "path": "<field-to-search>", "filter": {<filter-specification>}, "k": <number>, "score": {<options>} } }
}

Telepítse a SageMaker nagy nyelvi modellt

SageMaker JumpStart alapozó modellek előre betanított nagy nyelvi modellek (LLM-ek), amelyek különféle természetes nyelvi feldolgozási (NLP) feladatok megoldására szolgálnak, mint például a szövegösszegzés, a kérdések megválaszolása és a természetes nyelvi következtetés. Többféle méretben és konfigurációban kaphatók. Ebben a megoldásban a Átölelő arc FLAN-T5-XL modell.

Keresse meg a FLAN-T5-XL modellt a SageMaker JumpStartban.

Keresse meg a FLAN-T5-XL-t

A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Telepítése a FLAN-T5-XL modell beállításához.

Telepítése

Győződjön meg arról, hogy a modell sikeresen üzembe helyezte, és a végpont aktív.

Retrieval-Augmented Generation LangChain, Amazon SageMaker JumpStart és MongoDB Atlas szemantikus keresés segítségével | Amazon Web Services PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.

Hozzon létre egy Amazon Lex botot

Amazon Lex bot létrehozásához hajtsa végre a következő lépéseket:

  1. Az Amazon Lex konzolon válassza a lehetőséget Bot létrehozása.

Bot létrehozása

  1. A Bot neve, írjon be egy nevet.
  2. A Futóidejű szerepkörválassza Szerepkör létrehozása alapvető Amazon Lex-engedélyekkel.
    Retrieval-Augmented Generation LangChain, Amazon SageMaker JumpStart és MongoDB Atlas szemantikus keresés segítségével | Amazon Web Services PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.
  3. Adja meg a nyelvi beállításokat, majd válasszon csinált.
    Retrieval-Augmented Generation LangChain, Amazon SageMaker JumpStart és MongoDB Atlas szemantikus keresés segítségével | Amazon Web Services PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.
  4. Adjon hozzá egy kijelentésmintát a NewIntent UI és válasszon Szándék mentése.
    Retrieval-Augmented Generation LangChain, Amazon SageMaker JumpStart és MongoDB Atlas szemantikus keresés segítségével | Amazon Web Services PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.
  5. Navigáljon a FallbackIntent amely alapértelmezés szerint létrejött az Ön számára, és válthat Aktív a E-Fulfillment szakasz.
    az Aktív kapcsolót
  6. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Épít és miután a felépítés sikeres volt, válasszon Teszt.
    Építsd meg és teszteld
  7. A tesztelés előtt válassza ki a fogaskerék ikont.
    Retrieval-Augmented Generation LangChain, Amazon SageMaker JumpStart és MongoDB Atlas szemantikus keresés segítségével | Amazon Web Services PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.
  8. Határozza meg a AWS Lambda funkció, amely kölcsönhatásba lép a MongoDB Atlasszal és az LLM-mel, hogy válaszokat adjon. A lambda függvény létrehozásához kövesse az alábbi lépéseket ezeket a lépéseket.
    9. Adja meg az AWS lambda funkciót
  9. Most már kapcsolatba léphet az LLM-mel.

Tisztítsuk meg

Az erőforrások megtisztításához hajtsa végre a következő lépéseket:

  1. Törölje az Amazon Lex botot.
  2. Törölje a lambda funkciót.
  3. Törölje az LLM SageMaker végpontot.
  4. Törölje a beágyazási modell SageMaker végpontját.
  5. Törölje a MongoDB Atlas-fürtöt.

Következtetés

A bejegyzésben bemutattuk, hogyan hozhatunk létre egy egyszerű botot, amely a MongoDB Atlas szemantikus keresést használja, és integrálódik a SageMaker JumpStart modelljével. Ez a bot lehetővé teszi a felhasználói interakció gyors prototípusát a SageMaker Jumpstart különböző LLM-ekkel, miközben párosítja őket a MongoDB Atlasból származó környezettel.

Mint mindig, az AWS szívesen fogadja a visszajelzéseket. Kérjük, hagyja vissza észrevételeit és kérdéseit a megjegyzés rovatban.


A szerzőkről

Retrieval-Augmented Generation LangChain, Amazon SageMaker JumpStart és MongoDB Atlas szemantikus keresés segítségével | Amazon Web Services PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.

Igor Alekszejev Senior Partner Solution Architect az AWS-nél a Data and Analytics domainben. Munkájában Igor stratégiai partnerekkel dolgozik, segítve őket komplex, AWS-optimalizált architektúrák felépítésében. Mielőtt csatlakozott volna az AWS-hez, Data/Solution Architect-ként számos projektet valósított meg a Big Data tartományban, beleértve a Hadoop ökoszisztéma több adattóját is. Adatmérnökként részt vett az AI/ML csalásfelderítésben és irodaautomatizálásban való alkalmazásában.


Retrieval-Augmented Generation LangChain, Amazon SageMaker JumpStart és MongoDB Atlas szemantikus keresés segítségével | Amazon Web Services PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.Babu Srinivasan
Senior Partner Solutions Architect a MongoDB-nél. Jelenlegi beosztásában az AWS-szel dolgozik az AWS és MongoDB megoldások műszaki integrációinak és referenciaarchitektúrájának kiépítésén. Több mint két évtizedes tapasztalattal rendelkezik az adatbázis - és felhőtechnológiák terén . Szenvedélyes célja, hogy műszaki megoldásokat nyújtson több globális rendszerintegrátorral (GSI) dolgozó ügyfeleknek több földrajzi területen.

Időbélyeg:

Még több AWS gépi tanulás