Λογότυπο Zephyrnet

Δημιουργήστε μια μηχανή αναζήτησης κειμένου και εικόνων με βάση τα συμφραζόμενα για προτάσεις προϊόντων χρησιμοποιώντας το Amazon Bedrock και το Amazon OpenSearch Serverless | Υπηρεσίες Ιστού της Amazon

Ημερομηνία:

Η άνοδος της αναζήτησης με βάση τα συμφραζόμενα και τη σημασιολογική αναζήτηση έχει κάνει τις επιχειρήσεις ηλεκτρονικού εμπορίου και λιανικής να αναζητούν απευθείας τους καταναλωτές τους. Οι μηχανές αναζήτησης και τα συστήματα προτάσεων που τροφοδοτούνται από γενετική τεχνητή νοημοσύνη μπορούν να βελτιώσουν την εμπειρία αναζήτησης προϊόντων εκθετικά, κατανοώντας ερωτήματα φυσικής γλώσσας και επιστρέφοντας πιο ακριβή αποτελέσματα. Αυτό βελτιώνει τη συνολική εμπειρία χρήστη, βοηθώντας τους πελάτες να βρουν ακριβώς αυτό που αναζητούν.

Amazon OpenSearch Service υποστηρίζει τώρα το ομοιότητα συνημίτονο μετρική για δείκτες k-NN. Η ομοιότητα συνημιτόνου μετρά το συνημίτονο της γωνίας μεταξύ δύο διανυσμάτων, όπου μια μικρότερη γωνία συνημιτόνου υποδηλώνει μεγαλύτερη ομοιότητα μεταξύ των διανυσμάτων. Με ομοιότητα συνημιτόνου, μπορείτε να μετρήσετε τον προσανατολισμό μεταξύ δύο διανυσμάτων, γεγονός που το καθιστά καλή επιλογή για ορισμένες συγκεκριμένες εφαρμογές σημασιολογικής αναζήτησης.

Σε αυτήν την ανάρτηση, δείχνουμε πώς να δημιουργήσετε μια μηχανή αναζήτησης κειμένου και εικόνων με βάση τα συμφραζόμενα για προτάσεις προϊόντων χρησιμοποιώντας το Μοντέλο Amazon Titan Multimodal Embeddings, διαθέσιμο σε Θεμέλιο του Αμαζονίου, με Amazon OpenSearch χωρίς διακομιστή.

