Pular para conteúdo

Aula 20 - Projeto Capstone: Sistema de Agente IA RAG Autônomo 🏆

Objetivo Pedagógico

Objetivo: Construção de um Agente de IA corporativo autônomo completo: integração com LLM via API, pipeline RAG com busca vetorial, protocolo MCP para execução de ferramentas e interface conversacional.


📑 1. Fundamentos Teóricos & Análise Técnica

O Projeto Capstone de Especialização em LLMs, MCP, Skills, RAG e Agentes representa o ápice do estado da arte em inteligência artificial moderna. O estudante é desafiado a projetar e implementar um Agente de Engenharia de Confiabilidade de Sites (SRE AI Agent) totalmente autônomo.

O sistema integra todos os pilares estudados na disciplina: 1. Pipeline RAG Corporativo: O agente consulta a documentação interna de manuais operacionais (Runbooks e Post-mortems) indexada em um banco vetorial para fundamentar diagnósticos. 2. Servidor de Ferramentas MCP: O agente possui permissão para inspecionar métricas de servidores, consultar logs de erro e verificar status de contêineres via ferramentas MCP. 3. Ciclo ReAct Multi-Passo: O agente raciocina sobre o incidente, planeja ações, executa ferramentas sequencialmente e sintetiza um plano de mitigação detalhado. 4. Guarda de Segurança e Alinhamento: Validação estrita de entradas para prevenção de ataques de injeção de prompt (Prompt Injection) e bloqueio de ações destrutivas sem aprovação humana (Human-in-the-Loop).

📐 Arquitetura Conceitual & Diagrama de Fluxo

graph TD
    Alert["Alerta de Incidente no Sistema"] --> Agent["SRE Autonomous Agent (ReAct)"]
    Agent --> RAG["Vector DB: Consulta Runbooks RAG"]
    Agent --> MCP["MCP Server: Ferramentas de Diagnóstico (Logs, CPU)"]
    MCP --> ServerInfra["Infraestrutura Real de Servidores"]
    Agent --> Human["Human-in-the-Loop (Aprovação de Mitigação)"]
    Human --> Action["Ação de Recuperação Executada!"]
    style Alert fill:#ffebee,stroke:#c62828
    style Agent fill:#fff3e0,stroke:#e65100
    style RAG fill:#e1f5fe,stroke:#01579b
    style MCP fill:#e8f5e9,stroke:#2e7d32
    style Action fill:#f3e5f5,stroke:#7b1fa2

🔍 Pilares e Diretrizes Técnicas

Nesta unidade, aprofundamos os seguintes conceitos fundamentais: - Autonomia com Supervisão (Human-in-the-Loop): Operações arriscadas exigem confirmação explícita de um engenheiro humano antes da execução. - Raciocínio Baseado em Evidências: O agente cita os logs específicos e as seções dos runbooks que justificam sua conclusão. - Resiliência contra Falhas de Ferramentas: Se uma ferramenta MCP retornar erro, o agente tenta caminhos alternativos de diagnóstico. - Arquitetura Extensível: Novas capacidades são adicionadas simplesmente registrando novos servidores MCP.


🛠️ 2. Implementação Prática em LLMs, RAG, MCP e Agentes Autônomos

Abaixo está a implementação técnica de referência, estruturada com padrões de engenharia de software e foco em robustez:

// agent_react_core.py (Núcleo do Agente Autônomo com Ciclo ReAct)
class AutonomousSREAgent:
    def __init__(self, llm_client, mcp_tools, rag_retriever):
        self.llm = llm_client
        self.tools = mcp_tools
        self.rag = rag_retriever
        self.max_steps = 5

    def resolve_incident(self, incident_description: str) -> str:
        # 1. Recupera runbook relevante via RAG
        runbook_context = self.rag.search(incident_description)

        history = [
            {"role": "system", "content": f"Você é um SRE Agent. Siga este runbook: {runbook_context}"},
            {"role": "user", "content": incident_description}
        ]

        # 2. Ciclo ReAct de Pensamento e Ação
        for step in range(self.max_steps):
            response = self.llm.generate(history, tools=self.tools)
            if not response.tool_calls:
                return response.content # Objetivo concluído!

            for tool_call in response.tool_calls:
                result = self.tools.execute(tool_call.name, tool_call.args)
                history.append({"role": "tool", "content": str(result)})

        return "Limite máximo de passos atingido. Solicitando intervenção humana." 

💡 Análise Passo a Passo do Código

  1. Integração RAG no System Prompt: Fundamenta a postura do agente nas diretrizes técnicas oficiais da empresa.
  2. Ciclo ReAct Controlado: O laço for step in range(self.max_steps) impede gastos descontrolados de tokens e execuções infinitas.
  3. Retorno de Resolução Estruturada: Entrega relatório completo com diagnóstico, evidências e plano de ação executado.

🎯 3. Próximos Passos & Sequência Didática