Exatamente! O modelo possui informações sobre os produtos e diversas orientações de como ele deve responder e o também o que não responder!

Só que nisso você logo de cara esbarra com o "maior problema" de desenvolver um chatbot com LLM: Tamanho do contexto

Toda empresa que oferece serviços de IA como a OpenAI cobram você por tokens, ou seja, tamanho de prompt de entrada e saida. E para que você consiga "ensinar" um modelo sobre algo você precisa fazer um prompt e mante-lo disponível no contexto durante toda a conversa.

E porque preciso manter no contexto? Porque os modelos não mantém o contexto de conversa, ou seja, ele não sabe qual foi a sua primeira pergunta, eles simplesmente respondem a sua questão e pronto. Por exemplo:

Humano: Oi me chamo guilherme IA: Oi Guilherme, prazer em lhe conhecer Humano: Você sabe qual é meu nome? IA: Não sei!

Como resolve isso? A cada novo prompt você envia todo o contexto da conversa. Simples não?

Agora imagina você com um prompt inicial com suas instruções (no meu caso os detalhes de cada produto) + as interações do usuário? Facilmente uma sessão de chat pode chegar a 8, 9, 10, 15 mil tokens com poucas mensagens trocadas. Rapidamente uma fatura na OpenAI pode chegar a centenas de dólares.

E ai entram conceitos de vetores e embeddings só que fazer isso na mão é absurdamente trabalhoso e para nossa sorte existe algo chamado Langchain que é um framework de LLM feito originalmente em Python, mas já possui em JS, que tem várias abstrações

Tutorial exatamente pra chegar nesse resultado não tem, pelo menos não encontrei nada sobre, mas das diversas horas que eu consumi de conteúdo sobre vou deixar os links dos que achei mais relevante para meu caso de uso!

Playlist Langchain Erick Wendel - RAG na Prática

:-)