Ένα μοντέλο πολυτροπικών ενσωματώσεων έχει σχεδιαστεί για να μαθαίνει κοινές αναπαραστάσεις διαφορετικών τρόπων όπως κείμενο, εικόνες και ήχος. Με την εκπαίδευση σε σύνολα δεδομένων μεγάλης κλίμακας που περιέχουν εικόνες και τις αντίστοιχες λεζάντες τους, ένα μοντέλο πολυτροπικών ενσωματώσεων μαθαίνει να ενσωματώνει εικόνες και κείμενα σε έναν κοινό λανθάνοντα χώρο. Ακολουθεί μια επισκόπηση υψηλού επιπέδου του τρόπου με τον οποίο λειτουργεί εννοιολογικά:

  • Ξεχωριστοί κωδικοποιητές – Αυτά τα μοντέλα έχουν χωριστούς κωδικοποιητές για κάθε τύπο — έναν κωδικοποιητή κειμένου για κείμενο (για παράδειγμα, BERT ή RoBERTa), κωδικοποιητή εικόνας για εικόνες (για παράδειγμα, CNN για εικόνες) και κωδικοποιητές ήχου για ήχο (για παράδειγμα, μοντέλα όπως το Wav2Vec) . Κάθε κωδικοποιητής δημιουργεί ενσωματώσεις που καταγράφουν σημασιολογικά χαρακτηριστικά των αντίστοιχων τροπολογιών τους
  • Σύντηξη τροπικότητας – Οι ενσωματώσεις από τους μονοτροπικούς κωδικοποιητές συνδυάζονται χρησιμοποιώντας πρόσθετα επίπεδα νευρωνικών δικτύων. Ο στόχος είναι να μάθουμε τις αλληλεπιδράσεις και τους συσχετισμούς μεταξύ των τρόπων. Οι κοινές προσεγγίσεις σύντηξης περιλαμβάνουν τη συνένωση, τις λειτουργίες στοιχείων, τη συγκέντρωση και τους μηχανισμούς προσοχής.
  • Κοινόχρηστος χώρος αναπαράστασης – Τα επίπεδα σύντηξης βοηθούν στην προβολή των επιμέρους τρόπων σε έναν κοινό χώρο αναπαράστασης. Με την εκπαίδευση σε πολυτροπικά σύνολα δεδομένων, το μοντέλο μαθαίνει έναν κοινό χώρο ενσωμάτωσης όπου οι ενσωματώσεις από κάθε τρόπο που αντιπροσωπεύουν το ίδιο υποκείμενο σημασιολογικό περιεχόμενο είναι πιο κοντά μεταξύ τους.
  • Καθοδικές εργασίες – Οι κοινές πολυτροπικές ενσωματώσεις που δημιουργούνται μπορούν στη συνέχεια να χρησιμοποιηθούν για διάφορες μεταγενέστερες εργασίες όπως πολυτροπική ανάκτηση, ταξινόμηση ή μετάφραση. Το μοντέλο χρησιμοποιεί συσχετίσεις μεταξύ των τρόπων για να βελτιώσει την απόδοση σε αυτές τις εργασίες σε σύγκριση με μεμονωμένες ενσωματώσεις τρόπων. Το βασικό πλεονέκτημα είναι η ικανότητα κατανόησης των αλληλεπιδράσεων και της σημασιολογίας μεταξύ τροπολογιών όπως κείμενο, εικόνες και ήχος μέσω κοινής μοντελοποίησης.

Επισκόπηση λύσεων

Η λύση παρέχει μια υλοποίηση για τη δημιουργία ενός πρωτοτύπου μηχανής αναζήτησης που τροφοδοτείται με το μοντέλο μεγάλης γλώσσας (LLM) για την ανάκτηση και πρόταση προϊόντων με βάση ερωτήματα κειμένου ή εικόνας. Αναφέρουμε λεπτομερώς τα βήματα για τη χρήση ενός Amazon Titan Multimodal Embeddings μοντέλο για κωδικοποίηση εικόνων και κειμένου σε ενσωματώσεις, απορρόφηση ενσωματώσεων σε ευρετήριο υπηρεσίας OpenSearch και αναζήτηση του ευρετηρίου χρησιμοποιώντας την Υπηρεσία OpenSearch Λειτουργία k-πλησιέστερων γειτόνων (k-NN)..

Αυτή η λύση περιλαμβάνει τα ακόλουθα συστατικά:

  • Μοντέλο Amazon Titan Multimodal Embeddings – Αυτό το μοντέλο βάσης (FM) δημιουργεί ενσωματώσεις των εικόνων του προϊόντος που χρησιμοποιούνται σε αυτήν την ανάρτηση. Με το Amazon Titan Multimodal Embeddings, μπορείτε να δημιουργήσετε ενσωματώσεις για το περιεχόμενό σας και να τις αποθηκεύσετε σε μια διανυσματική βάση δεδομένων. Όταν ένας τελικός χρήστης υποβάλλει οποιονδήποτε συνδυασμό κειμένου και εικόνας ως ερώτημα αναζήτησης, το μοντέλο δημιουργεί ενσωματώσεις για το ερώτημα αναζήτησης και τις αντιστοιχίζει στις αποθηκευμένες ενσωματώσεις για να παρέχει σχετικά αποτελέσματα αναζήτησης και προτάσεων στους τελικούς χρήστες. Μπορείτε να προσαρμόσετε περαιτέρω το μοντέλο για να βελτιώσετε την κατανόηση του μοναδικού περιεχομένου σας και να παρέχετε πιο ουσιαστικά αποτελέσματα χρησιμοποιώντας ζεύγη εικόνας-κειμένου για λεπτομέρεια. Από προεπιλογή, το μοντέλο δημιουργεί διανύσματα (ενσωματώσεις) 1,024 διαστάσεων και είναι προσβάσιμο μέσω του Amazon Bedrock. Μπορείτε επίσης να δημιουργήσετε μικρότερες διαστάσεις για βελτιστοποίηση για ταχύτητα και απόδοση
  • Amazon OpenSearch χωρίς διακομιστή – Είναι μια κατά παραγγελία διαμόρφωση χωρίς διακομιστή για την Υπηρεσία OpenSearch. Χρησιμοποιούμε το Amazon OpenSearch Serverless ως διανυσματική βάση δεδομένων για την αποθήκευση ενσωματώσεων που δημιουργούνται από το μοντέλο Amazon Titan Multimodal Embeddings. Ένα ευρετήριο που δημιουργήθηκε στη συλλογή Amazon OpenSearch Serverless χρησιμεύει ως ο φορέας αποθήκευσης για τη λύση μας Retrieval Augmented Generation (RAG).
  • Στούντιο Amazon SageMaker – Είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης (IDE) για μηχανική μάθηση (ML). Οι επαγγελματίες ML μπορούν να εκτελέσουν όλα τα βήματα ανάπτυξης ML—από την προετοιμασία των δεδομένων σας έως τη δημιουργία, την εκπαίδευση και την ανάπτυξη μοντέλων ML.

