Experiência

Jul 2025 — presente Atual

Cientista de Dados

FIT — Instituto de Tecnologia · Manaus, Brasil

  • Arquitetura multi-agente com LangGraph para análise de telemetria industrial e dados estruturados de produção.
  • RAG com FAISS correlacionando métricas em tempo real com logs históricos, reduzindo alucinações em diagnósticos de falhas.
  • MCP Servers em Python desacoplando acesso a dados (SQL/NoSQL) da lógica dos modelos.
  • Engenharia de contexto avançada: redução de 30–50% no consumo de tokens na AWS Bedrock.
  • Observabilidade completa via Langfuse (tracing, benchmarking e avaliação qualitativa em produção).
Nov 2024 — Mai 2025

Analista de Machine Learning

Venturus · Manaus, Brasil

  • Arquitetura RAG on-premise com LLMs locais (Llama quantizado) — zero exposição de dados a APIs externas.
  • Migração de pipelines lineares LangChain para sistemas stateful com LangGraph (memória, ramificações, recuperação de erros).
  • Observabilidade com LangSmith para tracing, debugging e evals em todo o fluxo generativo.
  • Busca semântica de alta escala com embeddings HuggingFace + FAISS sobre grandes corpora.
Fev 2021 — Fev 2024

Cientista de Dados

European Bioinformatics Institute (EMBL-EBI) · Cambridge, Reino Unido

  • Algoritmos de object tracking e processamento digital de sinais em Python/OpenCV para detecção automatizada de frequência cardíaca em vídeos de alta resolução.
  • Pipelines escaláveis em infraestrutura Linux/HPC para análise de imagem biológica em larga escala.
  • Publicação no journal Bioinformatics (Oxford Academic) — doi:10.1093/bioinformatics/btae664.
Jan 2016 — Jan 2021

Pesquisador Pós-Doutorado

INPA — Instituto Nacional de Pesquisas da Amazônia · Manaus, Brasil

  • Redes LSTM/RNN em TensorFlow/Keras para modelagem preditiva de séries temporais e classificação comportamental.
  • PCA e clustering para engenharia de features em dados biológicos de alta dimensionalidade.
  • Integração de sensores IoT com visão computacional em pipelines multimodais validados estatisticamente.
  • Publicação no periódico FACETS — doi:10.1139/facets-2023-0221.

Formação

Ph.D. Biologia Computacional INPA · 2011 – 2015
Mestrado Biologia Computacional INPA · 2004 – 2006
Bacharel Ciências Biológicas UNIARA · 1999 – 2003
Tecnólogo Ciência de Dados Estácio · 2024 – 2026
▸ demos & sistemas em produção

Highlight · Projeto recente

Agente que automatiza o trabalho de gerentes de manufatura

Orquestrador multi-agente em LangGraph que substitui rotinas manuais de gerentes industriais. Conversa em linguagem natural, escreve código Python sob demanda e executa de forma autônoma em sandbox isolado. Demo ao vivo →

Start
🤖 Orquestrador
🔍 Analista (ReAct)
📅 Scheduling (ReAct)
SchedulingGraph (StateGraph)
⚡ Gerar Código
🧪 Testar Sandbox
← Erro
🔧 Auto-Corrigir
↑ Retry
💾 Banco SQLite
End
langgraph_agent_runtime.log
> Selecione uma tarefa acima e clique em "Executar Agent Loop" para iniciar a simulação...
⤢ ampliar
graph TD User["Usuário"] subgraph Orch["Orquestrador"] OT["🤖 Orquestrador (LLM)"] end User --> OT OT -->|resposta via chat| User subgraph ANA["Sub-Agente Analista"] AT["🔍 Analista ReAct (LLM)"] end OT -->|delega analise| AT AT -->|dados e relatorios| OT subgraph SCH["Sub-Agente Scheduling"] ST["📅 Scheduler ReAct (LLM)"] end OT -->|gerencia agenda| ST subgraph SG["SchedulingGraph (StateGraph)"] SG1["⚡ Criar Tarefa (LLM)"] SG2["✓ Consultar Dados"] SG_G["⚡ Gerar Codigo (LLM)"] SG3["✓ Testar Sandbox"] SG_E["⚡ Editar Codigo (LLM)"] SG4["⚡ Corrigir Codigo (LLM)"] SG5["✓ Salvar SQLite"] SG6["✓ Retornar Status"] end SG1 -->|busca dados| SG2 SG2 -->|cria codigo| SG_G SG_G -->|testa sandbox| SG3 SG_E -->|testa sandbox| SG3 SG3 -->|erro retry| SG4 SG4 -->|retestar| SG3 SG3 -->|sucesso| SG5 SG5 -->|concluido| SG6 OT -->|criar agendamento| SG1 OT -->|editar agendamento| SG_E SG2 -->|solicita analise| AT AT -->|envia dados| SG2 DB[("mfg.db - SQLite")] SG5 -->|persiste script| DB ST -->|CRUD banco| DB SG6 -->|sucesso| OT subgraph DAEMON["Daemon (60s)"] RUNNER["⚙️ Daemon Runner"] end DB -->|executa pendente| RUNNER RUNNER -->|registra log| DB RUNNER -->|envia e-mails| User classDef default fill:#1E293B,stroke:#475569,stroke-width:1px,color:#F8FAFC; classDef agent fill:#312E81,stroke:#6366F1,stroke-width:1px,color:#E0E7FF; classDef agentllm fill:#312E81,stroke:#facc15,stroke-width:2px,color:#E0E7FF; classDef sg fill:#1e3a1e,stroke:#4ade80,stroke-width:1.5px,color:#bbf7d0; classDef sgllm fill:#1e3a1e,stroke:#facc15,stroke-width:2px,color:#bbf7d0; classDef storage fill:#0F2027,stroke:#0EA5E9,stroke-width:1px,color:#7DD3FC; classDef daemon fill:#0c1a2e,stroke:#38BDF8,stroke-width:1.5px,color:#7DD3FC; classDef user fill:#1a2535,stroke:#38BDF8,stroke-width:2px,color:#E0F2FE,font-weight:bold; class OT,AT,ST agentllm; class SG2,SG3,SG5,SG6 sg; class SG1,SG_G,SG_E,SG4 sgllm; class DB storage; class RUNNER daemon; class User user;

