De LLM à ação: como criar um agente de AI com Go e GigaChat
Por curiosidade, um desenvolvedor construiu um agente de AI em Go, usando LangChainGo, ferramentas, cadeias de prompts e integração com o GigaChat russo. O arti

Um desenvolvedor foi inspirado por uma palestra sobre agentes de IA e decidiu tentar construir um em Go. Não foi fácil, mas funcionou — agora ele compartilha sua experiência e explica como fazer uma aplicação Go não apenas gerar texto, mas pensar e agir.
Arquitetura: Como um Agente Escolhe Ações
Um agente de IA difere de um LLM padrão porque não é um gerador de texto, mas um sistema de tomada de decisão. Quando um usuário apresenta uma tarefa, o agente a analisa, seleciona uma ferramenta apropriada (busca, cálculo, chamada de API), a executa, obtém o resultado e continua pensando. Esta é a cadeia: receber tarefa → LLM escolhe passo → executar ferramenta → atualizar contexto → repetir até que a tarefa seja resolvida. O desafio é descrever corretamente as ferramentas no prompt para que o LLM entenda quando e qual usar. Descrição incorreta = agente escolhe a ferramenta errada e segue o caminho errado.
LangChainGo: Um Framework para Desenvolvedores Go
O desenvolvedor escolheu LangChainGo — uma ligação Go para LangChain, um framework para aplicações LLM. Ele pega o melhor da versão Python, mas funciona em Go, o que é importante para sistemas de produção. LangChainGo oferece:
- Cadeias de requisições (Chains) — templates para sequências de passos com LLMs
- Ferramentas (Tools) — funções que um agente pode chamar (busca, cálculo)
- Memory — contexto de conversa entre requisições do usuário
- MCP (Model Context Protocol) — um padrão para conectar ferramentas externas
- Suporte para vários LLMs — de OpenAI a modelos locais
A principal vantagem: você pode escrever código de produção em Go sem pular para Python. Isso significa implantação mais rápida, menos dependências, melhor desempenho.
Integração com GigaChat e MCP
Em vez da API OpenAI, o autor decidiu usar GigaChat — um LLM russo da Sber. Isso é mais conveniente para trabalhar com texto cirílico e dados locais, além de atender aos requisitos de conformidade. Conectar GigaChat via LangChainGo não era óbvio. A documentação tinha apenas exemplos para OpenAI. Ele teve que escrever um adaptador personalizado para que LangChainGo pudesse se comunicar com GigaChat: formato correto de requisição, tratamento de tokens, traduções de erros.
MCP, à primeira vista, parecia um protocolo complexo, mas revelou-se ser uma ideia simples: uma ferramenta é uma função que recebe uma requisição JSON e retorna uma resposta JSON.
"À primeira vista, parecia que o ecossistema Go para IA era mais fino que Python.
Na realidade, é apenas mais compacto — e isso é um plus."
Desafios e Lições
O primeiro problema: a cadeia de requisições quebra de forma não óbvia. Se o agente escolher a ferramenta errada, o contexto fica confuso e ele não voltará ao caminho correto. Ele teve que adicionar validação de prompts e lógica de fallback — se a primeira ferramenta não funcionar, tente outra.
O segundo: debugging. Quando um LLM pensa incorretamente, é difícil entender o porquê. Ele teve que registrar cada passo na cadeia, cada escolha de ferramenta, cada resultado. Sem isso, você está capturando erros às cegas.
O terceiro: integração de ferramentas personalizadas. MCP é bom no papel, mas quando você precisa integrar uma API interna ou uma ferramenta complexa — há trabalho extra. Ele teve que escrever um wrapper que transforma o resultado em algo que o LLM possa entender.
Por Que Isso É Importante
Para desenvolvedores Go, isso significa que agentes de IA não são mais apenas para desenvolvedores Python. LangChainGo torna possível incorporar um sistema inteligente em um serviço Go de produção. Isso significa sistemas rápidos que não apenas geram texto, mas resolvem problemas.