Este guia ilustrará o processo de uso do seletor de exemplo Select by Maximal Marginal Relevance no LangChain.
Como usar a seleção por relevância marginal máxima (MMR) em LangChain?
O seletor de exemplo Maximal Marginal Relevance é usado para extrair informações usando a similaridade de cosseno do prompt e do exemplo. A similaridade do cosseno é calculada após a aplicação dos métodos de incorporação aos dados e a conversão do texto em formato numérico.
Para aprender o processo de uso do seletor de exemplo MMR no LangChain, basta seguir as etapas listadas:
Etapa 1: instalar módulos
Inicie o processo instalando as dependências do LangChain usando o comando pip:
pip instalar langchain
Instale o módulo OpenAI para usar seu ambiente para aplicar o método OpenAIEmbedding():
pip instalar openai
Instale a estrutura FAISS que pode ser usada para obter a saída usando similaridade semântica:
pip instalar faiss-gpu
Agora, instale o tokenizer tiktoken para dividir o texto em partes menores usando o seguinte código:
pip instalar tiktoken
Etapa 2: usando bibliotecas e exemplos
A próxima etapa é importar bibliotecas para construir um seletor de exemplo MMR, FAISS, OpenAIEmbeddings e PromptTemplate. Após importar as bibliotecas, basta criar um conjunto de exemplos que forneça entradas e saídas para suas respectivas entradas em vários arrays:
de cadeia longa. Comandos . exemplo_seletor importar (MaxMarginalRelevanceExampleSelector ,
SemanticSimilarityExampleSelector ,
)
de cadeia longa. lojas de vetores importar FAISS
de cadeia longa. incorporações importar OpenAIEbeddings
de cadeia longa. Comandos importar Modelo FewShotPrompt , Modelo de prompt
exemplo_prompt = Modelo de prompt (
variáveis_de_entrada = [ 'entrada' , 'saída' ] ,
modelo = 'Entrada: {entrada} \n Saída: {saída}' ,
)
exemplos = [
{ 'entrada' : 'feliz' , 'saída' : 'triste' } ,
{ 'entrada' : 'alto' , 'saída' : 'curto' } ,
{ 'entrada' : 'energético' , 'saída' : 'letárgico' } ,
{ 'entrada' : 'ensolarado' , 'saída' : 'sombrio' } ,
{ 'entrada' : 'ventoso' , 'saída' : 'calma' } ,
]
Etapa 3: Construindo o Seletor de Exemplo
Agora, comece a construir o seletor de exemplo MMR usando o método MaxMarginalRelevanceExampleSelector() contendo diferentes parâmetros:
exemplo_seletor = MaxMarginalRelevanceExampleSelector. de_exemplos (exemplos ,
OpenAIEbeddings ( ) ,
FAISS ,
k = 2 ,
)
mmr_prompt = Modelo FewShotPrompt (
exemplo_seletor = exemplo_seletor ,
exemplo_prompt = exemplo_prompt ,
prefixo = 'Dê o antônimo de cada entrada' ,
sufixo = 'Entrada: {adjetivo} \n Saída:' ,
variáveis_de_entrada = [ 'adjetivo' ] ,
)
Etapa 4: testando o seletor de exemplo MMR
Teste o seletor de exemplo MMR de Relevância Marginal Máxima chamando-o no método print() com a entrada:
imprimir ( mmr_prompt. formatar ( adjetivo = 'preocupado' ) )
Etapa 5: usando semelhança semântica
Esta etapa usa o método SemanticSimilarityExampleSelector() e, em seguida, usa o método FewShotPromptTemplate() que é suportado pelo LangChain:
exemplo_seletor = SemanticSimilarityExampleSelector. de_exemplos (exemplos ,
OpenAIEbeddings ( ) ,
FAISS ,
k = 2 ,
)
prompt_semelhante = Modelo FewShotPrompt (
exemplo_seletor = exemplo_seletor ,
exemplo_prompt = exemplo_prompt ,
prefixo = 'Dê o antônimo de cada entrada' ,
sufixo = 'Entrada: {adjetivo} \n Saída:' ,
variáveis_de_entrada = [ 'adjetivo' ] ,
)
imprimir ( prompt_semelhante. formatar ( adjetivo = 'preocupado' ) )
Trata-se de usar a seleção por Relevância Marginal Máxima ou MMR em LangChain.
Conclusão
Para usar o seletor de exemplo select by Maximal Marginal Relevance ou MMR no LangChain, instale os módulos necessários. Depois disso, importe as bibliotecas para construir o conjunto de exemplos usando o modelo de prompt de entrada e saída. Construa o seletor de exemplo MMR para testá-lo usando o seletor de exemplo MMR e o método FewShotPromptTemplate() para obter resultados relevantes. Este guia ilustrou o processo de uso do seletor de exemplo select-by-MMR no LangChain.