Ο σχεδιασμός της λύσης αποτελείται από δύο μέρη: ευρετηρίαση δεδομένων και αναζήτηση με βάση τα συμφραζόμενα. Κατά τη δημιουργία ευρετηρίου δεδομένων, επεξεργάζεστε τις εικόνες του προϊόντος για να δημιουργήσετε ενσωματώσεις για αυτές τις εικόνες και, στη συνέχεια, συμπληρώσετε το διανυσματικό χώρο αποθήκευσης δεδομένων. Αυτά τα βήματα ολοκληρώνονται πριν από τα βήματα αλληλεπίδρασης με τον χρήστη.

Στη φάση αναζήτησης με βάση τα συμφραζόμενα, ένα ερώτημα αναζήτησης (κείμενο ή εικόνα) από τον χρήστη μετατρέπεται σε ενσωματώσεις και εκτελείται μια αναζήτηση ομοιότητας στη διανυσματική βάση δεδομένων για την εύρεση των παρόμοιων εικόνων προϊόντων με βάση την αναζήτηση ομοιότητας. Στη συνέχεια, εμφανίζετε τα κορυφαία παρόμοια αποτελέσματα. Όλος ο κώδικας για αυτήν την ανάρτηση είναι διαθέσιμος στο GitHub repo.

Το παρακάτω διάγραμμα απεικονίζει την αρχιτεκτονική λύσεων.

Ακολουθούν τα βήματα ροής εργασιών λύσης:

  1. Κατεβάστε το κείμενο περιγραφής του προϊόντος και τις εικόνες από το κοινό Απλή υπηρεσία αποθήκευσης Amazon (Amazon S3) κάδος.
  2. Ελέγξτε και προετοιμάστε το σύνολο δεδομένων.
  3. Δημιουργήστε ενσωματώσεις για τις εικόνες του προϊόντος χρησιμοποιώντας το μοντέλο Amazon Titan Multimodal Embeddings (amazon.titan-embed-image-v1). Εάν έχετε τεράστιο αριθμό εικόνων και περιγραφών, μπορείτε προαιρετικά να χρησιμοποιήσετε το Συμπεράσματα παρτίδας για το Amazon Bedrock.
  4. Αποθηκεύστε τις ενσωματώσεις στο Amazon OpenSearch χωρίς διακομιστή ως μηχανή αναζήτησης.
  5. Τέλος, ανακτήστε το ερώτημα χρήστη σε φυσική γλώσσα, μετατρέψτε το σε ενσωματώσεις χρησιμοποιώντας το μοντέλο Amazon Titan Multimodal Embeddings και εκτελέστε μια αναζήτηση k-NN για να λάβετε τα σχετικά αποτελέσματα αναζήτησης.

