Integrar LLM no Spring Boot com LangChain4j
Como conectar modelos IA de linguagem natural (LLMs) em projetos Java, usando Spring Boot, API OpenAI e rodando offline com Ollama. A integração de IA nunca foi tão
Por que isso é importante
Integrar LLM Spring Boot com LangChain4j (ou Spring AI): interface única de chat/completions, backends OpenAI cloud e Ollama local, prompts versionados, timeout e circuit breaker. Sync só em chat curto; async/fila sob carga — API keys só em secret manager.
Leitura relacionada: curso grátis de Spring Boot · curso de Java para iniciantes · aprenda isso no Spring · programar com IA sem perder a lógica · comparativo de AI coding tools.
O que mudou no cenário de Inteligência Artificial?
Para integrar LLM no Spring Boot hoje: escolha LangChain4j ou Spring AI, exponha um serviço de chat atrás de interface única e suporte OpenAI cloud + Ollama local com timeout e custo sob controle.
Atenção
O uso intensivo de LLMs pode exigir infraestrutura compatível, especialmente em
processamento local. Sempre avalie a capacidade do seu hardware antes de usar modelos
grandes na sua máquina.
Entendendo LLMs: O que são e como funcionam?
LLM (Large Language Model) gera texto a partir de prompts; na app Java você chama completions/chat via SDK ou LangChain4j — com limites, retries e sem vazar secrets nos logs.
Info extra
LLMs utilizam processamento paralelo, explorando GPUs com arquitetura SIMMD (Single
Instruction, Multiple Data), aumentando muito a velocidade na manipulação de vetores e
matrizes.
Modelos de Engenharia de Prompt: Básico, Intermediário e Avançado
Ao integrar LLMs na sua aplicação, você pode optar por diferentes estratégias de prompt.
No modo básico, não há contexto: cada mensagem gera uma resposta independente. O modo
intermediário inclui dados adicionais para respostas mais precisas. Já o avançado
implementa histórico de conversas (memória de chat), permitindo à IA lembrar e
referenciar interações anteriores, tornando a experiência muito mais fluida.
Dica de uso
Modelos com memória de chat são indicados para chatbots, sistemas de suporte e
assistentes que precisam manter contexto entre diferentes perguntas dos usuários.
Integrando LLMs no Spring Boot com LangChain4j
LangChain4j no Spring Boot: configure o model (OpenAI ou Ollama), injete o serviço e versionar prompts. Alternativa: Spring AI no ecossistema Spring — escolha pelo time, sem benchmark inventado.
Atenção
Sempre utilize as versões atualizadas das dependências no seu projeto para garantir
compatibilidade e segurança, especialmente ao trabalhar com IA generativa.
Tutorial passo-a-passo: Integrando OpenAI GPT no seu projeto
Siga o guia prático abaixo para colocar seu sistema Java Spring Boot conversando com a
API do ChatGPT (OpenAI):
- Passo 1: Crie um projeto pelo Spring Initializr com Java 17+ e adicione as dependências spring-boot-starter-web e spring-boot-devtools .
- Passo 2: Inclua as dependências do langchain4j copiando do repositório oficial para seu pom.xml.
- Passo 3: Gere uma chave de API na plataforma OpenAI , localize a área de API Keys e adicione ao seu application.properties :
langchain4j.openai.api-key=YOUR_KEY - Passo 4: Configure parâmetros como modelo, base de URL e opções
da API no application.properties , definindo modelo (ex:
gpt-4o), temperatura, log etc. - Passo 5: Crie um REST Controller e exponha uma
rota/chatpara enviar mensagens e receber respostas da LLM.
Problemas comuns: Erros de cota e custos
APIs da OpenAI e outros provedores normalmente exigem pagamento conforme uso. Se você
exceder sua cota gratuita, verá erros como 429 "Too Many Requests". Para continuar, é
necessário assinar um plano ou adicionar pagamento, embora muitos provedores ofereçam
crédito de teste para novos usuários.
Erro comum
Se receber o erro 429 Too Many Requests , verifique a utilização da sua
API OpenAI na área de Billing e recarregue seus créditos.
Alternativa offline e gratuita: Rodando LLMs localmente com Ollama
Para quem deseja rodar modelos LLMs sem custos em nuvem e 100% offline, a ferramenta Ollama é uma solução poderosa. Com ela, é possível baixar e executar
modelos ajustes diretamente no computador, integrando via API local com as bibliotecas
Java.
- Passo 1: Baixe e instale o Ollama para seu sistema operacional
em ollama.com . - Passo 2: Abra o terminal/Prompt e execute o comando
ollama pull ollama3(ou outro modelo de sua preferência). - Passo 3: Inicie o Ollama e gere sua chave local, configurando
application.propertiescom o endpoint:langchain4j.openai.base-url=http://localhost:11434/v1e defina o
modelo desejado.
Atenção
Rodar LLMs localmente pode consumir muita RAM e processamento. Verifique os requisitos
para cada modelo em Ollama Library antes de iniciar.
Spring Boot: Expondo endpoints RESTfully para sua IA
Ao criar um Controller, exponha endpoints claros, como /chat , que recebam
prompts por parâmetro e retornem respostas da IA. Isso permite integrar facilmente
clientes web, mobile e automações, democratizando o uso da IA para diferentes
aplicações.
Testando sua API com Postman ou HTTP Request
Para simular requisições, utilize ferramentas como o Postman ou os próprios requests
HTTP via sua IDE (ex: comandos .http no IntelliJ). Envie GET para localhost:8080/chat?mensagem=Sua mensagem e analise as respostas geradas
pela IA, validando toda a integração.
Dica prática
Crie scripts de testes HTTP para automatizar cenários de interação e garantir que o
endpoint responde corretamente.
OpenAI na nuvem ou Ollama local
OpenAI (Cloud)
Processamento via API remota da OpenAI, ideal para alta disponibilidade
+ Prós
- • Escalabilidade imediata
- • Últimos modelos de ponta disponíveis
- • Infraestrutura gerenciada
− Contras
- • Custos variáveis
- • Requer conexão constante com internet
- • Depende da política e quota do provedor
Ollama (Local)
Execução dos modelos open source no seu próprio hardware
+ Prós
- • Zero custos recorrentes
- • Controle total dos dados e privacidade
- • Funciona offline
− Contras
- • Depende da sua infraestrutura
- • Limite em performance/modelo conforme hardware
Spring AI ou LangChain4j: quando escolher
Spring AI
Encaixa em shops já 100% Spring (Boot 3/4, auto-config, Observation)
+ Prós
- • First-class no ecossistema Spring
- • Auto-config e Observation naturais
− Contras
- • Menos portável fora do Spring
- • Curva se o time não é Spring-only
LangChain4j
Foco deste guia: @AiService, ChatModel e troca de provedores
+ Prós
- • @AiService com menos cerimônia
- • Troca OpenAI/Ollama mais direta
- • Útil multi-framework
− Contras
- • Menos “Spring nativo” que Spring AI
- • Você monta mais a higiene de prod
Critério prático: time só-Spring e quer “first-class Spring” → avalie Spring AI. Precisa de portabilidade de provedor e @AiService rápido → LangChain4j. Não há sponsor: escolha pela curva do time. Sem benchmarks inventados.
Uma interface, dois backends: OpenAI ou Ollama
Exponha ChatModel / @AiService atrás de um bean único; application.properties ou env escolhe base-url, api-key e modelo. O controller REST (/chat) não deve saber se o backend é cloud ou local.
Padrão: perfil spring.profiles.active=openai|ollama; openai.api.key só via env; ollama.base-url=http://localhost:11434. Em ambos: connect/read timeout, retry com teto (sem loop infinito em 429), e nunca logar a key. O caminho OpenAI e o caminho Ollama deste artigo devem convergir no mesmo endpoint.
Segredos, timeout e retries: higiene de produção
Chaves só em variáveis de ambiente / secret manager — nunca no repo. Timeouts curtos no client HTTP; retries com backoff e limite; trate 429 com jitter. Monitore tokens e custo por rota. Prefira endpoints REST desacoplados e documentados para trocar o provedor sem reescrever o front.
Boas práticas
Versionamento de endpoints, correlação de request-id nos logs e teto de max tokens por chamada evitam fatura surpresa e hangs em produção.
Checklist de Implementação
- Projeto Spring Boot criado e dependências adicionadas
- Langchain4j instalado e configurado
- API Key OpenAI ou endpoint local preenchido
- Controller REST exposto
- Modelo LLM testado com Postman ou HTTP Request
- Recursos de hardware avaliados se rodando localmente
- Práticas de segurança aplicadas
Fontes
Revisão em agosto de 2026. Integração LLM via LangChain4j + Spring Boot / Ollama muda com versões de starters e providers. Tutorial de padrão; valide dependências e segredos no seu ambiente.
Perguntas frequentes
Como integrar LLM (OpenAI ou Ollama) no Spring Boot?
Use client HTTP/SDK ou LangChain4j com prompts versionados, timeouts e circuit breaker. Exponha um serviço de chat/completions atrás de interface única — cloud ou Ollama local.
LangChain4j ou Spring AI para Boot?
Ambos funcionam. LangChain4j é comum em tutoriais OpenAI+Ollama; Spring AI encaixa no ecossistema Spring. Escolha pelo time e suporte — sem benchmark inventado.
Sync ou async na chamada ao LLM?
Chat curto pode ser sync com timeout. Para UX e carga, prefira async/fila. Nunca bloqueie threads de request sem necessidade.
Como controlar custo e segredo da API no Java?
API keys só em env/secret manager, limites por usuário, cache de respostas idempotentes e logs sem vazar prompt sensível.
Continue explorando
Perguntas frequentes
Como integrar LLM (OpenAI ou Ollama) no Spring Boot?
Use client HTTP/SDK ou LangChain4j com prompts versionados, timeouts e circuit breaker. Exponha um serviço de chat/completions atrás de interface única — cloud ou Ollama local.
LangChain4j ou Spring AI para Boot?
Ambos funcionam. LangChain4j é comum em tutoriais OpenAI+Ollama; Spring AI encaixa no ecossistema Spring. Escolha pelo time e suporte — sem benchmark inventado.
Sync ou async na chamada ao LLM?
Chat curto pode ser sync com timeout. Para UX e carga, prefira async/fila. Nunca bloqueie threads de request sem necessidade.
Como controlar custo e segredo da API no Java?
API keys só em env/secret manager, limites por usuário, cache de respostas idempotentes e logs sem vazar prompt sensível.
O que mudou no cenário de Inteligência Artificial?
Para integrar LLM no Spring Boot hoje: escolha LangChain4j ou Spring AI, exponha um serviço de chat atrás de interface única e suporte OpenAI cloud + Ollama local com timeout e custo sob controle.
Entendendo LLMs: O que são e como funcionam?
LLM (Large Language Model) gera texto a partir de prompts; na app Java você chama completions/chat via SDK ou LangChain4j — com limites, retries e sem vazar secrets nos logs.