A empresa líder em inteligência artificial, OpenAI, lançou recentemente um documento prático intitulado "Um guia prático para construir agentes" ("A practical guide to building agents"). Este guia, com 34 páginas, visa fornecer às equipes de produto e engenharia o conhecimento necessário e as melhores práticas para construir seu primeiro sistema de agente. Seu conteúdo reflete as profundas percepções da OpenAI obtidas a partir de inúmeros casos de implantação reais de clientes.
Ao ler este guia, os desenvolvedores poderão compreender os conceitos centrais dos agentes, e aprender quando e como projetar, construir e implantar agentes com segurança.
O que é um agente?
O guia começa definindo claramente o que é um agente, enfatizando sua diferença fundamental em relação aos softwares tradicionais na forma como automatizam os fluxos de trabalho. Os softwares tradicionais visam simplificar e automatizar fluxos de trabalho iniciados pelo usuário, enquanto os agentes podem representar o usuário de forma altamente autônoma para concluir todo o fluxo de trabalho. Um fluxo de trabalho é definido como uma série de etapas necessárias para atingir um objetivo do usuário, como resolver um problema de atendimento ao cliente, reservar um restaurante, enviar alterações de código ou gerar um relatório. No entanto, aplicativos que simplesmente integram modelos de linguagem grandes (LLMs), sem utilizar o LLM para controlar a execução do fluxo de trabalho, como um simples chatbot ou classificador de sentimentos, não podem ser considerados agentes. Os verdadeiros agentes possuem características essenciais que lhes permitem representar as ações do usuário de forma confiável e consistente. Isso inclui o uso do LLM para gerenciar a execução do fluxo de trabalho e tomar decisões, corrigir seu próprio comportamento quando necessário e até mesmo interromper a execução e devolver o controle ao usuário em caso de falha. Além disso, os agentes podem acessar várias ferramentas para interagir com sistemas externos, selecionar dinamicamente as ferramentas apropriadas e operar dentro de limites de segurança claramente definidos.
Quando você deve construir um agente?
O guia destaca que construir um agente requer repensar como os sistemas tomam decisões e lidam com a complexidade. Diferentemente dos métodos tradicionais determinísticos e baseados em regras, os agentes são particularmente adequados para fluxos de trabalho onde os métodos tradicionais têm dificuldades. O guia usa o exemplo da análise de fraude de pagamentos para ilustrar a diferença: um mecanismo de regras tradicional é como uma lista de verificação, marcando transações com base em critérios predefinidos; um agente LLM é mais como um investigador experiente, capaz de avaliar o contexto, considerar padrões sutis e identificar atividades suspeitas mesmo na ausência de regras claras. Portanto, ao avaliar o valor de um agente, priorize os fluxos de trabalho que eram difíceis de automatizar no passado, especialmente nos seguintes três cenários:
- Decisões complexas: Fluxos de trabalho que envolvem julgamentos cuidadosos, exceções ou decisões dependentes do contexto, como aprovações de reembolso no atendimento ao cliente.
- Regras difíceis de manter: Sistemas que se tornaram difíceis de manter devido a um conjunto de regras extenso e complexo, tornando as atualizações caras ou propensas a erros, como a realização de revisões de segurança de fornecedores.
- Forte dependência de dados não estruturados: Cenários que envolvem a interpretação de linguagem natural, a extração de significado de documentos ou a interação com usuários por meio de diálogo, como o processamento de reivindicações de seguro residencial.
O guia enfatiza que, antes de decidir construir um agente, é essencial verificar se o caso de uso atende claramente a esses critérios; caso contrário, uma solução determinística pode ser suficiente.
Fundamentos do design de agentes
O guia detalha os três componentes principais da construção de agentes:
- Modelo (LLM): Impulsiona o raciocínio e a tomada de decisões do agente. O guia recomenda usar o modelo de melhor desempenho na fase de protótipo para estabelecer um benchmark e, em seguida, tentar usar modelos menores para otimizar o custo e a latência.
- Ferramentas: Funções externas ou APIs que o agente pode usar para executar ações. As ferramentas expandem as capacidades do agente por meio das APIs de aplicativos ou sistemas subjacentes. Para sistemas legados sem APIs, o agente pode depender de modelos de uso de computador para interagir diretamente com interfaces de usuário da web e de aplicativos. O guia classifica as ferramentas em três categorias principais: recuperação de dados (como consultar bancos de dados, ler arquivos PDF ou pesquisar na web), execução de ações (como enviar e-mails, atualizar registros de CRM) e orquestração (o próprio agente pode servir como ferramenta para outros agentes).
- Instruções: Diretrizes claras e limites de segurança que definem o comportamento do agente. Instruções de alta qualidade são essenciais para o agente, reduzindo ambiguidades e melhorando a qualidade das decisões. O guia fornece melhores práticas, como o uso de documentação existente, a decomposição de tarefas em etapas menores, a definição de ações claras e a captura de casos de borda.
O guia também apresenta brevemente o conceito de orquestração, que consiste em combinar componentes básicos para executar fluxos de trabalho de forma eficiente. Os padrões de orquestração são principalmente sistemas de agente único (um único agente equipado com ferramentas e instruções executa o fluxo de trabalho em um loop) e sistemas de múltiplos agentes (a execução do fluxo de trabalho é distribuída entre vários agentes coordenados). Os sistemas de múltiplos agentes podem ser divididos em modo de gerenciamento (um agente central de "gerenciamento" coordena vários agentes especializados por meio de chamadas de ferramentas) e modo descentralizado (vários agentes funcionam como pares, transferindo tarefas entre si com base em suas áreas de especialização).
Limites de segurança
O guia enfatiza a importância dos limites de segurança para gerenciar riscos de privacidade de dados e riscos de reputação. Os desenvolvedores devem definir limites para os riscos identificados e adicionar limites adicionais à medida que novas vulnerabilidades são descobertas. Os limites de segurança devem ser combinados com protocolos robustos de autenticação e autorização, controle de acesso rigoroso e medidas padrão de segurança de software, formando um mecanismo de defesa de várias camadas. O guia lista vários tipos de limites de segurança, incluindo classificador de relevância (para garantir que as respostas estejam dentro do esperado), classificador de segurança (para detectar entradas inseguras), filtro PII (para evitar a exposição de informações de identificação pessoal), auditoria (para registrar o comportamento do agente), medidas de segurança de ferramentas (para avaliar e controlar os riscos das ferramentas), proteções baseadas em regras (como listas negras, limites de comprimento de entrada) e validação de saída (para garantir que as respostas estejam alinhadas com os valores da marca). O guia também descreve como definir limites de segurança no Agents SDK e destaca a importância da intervenção humana como garantia crucial, especialmente nos estágios iniciais de implantação, para identificar falhas e casos de borda.
Resumo e links de recursos
O guia conclui que os agentes marcam uma nova era na automação de fluxos de trabalho, pois são capazes de raciocinar sobre ambiguidades, executar ações em várias ferramentas e lidar com tarefas de várias etapas com alto grau de autonomia. A chave para construir agentes confiáveis reside em uma base sólida (modelo, ferramentas e instruções), um padrão de orquestração apropriado e limites de segurança essenciais. O guia incentiva os usuários a começar pequeno e expandir gradualmente as capacidades do agente por meio da validação com usuários reais. Finalmente, o guia fornece links para mais recursos, como a plataforma OpenAI API, OpenAI for Business e documentação para desenvolvedores.
O "Guia prático para construir agentes" da OpenAI oferece orientação abrangente e conselhos práticos para equipes que desejam explorar e construir sistemas de agentes, sinalizando uma aceleração da jornada de vários setores para um futuro mais inteligente e automatizado.
Link para o recurso do documento: https://cdn.openai.com/business-guides-and-resources/a-practical-guide-to-building-agents.pdf