Discourse AI : Il faut supprimer la réponse JSON pour que Anthropic Sonnet 5 fonctionne, par ex. dans la recherche sémantique

Je me trompe peut-être complètement et c’est une information connue de tout le monde sauf moi… Si c’est le cas, je m’excuse. Mais j’ai rencontré quelques erreurs étranges lors de mon installation, telles que :

DiscourseAi::Completions::Endpoints::Anthropic: status: 400 - body: 
{
“type”:“error”,
“error”:{“type”:“invalid_request_error”,
“message”:“Ce modèle ne prend pas en charge la préremplissage des messages assistant. La conversation doit se terminer par un message utilisateur.”},“request_id”:“req_011CcqMN6eswEfRHPmQmPLC4”
}

Ce qui était étrange, car la plupart des autres fonctionnalités liées à l’IA fonctionnaient. Cela se produisait principalement avec mon résumé et avec la recherche, comme dans :

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

Ce qui donnait une ERREUR 500.

Lorsque j’ai vérifié les journaux, j’ai obtenu :

{
  "type": "error",
  "error": {
    "type": "invalid_request_error",
    "message": "Ce modèle ne prend pas en charge la préremplissage des messages assistant. La conversation doit se terminer par un message utilisateur."
  },
  "request_id": "req_011CcqQvXPAHSfvoUeu92gf9"
}

J’ai retracé cela jusqu’à Content Create-persona

Et l’erreur semble venir de cette partie :

car lorsque je l’ai supprimée (ce qui n’était pas possible sur cette persona spécifique) en faisant un clone et en définissant ce paramètre sur mon clone

La recherche sémantique a commencé à fonctionner. J’ai dû faire la même chose, par exemple, avec mon résumé.

Est-ce que vous avez également rencontré ce problème ?

Pouvez-vous montrer comment Sonnet 5 est configuré sur votre instance ?

Avez-vous activé par hasard Désactiver la sortie structurée native (utiliser à la place le pré-remplissage des messages de l'assistant, requis pour Claude 3.x et versions antérieures) ?

Le forum en question fonctionne sous la version 2026.1.5 ESR, et cette option a été ajoutée après la version 2026.1, donc je suppose qu’une bonne partie de la logique spécifique à Claude y manque.

Oh, merci pour le partage !

Essayer d’utiliser un nouveau modèle avec une vieille version de Discourse n’est pas une stratégie gagnante :smiley:.

Les fournisseurs modifient constamment les formats d’API, les paramètres, etc. Nous faisons de notre mieux pour maintenir la compatibilité avec des milliers de modèles, mais cela nécessite des mises à jour régulières pour suivre le rythme, surtout si vous souhaitez utiliser des modèles lancés six mois (soit des siècles en années IA) après la version de Discourse.