Recuperação esparsa com BM25
Hora de testar uma implementação de recuperação esparsa! Você vai criar um retriever BM25 para fazer perguntas sobre um artigo acadêmico sobre RAG, que já foi dividido em partes chamadas chunks. Um modelo de chat da OpenAI e um prompt também foram definidos como llm e prompt, respectivamente. Você pode visualizar o prompt fornecido imprimindo-o no console.
Este exercicio faz parte do curso
Retrieval Augmented Generation (RAG) com LangChain
Instruções do exercicio
- Crie um retriever esparso BM25 a partir dos documentos armazenados em
chunks; configure-o para retornar5documentos na recuperação. - Crie uma cadeia de recuperação LCEL para integrar o retriever BM25 com o
llme opromptfornecidos.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# Create a BM25 retriever from chunks
retriever = ____
# Create the LCEL retrieval chain
chain = ({"context": ____, "question": ____}
| ____
| ____
| StrOutputParser()
)
print(chain.invoke("What are knowledge-intensive tasks?"))