O DispatchMail é um assistente de e-mail de IA de código aberto que é executado em um computador local para ajudar os usuários a gerenciar seus e-mails. O projeto foi concebido com a ideia de fazer com que a IA atue como parceira colaborativa dos humanos no tratamento de e-mails. Ele faz isso conectando-se à conta de e-mail do usuário (no momento, o Gmail é compatível) e monitorando e processando e-mails com base em prompts (solicitações) definidos pelo usuário.A principal funcionalidade do DispatchMail é automatizar tarefas como categorização, arquivamento e geração de rascunhos de e-mails usando IA (atualmente por meio da API OpenAI). Ele fornece uma interface da Web executada localmente, na qual os usuários podem gerenciar e-mails e analisar rascunhos e instruções gerados por IA. Todos os dados são armazenados em um banco de dados SQLite local, garantindo a privacidade e a segurança dos dados do usuário. O projeto está atualmente em um estágio inicial de protótipo alfa e destina-se a desenvolvedores que desejam experimentá-lo e modificá-lo, e agradece o feedback e as contribuições da comunidade.
Lista de funções
- Processamento de correio eletrônico com IAProcessamento automático de e-mails com base em instruções definidas pelo usuário, conectando-se ao OpenAI.
- Interface local da WebAplicativo da Web: fornece um aplicativo da Web executado localmente para gerenciar caixas de entrada, rascunhos e comandos de IA.
- Regras de filtragem de correio eletrônicoOs usuários podem personalizar as regras de lista branca para controlar com precisão o intervalo de e-mails que a IA pode acessar e processar, e as regras podem ser baseadas no remetente, em palavras-chave de assunto ou em descrições de linguagem natural.
- Geração automática de rascunhosIA: a IA pode compor automaticamente rascunhos de respostas de e-mail com base em instruções.
- Processamento automatizado de correspondênciasCapacidade de rotular ou arquivar mensagens automaticamente.
- Armazenamento local de dadosConteúdo de e-mail, credenciais e configurações dos usuários são armazenados localmente em um banco de dados SQLite e não dependem de serviços de nuvem.
- Análise de profundidade do remetenteInformações detalhadas sobre o histórico do remetente podem ser pesquisadas usando um modelo de linguagem amplo.
Usando a Ajuda
O DispatchMail é um projeto de protótipo inicial para desenvolvedores e requer algum conhecimento técnico para ser instalado e executado com êxito. A seguir, as etapas detalhadas para instalação e uso.
preparação preliminar
Antes de iniciar a instalação, verifique se o sistema atende às seguintes condições:
- PythonVersão 3.8 ou superior é necessária.
- Node.jsVersão 16 ou superior é necessária para executar a interface da Web.
- Conta do GmailSua conta do Gmail deve ter a verificação em duas etapas (2FA) ativada.
- Chave da API da OpenAIVocê precisará de uma conta OpenAI e de gerar chaves de API, pois a funcionalidade de IA depende disso.
Processo de instalação
- Clonagem da base de código:
Abra um terminal (ferramenta de linha de comando) e usegit
para clonar o código do projeto do GitHub em seu computador local.git clone https://github.com/dbish/DispatchMail.git cd DispatchMail
- Execute o script de instalação:
O projeto fornece um script de instalação convenientesetup.py
Ele fará a maior parte do trabalho de configuração automaticamente.python setup.py
Esse script executa as seguintes ações:
- Instale todas as dependências do backend do Python.
- Inicializar o banco de dados SQLite local (
dmail.db
). - Crie um arquivo de configuração de amostra.
- Orienta você na configuração básica de sua conta.
- Voucher de configuração:
- Configuração das chaves da API da OpenAILocalize e abra o arquivo
web-app/api/credentials.py
Preencha sua chave de API da OpenAI.OPENAI_API_KEY = 'your-openai-api-key'
- Configuração de senhas de aplicativos do GmailCom a 2FA ativada, você não pode usar sua senha de login do Gmail diretamente. Você precisa gerar uma "Senha do aplicativo" especial para o DispatchMail.
- Visite a página de segurança de sua Conta do Google: https://support.google.com/mail/answer/185833
- Na seção "Application Passwords" (Senhas de aplicativos), selecione "Mail" como o aplicativo, selecione "Other (custom name)" (Outro (nome personalizado)) como o dispositivo e nomeie-o (por exemplo, "DispatchMail"). "DispatchMail").
- O Google gerará uma senha de 16 dígitos; copie-a imediatamente e guarde-a em um local seguro. Essa senha será usada nas configurações de conta subsequentes.
- Configuração das chaves da API da OpenAILocalize e abra o arquivo
Início dos serviços
O DispatchMail consiste em uma API de backend e uma interface de frontend, e você precisa iniciá-las separadamente.
- Opção A: usar um script de inicialização (recomendado)
O projeto oferece umstart.py
que inicia todos os serviços necessários de uma só vez.python start.py
- Opção B: iniciar o serviço manualmente
Se desejar um melhor controle ou depuração, é possível iniciá-lo manualmente. Você precisa abrir duas janelas de terminal.- Terminal 1: iniciando a API de back-end
cd web-app python api/api.py
Por padrão, a API de back-end é executada no servidor
http://localhost:5000
. - Terminal 2: iniciando a interface de front-end
cd web-app npm run dev
O servidor de desenvolvimento front-end executará
http://localhost:5173
.
- Terminal 1: iniciando a API de back-end
Uso
- Configuração de uma conta de caixa postal:
Depois que o serviço for iniciado, abra o arquivohttp://localhost:5173
. Você verá uma tela de configurações na qual poderá inserir seu endereço do Gmail, o endereço do servidor IMAP (imap.gmail.com
) e a senha de 16 dígitos do aplicativo que você acabou de gerar. - Configuração de regras de filtragem de correio eletrônico:
Na área de configurações da interface da Web, você pode configurar uma lista de permissões que determina quais e-mails podem ser processados pela IA. Isso impede que a IA processe todos os e-mails e protege sua privacidade. Você pode definir regras com base no endereço do remetente, palavras-chave no assunto do e-mail ou usando linguagem natural (por exemplo, "Processar somente e-mails de colegas"). - Prompts de IA personalizados (Prompt):
Essa é a parte mais central do DispatchMail. Você precisa informar à IA como analisar e processar seu e-mail.- Sugestão de leituraInstrua a IA sobre como ler e entender o conteúdo do e-mail. Por exemplo, você pode pedir à IA que julgue a urgência do e-mail, resuma os pontos principais do e-mail ou extraia as tarefas do e-mail.
- Rascunho de solicitaçãoInstrua a IA sobre como gerar um rascunho de resposta para você. Por exemplo, "Se o e-mail for um convite para uma reunião, gere uma resposta educada aceitando o convite".
- Processamento de correio:
Quando a configuração estiver concluída, o sistema buscará automaticamente novos e-mails de sua conta do Gmail. Os e-mails que atenderem às regras da lista de permissões serão enviados ao OpenAI para processamento. Após o processamento, você poderá ver os rótulos, resumos ou rascunhos de respostas gerados pela IA na interface da Web. Você pode revisar, modificar e enviar esses rascunhos.
cenário do aplicativo
- Classificação e resumo automático de correspondências
Para usuários que recebem um grande número de e-mails todos os dias, é possível configurar o DispatchMail para ler todos os novos e-mails, adicionar automaticamente tags com base no conteúdo (por exemplo, nome do projeto, relação com o remetente) e gerar resumos de uma frase para e-mails longos, a fim de ajudar os usuários a entender rapidamente o conteúdo principal dos e-mails e decidir sobre a prioridade de processamento. - Automação da resposta inicial
Para as equipes de suporte ao cliente ou de vendas, as regras podem ser definidas para permitir que a IA responda automaticamente às perguntas comuns dos clientes. Por exemplo, ao receber um e-mail sobre preços de produtos, a IA pode gerar automaticamente um rascunho de e-mail com um link para a lista de preços com base em uma palavra de prompt de rascunho predefinida, aguardando a revisão manual e, em seguida, enviá-lo com um clique. - Tarefas e extração de informações
Pesquisadores ou estudantes podem usar o DispatchMail para monitorar e-mails de notificação acadêmica inscritos. Os comandos de IA podem ser configurados para solicitar a extração de informações importantes dos e-mails, como data limite, local da conferência, assunto do artigo etc., e organizá-los em um formato fixo para que os usuários mantenham um registro uniforme. - Plataforma de experimentação de IA como desenvolvedor
Para os desenvolvedores que desejam aprender e explorar os aplicativos AI Agent, o DispatchMail oferece um ambiente de tempo de execução local completo. Os desenvolvedores podem modificar diretamente oagent.py
documentos, experimentando diferentes modelos de linguagem, adaptando a cadeia de raciocínio para IA ou integrando novas ferramentas, usando-a como um campo de testes ideal para o desenvolvimento de aplicativos de IA.
QA
- Esse programa é gratuito?
O projeto DispatchMail em si é de código aberto e gratuito. No entanto, ele depende da API da OpenAI para fornecer a funcionalidade de IA, portanto, você precisará pagar os custos incorridos pelo uso da API da OpenAI. - Meus dados de e-mail estão seguros?
Um dos excelentes recursos do projeto é que todos os dados são armazenados em um banco de dados SQLite em seu computador local, inclusive o conteúdo de seus e-mails e as credenciais da conta. Os dados não são carregados em nenhum servidor de nuvem de terceiros, garantindo assim a privacidade e a segurança. No entanto, você precisa ter cuidado para proteger os dados armazenados localmentecredentials.py
e arquivos de banco de dados. - Por que preciso usar a "senha do aplicativo" em vez da minha senha do Gmail?
Isso ocorre porque sua conta do Gmail tem a verificação em duas etapas (2FA) ativada, que é uma medida de segurança. As senhas de aplicativos são senhas de uso único que o Google fornece aos usuários que precisam fazer login em suas contas em aplicativos não oficiais, o que dá aos aplicativos acesso aos seus dados sem que você precise revelar sua senha mestra, aumentando assim a segurança. - Em que estágio o projeto se encontra atualmente? Ele pode ser usado em um ambiente de produção diária?
O projeto está atualmente em um estágio inicial de protótipo Alfa. Ele foi projetado principalmente para desenvolvedores que gostam de mexer com coisas, e a funcionalidade pode ser instável e não é recomendada para uso direto em um ambiente de produção significativo.