Discourse AI: 構造化出力のレスポンスが有効なJSONではありませんでした

llama.cpp は、スキーマに準拠するトークンのみを抽出することで、スキーマを強制していると考えています。また、tcpdump でレスポンスをキャプチャし、返されたレスポンスが有効な JSON であることを確認しました。

ただし、文字列の外部にスペースや改行が含まれており(つまり、インデントが整えられた JSON である)、これらの改行が Discourse によってエスケープ処理されていたため、無効な状態になっていました(Rails コンソールで確認済み)。

ちなみに、スパム検出機能を使用しています。