Χρησιμοποιούμε το SageMaker Studio (δεν φαίνεται στο διάγραμμα) ως IDE για την ανάπτυξη της λύσης.

Αυτά τα βήματα αναλύονται λεπτομερώς στις επόμενες ενότητες. Περιλαμβάνουμε επίσης στιγμιότυπα οθόνης και λεπτομέρειες της εξόδου.

Προϋποθέσεις

Για να εφαρμόσετε τη λύση που παρέχεται σε αυτήν την ανάρτηση, θα πρέπει να έχετε τα εξής:

  • An Λογαριασμός AWS και εξοικείωση με τα FM, Amazon Bedrock, Amazon Sage Makerκαι την Υπηρεσία OpenSearch.
  • Το μοντέλο Amazon Titan Multimodal Embeddings ενεργοποιήθηκε στο Amazon Bedrock. Μπορείτε να επιβεβαιώσετε ότι είναι ενεργοποιημένο στο Πρόσβαση μοντέλου σελίδα της κονσόλας Amazon Bedrock. Εάν το Amazon Titan Multimodal Embeddings είναι ενεργοποιημένο, η κατάσταση πρόσβασης θα εμφανίζεται ως Πρόσβαση επετράπη, όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης.

Εάν το μοντέλο δεν είναι διαθέσιμο, ενεργοποιήστε την πρόσβαση στο μοντέλο επιλέγοντας Διαχείριση πρόσβασης μοντέλου, επιλέγοντας Amazon Titan Multimodal Embeddings G1, και την επιλογή Ζητήστε πρόσβαση μοντέλου. Το μοντέλο ενεργοποιείται για χρήση αμέσως.

Ρυθμίστε τη λύση

Όταν ολοκληρωθούν τα προαπαιτούμενα βήματα, είστε έτοιμοι να ρυθμίσετε τη λύση:

  1. Στον λογαριασμό σας AWS, ανοίξτε την κονσόλα SageMaker και επιλέξτε στούντιο στο παράθυρο πλοήγησης.
  2. Επιλέξτε τον τομέα σας και το προφίλ χρήστη και, στη συνέχεια, επιλέξτε Άνοιγμα στούντιο.

Ο τομέας σας και το όνομα προφίλ χρήστη ενδέχεται να διαφέρουν.

  1. Επιλέξτε Τερματικό συστήματος υπό Βοηθητικά προγράμματα και αρχεία.
  2. Εκτελέστε την ακόλουθη εντολή για να κλωνοποιήσετε το GitHub repo στην παρουσία του SageMaker Studio:
git clone https://github.com/aws-samples/amazon-bedrock-samples.git

  1. Πλοηγηθείτε με το multimodal/Titan/titan-multimodal-embeddings/amazon-bedrock-multimodal-oss-searchengine-e2e φάκελο.
  2. Ανοίξτε το titan_mm_embed_search_blog.ipynb σημειωματάριο.

Εκτελέστε τη λύση

Ανοίξτε το αρχείο titan_mm_embed_search_blog.ipynb και χρησιμοποιήστε τον πυρήνα της Data Science Python 3. Στο τρέξιμο μενού, επιλέξτε Εκτελέστε όλα τα κελιά για να εκτελέσετε τον κώδικα σε αυτό το σημειωματάριο.

Αυτό το σημειωματάριο εκτελεί τα ακόλουθα βήματα:

  1. Εγκαταστήστε τα πακέτα και τις βιβλιοθήκες που απαιτούνται για αυτήν τη λύση.
  2. Φορτώστε τα δημόσια διαθέσιμα Σύνολο δεδομένων Amazon Berkeley Objects και μεταδεδομένα σε ένα πλαίσιο δεδομένων pandas.

