1

Fundamentos

Semana 1 D1 Agentic Architecture D2 Tool Design

Claude e o modelo de linguagem da Anthropic. Para o exame CCA, o foco nao esta nas capacidades genericas do modelo, mas em como usa-lo como motor de um sistema agentico.

A interacao basica com a API segue um padrao simples: voce envia uma mensagem e recebe uma resposta. Mas o verdadeiro poder aparece quando o modelo pode usar ferramentas para interagir com o mundo externo.

Conceito Central

A API do Claude retorna um stop_reason que indica se o modelo terminou (end_turn) ou se quer usar uma ferramenta (tool_use). Esta e a base de todo sistema agentico.

O modelo foi projetado para tomar decisoes sobre quais ferramentas usar e quando. Isso e chamado de model-driven decision-making — o modelo escolhe as ferramentas, nao uma arvore de decisoes pre-configurada.

O loop agentico e o conceito mais fundamental para o exame. Ele funciona assim:

  • Enviar request — Voce envia a mensagem do usuario (com historico e definicoes de tools) para a API
  • Inspecionar stop_reason — Se tool_use, o modelo quer executar uma ferramenta. Se end_turn, o modelo terminou.
  • Executar tools — Voce executa a ferramenta solicitada no seu ambiente
  • Retornar resultados — Os resultados da ferramenta sao adicionados ao historico da conversa para o proximo passo de raciocinio

O loop continua ate o modelo retornar end_turn. O modelo decide autonomamente quantas iteracoes sao necessarias.

Anti-patterns: Parsear linguagem natural para detectar terminacao. Colocar caps arbitrarios no numero de iteracoes. Checar o texto do assistant para saber se terminou. Todos esses padroes quebram a autonomia do agente.

Para o Exame

Sempre que uma questao perguntar "como o agente sabe quando parar", a resposta correta envolve stop_reason, nunca parsing de texto ou limites arbitrarios.

As descricoes das ferramentas sao o mecanismo primario pelo qual o modelo seleciona qual ferramenta usar. Isso e crucial para o exame.

Uma boa descricao de ferramenta deve incluir:

  • Formatos de input — Que tipo de dados a ferramenta aceita
  • Exemplos de uso — Queries tipicas que a ferramenta responde
  • Edge cases — Situacoes limites e como a ferramenta se comporta
  • Limites e boundaries — O que a ferramenta NAO faz
Armadilha comum: Descricoes ambiguas ou sobrepostas entre ferramentas causam misrouting — o modelo escolhe a ferramenta errada. Se duas ferramentas parecem fazer a mesma coisa, o modelo vai se confundir.

Quando o numero de ferramentas aumenta (ex: 18 vs 4-5), a confiabilidade da selecao cai drasticamente. Prefira poucos tools bem definidos.

Neste projeto, voce constroi um chatbot que consulta uma API externa usando uma ferramenta. O objetivo e praticar todos os fundamentos:

  • Definir uma ferramenta com descricao clara e parametros tipados
  • Implementar o loop agentico completo (enviar, inspecionar, executar, retornar)
  • Deixar o modelo decidir quando usar a ferramenta (model-driven)
  • Manter o historico da conversa entre iteracoes

Criterio de Sucesso

O chatbot deve funcionar sem nenhuma logica condicional para decidir quando usar a ferramenta. O modelo faz essa decisao sozinho via stop_reason = tool_use.

Este chatbot sera a base para os projetos das proximas camadas. Na Camada 2, voce adicionara saida estruturada e configuracao com CLAUDE.md.

Proxima camada

Camada 2 — Estrutura: CLAUDE.md, commands, skills, few-shot e JSON schemas. Transforme seu chatbot em um extrator de dados estruturados.

Camada 2