Elder Moraes
1.17K subscribers
13 links
Ajudo devs sêniores, tech leaders e CTOs a tomarem melhores decisões no ecossistema de Java, cloud, arquitetura e IA
Download Telegram
Channel created
Fala, dev! Elder aqui.

A conversa sobre IA Generativa tem sido dominada pelo que os LLMs sabem.

A capacidade deles de processar grandes volumes de texto e responder a perguntas complexas é impressionante, mas para qualquer empresa, conhecimento por si só não basta. O verdadeiro valor está no que uma aplicação é capaz de fazer.

Ao expor funções essenciais do negócio como ferramentas seguras e padronizadas, os desenvolvedores podem capacitar agentes de IA a executar tarefas relevantes e geradoras de receita. É aqui que entra em cena o Model Context Protocol (MCP).

Eu falo mais a fundo sobre este assunto no meu último artigo, "The Universal Adapter for Enterprise AI: Mastering the MCP with Quarkus and Langchain4j". Lá eu mostro não apenas o que é MCP e pra que serve, mas também como você pode implementar tanto um MCP Server quanto um MCP Client.

Leia na íntegra aqui: https://eldermoraes.com/the-universal-adapter-for-enterprise-ai-mastering-the-mcp-with-quarkus-and-langchain4j
5
Fala, dev! Blz?!

Confesso que não fui um “early adopter” de IA. Acho que fui meio “tiozão” nessa história…

Não porque não visse valor ou algo assim. Muito pelo contrário.

Eu só não via mesmo o que aquela história toda tinha a ver comigo.

Mas isso foi no final de 2023. E eu estava errado. Muito errado. E não me arrependo, porque não tinha como ser diferente.

Só que… já estamos em 2025!

Meu grande objetivo com esta mensagem é um só: te ajudar responder à pergunta “o que dá pra fazer com IA, principalmente se eu sou um dev Java?”.

Se você tem dúvidas sobre isso, eu te convido a ler o artigo que eu publiquei recentemente.

Nele eu listei não um, não dois, não cinco, mas dez PROBLEMÔES do ambiente corporativo que você pode resolver usando Java e LLM ainda hoje.

Eu tenho certeza que ao menos um dos 10 problemas de lá estão acontecendo no seu projeto nesse exato momento. Então, quem sabe não é você que vai resolvê-lo?

Se eu fosse você, no mínimo daria uma olhada… só de curiosidade: https://eldermoraes.com/10-enterprise-ai-use-cases-java-developers-are-ready-to-build-today/
6
Fala, dev! Blz?!

O Rafael, um dos meus mentorados da Confraria Dev, fez um comentário intrigante no nosso Discord:

Parece que agora estão delegando tudo pra IA resolver…”.

Você já teve essa sensação por aí? Eu já, infelizmente…

Mas o contexto e a pergunta do Rafael era um pouco específico. Ele estava falando sobre a tal da Agentic AI. O assunto é um pouco extenso, e combinamos de falar com mais profundidade em uma sessão ao vivo do nosso grupo.

O lance é que, de fato, a era dos agentes na IA inaugura um novo mundo de possibilidades. O que até então era uma faceta passiva do LLM (você pergunta e ele responde), agora chega ao nível da IA tomar decisão sem te consultar.

(Não, nada a ver com Skynet. Muito mais inofensivo…)

Imagine que você tem um chatbot no aplicativo da sua empresa. Daí o cliente abre um atendimento e diz que ainda não recebeu a nota fiscal do pedido dele. O bot confirma alguns dados (como e-mail e CPF) e daí faz uma busca na base de pedidos. Encontra dois pedidos do cliente, e pede pra ele confirmar qual ele precisa da NF. O cliente escreve o número do pedido correto e o bot envia a nota fiscal. Encerra o atendimento com um “vai, Corinthians”!

Antes da era do Agentic AI, tudo isso já seria possível. Mas tudo teria que ser programado e teria um acoplamento forte no chatbot. Mas agora, tudo o que o agente precisa é:

- Saber qual serviço acessa a base de clientes
- Saber qual serviço acessa a base de pedidos
- Saber qual serviço envia notas fiscais
- Saber que o Corinthians é o campeão dos campeões

Tudo o que ele faz é chamar esses serviços, nada mais. Zero acoplamento, zero código especializado no agente.

E sim, é simples assim. Mas eu imagino que não pareça, por isso escrevi e publiquei um artigo sobre o assunto. Assim, se você não pôde estar no encontro da Confraria Dev com o Rafael e o restante da turma, você pode ver parte do conteúdo lá no meu blog.

