003.Claude3.5 Sonnetで改行されない!? ライフプラン表の表示トラブルとその原因

はじめに

これまでmiiboClaude3.5 Sonnetを組み合わせてFP向けのライフプラン表(キャッシュフロー表)を生成してきましたが、思わぬ問題に直面しました。なんと、出力されたキャッシュフロー表で改行が反映されないのです。

miiboの会話ログ上では一見きちんと改行されているように見えるのですが、実際の会話画面では、毎年のキャッシュフローが改行されずにダラダラと表示されて、とても見づらくなってしまう…。いったい何が起きているのでしょうか?

改行されないキャッシュフロー

1. Claude3.5 Sonnetが生む改行問題

1-1. 会話ログとの食い違い

  • ログ上では改行されるのに、会話画面では改行されない
  • 年毎のキャッシュフロー表が、改行なしだと可読性が著しく低下

miiboの会話ログではきちんと改行が表示されているため、
なぜ会話画面でだけ改行が消えてしまうのか?
という疑問が強く残ります。

1-2. 表示形式の問題か、モデル特有の仕様か?

Claude3.5 Sonnetは日本語の自然な文章に定評がありますが、今回のような表組みや改行を扱うケースでは、どうやら問題が起きるのかもしれません。

  • マークダウン表記などの特殊文字・タグを認識できていない可能性
  • 改行コード(\n や \r\n)を正しく解釈しない状況

これらが複合的に影響している可能性が考えられます。


2. なぜ改行が重要? キャッシュフロー表での可読性

ライフプラン表(キャッシュフロー表)は、ユーザーにとって将来の資産推移を確認するうえでとても重要。改行がないと一行が長大になり、

  • 縦の見やすさ
  • 行ごとの意味把握

などが難しくなってしまいます。FPとしても、クライアントにわかりやすく提示するために、整ったレイアウトが欠かせません。


3. 原因と対策を探る

3-1. 改行コードの問題

モデルが改行を無視したり、あるいはHTML等のタグとして解釈していない可能性があります。

  • **半角の改行コード(\n)**が認識されない
  • マークダウン形式やHTMLタグを使う必要があるかもしれない
  • プロンプトに、出力書式も入れてみましたが、結果は芳しくなく。

    *1

     

3-2. LLM固有のフォーマット仕様

Claude3.5 Sonnetの場合、出力のフォーマットに独自の仕様や設定があるかもしれません。miibo側のテンプレート設定やNoteを参考にしても、モデルの挙動を変えられない可能性があります。

3-3. 代替策の検討

  • 別の言語モデルを試す
    • GPT系統では同様の問題が起きない事を確認。
  • 改行を強制する記号やタグを挿入
    • 例:<br> や \n をプロンプトに明記し、モデルに「改行」を強く認識させる。

4. まとめ:次の一手は?

今のところ、Claude3.5 Sonnetキャッシュフロー表を出力させようとすると、ログ上の改行は会話画面に反映されないという問題が顕在化しています。

次のアクションとしては

  1. 改行コードやHTMLタグを使うプロンプトを試す
  2. 別のLLM(GPT-4など)を利用してみる
  3. miibo側のNoteや公式ドキュメントで特定の回避策がないかを再調査

これら行いましたが、手っ取り早いのは2の別のLLM(GPT-4o)を使うでした。


今後の展望:問題解決に向けて

キャッシュフロー表が改行されて表示され、やれやれと思ったのもつかの間、別の問題が発生。いやはや、爆速で作ったはずなのに…。

次回は

について詳しくお伝えできればと思います。引き続き、FP向けChatbot開発の道のりを共有していきますので、どうぞご期待ください。


SNSシェア&ブックマーク歓迎!

この記事が少しでもお役に立ったら、SNSでのシェアやブックマークをお願いいたします。同じような問題に直面している方々との情報共有が、さらなるイノベーションにつながるかもしれません。


▼Claude3.5 Sonnetでの改行問題、あなたはどう解決しますか? 次回の続報をお楽しみに!

*1:プロンプトの中の出力例
キャッシュフロー表: #{ニックネーム}
|年|本人年齢|配偶者年齢|子供1年齢|子供2年齢|収入|支出 |ライフイベント|資産総額 |アドバイス他|
| ‐‐‐ | ‐‐‐ | ‐‐‐ |
|2024|62|61|30|27|1,000,000|3,600,000|-|10,000,000|資産運用の流動性を確保する。
|2025|63|62|31|28|1,000,000|3,600,000|4,000,000|3,340,000|    長子の結婚式。