Hvordan bruke Select by Maximal Marginal Relevance (MMR) i LangChain?

Hvordan Bruke Select By Maximal Marginal Relevance Mmr I Langchain



LangChain er en modul som kan brukes til å bygge språkmodeller for å samhandle med mennesker på naturlige språk. Menneskene gir ledeteksten i tekstformen, og modellen bruker en eksempelvelger for å trekke ut utdata ved å bruke spørringen. Eksempelvelgere brukes til å hente utdata basert på input ved å velge det nærmeste relevante eksemplet til spørringen eller ledeteksten.

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.