Lendo as cartas dos gestores com IA usando Python

O que os gestores de fundos de investimentos pensam sobre os mercados e sobre a economia? Todo mês, dezenas de gestores publicam suas cartas relatando sua visão, desempenho e outras informações relevantes para os cotistas. No entanto, ler estes relatórios pode facilmente tomar 1 dia inteiro ou mais de trabalho. Para economizar este tempo, podemos utilizar inteligência artificial e sumarizar os principais tópicos do documento em poucos segundos!

Neste artigo mostramos como usar um modelo LLM para ler e sumarizar as “Cartas do Gestor”, publicadas em fundos de investimento no Brasil. Em menos de 60 linhas de código, criamos uma aplicação completa em Python que pega um arquivo PDF da carta do gestor, processa os dados e usa inteligência artificial para sumarizar os pontos chave do texto.

Aprenda a coletar, processar e analisar dados na formação de Do Zero à Análise de Dados com Python.

Passo 01: bibliotecas de Python necessárias

Para criar o app, utilizaremos as seguintes bibliotecas no Python:

  • shiny para desenvolver o app/dashboard.
  • langchain para processar os dados e o prompt de LLM.
  • langchain_community para ler o PDF.
  • langchain_openai para usar a API do ChatGPT (OpenAI).
  • os para gerenciar chave de token da API da OpenAI.
  • pypdf para trabalhar com PDFs.

Certifique-se de ter todas as bibliotecas instaladas.

Para obter o código e o tutorial deste exercício faça parte do Clube AM e receba toda semana os códigos em R/Python, vídeos, tutoriais e suporte completo para dúvidas.

Passo 02: chave de autenticação da API da OpenAI

Para utilizar o modelo de inteligência artificial ChatGPT, é necessário obter uma chave de token na plataforma OpenAI (veja mais informações aqui).

Com a chave de token em mãos, defina uma variável de ambiente com nome OPENAI_API_KEY para armazenar a chave.

Atenção: a utilização da API da OpenAI não é gratuita. Verifique o site da empresa para mais informações.

Passo 03: interface visual do app/dashboard

Para simplificar o exemplo, vamos criar o app com um visual simples, contendo apenas:

  • Título do app
  • Descrição breve sobre a funcionalidade
  • Campo de texto para inserir o link do PDF
  • Painel para exibir o sumário do PDF gerado pela inteligência artificial

Tudo isso pode ser feito em cerca de 12 linhas de código utilizando a biblioteca Shiny.

Passo 04: conversão de PDF para texto

Para que a carta do gestor possa ser lida pela inteligência artificial, precisamos converter o conteúdo do arquivo PDF para o formato de texto. Fazemos isso da seguinte forma:

  • Definimos o componente Servidor do Shiny para implementar a lógica de funcionamento do app.
  • Definimos uma função reativa para ler o arquivo PDF informado pelo usuário através do link e converter para o formato de texto.

Passo 05: engenharia de prompt e modelo de inteligência artificial

Ainda no componente Servidor, iniciado no passo anterior, definimos qual será a instrução enviada para a inteligência artificial e qual modelo cumprirá esta tarefa. Estes procedimentos são realizados da seguinte forma:

  • Utilizamos o prompt a seguir para instruir o modelo de inteligência artificial a sumarizar o texto fornecendo uma breve descrição sobre o mesmo.
    Escreva um sumário do texto a seguir delimitado com 3 crases. Retorne sua resposta em 3 ou 5 marcadores com uma breve descrição dos pontos chave do texto.
    ```{TEXTO}```
    SUMÁRIO:
  • Definimos o gpt-3.5-turbo, da OpenAI, como modelo de inteligência artificial a ser utilizado.
  • Utilizamos o langchain para processar automaticamente o prompt e o texto, além de fazer a comunicação com a API da OpenAI para retornar a resposta do modelo.

Passo 06: execução e teste do app

Para rodar o app/dashboard localmente e testar o funcionamento com diferentes cartas do gestor, utilizamos o Shiny. A biblioteca se encarrega de unir as definições da interface e da lógica de servidor para gerar a dashboard que pode ser visualizada pelo navegador, conforme abaixo:

Conclusão

Neste artigo mostramos como usar um modelo LLM para ler e sumarizar as “Cartas do Gestor”, publicadas em fundos de investimento no Brasil. Em menos de 60 linhas de código, criamos uma aplicação completa em Python que pega um arquivo PDF da carta do gestor, processa os dados e usa inteligência artificial para sumarizar os pontos chave do texto.

Quer aprender mais?

Clique aqui para fazer seu cadastro no Boletim AM e baixar o código que produziu este exercício, além de receber novos exercícios com exemplos reais de análise de dados envolvendo as áreas de Data Science, Econometria, Machine Learning, Macroeconomia Aplicada, Finanças Quantitativas e Políticas Públicas diretamente em seu e-mail.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Deploy de modelos com Python + Shinylive + GitHub gastando ZERO reais

Colocar modelos em produção pode ser um grande desafio. Lidar com custos monetários, infraestrutura operacional e complexidades de códigos e ferramentas pode acabar matando potenciais projetos. Uma solução que elimina todos estes obstáculos é a recém lançada Shinylive. Neste artigo mostramos um exemplo com um modelo de previsão para o preço do petróleo Brent.

Como automatizar tarefas repetitivas usando Python? Um exemplo para largar o Excel

Manter relatórios diários com dados e análises atualizados é um desafio, pois envolve várias etapas: coleta de dados, tratamento de informações, produção de análises e atualização de relatório. Para superar este desafio algumas ferramentas como Python + Quarto + GitHub podem ser usadas para automatizar tudo que for automatizável. Neste artigo mostramos um exemplo com dados do mercado financeiro.

Criando um Dashboard de análise de Ações no Python

Um Dashboard é um painel de controle que consolida uma variedade de informações sobre um determinado objeto de estudo em um ou mais painéis. Ele simplifica significativamente o processo de análise de dados, oferecendo uma visão global e fácil de entender. Uma maneira simples de construir um Dashboard para acompanhar uma ação específica é utilizando duas ferramentas: Quarto e Python. Neste post, mostramos o resultado da criação de um Dashboard de Ação.

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.