Retrieval-Augmented Generation koos LangChaini, Amazon SageMaker JumpStarti ja MongoDB Atlase semantilise otsinguga | Amazoni veebiteenused

Retrieval-Augmented Generation koos LangChaini, Amazon SageMaker JumpStarti ja MongoDB Atlase semantilise otsinguga | Amazoni veebiteenused

Generatiivne AI mudelitel on potentsiaal muuta ettevõtte tegevust revolutsiooniliseks, kuid ettevõtted peavad hoolikalt kaaluma, kuidas oma jõudu rakendada, ületades samal ajal väljakutseid, nagu andmete kaitsmine ja tehisintellektiga loodud sisu kvaliteedi tagamine.

Retrieval-Augmented Generation (RAG) raamistik täiendab viipasid mitmest allikast (nt dokumendihoidlatest, andmebaasidest või API-dest) pärit väliste andmetega, et muuta sihtmudelid domeenispetsiifiliste ülesannete jaoks tõhusaks. See postitus tutvustab RAG-mudeli võimalusi ja tõstab esile MongoDB Atlase transformatiivse potentsiaali selle vektorotsingu funktsiooniga.

MongoDB atlas on integreeritud andmeteenuste komplekt, mis kiirendab ja lihtsustab andmepõhiste rakenduste arendamist. Selle vektorandmete salvestusruum integreerub sujuvalt operatiivsete andmete salvestamisega, välistades vajaduse eraldi andmebaasi järele. See integratsioon võimaldab võimsaid semantilisi otsinguvõimalusi Vektorotsing, kiire viis semantilise otsingu ja tehisintellektil põhinevate rakenduste loomiseks.

Amazon SageMaker võimaldab ettevõtetel ehitada, koolitada ja juurutada masinõppe (ML) mudeleid. Amazon SageMaker JumpStart pakub eelkoolitatud mudeleid ja andmeid, mis aitavad teil ML-iga alustada. Eelkoolitatud mudelitele ja andmetele pääsete juurde, neid kohandada ja juurutada saate SageMaker JumpStarti sihtlehe kaudu Amazon SageMaker Studio vaid mõne hiireklõpsuga.

Amazon Lex on vestlusliides, mis aitab ettevõtetel luua vestlusroboteid ja häälroboteid, mis osalevad loomulikus ja elutruus suhtluses. Integreerides Amazon Lexi generatiivse tehisintellektiga, saavad ettevõtted luua tervikliku ökosüsteemi, kus kasutajate sisestus läheb sujuvalt üle sidusateks ja kontekstuaalselt asjakohasteks vastusteks.

Lahenduse ülevaade

Järgnev diagramm illustreerib lahenduse arhitektuuri.

Lahenduse ülevaade

Järgmistes jaotistes käsitleme selle lahenduse ja selle komponentide rakendamise etappe.

Seadistage MongoDB klaster

Tasuta MongoDB Atlase klastri loomiseks järgige juhiseid Looge klaster. Seadistage andmebaas juurdepääs ja võrku juurdepääs.

Juurutage SageMakeri manustamismudel

Saate valida manustamismudeli (ALL MiniLM L6 v2) lehel SageMaker JumpStart Mudelid, sülearvutid, lahendused lehel.

SageMaker JumpStart Mudelid, sülearvutid, lahendused

Vali juurutada mudeli juurutamiseks.

Kontrollige, kas mudel on edukalt juurutatud, ja veenduge, et lõpp-punkt on loodud.

mudel on edukalt kasutusele võetud

Vektori manustamine

Vektori manustamine on teksti või pildi teisendamine vektoresitluseks. Järgmise koodi abil saame SageMaker JumpStartiga genereerida vektormanustusi ja värskendada kollektsiooni iga dokumendi jaoks loodud vektoriga:

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)

Ülaltoodud kood näitab, kuidas värskendada kogus üksikut objekti. Kõigi objektide värskendamiseks järgige juhised.

MongoDB vektorandmete salvestusruum

MongoDB atlase vektorotsing on uus funktsioon, mis võimaldab salvestada ja otsida MongoDB-s vektorandmeid. Vektorandmed on teatud tüüpi andmed, mis esindavad punkti suuremõõtmelises ruumis. Seda tüüpi andmeid kasutatakse sageli ML ja tehisintellekti rakendustes. MongoDB Atlas Vector Search kasutab tehnikat nimega k-lähimad naabrid (k-NN), et otsida sarnaseid vektoreid. k-NN töötab, leides antud vektoriga k kõige sarnasemat vektorit. Kõige sarnasemad vektorid on need, mis on antud vektorile eukleidilise kauguse poolest kõige lähemal.

Vektorandmete salvestamine tööandmete kõrval võib parandada jõudlust, vähendades vajadust andmete teisaldamiseks erinevate salvestussüsteemide vahel. See on eriti kasulik rakenduste jaoks, mis nõuavad reaalajas juurdepääsu vektorandmetele.

Looge vektorotsingu register

Järgmine samm on luua a MongoDB vektorotsingu register eelmises etapis loodud vektorväljal. MongoDB kasutab knnVector tüüp vektormanustuste indekseerimiseks. Vektorväli tuleks esitada arvude massiivina (ainult BSON int32, int64 või topeltandmetüübid).

Viitama Vaadake üle knnVektori tüübi piirangud piirangute kohta lisateabe saamiseks knnVector tüüp

Järgmine kood on näidisindeksi määratlus:

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

Pange tähele, et mõõde peab vastama teie manustamismudeli mõõtmetele.

