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

Hvordan Bruges Select By Maximal Marginal Relevance Mmr I Langchain



LangChain er et modul, der kan bruges til at bygge sprogmodeller til at interagere med mennesker på naturlige sprog. Menneskene giver prompten i tekstformen, og modellen bruger en eksempelvælger til at udtrække output ved hjælp af forespørgslen. Eksempelvælgere bruges til at hente output baseret på input ved at vælge det nærmeste relevante eksempel på forespørgslen eller prompten.

Denne vejledning vil illustrere processen med at bruge eksempelvælgeren 'Select by Maximal Marginal Relevance' i LangChain.

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

Eksempelvælgeren Maximal Marginal Relevance bruges til at udtrække information ved hjælp af cosinus-ligheden mellem prompten og eksemplet. Cosinus-ligheden beregnes efter anvendelse af indlejringsmetoderne på dataene og konvertering af tekst til numerisk form.







For at lære processen med at bruge MMR-eksempelvælgeren i LangChain skal du blot gennemgå de anførte trin:



Trin 1: Installer moduler



Start processen ved at installere afhængighederne af LangChain ved hjælp af pip-kommandoen:





pip installer langkæde

Installer OpenAI-modulet for at bruge dets miljø til at anvende OpenAIEmbedding()-metoden:



pip installer openai

Installer FAISS-rammeværket, som kan bruges til at få output ved hjælp af semantisk lighed:

pip installer faiss-gpu

Installer nu tiktoken tokenizer for at opdele teksten i mindre bidder ved hjælp af følgende kode:

pip installer tiktoken

Trin 2: Brug af biblioteker og eksempler

Det næste trin er at importere biblioteker til at bygge en MMR-eksempelvælger, FAISS, OpenAIEmbeddings og PromptTemplate. Efter import af bibliotekerne skal du blot oprette et eksempelsæt, der giver input og output for deres respektive input i flere arrays:

fra langkæde. prompter . eksempelvælger importere (
MaxMarginalRelevanceExampleSelector ,
SemanticSimilarityExampleSelector ,
)
fra langkæde. vektorbutikker importere FAISS
fra langkæde. indlejringer importere OpenAIE-indlejringer
fra langkæde. prompter importere FewShotPromptTemplate , PromptTemplate

eksempel_prompt = PromptTemplate (
input_variables = [ 'input' , 'produktion' ] ,
skabelon = 'Input: {input} \n Output: {output}' ,
)

eksempler = [
{ 'input' : 'lykkelig' , 'produktion' : 'trist' } ,
{ 'input' : 'høj' , 'produktion' : 'kort' } ,
{ 'input' : 'energisk' , 'produktion' : 'sløv' } ,
{ 'input' : 'solrig' , 'produktion' : 'dyster' } ,
{ 'input' : 'blæsende' , 'produktion' : 'berolige' } ,
]

Trin 3: Byggeeksempelvælger

Begynd nu at bygge MMR-eksempelvælgeren ved hjælp af MaxMarginalRelevanceExampleSelector()-metoden, der indeholder forskellige parametre:

eksempelvælger = MaxMarginalRelevanceExampleSelector. fra_eksempler (
eksempler ,
OpenAIE-indlejringer ( ) ,
FAISS ,
k = 2 ,
)
mmr_prompt = FewShotPromptTemplate (
eksempelvælger = eksempelvælger ,
eksempel_prompt = eksempel_prompt ,
præfiks = 'Giv antonymet for hvert input' ,
suffiks = 'Input: {adjektiv} \n Produktion:' ,
input_variables = [ 'adjektiv' ] ,
)

Trin 4: Test af MMR-eksempelvælgeren

Test MMR-eksempelvælgeren Maksimal marginalrelevans ved at kalde den i print()-metoden med input:

Print ( mmr_prompt. format ( adjektiv = 'bekymret' ) )

Trin 5: Brug af SemanticSimilarity

Dette trin bruger metoden SemanticSimilarityExampleSelector() og bruger derefter FewShotPromptTemplate() metoden, der understøttes af LangChain:

eksempelvælger = SemanticSimilarityExampleSelector. fra_eksempler (
eksempler ,
OpenAIE-indlejringer ( ) ,
FAISS ,
k = 2 ,
)
lignende_prompt = FewShotPromptTemplate (
eksempelvælger = eksempelvælger ,
eksempel_prompt = eksempel_prompt ,
præfiks = 'Giv antonymet for hvert input' ,
suffiks = 'Input: {adjektiv} \n Produktion:' ,
input_variables = [ 'adjektiv' ] ,
)
Print ( lignende_prompt. format ( adjektiv = 'bekymret' ) )

Det handler om at bruge select by Maximal Marginal Relevance eller MMR i LangChain.

Konklusion

For at bruge select by Maximal Marginal Relevance eller MMR-eksempelvælgeren i LangChain skal du installere de nødvendige moduler. Importer derefter bibliotekerne for at bygge eksempelsættet ved hjælp af input- og outputpromptskabelonen. Byg MMR-eksempelvælgeren for at teste den ved at bruge MMR-eksempelvælgeren og FewShotPromptTemplate()-metoden for at få relevant output. Denne vejledning har illustreret processen med at bruge select-by-MMR eksempelvælgeren i LangChain.