Voltar ao blog
PHPLaravelIA generativaintegraçãoarquitetura

Como integrar IA generativa em sistemas PHP e Laravel existentes

A maioria das empresas que chega até mim com vontade de “adicionar IA” não quer reconstruir nada. Tem um sistema que funciona há anos, que o time conhece, que está em produção, e a diretoria quer aproveitar o que já existe. A pergunta real é: como plugar IA nisso sem virar um canteiro de obras?

É a pergunta certa.

Porque a resposta errada, que eu ouço bastante do mercado, é “refatora tudo pra uma arquitetura moderna e aí você coloca IA”. Resolve, mas depois de seis meses de reescrita e um orçamento que a maioria das empresas não tem disponível. E na maior parte dos casos, não é necessário.

Sistemas PHP e Laravel com algum tempo de vida tendem a ter uma qualidade que raramente se fala bem: estrutura de dados. Décadas de registros de cliente, histórico de transação, log de evento. Esse dado é combustível pra IA. O sistema já fez a parte mais difícil sem saber.

O que perguntar antes de conectar qualquer API

Quando começo esse tipo de projeto, a primeira conversa é sobre o problema, não sobre como conectar a API. Onde exatamente no fluxo você quer que a IA atue? O que precisa mudar de “execução automática por regra” pra “execução com julgamento”?

Isso importa porque integração de IA generativa não é instalar um pacote. É identificar os trechos do processo onde texto livre, variação e interpretação entram em cena, e substituir a lógica hard-coded por uma chamada ao modelo. Se você não sabe apontar onde está esse trecho, a integração vai ser uma solução à procura de problema.

Sistemas mais antigos complicam isso de um jeito específico: o processo que você quer automatizar muitas vezes está enterrado numa sequência de condicionais que ninguém documenta há cinco anos. Antes de qualquer linha nova, você vai precisar entender o que aquele trecho realmente faz na prática, não o que deveria fazer segundo a documentação desatualizada. Já vi esse mapeamento demorar duas semanas e revelar que o processo que o time achava que fazia X na verdade fazia Y com exceções que ninguém lembrava de onde vinham. Às vezes esse diagnóstico já vale por si só.

Como a integração funciona na prática

Um sistema Laravel bem estruturado tem tudo que você precisa pra conversar com a API de qualquer provedor de IA. Tem cliente HTTP, tem fila pra processar chamadas assíncronas, tem containerização de serviço, tem retry nativo, tem timeout. A infraestrutura já existe.

O que você vai construir é uma camada que pega os dados do sistema, monta um contexto que o modelo consiga usar, faz a chamada e devolve o resultado de volta de um jeito que o resto do código consuma. Simples assim no esqueleto.

Na prática, a surpresa mais comum é a latência. Modelos de linguagem não respondem em milissegundos. Dependendo do tamanho do contexto e do modelo, você está falando em um a cinco segundos por chamada, às vezes mais. Se essa chamada entrou no ciclo síncrono de uma requisição web, o usuário vai esperar. A solução natural é usar fila e processar em background, mas isso muda a experiência: o resultado não aparece imediatamente, aparece quando o job terminar. Isso precisa de uma decisão de produto, não só de engenharia.

Aí vem a questão do contexto. Cada modelo tem limite de tokens, e você não vai passar o histórico inteiro de um cliente de dez anos pra um único prompt. Vai precisar decidir o que é relevante, extrair só isso e montar um contexto enxuto. Essa lógica de extração e montagem acaba virando um dos componentes mais críticos do sistema. É onde as coisas ficam interessantes, e também onde mais aparecem bugs que os testes em desenvolvimento não antecipam.

Prompt não é configuração. Muita equipe descobre isso tarde. Tratam o prompt como um texto que você escreve uma vez, coloca num arquivo de config e esquece. O prompt é parte da lógica de negócio. Quando o processo muda, o prompt precisa mudar junto. Quando o modelo por baixo é atualizado pelo provedor, o comportamento pode mudar sem aviso e sem changelog. Alguém precisa ser dono disso, ou o sistema vai degradar silenciosamente e você vai descobrir pela reclamação do usuário.

Por onde começar de verdade

Os casos que funcionam mais rápido têm contexto delimitado: classificar e-mails de suporte em categoria, extrair campos de formulário livre, resumir histórico longo pra quem não vai ler tudo. O modelo lida bem com variação nesses casos, você consegue medir o resultado com facilidade e o risco de erro não é catastrófico.

Sinceramente, o que diferencia uma integração que vai pra produção e fica de uma que fica no piloto eternamente é ter começado exatamente por esses casos. Um caso de uso que funciona em produção por noventa dias te ensina mais sobre como operar isso do que seis meses de planejamento. Você descobre onde o modelo falha de formas que os testes não anteciparam, o que precisa logar, o que precisa de fallback.

O que complica é quando você precisa de consistência absoluta ou quando o erro tem consequência direta. Raciocínio em cadeia sobre dados financeiros, decisão automatizada sem revisão humana. Dá pra chegar lá, mas vai precisar de mais instrumentação e muito mais gradualismo antes de tirar o humano do caminho.

O estado dos dados

Pois é. Aqui aparece um problema recorrente em sistemas mais antigos: os dados existem, mas não estão prontos pra ser usados como contexto de IA.

Campos de texto livre preenchidos por usuários ao longo de anos, com abreviações, com erros de digitação, com referências que fazem sentido só internamente. Logs que capturam o evento mas não o motivo. Histórico apagado parcialmente por alguma limpeza de banco que alguém fez há anos e ninguém documentou porque “a gente sabe o que é isso”.

Antes de integrar IA, você vai descobrir coisas sobre os seus próprios dados que talvez não queira saber. Esse diagnóstico faz parte do trabalho. E às vezes o valor real que surge de um projeto de integração de IA não é a IA em si. É ter finalmente mapeado e organizado uma base de dados que o sistema sempre teve mas nunca tratou direito.

Quando o dado está bom, a integração tende a ser muito mais simples do que parecia no início. Quando o dado está ruim, a IA vai deixar isso bem claro, muito mais rápido do que qualquer auditoria interna.


Gabriel Schunck está disponível para projetos de integração de IA em sistemas PHP e Laravel. Se o seu time está avaliando como levar IA pra um sistema existente, entra em contato pelo gabriels.dev.br.

Falar no WhatsApp