Como dividir prompts gigantes para reduzir o desperdício de tokens de agentes
TuBrief 편집팀
2026년 3월 14일
0
Computing/Software원본 영상을 바탕으로 AI의 도움을 받아 작성했습니다. 원본 영상이 기준입니다.
커뮤니티의 다른 글
댓글 (0)
Log in to leave a comment
아직 작성된 글이 없습니다
원본 영상을 바탕으로 AI의 도움을 받아 작성했습니다. 원본 영상이 기준입니다.
Log in to leave a comment
아직 작성된 글이 없습니다
Uma estrutura monolítica que agrupa todos os tipos de diretrizes e ferramentas em um único prompt de sistema rapidamente mostra suas limitações. Se a conversa se estender um pouco, o agente esquecerá as instruções escritas no meio do prompt. Os custos de inferência dispararem devido ao reenvio redundante dezenas de milhares de tokens a cada solicitação, e você precisa esperar muito tempo até que o primeiro token apareça.
Na prática, esse problema é resolvido com uma estrutura de carregamento de contexto gradual baseada no padrão aberto agentskills.io. É um método de economizar tokens chamando apenas as habilidades apropriadas no momento necessário.
Os prompts de sistema monolíticos devem ser divididos com base em limites de domínio, permissões de execução de ferramentas e frequência de execução. Você deve manter três ou menos habilidades ativas simultaneamente em uma única sessão para evitar conflitos entre habilidades durante a busca por similaridade de embeddings.
Na parte superior do arquivo de habilidade separado, escreva um Frontmatter em YAML contendo um identificador usando apenas hifens, letras minúsculas em inglês e números, além do propósito de operação.
name: backend-api-generator
description: Generates Spring Boot REST API controller and service boilerplate code. Use when the user asks to create API endpoints, build REST controllers, or define DTO mappings for backend services.
when_to_use:
`
O processo de criação de uma estrutura de carregamento gradual é simples.
Substituir a estrutura monolítica que ocupava constantemente de 15.000 a 30.000 tokens por uma estrutura de carregamento tardio SKILL.md reduz o overhead inicial de tokens em mais de 90%. Com base nos dados de testes internos da Anthropic, é possível reduzir a latência p95 de 12% para 40% e economizar uma média de 29,6% no consumo de tokens por conversa.
Quando várias habilidades são carregadas em cadeia, as diretrizes da habilidade anterior frequentemente permanecem na sessão e distorcem a próxima tarefa. Para inspeções de alto risco ou tarefas com muitos logs gerados, o isolamento em nível de processo deve ser aplicado adicionando a configuração de ramificação de subcontexto (context: fork) no Frontmatter YAML.
`
O trabalho de definir claramente os contratos de dados de entrada e saída (Data Contract) também não pode ser omitido.
allowed-tools) nos metadados YAML para evitar a execução arbitrária de comandos Bash ou chamadas de rede indiscriminadas.`markdown
All responses must strictly adhere to the following JSON structure without markdown wrapping:
{
"status": "SUCCESS" | "FAILED",
"generated_files": [
{
"path": "string",
"content": "string"
}
],
"error_message": "string | null"
}
`
O isolamento em subprocessos impede que os logs de chamadas de ferramentas inundem a sessão principal. Como a sessão de conversa principal permanece limpa, a probabilidade de erros durante a troca de dados entre subagentes também diminui.
Se os requisitos forem vagos ou se os erros de chamada de ferramenta se repetirem, o agente cairá em um loop de tentativas infinitas. É o momento em que dezenas de dólares em custos de API são desperdiçados em poucos minutos. Incluir uma Lista de Verificação de Verificação Estática (Verification Checklist) passo a passo no corpo do arquivo de habilidade faz com que o agente execute verificações por conta própria antes de concluir a tarefa.
`markdown
Before declaring the task finished, you MUST sequentially execute the following verification checklist:
`
A criação de um disjuntor (Circuit Breaker) para interromper fisicamente o loop também é simples.
MAXIMUM_TOOL_CALL_LIMIT: 3) no topo da habilidade.`markdown
[SKILL EXECUTION HALTED]
Skill Name: backend-api-generator
Failure Reason: [Brief error description]
Attempts Made: [Number of retries]
Suggested Action: [Action required by backend developer]
`
É mais seguro aplicar a opção disable-model-invocation: true em tarefas perigosas, como exclusão de arquivos ou exclusão de banco de dados (DROP). Isso impede que o agente as invoque por conta própria e restringe a execução apenas quando o desenvolvedor digita diretamente o comando de barra (/skill-name).
Ao escrever habilidades em equipe, você deve seguir a arquitetura de diretórios padrão do agentskills.io para evitar problemas com conflitos de arquivos Markdown. Divida e posicione claramente o corpo, scripts CLI, documentos de referência e ativos de modelos estáticos dentro da pasta principal.
| Caminho do diretório e arquivo | Papel | Diretriz de escrita |
|---|---|---|
| skills/api-generator/SKILL.md | Documento de ponto de entrada obrigatório | Contém o Frontmatter YAML e as diretrizes principais de procedimento (dentro de 500 linhas) |
| skills/api-generator/scripts/ | Pasta de código executável | Localização dos scripts CLI em Python/Bash chamados pelo agente conforme necessário |
| skills/api-generator/references/ | Pasta de documentos de referência auxiliares | Contém especificações de API grandes, esquemas de BD e documentos de guia de estilo |
| skills/api-generator/assets/ | Pasta de modelos de recursos estáticos | Armazena boilerplates de código gerado e exemplos de arquivos de configuração |
Ao validar a qualidade da habilidade, utilize o framework de avaliação promptfoo.
promptfooconfig.yaml.npx promptfoo@latest eval no terminal para medir a taxa de conformidade com as diretrizes.`yaml
description: "Backend Agent Skills Validation Suite"
prompts:
`
Ao implantar, combine uma estratégia de desenvolvimento baseada em tronco usando branches de curta duração com tags do Git (v1.2.0). Se o agente se comportar de forma inesperada em produção, você poderá reverter imediatamente para o ponto da tag anterior usando o comando git checkout tags/v1.1.0 -b hotfix/rollback.