7

Meus 2 cents,

Parabens pelo post !

Alguns detalhes que faco no meu harness:

  • O LLM se perde no "meio" do contexto: para quem ainda nao viu isso, eh um fenomeno bem conhecido chamado "Lost in the Middle". Como citado no post, coloque regras importantes no inicio e objetivos no final - ajuda (mas nao resolve 100%)

  • Nao existe prompt "ative o Mega Brain master blaster constructor": em suma, nao adianta encher linguica, CLAUDE.md/AGENTS.md e skills sao prompts e somam na janela de contexto. Um bom prompt tem de carregar o contexto de tal forma que o LLM consiga escolher o proximo token com perfeicao - so isso. Nao tem "hocus pocus" secreto - eh apenas guiar o LLM para que ele gere tokens bons e nao faca basteira.

  • Skills (vou dizer algo polemico aqui): gerencie tuas skills para serem ao mesmo simples e completas - simples no sentido de ter apenas um objetivo/feature principal (p.ex. autenticacao, esquema de CRUD), mas completas o bastante para cobrir o que voce precisa sobre aquela feature (a skill eh o manual de instrucoes sobre algo, entao ensine o LLM sobre aquele algo, sem ser prolixo nem laconico).

  • Ative/desative suas skills por tarefa (eh uma gambiarra, mas funciona): se vou fazer um plan, deixo certas skills ativadas e outras desativadas. Se vou fazer manutencao em codigo frontend, outras skills. codigo backend/api, outras skills - e faco isso via um script que rodo ANTES de comecar a tarefa. Sim, teu agente/LLM deveria saber fazer isso sozinho, so carregando o que precisa - na pratica, "dou uma forcinha" (quanto menos coisas para distrair o modelo, melhor). Eh um saco ? com certeza - um dia isso vai funcionar melhor, mas eh o que tem para hoje).

  • Use estruturas XML nos prompts: isso ajuda o LLM a se encontrar no meio de tanta confusao e economiza tokens (<blabla>instrucoes</blabla>)

Obrigado por compartilhar !

Saude e Sucesso !


Este post foi favoritado via extensão TABNEWS FAVORITOS

Tem curiosidade sobre IA ? Da uma olhada no meu LIVRO: IA PARA ENGENHEIROS

Carregando publicação patrocinada...
5

meus literais 2 cents:

    1. O Borys Cherney tem tokens infinitos, então temos que cuidar com as comparações
    1. Realmente a turma se passa com os claude.md e esquece que o negócio come token
1

É um recorte que faltou no post: o Boris não paga a conta de token dele. No meu caso a fatura chega, e foi ela que me empurrou a tirar detalhe do CLAUDE.md e deixar em docs/ referenciado por nome, porque assim só entra na janela quando a tarefa pede.

CLAUDE.md gordo é custo fixo em toda sessão, até nas que não usam nada daquilo.

5

Bom dia, meu bom, realmente é interessante como funciona isso, eu tenho um projeto imenso que dá quase umas 663 linhas somente para o Claude não se perder, e realmente sempre quando abro um novo card para realizar melhorias, ele já entende sobre o projeto e começo as melhorias, raramente preciso corrigir algo que ele fez a correção, somente certifico que está de acordo.
Não sei se é forma que faço que ele fica sucinto e não se perde no que está fazendo. E não viaja muito, mas algumas vezes acontece depende muito de como usei ele durante o dia. Mas ele segue bem fiel ao que está na memória dele.
Parabéns pelo post e realmente depende muito de como você constrói as regras nele.

3

Meus 2 cents extendidos,

Se um dia voce puder compartilhar estas 600 linhas - gostaria muito de ver como voce mantem o modelo na linha.

Ser sucinto eh uma excelente direcao.

Agora o "...depende muito de como usei ele durante o dia..." que me deixa frustrado: as vezes o processo funciona que eh uma beleza, as vezes pega um caminho bem esquisito - e mesmo olhando os LOGs de prompt enviados, contexto gerado, etc, nao consegui chegar a uma conclusao "faca sempre assim que vai dar certo".

Saude e Sucesso !


Este post foi favoritado via extensão TABNEWS FAVORITOS

Tem curiosidade sobre IA ? Da uma olhada no meu LIVRO: IA PARA ENGENHEIROS

1

Bom saber que 663 linhas rodam liso, porque isso reforça a regra que sobrou no post: o tamanho certo é o tamanho do contexto que precisa existir, e projeto imenso pede arquivo imenso.

Aqui o meu quebrou bem antes, na casa das 247, então fiquei curioso pra saber como você organiza as seções. Obrigado por trazer o número real, comentário com dado vale ouro.

4
4

Meus 2 cents extendidos,

Obrigado pelo comentario !

O disable-model-invocation nao eh o objetivo, pois eu quero que o modelo carregue automaticamente, mas apenas um determinado tipo de skills para aquela situacao.

A ativacao/desativacao de CLAUDE.md, AGENTS.md e skills que uso eh via script que faz o rename de arquivo e/ou diretorio, para que naquela tarefa um harness especifico esteja habilitado.

O ponto aqui eh: o harness tende a se tornar extremamente complexo conforme vai cobrindo diversos tipos/casos de uso, entao o objetivo eh simplificar o que o modelo/agente ve antes da tarefa comecar.

Eh possivel fazer isso com subagentes criando estruturas especificas para cada perfil de subagente, mas nem sempre eh o ideal.

Se estou no ponto de criar os CRUDs de um app, entao o harness ativo sabe tudo sobre isso (mas nao sobre outros itens). Se vou trabalhar na criacao dos endpoints tenho um harness bem especifico com regras para protecao, etc.

O conjunto de conhecimentos e habilidades para fazer um sistema sao bem diversas - em uma empresa fisica teriamos diversos departamentos com funcionarios especializados: o que faco eh ter um workspace para cada momento. Na pratica estou descrevendo o que eh usado com agentes/subagentes - mas nem sempre este pipeline/workflow (os subagentes) eh desejado.

Saude e Sucesso !


Este post foi favoritado via extensão TABNEWS FAVORITOS

Tem curiosidade sobre IA ? Da uma olhada no meu LIVRO: IA PARA ENGENHEIROS

1

Teu esquema de renomear o harness por tarefa é a versão honesta do que muita gente finge que o agente faz sozinho. Eu cheguei num meio-termo parecido: rodo uns 60 skills hoje, e o que segurou a bagunça foi caprichar na description do frontmatter, porque é ela que o modelo lê na hora de decidir o que carrega.

Sobre o Lost in the Middle, foi exatamente a linha 138 do experimento 2 que me convenceu. Regra crítica no meio do arquivo é regra que não existe.

O ponto do XML eu assino embaixo, uso tag até em prompt de cron job e o ganho de obediência é visível.

Se um dia você publicar esse script de rename, eu leio na hora. Valeu pela troca, teu comentário completou o post.