Denne veiledningen vil illustrere prosessen med å bruke eksempelvelgeren select by Maximal Marginal Relevance i LangChain.
Hvordan bruke Select by Maximal Marginal Relevance (MMR) i LangChain?
Eksempelvelgeren Maximal Marginal Relevance brukes til å trekke ut informasjon ved å bruke cosinuslikheten til ledeteksten og eksemplet. Cosinuslikheten beregnes etter å ha brukt innbyggingsmetodene på dataene og konvertert tekst til numerisk form.
For å lære prosessen med å bruke MMR-eksempelvelgeren i LangChain, gå ganske enkelt gjennom de oppførte trinnene:
Trinn 1: Installer moduler
Start prosessen ved å installere avhengighetene til LangChain ved å bruke pip-kommandoen:
pip installer langkjede
Installer OpenAI-modulen for å bruke miljøet for å bruke OpenAIEmbedding()-metoden:
pip installer openai
Installer FAISS-rammeverket som kan brukes til å få utdata ved hjelp av semantisk likhet:
pip installer faiss-gpu
Installer nå tiktoken tokenizer for å dele teksten i mindre biter ved å bruke følgende kode:
pip installer tiktoken
Trinn 2: Bruke biblioteker og eksempler
Det neste trinnet er å importere biblioteker for å bygge en MMR-eksempelvelger, FAISS, OpenAIEmbeddings og PromptTemplate. Etter å ha importert bibliotekene, lag ganske enkelt et eksempelsett som gir innganger og utdata for deres respektive innganger i flere arrayer:
fra langkjede. spør . eksempelvelger import (MaxMarginalRelevanceExampleSelector ,
SemantiskSimilarityExampleSelector ,
)
fra langkjede. vektorbutikker import FAISS
fra langkjede. innebygginger import ÅpneAIEbeddings
fra langkjede. spør import FewShotPromptTemplate , PromptTemplate
example_prompt = PromptTemplate (
input_variables = [ 'inngang' , 'produksjon' ] ,
mal = 'Inndata: {input} \n Utdata: {output}' ,
)
eksempler = [
{ 'inngang' : 'lykkelig' , 'produksjon' : 'lei seg' } ,
{ 'inngang' : 'høy' , 'produksjon' : 'kort' } ,
{ 'inngang' : 'energisk' , 'produksjon' : 'sløv' } ,
{ 'inngang' : 'solfylt' , 'produksjon' : 'dystert' } ,
{ 'inngang' : 'vind' , 'produksjon' : 'rolig' } ,
]
Trinn 3: Byggeeksempelvelger
Begynn nå å bygge MMR-eksempelvelgeren ved å bruke MaxMarginalRelevanceExampleSelector()-metoden som inneholder forskjellige parametere:
eksempelvelger = MaxMarginalRelevanceExampleSelector. fra_eksempler (eksempler ,
ÅpneAIEbeddings ( ) ,
FAISS ,
k = 2 ,
)
mmr_prompt = FewShotPromptTemplate (
eksempelvelger = eksempelvelger ,
example_prompt = example_prompt ,
prefiks = 'Gi antonymet til hver inngang' ,
suffiks = 'Inndata: {adjektiv} \n Produksjon:' ,
input_variables = [ 'adjektiv' ] ,
)
Trinn 4: Testing av MMR-eksempelvelgeren
Test MMR-eksempelvelgeren for maksimal marginalrelevans ved å kalle den i print()-metoden med inndata:
skrive ut ( mmr_prompt. format ( adjektiv = 'bekymret' ) )
Trinn 5: Bruke SemanticSimilarity
Dette trinnet bruker SemanticSimilarityExampleSelector()-metoden og bruker deretter FewShotPromptTemplate()-metoden som støttes av LangChain:
eksempelvelger = SemantiskSimilarityExampleSelector. fra_eksempler (eksempler ,
ÅpneAIEbeddings ( ) ,
FAISS ,
k = 2 ,
)
lignende_ledetekst = FewShotPromptTemplate (
eksempelvelger = eksempelvelger ,
example_prompt = example_prompt ,
prefiks = 'Gi antonymet til hver inngang' ,
suffiks = 'Inndata: {adjektiv} \n Produksjon:' ,
input_variables = [ 'adjektiv' ] ,
)
skrive ut ( lignende_ledetekst. format ( adjektiv = 'bekymret' ) )
Det handler om å bruke select by Maximal Marginal Relevance eller MMR i LangChain.
Konklusjon
For å bruke velgeren etter maksimal marginalrelevans eller MMR-eksempelvelgeren i LangChain, installer de nødvendige modulene. Deretter importerer du bibliotekene for å bygge eksempelsettet ved å bruke malen for inn- og utgangsspørsmål. Bygg MMR-eksempelvelgeren for å teste den ved å bruke MMR-eksempelvelgeren og FewShotPromptTemplate()-metoden for å få relevant utdata. Denne veiledningen har illustrert prosessen med å bruke select-by-MMR eksempelvelgeren i LangChain.