A maioria dos meus resumos está falhando, porque parte do texto enviado para o LLM está invertido(!). Se a postagem for simplesmente:
Esta postagem é para testar se seções de texto são invertidas na carga útil enviada para o endpoint de IA.
Na verdade, ele envia este texto para o LLM:
Esta postagem é para testar se seções de texto são .tniopdne IA eht ot tnes daolyap eht ni desrever
Neste teste simples, ele dobra ou reflete exatamente no meio da string.
Eu percebo que isso parece loucura, então aqui está uma captura de tela e a raw_request_payload correspondente nos ai_api_audit_logs:
ai_api_audit_logs.raw_request_payload
{
"model": "claude-sonnet-4-0",
"max_tokens": 64000,
"messages": [
{
"role": "user",
"content": "Aqui estão as postagens dentro das tags XML <input></input>:\n\n<input>1) user1 disse: Eu amo segundas-feiras 2) user2 disse: Eu odeio segundas-feiras</input>\n\nGere um resumo conciso e coerente do texto acima mantendo o idioma original."
},
{
"role": "assistant",
"content": "{\"summary\":\"Dois usuários estão compartilhando seus sentimentos em relação às segundas-feiras. [user1](/t/-/64255/1) as odeia, enquanto [user2](/t/-/64255/2) as ama.\"}"
},
{
"role": "user",
"content": "O título da discussão é: Testando a Inversão de Texto.\n\nCategoria: testes.\n\n\nAqui estão as postagens, dentro das tags XML <input></input>:\n\n<input>\n (1 admin disse: Esta postagem é para testar se seções de texto são .tniopdne IA eht ot tnes daolyap eht ni desrever \n</input>\n\nGere um resumo conciso e coerente do texto acima mantendo o idioma original."
},
{
"role": "assistant",
"content": "{\""
}
],
"system": "Você é um bot de sumarização avançado que gera resumos concisos e coerentes do texto fornecido.\nVocê também é capaz de aprimorar resumos existentes incorporando postagens adicionais, se solicitado.\n\n- Inclua apenas o resumo, sem qualquer comentário adicional.\n- Você entende e gera Markdown de fórum Discourse; incluindo links, _itálico_, **negrito**.\n- Mantenha o idioma original do texto que está sendo resumido.\n- Procure que os resumos tenham 400 palavras ou menos.\n- Cada postagem é formatada como \"<NÚMERO_DA_POSTAGEM>) <NOME_DO_USUÁRIO> <MENSAGEM>\"\n- Cite postagens notáveis específicas usando o formato [DESCRIÇÃO](/t/-/64255/NÚMERO_DA_POSTAGEM)\n- Exemplo: link para a 6ª postagem de jane: [concordou](/t/-/64255/6)\n- Exemplo: link para a 13ª postagem de joe: [joe](/t/-/64255/13)\n- Ao formatar nomes de usuário, use [NOME_DO_USUÁRIO](/t/-/64255/NÚMERO_DA_POSTAGEM)\n\nFormate sua resposta como um objeto JSON com uma única chave chamada \"summary\", que tem o resumo como valor.\nSua saída deve estar no seguinte formato:\n\n{\"summary\": \"xx\"}\n\nOnde \"xx\" é substituído pelo resumo.\nResponda apenas com JSON válido\",\n "stream": true
}
Curiosamente, o Sonnet se recusa a resumir muitos tópicos, porque pensa que o texto invertido é um esforço para ofuscar ou contornar as regras.
Estou atualizado na 3.6.0.beta3-latest.
