Πώς να χρησιμοποιήσετε το Select by Maximal Marginal Relevance (MMR) στο LangChain;

Pos Na Chresimopoiesete To Select By Maximal Marginal Relevance Mmr Sto Langchain



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

Αυτός ο οδηγός θα απεικονίσει τη διαδικασία χρήσης του παραδείγματος επιλογής επιλογής από Μέγιστη οριακή συνάφεια στο LangChain.

Πώς να χρησιμοποιήσετε το Select by Maximal Marginal Relevance (MMR) στο LangChain;

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







Για να μάθετε τη διαδικασία χρήσης του επιλογέα παραδείγματος MMR στο LangChain, απλώς ακολουθήστε τα βήματα που αναφέρονται:



Βήμα 1: Εγκατάσταση μονάδων



Ξεκινήστε τη διαδικασία εγκαθιστώντας τις εξαρτήσεις του LangChain χρησιμοποιώντας την εντολή pip:





pip install langchain

Εγκαταστήστε τη λειτουργική μονάδα OpenAI για να χρησιμοποιήσετε το περιβάλλον της για την εφαρμογή της μεθόδου OpenAIEmbedding():



pip εγκατάσταση openai

Εγκαταστήστε το πλαίσιο FAISS που μπορεί να χρησιμοποιηθεί για τη λήψη της εξόδου χρησιμοποιώντας σημασιολογική ομοιότητα:

pip εγκατάσταση faiss-gpu

Τώρα, εγκαταστήστε το tiktoken tokenizer για να χωρίσετε το κείμενο σε μικρότερα κομμάτια χρησιμοποιώντας τον ακόλουθο κώδικα:

pip εγκατάσταση tiktoken

Βήμα 2: Χρήση βιβλιοθηκών και παραδειγμάτων

Το επόμενο βήμα είναι η εισαγωγή βιβλιοθηκών για τη δημιουργία ενός επιλογέα παραδειγμάτων MMR, FAISS, OpenAIEmbeddings και PromptTemplate. Μετά την εισαγωγή των βιβλιοθηκών, απλώς δημιουργήστε ένα σύνολο παραδειγμάτων που δίνει εισόδους και εξόδους για τις αντίστοιχες εισόδους τους σε πολλαπλούς πίνακες:

από langchain. προτρέπει . παράδειγμα_επιλογέας εισαγωγή (
MaxMarginalRelevanceExampleSelector ,
SemanticSimilarityExampleSelector ,
)
από langchain. διανυσματικά καταστήματα εισαγωγή FAISS
από langchain. ενσωματώσεις εισαγωγή OpenAIEmbeddings
από langchain. προτρέπει εισαγωγή FewShotPromptTemplate , PromptTemplate

example_prompt = PromptTemplate (
input_variables = [ 'εισαγωγή' , 'παραγωγή' ] ,
πρότυπο = 'Είσοδος: {input} \n Έξοδος: {output}' ,
)

παραδείγματα = [
{ 'εισαγωγή' : 'ευτυχισμένος' , 'παραγωγή' : 'λυπημένος' } ,
{ 'εισαγωγή' : 'ψηλός' , 'παραγωγή' : 'μικρός' } ,
{ 'εισαγωγή' : 'ενεργητικός' , 'παραγωγή' : 'ληθαργικός' } ,
{ 'εισαγωγή' : 'ηλιόλουστος' , 'παραγωγή' : 'ζοφερός' } ,
{ 'εισαγωγή' : 'ανεμώδης' , 'παραγωγή' : 'ηρεμία' } ,
]

Βήμα 3: Δημιουργία παραδείγματος επιλογής

Τώρα, ξεκινήστε τη δημιουργία του επιλογέα παραδείγματος MMR χρησιμοποιώντας τη μέθοδο MaxMarginalRelevanceExampleSelector() που περιέχει διαφορετικές παραμέτρους:

παράδειγμα_επιλογέας = MaxMarginalRelevanceExampleSelector. from_examples (
παραδείγματα ,
OpenAIEmbeddings ( ) ,
FAISS ,
κ = 2 ,
)
mmr_prompt = FewShotPromptTemplate (
παράδειγμα_επιλογέας = παράδειγμα_επιλογέας ,
example_prompt = example_prompt ,
πρόθεμα = 'Δώστε το αντώνυμο κάθε εισαγωγής' ,
κατάληξη = 'Είσοδος: {adjective} \n Παραγωγή:' ,
input_variables = [ 'επίθετο' ] ,
)

Βήμα 4: Δοκιμή του Επιλογέα Παραδείγματος MMR

Δοκιμάστε τον επιλογέα παραδείγματος MMR Maximal Marginal Relevance καλώντας τον στη μέθοδο print() με την είσοδο:

Τυπώνω ( mmr_prompt. μορφή ( επίθετο = 'ανήσυχος' ) )

Βήμα 5: Χρήση SemanticSimilarity

Αυτό το βήμα χρησιμοποιεί τη μέθοδο SemanticSimilarityExampleSelector() και στη συνέχεια χρησιμοποιεί τη μέθοδο FewShotPromptTemplate() που υποστηρίζεται από το LangChain:

παράδειγμα_επιλογέας = SemanticSimilarityExampleSelector. from_examples (
παραδείγματα ,
OpenAIEmbeddings ( ) ,
FAISS ,
κ = 2 ,
)
παρόμοια_προτροπή = FewShotPromptTemplate (
παράδειγμα_επιλογέας = παράδειγμα_επιλογέας ,
example_prompt = example_prompt ,
πρόθεμα = 'Δώστε το αντώνυμο κάθε εισαγωγής' ,
κατάληξη = 'Είσοδος: {adjective} \n Παραγωγή:' ,
input_variables = [ 'επίθετο' ] ,
)
Τυπώνω ( παρόμοια_προτροπή. μορφή ( επίθετο = 'ανήσυχος' ) )

Αυτό αφορά τη χρήση της επιλογής κατά Μέγιστη Οριακή Συνάφεια ή MMR στο LangChain.

συμπέρασμα

Για να χρησιμοποιήσετε τον επιλογέα επιλογής με μέγιστη οριακή συνάφεια ή MMR στο LangChain, εγκαταστήστε τις απαιτούμενες μονάδες. Μετά από αυτό, εισαγάγετε τις βιβλιοθήκες για να δημιουργήσετε το σύνολο παραδειγμάτων χρησιμοποιώντας το πρότυπο προτροπής εισόδου και εξόδου. Δημιουργήστε τον επιλογέα παραδείγματος MMR για να τον δοκιμάσετε χρησιμοποιώντας τον επιλογέα παραδείγματος MMR και τη μέθοδο FewShotPromptTemplate() για να λάβετε σχετικό αποτέλεσμα. Αυτός ο οδηγός επεξηγεί τη διαδικασία χρήσης του επιλογέα παραδείγματος επιλογής ανά MMR στο LangChain.