Discourse AI: É preciso remover a resposta JSON para que o Anthropic Sonnet 5 funcione, ex.: em busca semântica

Estou provavelmente completamente equivocado aqui e isso é conhecimento comum para todos, exceto para mim… Se for esse o caso, peço desculpas. Mas tive alguns erros estranhos na minha instalação, como:

DiscourseAi::Completions::Endpoints::Anthropic: status: 400 - body: 
{
“type”:“error”,
“error”:{“type”:“invalid_request_error”,
“message”:“This model does not support assistant message prefill. The conversation must end with a user message.”},“request_id”:“req_011CcqMN6eswEfRHPmQmPLC4”
}

O que foi estranho, já que a maioria das outras coisas relacionadas à IA funcionava. Isso acontecia principalmente com meu resumidor e com a pesquisa, como em:

https://..../forum/discourse-ai/embeddings/semantic-search?q=search_term

O que resultava em um ERRO 500.

Quando verifiquei os logs, obtive:

{
  "type": "error",
  "error": {
    "type": "invalid_request_error",
    "message": "This model does not support assistant message prefill. The conversation must end with a user message."
  },
  "request_id": "req_011CcqQvXPAHSfvoUeu92gf9"
}

Rastreie isso até o Content Create-persona

E o erro parece ser esta parte:

porque quando a removi (o que não era possível nesta persona específica) fazendo um clone e definindo esta configuração para meu clone

A pesquisa semântica começou a funcionar. Precisei fazer algo semelhante, por exemplo, em meu resumidor.

Alguém mais teve essa experiência?

Você pode mostrar como o Sonnet 5 está configurado na sua instância?

Por acaso você tem a opção Desativar saída estruturada nativa (use preenchimento prévio de mensagem do assistente em vez disso, necessário para Claude 3.x e versões anteriores) ativada?

O fórum em questão está executando a versão 2026.1.5 ESR, e essa opção foi adicionada após a versão 2026.1, então imagino que muita lógica específica do Claude esteja faltando lá.

Ah, obrigado por compartilhar!

Tentar usar um modelo novo com um Discourse antigo não é uma estratégia vencedora :smiley:.

Os provedores estão sempre mudando os formatos de API, parâmetros, etc. Nós fazemos o possível para manter a compatibilidade com milhares de modelos, mas isso exige atualizações constantes para se manter atualizado, especialmente se você quiser acompanhar modelos lançados há meio ano (séculos em anos de IA) em relação à versão do Discourse.