Το σύνολο δεδομένων είναι μια συλλογή από 147,702 καταχωρίσεις προϊόντων με πολύγλωσσα μεταδεδομένα και 398,212 μοναδικές εικόνες καταλόγου. Για αυτήν την ανάρτηση, χρησιμοποιείτε μόνο τις εικόνες και τα ονόματα των στοιχείων στα Αγγλικά των ΗΠΑ. Χρησιμοποιείτε περίπου 1,600 προϊόντα.

  1. Δημιουργήστε ενσωματώσεις για τις εικόνες του αντικειμένου χρησιμοποιώντας το μοντέλο Amazon Titan Multimodal Embeddings χρησιμοποιώντας το get_titan_multomodal_embedding() λειτουργία. Για λόγους αφαίρεσης, έχουμε ορίσει όλες τις σημαντικές λειτουργίες που χρησιμοποιούνται σε αυτό το σημειωματάριο στο utils.py αρχείο.

Στη συνέχεια, δημιουργείτε και ρυθμίζετε ένα διανυσματικό κατάστημα Amazon OpenSearch χωρίς διακομιστή (συλλογή και ευρετήριο).

  1. Προτού δημιουργήσετε τη νέα συλλογή και ευρετήριο διανυσματικής αναζήτησης, πρέπει πρώτα να δημιουργήσετε τρεις σχετικές πολιτικές της υπηρεσίας OpenSearch: την πολιτική ασφάλειας κρυπτογράφησης, την πολιτική ασφάλειας δικτύου και την πολιτική πρόσβασης δεδομένων.

  1. Τέλος, εισαγάγετε την εικόνα που ενσωματώνεται στο διανυσματικό ευρετήριο.

Τώρα μπορείτε να πραγματοποιήσετε μια πολυτροπική αναζήτηση σε πραγματικό χρόνο.

Εκτελέστε μια αναζήτηση με βάση τα συμφραζόμενα

Σε αυτήν την ενότητα, παρουσιάζουμε τα αποτελέσματα της αναζήτησης με βάση τα συμφραζόμενα με βάση ένα ερώτημα κειμένου ή εικόνας.

Αρχικά, ας πραγματοποιήσουμε μια αναζήτηση εικόνας με βάση την εισαγωγή κειμένου. Στο παρακάτω παράδειγμα, χρησιμοποιούμε την εισαγωγή κειμένου "ποτήρι ποτό" και το στέλνουμε στη μηχανή αναζήτησης για να βρούμε παρόμοια αντικείμενα.

Το παρακάτω στιγμιότυπο οθόνης δείχνει τα αποτελέσματα.

Τώρα ας δούμε τα αποτελέσματα με βάση μια απλή εικόνα. Η εικόνα εισόδου μετατρέπεται σε διανυσματικές ενσωματώσεις και, με βάση την αναζήτηση ομοιότητας, το μοντέλο επιστρέφει το αποτέλεσμα.

Μπορείτε να χρησιμοποιήσετε οποιαδήποτε εικόνα, αλλά για το ακόλουθο παράδειγμα, χρησιμοποιούμε μια τυχαία εικόνα από το σύνολο δεδομένων με βάση το αναγνωριστικό στοιχείου (για παράδειγμα, item_id = "B07JCDQWM6") και, στη συνέχεια, στείλτε αυτήν την εικόνα στη μηχανή αναζήτησης για να βρείτε παρόμοια αντικείμενα.

Το παρακάτω στιγμιότυπο οθόνης δείχνει τα αποτελέσματα.

εκκαθάριση

Για να αποφύγετε μελλοντικές χρεώσεις, διαγράψτε τους πόρους που χρησιμοποιούνται σε αυτήν τη λύση. Μπορείτε να το κάνετε αυτό εκτελώντας την ενότητα καθαρισμού του σημειωματάριου.

Συμπέρασμα

Αυτή η ανάρτηση παρουσίασε μια περιγραφή της χρήσης του μοντέλου Amazon Titan Multimodal Embeddings στο Amazon Bedrock για τη δημιουργία ισχυρών εφαρμογών αναζήτησης με βάση τα συμφραζόμενα. Συγκεκριμένα, παρουσιάσαμε ένα παράδειγμα εφαρμογής αναζήτησης με λίστα προϊόντων. Είδαμε πώς το μοντέλο ενσωματώσεων επιτρέπει την αποτελεσματική και ακριβή ανακάλυψη πληροφοριών από εικόνες και δεδομένα κειμένου, βελτιώνοντας έτσι την εμπειρία του χρήστη κατά την αναζήτηση των σχετικών στοιχείων.

