Como era temporada da Copa do Mundo, passei a noite assistindo aos jogos e não consegui dormir bem, portanto não trabalhei muito
A conversão de Markdown → JSONL em localhost:8501 está atualmente em cerca de 655 itens
Hoje concentrei-me em criar e refinar uma ferramenta simples de depuração de testes de validação, em vez de grandes coletas/treinamentos
Definimos a estratégia da ferramenta de depuração de testes de validação e implementamos a ferramenta web separada Qwen Validation Debugger
O caminho de execução é tools/qwen-validation-debugger
O comando local para execução é npm run validation-debug:debug
O endereço padrão é http://127.0.0.1:8520/
Em 28 de junho, usei o chatbot Qwen para criar manualmente trechos de código Godot e JSONL e fiz a validação “sim”/“não” à mão
Esse método provou ser viável, mas à medida que os itens aumentam, a cópia/colagem e a comparação de resultados se tornam excessivas
Em particular, é necessário testar as três tabelas docs_chunks, api_mapping e label_prototypes; se for sintaxe comum são 6 slots, se houver separação por versão são 12 slots, tornando a gestão manual rapidamente muito complexa
A ferramenta carrega como amostra 50 itens de teste Godot e, para cada item, faz o Qwen rotular se é sintaxe comum ou separação Godot 3/4
Se for sintaxe comum, gera um único código comum
Se houver diferença de versão, gera separadamente o código Godot 3 e o código Godot 4
Em seguida, compõe automaticamente os slots JSONL por tabela
Reafirmamos que não se pode agrupar docs_chunks, api_mapping e label_prototypes apenas como “sim/não”
docs_chunks serve como base de explicação do código, portanto se corresponde ao código, a resposta é “sim”
api_mapping e label_prototypes são bases de migração; muitas vezes, códigos já aplicados ao Godot 4 ou sintaxe comum recebem “não”
Por isso, dividimos os nomes dos slots em Base de explicação, Explicação irrelevante, Conversão necessária, Já aplicado, Comum/Desnecessário, Conversão irrelevante
A maior mudança ao criar a ferramenta foi separar o código base de geração JSONL do código alvo de validação
Inicialmente, JSONL gerado a partir de código Godot 3 era validado apenas contra código Godot 3, e JSONL de Godot 4 apenas contra código Godot 4
Contudo, é preciso verificar também se um JSONL baseado em Godot 3 gera “não” quando aplicado ao código Godot 4
Assim, adicionamos botões separados Validação de código Godot 3 e Validação de código Godot 4 para cada slot, armazenando os resultados individualmente
Depois de criar a ferramenta, a produtividade de desenvolvimento mudou bastante
Antes, era necessário solicitar ao Qwen o código e o JSONL a cada vez, colar no prompt para validar e comparar mentalmente a resposta esperada
Agora, seleção de itens, rotulação, geração de código, geração de JSONL, validação cruzada Godot 3/4, e visualização de prompt/resposta bruta ocorrem em uma única tela
Mais importante que produzir rapidamente, agora sabemos exatamente sob quais critérios o código foi gerado e validado, evitando confusões
Ao repetir os 50 itens de teste, o estado que a pessoa precisa lembrar diminui, permitindo identificar padrões de falha mais rapidamente
Com a ferramenta, é possível ver diretamente na tela quais prompts são enviados, a ordem de chamadas para geração/validação em lote de JSONL, e como os prompts de validação e de solicitação são estruturados
As respostas esperadas são fixadas de acordo com a rotulação e o tipo de slot, mantendo claro o critério “sim/não”
Os resultados aparecem imediatamente por slot, facilitando a identificação rápida de combinações de código e JSONL que falharam
Mesmo que a falha seja causada por um prompt, o prompt usado permanece visível, facilitando ajustes posteriores
Como a ferramenta já está razoavelmente desenvolvida, pretendo reduzir o ritmo, focando em refinar lentamente os critérios de validação em vez de aumentar a quantidade de forma forçada