Automatizando Tarefas do Dia a Dia com ChatGPT: Guia Prático para Devs com Python e Node.js
Introdução
A automação de tarefas repetitivas sempre foi um desafio para desenvolvedores que buscam produtividade e eficiência no dia a dia. Com o avanço das APIs baseadas em inteligência artificial, especialmente o ChatGPT da OpenAI, tornou-se possível simplificar fluxos de trabalho com poucas linhas de código. Neste artigo, compartilho soluções práticas que desenvolvi e testei usando Python e JavaScript (Node.js), voltadas a devs de todos os níveis, com foco em automatizar tarefas comuns como resumos, geração de e-mails e extração de dados estruturados.
Resumo (Abstract)
Neste artigo, exploro como a API do ChatGPT pode ser utilizada para automatizar tarefas comuns enfrentadas por desenvolvedores e equipes técnicas, como: resumir textos longos, padronizar registros, gerar rascunhos de e-mails e extrair dados estruturados em formato JSON a partir de texto livre. A abordagem é totalmente prática e baseada em exemplos reais com Python e JavaScript (Node.js), além de contemplar boas práticas como uso de streaming, outputs estruturados e function calling. O artigo culmina em um mini-projeto plug-and-play que demonstra o potencial da integração entre linguagem natural e automação de fluxos operacionais.
Tecnologias: ChatGPT (OpenAI API), Python, Node.js
Nível: Iniciante a Intermediário
Índice
- Por que automatizar com ChatGPT
- Setup rápido (Python e Node.js)
- Exemplo 1: Sumarizar e padronizar texto (Python)
- Exemplo 2: Gerar e-mail a partir de tópicos (Node.js)
- Exemplo 3: Extrair dados estruturados em JSON (Python)
- Exemplo 4: Encadear tarefas com Function Calling (Node.js)
- Mini-projeto final: Inbox-to-Insights
1. Por que automatizar com ChatGPT <a name="1"></a>
Automatizar com ChatGPT permite transformar entradas não estruturadas em saídas úteis, organizadas e acionáveis. Alguns benefícios diretos:
- Redução de tempo com tarefas repetitivas (resumos, rascunhos, padronizações).
- Geração consistente de conteúdo (tom, estrutura e completude).
- Integração fluida com CLIs, agendadores (CRON), webhooks e automações.
- Facilidade para orquestrar fluxos com múltiplas etapas.
2. Setup rápido <a name="2"></a>
✅ Ambiente Python
pip install openai
from openai import OpenAI
client = OpenAI() # Lê OPENAI_API_KEY do ambiente
✅ Ambiente Node.js (ESM)
npm install openai
import OpenAI from "openai";
const client = new OpenAI(); // usa process.env.OPENAI_API_KEY
Dica: Crie a variável de ambienteOPENAI_API_KEY
em.env
ou diretamente no sistema.
3. Exemplo 1 — Sumarizar e padronizar texto (Python) <a name="3"></a>
💼 Caso de uso: resumos executivos
from openai import OpenAI
client = OpenAI()
TEMPLATE = """Você é um assistente que padroniza resumos executivos.
Formate a saída assim:
- Contexto:
- 3 Principais achados:
- Riscos:
- Próximos passos (até 5 itens, numerados):
"""
texto_longo = open("relatorio.txt", "r", encoding="utf-8").read()
resp = client.responses.create(
model="gpt-5.1-mini",
input=f"{TEMPLATE}\n---\nConteúdo:\n{texto_longo}"
)
print(resp.output_text)
4. Exemplo 2 — Gerar rascunho de e-mail a partir de tópicos (Node.js) <a name="4"></a>
💼 Caso de uso: transformar bullets em e-mail
import OpenAI from "openai";
const client = new OpenAI();
const bullets = [
"Agradecer reunião de ontem sobre integração",
"Anexar documentação da API",
"Sugerir próxima call 26/08 às 10h",
"Assinar como seunome, curso"
];
const prompt = `Escreva um e-mail breve e profissional em PT-BR.
Tom: cordial e direto.
Bullets: ${bullets.map(b => "- " + b).join("\n")}
Inclua assunto e corpo final.`;
const resp = await client.responses.create({
model: "gpt-5.1-mini",
input: prompt
});
console.log(resp.output_text);
5. Exemplo 3 — Structured Outputs (Python) <a name="5"></a>
💼 Caso de uso: extrair dados estruturados para planilhas ou APIs
from openai import OpenAI
client = OpenAI()
schema = {
"type": "object",
"properties": {
"cliente": {"type": "string"},
"prioridade": {"type": "string", "enum": ["baixa","média","alta"]},
"itens": {"type": "array", "items": {"type": "string"}},
"prazo_dias": {"type": "integer", "minimum": 0}
},
"required": ["cliente","prioridade","itens"]
}
texto = """
Pedido da ACME LTDA: precisamos de 200 etiquetas térmicas e 3 leitores de código.
Prioridade alta. Entregar ainda este mês, se possível.
"""
resp = client.responses.create(
model="gpt-5.1-mini",
input=f"Extraia para o JSON no schema abaixo:\n{texto}",
response_format={ "type": "json_schema", "json_schema": schema }
)
print(resp.output_parsed)
6. Exemplo 4 — Encadeamento com Function Calling (Node.js) <a name="6"></a>
import OpenAI from "openai";
const client = new OpenAI();
async function criarTarefa({ titulo, prazo }) {
return { ok: true, id: "T-987" };
}
const tools = [{
type: "function",
function: {
name: "criarTarefa",
description: "Cria uma tarefa no sistema",
parameters: {
type: "object",
properties: {
titulo: { type: "string" },
prazo: { type: "string", description: "YYYY-MM-DD" }
},
required: ["titulo"]
}
}
}];
const userInput = "Registrar tarefa: 'Enviar proposta para ACME' até 2025-08-26.";
const first = await client.responses.create({
model: "gpt-5.1-mini",
input: userInput,
tools
});
const call = first.output[0]?.content?.find(c => c.type === "tool_use");
if (call?.name === "criarTarefa") {
const result = await criarTarefa(call.input);
const followup = await client.responses.create({
model: "gpt-5.1-mini",
input: [
{ role: "user", content: userInput },
{ role: "tool", tool_call_id: call.id, content: JSON.stringify(result) }
]
});
console.log(followup.output_text);
} else {
console.log(first.output_text);
}
7. Mini-projeto final: Inbox-to-Insights <a name="7"></a>
🎯 Objetivo: transformar anotações soltas em três artefatos úteis
Fluxo:
- Entrada: arquivo
.txt
com texto livre. - Passo A (Python): gerar
resumo.md
. - Passo B (Node.js): gerar e-mail a partir do resumo.
- Passo C (Python): extrair JSON
{responsável, ação, prazo}
e salvar emacoes.json
.
Resultado: um pipeline completo com três saídas reutilizáveis para produtividade real.
Conclusão
Os exemplos apresentados demonstram como o ChatGPT, aliado a linguagens populares como Python e JavaScript, pode se tornar uma ferramenta poderosa para automação inteligente. A proposta vai além do simples uso de IA: ela mostra como estruturar saídas, integrar com funções reais e criar pipelines reutilizáveis. Acreditando no potencial transformador dessa tecnologia, este artigo é uma forma de inspirar outros devs a explorarem soluções que unam código, criatividade e linguagem natural.