Criando uma cadeia RAG
Agora você pode reunir todos os componentes em seu fluxo de trabalho RAG! Você preparou os documentos e os ingeriu em um banco de dados Chroma para recuperação. Você criou um modelo de prompt para incluir os trechos recuperados do artigo acadêmico e responder às perguntas.
O modelo de prompt que você criou no exercício anterior está disponível como prompt_template
, um modelo OpenAI foi inicializado como llm
e o código para recriar seu retriever
foi incluído no script.
Este exercício faz parte do curso
Desenvolvimento de aplicativos LLM com LangChain
Instruções de exercício
- Crie uma cadeia LCEL para vincular
retriever
,prompt_template
ellm
para que o modelo possa recuperar os documentos. - Invoque a cadeia no endereço
'question'
fornecido.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
vectorstore = Chroma.from_documents(
docs,
embedding=OpenAIEmbeddings(api_key='', model='text-embedding-3-small'),
persist_directory=os.getcwd()
)
retriever = vectorstore.as_retriever(
search_type="similarity",
search_kwargs={"k": 3}
)
# Create a chain to link retriever, prompt_template, and llm
rag_chain = ({"context": ____, "question": ____}
| ____
| ____)
# Invoke the chain
response = ____("Which popular LLMs were considered in the paper?")
print(response.content)