Bem -vindo à interface de bate -papo do Reddit Post Summarizer. Esse aplicativo baseado em streamlit permite que os usuários extraem e resumissem o conteúdo dos URLs do Reddit sem problemas e mantenham sessões de controle de qualidade. Esta é a minha primeira tentativa de usar LLMs com DBS Vector para qA, resumo e fins de ajuste fino.

O aplicativo inicia com uma interface de bate-papo fácil de usar. Os usuários podem inserir um URL do Reddit na caixa de pesquisa, e o sistema executa as seguintes etapas:
Validação da URL : O aplicativo verifica se o URL inserido pertence ao Reddit.
Integração da PRAW : Após a validação bem -sucedida da URL, o Python Reddit API Wrapper (PRAW) é empregado para extrair o conteúdo do Post Reddit. Isso inclui o auto -texto e os comentários associados à postagem.
Chunking e incorporação de dados : o auto -texto e comentários recuperados são divididos em segmentos menores e digestíveis (pedaços). Cada pedaço é então incorporado e as incorporações são armazenadas em um banco de dados vetorial, Pinecone. Esta etapa é essencial para a recuperação de dados eficientes e rápidos.
Após o processo de extração e incorporação, o aplicativo gera um resumo da postagem do Reddit usando um modelo de idioma (LLM), como o OpenAI GPT-3.5. O processo de resumo pode ser dividido nas seguintes etapas:
Geração de pedaços : Um pedaço de texto de tamanho adequado é gerado resumindo recursivamente os pedaços até se encaixar no limite do token do LLM.
Interação do modelo LLM : Um prompt de resumo é enviado ao modelo LLM, que posteriormente retorna um resumo conciso da postagem. Este resumo captura a essência do conteúdo do Reddit.
O aplicativo fornece uma interface de bate -papo na qual os usuários podem interagir com o sistema e fazer perguntas sobre a postagem do Reddit. A interface de bate -papo tem alguns recursos distintos:
Processamento de perguntas contextuais : Quando um usuário faz uma pergunta, o sistema incorpora a pergunta e pesquisa o banco de dados do vetor por similaridade de contexto. Ele busca o contexto relevante e o anexa à pergunta do usuário como parte do prompt.
Geração de respostas : Este prompt estendido é enviado ao modelo LLM, que produz uma resposta detalhada e com reconhecimento de contexto.
Modelo Fina de ajuste : para garantir que as respostas sejam no estilo Reddit, o modelo LLM pode ser ajustado com pares de perguntas e respostas do Reddit, oferecendo respostas que se alinham ao idioma da comunidade do Reddit.
Um dos recursos exclusivos do aplicativo é a capacidade dos usuários de escolher o modelo de idioma que desejam usar. Essa flexibilidade é facilitada por Langchain, uma ferramenta que permite que o aplicativo alterne perfeitamente entre diferentes modelos LLM de acordo com as preferências do usuário.
cp .env.example .env
docker build -t reddit-gpt .
docker run -d --env-file .env -p 8501:8501 reddit-gpt