Live Demo · Padrão MCP + LLM

MCP Agent — Demonstração Real

4 ferramentas industriais expostas como MCP tools — o LLM decide qual chamar e com quais argumentos, o servidor executa e retorna dados dinâmicos de verdade.

Faça uma pergunta ao agente:

Tools expostas pelo servidor MCP:

query_oee_telemetry(line_id, timeframe_hours) get_machine_status(machine_id) list_production_lines() send_alert(message, level)
mcp_agent_runtime.log
// Clique num chip ou escreva uma pergunta e pressione "Executar via MCP Agent"…

Meus Projetos em Destaque

Agentes de IA — projetos recentes em produção

Demo Industry Dashboard

Demo Industry Dashboard

Demo de produção e inteligência para controle de manufatura, com agente conversacional que cria tarefas e monitora indicadores via chat.

Ver demo →

Acing Interviews

Acing Interviews

Plataforma de simulação de entrevistas com agente de IA — perguntas específicas ao cargo, feedback instantâneo (texto e voz) e scorecards personalizados.

Visitar o site →

Visão Computacional — trabalhos publicados

Fish Behaviour Detection

Fish Behaviour Detection

Análise de movimento e comportamento de peixes via Python, Jupyter e processamento de vídeo. Repositório com notebooks e scripts.

Ver no GitHub →

Artigo Bioinformatics

Publicação — Bioinformatics (Oxford)

Trabalho de análise e bioinformática publicado na revista Bioinformatics da Oxford Academic.

Ler artigo →

Vídeos Técnicos Produzidos

LangGraph, LangChain e IA agêntica na prática — canal no YouTube →

Como a arquitetura funciona
🤖

Orquestrador — recebe a mensagem do usuário e roteia para dois sub-agentes ReAct: Analista (análise ad-hoc, gráficos, PDFs, Excel) e Scheduling (CRUD de tarefas agendadas).

StateGraph determinístico — quando uma tarefa é criada, um grafo de estados escreve o código Python, testa em sandbox isolado e versiona. Auto-correção de até 3 tentativas em caso de erro.

⚙️

Daemon — processo background que verifica o banco a cada 60s e executa as tarefas agendadas de forma autônoma, sem intervenção humana.

💾

Infraestrutura — persistência em SQLite, respostas em streaming via SSE, observabilidade completa (tracing, evals) via Langfuse.

MCP Server vs API REST — qual a diferença?

API REST tradicional

  • Quem chama é seu código — você escolhe o endpoint e monta a requisição
  • Schema documentado para humanos (OpenAPI, README)
  • Resposta vai para o seu código, que decide o que fazer com ela
  • Integração manual a cada novo modelo ou fluxo

MCP Server

  • Quem chama é o LLM — ele lê o schema e decide sozinho qual tool usar e com quais argumentos
  • Schema exposto em tempo de execução via list_tools(), legível por máquina
  • Resposta vai direto ao contexto do modelo, que gera a resposta final
  • Um servidor, qualquer modelo compatível (Claude, Gemini, GPT…)
Nota sobre o transporte: Um MCP server de produção comunica via stdin/stdout (processo separado, uso local) ou SSE/HTTP (uso remoto/web), sempre com protocolo JSON-RPC 2.0 e handshake initialize → list_tools → call_tool. Este demo reproduz a lógica central — o LLM decidindo autonomamente qual tool invocar — sem o protocolo formal, pois stdio não é exposto diretamente ao browser.
Grafo Multi-Agente (LangGraph)