Pra quem é javeiro, o leque de possibilidades que você tem com Quarkus e Langchain4j é absurdo. Cerca de 90% é feito com anotações. Toda a complexidade é resolvida pelo framework.

Eu gosto.. me julgue… 🙂

Leia aqui 👉: https://eldermoraes.com/the-modern-java-stack-for-agentic-ai-quarkus-and-langchain4j
🔥1
Fala, dev! Blz aí?!

Não sei pra você, mas pra mim era óbvio que a Open AI tinha algo a ver com o open source.

Afinal… open… open source… Open AI… você entendeu.

Mas não era bem assim. Muito pelo contrário…

Desde o início do ano passado pra cá, eu fiz dezenas de palestras no Brasil e no exterior rodando demos de Langchain4j integrado ao Open AI e sempre tinha que deixar claro que: “sim, estou pagando pra fazer isso”.

Pois bem, parece que eles finalmente resolveram fazer o óbvio se tornar óbvio mesmo, e lançaram o gpt-oss. Seu modelo open source!

E não é simplesmente mais um mero modelo. É o cérebro do que está por trás de todas as mudanças que eles vêm fazendo por conta do agentic AI (cujo tema já esteve em um artigo que publiquei outro dia), com features que não estão presentes em boa parte dos modelos abertos do mercado.

Então eu resolvi falar um pouco sobre isso em um artigo que publiquei recentemente.

Leia na íntegra 👉: https://eldermoraes.com/openai-went-open-source-what-gpt-oss-means-for-your-ai-development-plans

Vai por mim: essa notícia tem mais a ver com você do que você talvez imagine.
3
Fala, dev!

Um estudo recente do MIT divulgou um número no mínimo preocupante: cerca de 95% dos projetos com Gen AI estão falhando…

Como assim falhando?

Falhando. Deram ruim. Não rolaram. Deram zica. Foram pro vinagre.

E o pior não é isso: estima-se que corporações do mundo inteiro já investiram cerca de US$ 40 bilhões nessa parada… e apenas 5% conseguiram algum retorno.

É muito dinheiro indo pro ralo. Muito!

Esse relatório do MIT tem muita informação valiosa. Claro, principalmente em relação aos erros que muita gente está cometendo.

Só que tem algo que poucos estão olhando: tem também muita informação valiosa sobre 5% que estão se dando bem no meio desse caos.

Eu publiquei um artigo analisando esse relatório e trazendo exatamente essa perspectiva: o que a galera está fazendo de errado (pra você não errar também), e o que poucos estão fazendo certo (pra você aproveitar a oportunidade).

Dica: se você é um dev Java, você está em vantagem nesse cenário.

Confira 👉: https://eldermoraes.com/the-40-billion-ai-illusion-why-95-of-projects-fail-and-the-opportunity-for-java-developers
1
Já vi muita demo usando IA para escrever e-mails.

Eu mesmo já fiz isso algumas vezes!

Inclusive, eu costumo pedir para os participantes sugerirem palavras que farão parte de um poema e peço para algum LLM fazer o tal poema e enviar por e-mail.

Mas a verdade é que, só escrever textos divertidos não é o suficiente para nossos projetos corporativos. Ao menos na maioria das vezes…

E, embora criar “novos” conteúdos seja o pilar central de um LLM, a era dos agentes traz uma possibilidade ainda mais interessante: a de que o modelo tome ações e decisões também.

O mais legal disso é que dá pra fazer de um jeito realmente inteligente, e não algo que apenas “pareça” inteligente.

Eu postei um tutorial sobre isso, mostrando código e tudo mais.

Vai lá 👉: https://eldermoraes.com/how-to-send-emails-with-an-ai-agent-a-quarkus-and-langchain4j-tutorial
1
Eu aprendi uma coisa com meu amigo Bruno Souza, o Javaman.

Desenvolvedor não é pago pra escrever código, mas sim pra resolver problemas”.

Lendo assim, parece óbvio. Mas, uma vez que eu interiorizei esse conceito, mudou completamente a forma como encaro o meu trabalho.

Sim, eu gosto de Java. Sim, eu gosto de Quarkus. Sim, agora eu gosto também de Langchain4j. Mas tudo isso são ferramentas que uso para resolver problemas, e não coisas que sejam um fim em si mesmas.

O mesmo princípio eu uso para lidar com meus mentorados, com um pequeno ajuste: minha função é ajudá-los a resolver seus problemas. Esse é o problema que eu resolvo ao trabalhar com eles.