Το Amazon Titan Multimodal Embeddings σάς βοηθά να παρέχετε πιο ακριβείς και σχετικές με τα συμφραζόμενα πολυτροπικές εμπειρίες αναζήτησης, συστάσεων και εξατομίκευσης για τους τελικούς χρήστες. Για παράδειγμα, μια εταιρεία στοκ φωτογραφίας με εκατοντάδες εκατομμύρια εικόνες μπορεί να χρησιμοποιήσει το μοντέλο για να ενισχύσει τη λειτουργία αναζήτησής της, ώστε οι χρήστες να μπορούν να αναζητούν εικόνες χρησιμοποιώντας μια φράση, εικόνα ή συνδυασμό εικόνας και κειμένου.

Το μοντέλο Amazon Titan Multimodal Embeddings στο Amazon Bedrock είναι πλέον διαθέσιμο στις ανατολικές (Βιρτζίνια) των ΗΠΑ και στις περιφέρειες AWS των ΗΠΑ δυτικού τύπου (Όρεγκον). Για να μάθετε περισσότερα, ανατρέξτε στο Τα μοντέλα Amazon Titan Image Generator, Multimodal Embeddings και Text είναι πλέον διαθέσιμα στο Amazon Bedrock, τη Σελίδα προϊόντος Amazon Titan, και το Οδηγός χρήσης Amazon Bedrock. Για να ξεκινήσετε με το Amazon Titan Multimodal Embeddings στο Amazon Bedrock, επισκεφτείτε το Κονσόλα Amazon Bedrock.

Ξεκινήστε τη δημιουργία με το μοντέλο Amazon Titan Multimodal Embeddings Θεμέλιο του Αμαζονίου σήμερα.


Σχετικά με τους Συγγραφείς

Sandeep Singh είναι Ανώτερος Επιστήμονας Δεδομένων Τεχνητής Νοημοσύνης στο Amazon Web Services, βοηθώντας τις επιχειρήσεις να καινοτομήσουν με τη γενετική τεχνητή νοημοσύνη. Ειδικεύεται στο Generative AI, Τεχνητή Νοημοσύνη, Machine Learning και System Design. Είναι παθιασμένος με την ανάπτυξη λύσεων αιχμής που υποστηρίζονται από AI/ML για την επίλυση σύνθετων επιχειρηματικών προβλημάτων για διαφορετικούς κλάδους, βελτιστοποιώντας την αποτελεσματικότητα και την επεκτασιμότητα.

Μάνι Χανιούγια είναι επικεφαλής της τεχνολογίας – Generative AI Specialists, συγγραφέας του βιβλίου Applied Machine Learning and High Performance Computing on AWS, και μέλος του Διοικητικού Συμβουλίου για τις Women in Manufacturing Education Foundation. Διευθύνει έργα μηχανικής μάθησης σε διάφορους τομείς όπως η όραση υπολογιστών, η επεξεργασία φυσικής γλώσσας και η γενετική τεχνητή νοημοσύνη. Μιλάει σε εσωτερικά και εξωτερικά συνέδρια όπως τα AWS re:Invent, Women in Manufacturing West, διαδικτυακά σεμινάρια YouTube και GHC 23. Στον ελεύθερο χρόνο της, της αρέσει να κάνει μεγάλες διαδρομές στην παραλία.

Ρούπιντερ Γκρέουαλ είναι Senior AI/ML Specialist Solutions Architect με AWS. Επί του παρόντος εστιάζει στην εξυπηρέτηση μοντέλων και MLOps στο Amazon SageMaker. Πριν από αυτόν τον ρόλο, εργάστηκε ως Μηχανικός Μηχανικής Εκμάθησης Κατασκευών και φιλοξενίας μοντέλων. Εκτός δουλειάς, του αρέσει να παίζει τένις και να κάνει ποδήλατο σε ορεινά μονοπάτια.

spot_img

Τελευταία Νοημοσύνη

spot_img