Esitage päring vektorandmete salvest

Saate päringuid vektorandmesalvest teha kasutades Vektorotsingu koondamise konveier. See kasutab vektorotsingu indeksit ja täidab a semantiline otsing vektori andmesalves.

Järgmine kood on näidisotsingu määratlus:

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

Juurutage SageMakeri suurkeelemudel

SageMaker JumpStart jumestuskreemi mudelid on eelkoolitatud suured keelemudelid (LLM), mida kasutatakse mitmesuguste loomuliku keele töötlemise (NLP) ülesannete lahendamiseks, nagu teksti kokkuvõte, küsimustele vastamine ja loomuliku keele järeldamine. Need on saadaval erinevates suurustes ja konfiguratsioonides. Selles lahenduses kasutame Kallistav nägu FLAN-T5-XL mudel.

Otsige SageMaker JumpStartis mudelit FLAN-T5-XL.

Otsige üles FLAN-T5-XL

Vali juurutada mudeli FLAN-T5-XL seadistamiseks.

juurutada

Veenduge, et mudel on edukalt juurutatud ja lõpp-punkt aktiivne.

Retrieval-Augmented Generation koos LangChaini, Amazon SageMaker JumpStarti ja MongoDB Atlase semantilise otsinguga | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

Looge Amazon Lex bot

Amazon Lexi roboti loomiseks toimige järgmiselt.

  1. Amazon Lex konsoolil valige Loo bot.

Loo bot

  1. eest Boti nimi, sisestage nimi.
  2. eest Kestuslik rollvalige Looge roll Amazon Lexi põhiõigustega.
    Retrieval-Augmented Generation koos LangChaini, Amazon SageMaker JumpStarti ja MongoDB Atlase semantilise otsinguga | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.
  3. Määrake oma keeleseaded ja seejärel valige Tehtud.
    Retrieval-Augmented Generation koos LangChaini, Amazon SageMaker JumpStarti ja MongoDB Atlase semantilise otsinguga | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.
  4. Lisage väljaütlemise näidis NewIntent UI ja valige Salvesta kavatsus.
    Retrieval-Augmented Generation koos LangChaini, Amazon SageMaker JumpStarti ja MongoDB Atlase semantilise otsinguga | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.
  5. Liikuge FallbackIntent mis on teie jaoks loodud vaikimisi ja lülitage sisse aktiivne aasta Täitmine sektsiooni.
    lülitage Aktiivne
  6. Vali Ehitama ja kui ehitamine on edukas, valige test.
    Ehitage ja testige
  7. Enne testimist valige hammasrattaikoon.
    Retrieval-Augmented Generation koos LangChaini, Amazon SageMaker JumpStarti ja MongoDB Atlase semantilise otsinguga | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.
  8. Märkida AWS Lambda funktsioon, mis suhtleb MongoDB Atlase ja LLM-iga, et pakkuda vastuseid. Lambda funktsiooni loomiseks toimige järgmiselt need sammud.
    9. Määrake AWS lambda funktsioon
  9. Nüüd saate LLM-iga suhelda.

Koristage

Ressursside puhastamiseks toimige järgmiselt.

  1. Kustutage Amazon Lex bot.
  2. Kustutage lambda funktsioon.
  3. Kustutage LLM SageMakeri lõpp-punkt.
  4. Kustutage manustamismudeli SageMaker lõpp-punkt.
  5. Kustutage MongoDB Atlase klaster.

Järeldus

Postituses näitasime, kuidas luua lihtsat robotit, mis kasutab MongoDB Atlase semantilist otsingut ja integreerub SageMaker JumpStarti mudeliga. See robot võimaldab teil kiiresti prototüüpida kasutaja interaktsiooni erinevate LLM-idega SageMaker Kiirstardis, sidudes need samal ajal MongoDB Atlase kontekstiga.

Nagu alati, ootab AWS tagasisidet. Palun jätke oma tagasiside ja küsimused kommentaaride jaotisesse.


Autoritest

Retrieval-Augmented Generation koos LangChaini, Amazon SageMaker JumpStarti ja MongoDB Atlase semantilise otsinguga | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

Igor Aleksejev on AWS-i vanempartnerlahenduste arhitekt Andmete ja Analyticsi domeenis. Oma rollis teeb Igor koostööd strateegiliste partneritega, aidates neil ehitada keerulisi AWS-i jaoks optimeeritud arhitektuure. Enne AWS-iga liitumist viis ta andmete/lahenduste arhitektina ellu palju projekte suurandmete domeenis, sealhulgas mitut Hadoopi ökosüsteemi andmejärve. Andmeinsenerina oli ta seotud AI/ML rakendamisega pettuste tuvastamisel ja kontori automatiseerimisel.


Retrieval-Augmented Generation koos LangChaini, Amazon SageMaker JumpStarti ja MongoDB Atlase semantilise otsinguga | Amazon Web Services PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.Babu Srinivasan
on MongoDB vanempartnerilahenduste arhitekt. Oma praeguses rollis töötab ta koos AWS-iga, et luua AWS-i ja MongoDB lahenduste tehnilisi integratsioone ja võrdlusarhitektuure. Tal on enam kui kahe aastakümne pikkune kogemus andmebaasi- ja pilvetehnoloogiate vallas. Ta on kirglik tehniliste lahenduste pakkumise vastu klientidele, kes töötavad mitme globaalse süsteemiintegraatoriga (GSI) mitmes geograafilises piirkonnas.

Ajatempel:

Veel alates AWS-i masinõpe