E o que isso tem a ver com esta mensagem?

É que outro dia eu publiquei um artigo ensinando a enviar e-mails usando agentes de IA. Nele, a gente customizava as informações do agente com os dados de negócio utilizando o Easy RAG, que faz RAG de um jeito ridiculamente simples. Porém, em memória.

Daí um mentorado meu lançou a pergunta: “Como eu faria isso usando um vector store?”. O que é uma pergunta pertinente visto que, provavelmente, com volumes de dados maiores e em ambientes corporativos, um RAG em memória não vai atender a contento.

Bom… sendo eu alguém interessado em ajudar meus mentorados a resolverem seus problemas… criei um novo tutorial/artigo para responder a pergunta dele!

Já está no ar e você pode ler aqui: https://eldermoraes.com/building-a-local-first-ai-knowledge-base-with-quarkus-langchain4j-and-ollama
1
Eu confesso: sou uma aficcionado por padrões.

Não apenas no meu trabalho como desenvolvedor, mas em tudo. Estou sempre à procura de padrões no meu dia a dia.

Muitas vezes até de forma inconsciente. Quando percebo, lá estou novamente tentando encontrar ou mesmo definir algum tipo de padrão.

(Seja na estrutura de pastas de um projeto, ou no modo como organizo a louça dentro da lava-louças).

A indústria de software foi e é largamente impactada e definida por padrões.

Fato é que há alguns movimentos nesse sentido em relação ao mundo da IA. E um deles eu tenho certeza que você ao menos já ouviu falar: Model Context Protocol, ou simplesmente MCP.

Semelhantemente ao que foi estabelecido com o HTTP, o MCP padroniza o modo de comunicação entre sistemas inteligentes.

Basicamente, de um lado temos uma aplicação server, que expõe para um LLM dados das mais diversas origens e, do outro lado, a aplicação client, que também está integrada ao LLM e poderá fazer uso dos dados expostos pelo server, a depender do contexto.

Se você pensou “Ei! Client-server… isso também foi um padrão que mudou a indústria de software”… você está certo.

Pensando em organizar os conceitos e fundamentos disso dentro do mundo Java, eu publiquei um artigo onde mostro não apenas o que é MCP e pra que serve, mas também como você pode implementar tanto um MCP Server quanto um MCP Client.

Está aqui: https://eldermoraes.com/the-universal-adapter-for-enterprise-ai-mastering-the-mcp-with-quarkus-and-langchain4j
3👍1
Fala, dev! Elder aqui.

Outro dia recebi uma notícia interessante, divulgada na newsletter oficial do Ollama: agora, eles liberaram uma API para construção de agentes que fazem buscas na internet


É claro que isso poderia ser feito de inúmeras maneiras até então, mas nenhuma delas era “pensada” para o uso específico de agentes de IA.

Curti!

Fui até o blog deles para ver mais informações sobre o assunto. Achei massa e simples de usar! Só tinha um problema: os exemplos deles eram apenas em Python e JavaScript.

Aí não!

Então eu mesmo assumi a tarefa de não apenas criar um exemplo legal em Langchain4j e Quarkus, mas também dar um pouco mais de contexto sobre o porque esse acesso a dados públicos na internet é importante, especialmente quando lidamos com o “knowledge cutoff” dos modelos pré-treinados.

Confere lá e me diz o que acha: https://eldermoraes.com/building-a-web-searching-agent-with-ollama-langchain4j-and-quarkus
3👏3
Em breve: uma conversa imperdível sobre DDD com Java

O Domain Driven Design é um dos temas mais citados no mundo da engenharia de software, mas poucos desenvolvedores realmente dominam sua aplicação no dia a dia.

Por isso, essa semana eu vou conversar com o Java Champion Otavio Santana, autor do novo livro Domain-Driven Design with Java, sobre como aplicar o DDD de forma clara, prática e alinhada ao negócio.

Falaremos sobre como os Bounded Contexts ajudam a reduzir o caos em sistemas distribuídos, como criar modelos de domínio ricos e expressivos, e por que o DDD estratégico é o ponto que separa a teoria da prática.

Quando: Sexta-feira, 07 de Novembro, 11:00 (Horário de Brasília)
Tema: DDD na Prática: Como Bounded Contexts Reduzem o Caos em Sistemas Distribuídos
Clique e ative o lembrete: https://youtube.com/live/Q_2svhogA8c?feature=share

Se você quer entender o DDD de verdade, direto com quem escreveu um livro inteiro sobre isso, coloque na sua agenda!
🔥41