Tato příručka bude ilustrovat proces použití příkladu selektoru select by Maximal Marginal Relevance v LangChain.
Jak používat výběr podle maximální marginální relevance (MMR) v LangChain?
Volič příkladu Maximální okrajová relevance se používá k extrahování informací pomocí kosinové podobnosti výzvy a příkladu. Kosinová podobnost se vypočítá po aplikaci metod vkládání do dat a převedení textu do číselné podoby.
Chcete-li se naučit proces používání selektoru příkladů MMR v LangChain, jednoduše projděte uvedené kroky:
Krok 1: Nainstalujte moduly
Spusťte proces instalací závislostí LangChain pomocí příkazu pip:
pip install langchain
Nainstalujte modul OpenAI, abyste mohli používat jeho prostředí pro aplikaci metody OpenAIEmbedding():
pip install openai
Nainstalujte rámec FAISS, který lze použít k získání výstupu pomocí sémantické podobnosti:
pip install faiss-gpu
Nyní nainstalujte tiktoken tokenizer pro rozdělení textu na menší části pomocí následujícího kódu:
pip nainstalovat tiktoken
Krok 2: Použití knihoven a příkladů
Dalším krokem je import knihoven pro vytvoření příkladu selektoru MMR, FAISS, OpenAIEmbeddings a PromptTemplate. Po importu knihoven jednoduše vytvořte vzorovou sadu, která poskytuje vstupy a výstupy pro jejich příslušné vstupy ve více polích:
z langchain. vyzve . example_selector import (MaxMarginalRelevanceExampleSelector ,
SemanticSimilarityExampleSelector ,
)
z langchain. vectorstores import FAISS
z langchain. vložení import OpenAIEmbeddings
z langchain. vyzve import FewShotPromptTemplate , PromptTemplate
example_prompt = PromptTemplate (
vstupní_proměnné = [ 'vstup' , 'výstup' ] ,
šablona = 'Vstup: {input} \n Výstup: {output}' ,
)
příklady = [
{ 'vstup' : 'šťastný' , 'výstup' : 'smutný' } ,
{ 'vstup' : 'vysoký' , 'výstup' : 'krátký' } ,
{ 'vstup' : 'energický' , 'výstup' : 'letargický' } ,
{ 'vstup' : 'slunný' , 'výstup' : 'ponurý' } ,
{ 'vstup' : 'větrný' , 'výstup' : 'uklidnit' } ,
]
Krok 3: Výběr příkladu budovy
Nyní začněte vytvářet vzorový selektor MMR pomocí metody MaxMarginalRelevanceExampleSelector() obsahující různé parametry:
example_selector = MaxMarginalRelevanceExampleSelector. z_příkladů (příklady ,
OpenAIEmbeddings ( ) ,
FAISS ,
k = 2 ,
)
mmr_prompt = FewShotPromptTemplate (
example_selector = example_selector ,
example_prompt = example_prompt ,
předpona = 'Uveďte antonymum každého vstupu' ,
přípona = 'Vstup: {přídavné jméno} \n Výstup:' ,
vstupní_proměnné = [ 'přídavné jméno' ] ,
)
Krok 4: Testování selektoru příkladů MMR
Otestujte ukázkový selektor MMR maximální marginální relevance jeho voláním v metodě print() se vstupem:
tisk ( mmr_prompt. formát ( přídavné jméno = 'ustaraný' ) )
Krok 5: Použití SemanticSimilarity
Tento krok používá metodu SemanticSimilarityExampleSelector() a poté používá metodu FewShotPromptTemplate(), která je podporována LangChain:
example_selector = SemanticSimilarityExampleSelector. z_příkladů (příklady ,
OpenAIEmbeddings ( ) ,
FAISS ,
k = 2 ,
)
podobná_výzva = FewShotPromptTemplate (
example_selector = example_selector ,
example_prompt = example_prompt ,
předpona = 'Uveďte antonymum každého vstupu' ,
přípona = 'Vstup: {přídavné jméno} \n Výstup:' ,
vstupní_proměnné = [ 'přídavné jméno' ] ,
)
tisk ( podobná_výzva. formát ( přídavné jméno = 'ustaraný' ) )
To je vše o použití výběru podle maximální marginální relevance nebo MMR v LangChain.
Závěr
Chcete-li v LangChain použít výběr podle maximální marginální relevance nebo příklad MMR, nainstalujte požadované moduly. Poté naimportujte knihovny a sestavte sadu příkladů pomocí šablony vstupní a výstupní výzvy. Sestavte vzorový selektor MMR a otestujte jej pomocí selektoru příkladu MMR a metody FewShotPromptTemplate(), abyste získali relevantní výstup. Tato příručka ilustruje proces použití příkladu selektoru select-by-MMR v LangChain.