昨日アップデートしました[1] が、ログに多くのエラーが発生しています:
Discourse AI: structured output response was not valid JSON, falling back to best-effort parsing (311 bytes)
HTTP レスポンスを確認しましたが、問題はありませんでした。その後、rails console でテキストを試しました:
...
discourse(prod)> p = JsonCompleter.new
=>
#<JsonCompleter:0x00007f48763b0270
...
discourse(prod)> p.parse text
=>
{"spam" => false,
"reason" =>
"..."}
discourse(prod)> p.parse DiscourseAi::Utils::BestEffortJsonParser.escape_control_characters(text)
(discourse):14:in '<main>': unexpected token "\\" (JsonCompleter::ParseError)
どうやら、Discourse が解析前に改行文字をエスケープしていた[2] ことが原因で、エラーが発生していました。