Kako koristiti odabir prema maksimalnoj marginalnoj relevantnosti (MMR) u LangChainu?

Kako Koristiti Odabir Prema Maksimalnoj Marginalnoj Relevantnosti Mmr U Langchainu



LangChain je modul koji se može koristiti za izgradnju jezičnih modela za interakciju s ljudima na prirodnim jezicima. Ljudi daju upit u tekstualnom obliku, a model koristi selektor primjera za izdvajanje izlaza pomoću upita. Selektori primjera koriste se za dohvaćanje izlaza na temelju ulaza odabirom najbližeg relevantnog primjera upitu ili upitu.

Ovaj će vodič ilustrirati postupak korištenja primjera selektora odabira prema maksimalnoj marginalnoj relevantnosti u LangChainu.

Kako koristiti odabir prema maksimalnoj marginalnoj relevantnosti (MMR) u LangChainu?

Selektor primjera maksimalne granične relevantnosti koristi se za izdvajanje informacija pomoću kosinusne sličnosti upita i primjera. Kosinusna sličnost izračunava se nakon primjene metoda ugrađivanja podataka i pretvaranja teksta u numerički oblik.







Da biste naučili postupak korištenja selektora primjera MMR-a u LangChainu, jednostavno prođite kroz navedene korake:



Korak 1: Instalirajte module



Pokrenite postupak instaliranjem ovisnosti LangChaina pomoću naredbe pip:





pip instalirati langchain

Instalirajte OpenAI modul da biste koristili njegovo okruženje za primjenu metode OpenAIEmbedding():



pip instaliraj openai

Instalirajte okvir FAISS koji se može koristiti za dobivanje rezultata pomoću semantičke sličnosti:

pip instaliraj faiss-gpu

Sada instalirajte tiktoken tokenizer za dijeljenje teksta u manje dijelove pomoću sljedećeg koda:

pip instaliraj tiktoken

Korak 2: Korištenje biblioteka i primjera

Sljedeći korak je uvoz biblioteka za izradu selektora primjera MMR-a, FAISS, OpenAIEmbeddings i PromptTemplate. Nakon uvoza biblioteka, jednostavno stvorite skup primjera koji daje ulaze i izlaze za njihove odgovarajuće ulaze u više polja:

iz langchain. upita . primjer_selektor uvoz (
MaxMarginalRelevanceExampleSelector ,
SemanticSimilarityExampleSelector ,
)
iz langchain. vektorske trgovine uvoz FAISS
iz langchain. ugradnje uvoz OpenAIEembeddings
iz langchain. upita uvoz FewShotPromptTemplate , PromptTemplate

primjer_prompt = PromptTemplate (
ulazne_varijable = [ 'ulazni' , 'izlaz' ] ,
šablona = 'Unos: {unos} \n Izlaz: {izlaz}' ,
)

primjeri = [
{ 'ulazni' : 'sretan' , 'izlaz' : 'tužan' } ,
{ 'ulazni' : 'visok' , 'izlaz' : 'kratak' } ,
{ 'ulazni' : 'energičan' , 'izlaz' : 'letargičan' } ,
{ 'ulazni' : 'sunčano' , 'izlaz' : 'sumoran' } ,
{ 'ulazni' : 'vjetrovito' , 'izlaz' : 'smiriti' } ,
]

Korak 3: Izrada izbornika primjera

Sada počnite graditi MMR primjer selektora pomoću metode MaxMarginalRelevanceExampleSelector() koja sadrži različite parametre:

primjer_selektor = MaxMarginalRelevanceExampleSelector. iz_primjera (
primjeri ,
OpenAIEembeddings ( ) ,
FAISS ,
k = 2 ,
)
mmr_prompt = FewShotPromptTemplate (
primjer_selektor = primjer_selektor ,
primjer_prompt = primjer_prompt ,
prefiks = 'Navedite antonim za svaki unos' ,
sufiks = 'Unos: {pridjev} \n Izlaz:' ,
ulazne_varijable = [ 'pridjev' ] ,
)

Korak 4: Testiranje izbornika primjera MMR-a

Testirajte primjer selektora maksimalne marginalne relevantnosti MMR pozivanjem u metodi print() s unosom:

ispisati ( mmr_prompt. format ( pridjev = 'zabrinut' ) )

Korak 5: Korištenje SemanticSimilarity

Ovaj korak koristi metodu SemanticSimilarityExampleSelector(), a zatim koristi metodu FewShotPromptTemplate() koju podržava LangChain:

primjer_selektor = SemanticSimilarityExampleSelector. iz_primjera (
primjeri ,
OpenAIEembeddings ( ) ,
FAISS ,
k = 2 ,
)
sličan_prompt = FewShotPromptTemplate (
primjer_selektor = primjer_selektor ,
primjer_prompt = primjer_prompt ,
prefiks = 'Navedite antonim za svaki unos' ,
sufiks = 'Unos: {pridjev} \n Izlaz:' ,
ulazne_varijable = [ 'pridjev' ] ,
)
ispisati ( sličan_prompt. format ( pridjev = 'zabrinut' ) )

To je sve o korištenju odabira prema maksimalnoj marginalnoj relevantnosti ili MMR-u u LangChainu.

Zaključak

Da biste koristili selektor primjera odabira prema maksimalnoj graničnoj relevantnosti ili MMR u LangChainu, instalirajte potrebne module. Nakon toga uvezite biblioteke za izradu skupa primjera pomoću predloška ulaznog i izlaznog odzivnika. Izgradite selektor primjera MMR-a da biste ga testirali pomoću selektora primjera MMR-a i metode FewShotPromptTemplate() kako biste dobili relevantne rezultate. Ovaj je vodič ilustrirao postupak korištenja primjera selektora odabira prema MMR-u u LangChainu.