37 pontos por ashbyash 2025-08-19 | Ainda não há comentários. | Compartilhar no WhatsApp

> # TL;DR
>
> - Ao construir agentes LLM/IA,
> - o princípio básico deve ser sempre a simplicidade, adicionando complexidade apenas quando necessário
> - é preciso "entender profundamente e então adotar frameworks", além de combinar e testar padrões de workflow e agentes (chaining, routing, paralelização, evaluator-optimizer etc.) de acordo com o ambiente real e o objetivo, e projetar, documentar e testar ferramentas (APIs) com cuidado.

1. Princípios de design de agentes LLM bem-sucedidos

  • Foco na simplicidade: implementações bem-sucedidas tendem fortemente a usar padrões simples e combináveis (compoundable), em vez de depender de frameworks complexos.
  • Adicionar complexidade só quando necessário: é mais eficiente projetar a estrutura básica da forma mais simples possível e introduzir complexidade apenas quando for realmente indispensável.
  • (Trecho original: "As implementações mais bem-sucedidas não dependiam de bibliotecas especiais nem de frameworks complexos... elas foram construídas com base em padrões simples, mas modulares e combináveis.")

2. Diferença conceitual entre workflows e agentes

  • Workflows: o LLM e as ferramentas processam seguindo rotas predefinidas (caminhos de código).
  • Agentes: o LLM gerencia dinamicamente as próprias tarefas e o uso de ferramentas por conta própria (o LLM é o tomador de decisão).
  • (Trecho original: "Nos workflows, o LLM e as ferramentas são orquestrados de acordo com caminhos de código predefinidos... nos agentes, o LLM instrui dinamicamente seu próprio processo e a forma de usar ferramentas")

3. Critérios para decidir quando adotar agentes

  • Métodos simples primeiro → complexidade gradual se necessário: comece com chamadas simples ao LLM, busca etc.; se isso não bastar, introduza gradualmente Workflows/Agents.
  • Quando previsibilidade/consistência é importante → workflows são mais adequados
  • Quando é necessária flexibilidade em larga escala e tomada de decisão guiada pelo modelo → agentes são mais adequados

4. Princípios para adoção de frameworks

  • Há várias ferramentas/frameworks, como LangGraph, Bedrock, Rivet e Vellum,
  • mas a recomendação é começar usando diretamente a API do LLM e adotar frameworks apenas quando necessário.
  • Ao usar frameworks, é essencial entender profundamente seu funcionamento interno (a abstração pode dificultar a resolução de problemas).
  • (Trecho original: "Recomendamos que os desenvolvedores comecem primeiro usando diretamente a API do LLM")

5. Workflows por padrão prático e exemplos

  • LLM expandido (Augmented LLM): adição de recursos embutidos de extensão, como busca, conexão com ferramentas e memória (o design detalhado da interface e a documentação são importantes).
  • Prompt chaining: dividir uma tarefa em várias chamadas ao LLM (etapas) para garantir clareza e precisão.
    • Ex.: geração de copy de marketing → tradução, rascunho de documento → revisão → redação
  • Routing: classificar a entrada e então encaminhá-la para o processamento ou ferramenta adequada
    • Ex.: roteamento por tipo de atendimento ao cliente, encaminhar apenas perguntas difíceis para um modelo de alto desempenho
  • Paralelização:
    • Sectioning: dividir o trabalho em várias subtarefas e processá-las ao mesmo tempo
    • Voting: tentar a mesma tarefa várias vezes para decidir o melhor resultado
    • Ex.: revisão de vulnerabilidades de código, automação de avaliação de LLMs
  • Orchestrator-Workers: um agente mestre distribui e integra subtarefas.
    • Ex.: em tarefas complexas de programação, distribuir em tempo real apenas as partes necessárias; coleta e integração de vários dados
  • Evaluator-Optimizer: um LLM gera a resposta, e outro LLM avalia essa resposta, fornece feedback e repete o processo de melhoria
    • Ex.: melhoria iterativa de resultados de tradução, coleta de informações complexas

6. Casos reais de aplicação na indústria

  • Suporte ao cliente: integração de chatbot + ferramentas, automação de tarefas com dados do cliente/pedidos/reembolsos, com um critério claro de sucesso baseado em "resolução do problema". Há também referências corporativas com cobrança baseada em uso.
  • Agentes de programação: iteração e melhoria com base em feedback de testes automáticos, comprovadas em benchmarks como SWE-bench. A área do problema e a qualidade do resultado podem ser medidas com clareza. Ainda assim, a revisão final sempre exige intervenção humana.

7. Dicas de engenharia de prompt para ferramentas (Apêndice 2)

  • Recomenda-se um formato fácil para o LLM usar e alocação suficiente de tokens
  • Descrever claramente a ferramenta (uso, exemplos, edge cases, definição de limites etc.)
  • Testar ⇒ melhorar os padrões reais de uso do modelo (usando workbench etc.)
  • Projetar no estilo poka-yoke para evitar até erros pequenos
  • (Trecho original: "Uma boa definição de ferramenta deve incluir exemplos de uso, edge cases, requisitos de formato de entrada e limites claros em relação a outras ferramentas.")

8. Princípios centrais

  • Manter a simplicidade (Keep it simple)
  • A transparência do processo de planejamento do agente é essencial
  • Documentação e testes claros de ferramentas e interfaces
  • Frameworks ajudam na velocidade inicial, mas é recomendável minimizar abstrações e manter controle direto

Ainda não há comentários.

Ainda não há comentários.