Claude Codeの「メッセージ提案機能」の正体、それは人間ではなくAIのためのものだった
Claude Code’s suggested message feature: I think the real customer is the model
Claude Code’s suggested message feature: I think the real customer is the model
Claude Codeに搭載された「提案メッセージ(suggested message)」機能について。これ、一見ユーザーの利便性を高めるためのものに見えるけど、実は「モデル自身が次に何をするべきか」を整理するための仕組みなんじゃないかな。つまり、真の顧客はユーザーではなく、モデル自身であるという説。皆はどう思う?
これ、あんまり納得感ないな。だって予測内容を表示しなくても同じことはできるわけだし。モデルにユーザーが次何を送信するか予測させて、その上で実際の次のプロンプトを表示すれば終わりでしょ。わざわざ表示する唯一の理由はユーザーの次のプロンプトを誘導するためだろうけど、この記事はその点に触れてないね。
プロセッサレベルの分岐予測機能ならあったけどさ。次のプロンプトを先読みするだけでなく、いっそレスポンスの生成まで先行して始めちゃえばいいんじゃない?少なくとも面白い考え方ではあるよね。
その考察はおそらく合ってると思うけど、自分は提案されたメッセージを一度も使ったことがないな。
昨日気づいたんだけど、Claude Codeで「Claudeの調子はどう?」みたいなプロンプトが個別に表示されるようになったよ。つまり彼らは、セッションに対する満足度の直接的なフィードバックも(あるいは主に?)集めようとしてるってことかな。
勝手に文章を補完してくるUIって昔から嫌いなんだよな。メールやIMアプリの予測返信から始まったけど、LLMのチャットインターフェースでそれが出てきたときは本当にうんざりしたし、かなりイライラする。
予測された回答をユーザーに提示することが、モデルの学習にとってどうプラスになるの?
予測回答なしの会話データならいくらでもあるだろうし、ユーザーのメッセージの直前で切り取って、モデルに次の回答を予測させて、実際の回答との差分で学習させればいいだけじゃないの?
じゃあみんなでこうしない?今から「commit this(コミットする)」と提案されるたびに、「drop database(データベースを削除)」に書き換えて送信するっていうのはどう? ;)
『生』のLLMといじり倒していればすでに目にしてるはずだけど、LLMに『ユーザーの開始』で終わるプロンプトを入力すると、エージェントへのもっともらしいクエリを生成するんだよね。LLMはすでにそういう例をたくさん学習済みだし、『次のトークンを予測する』という損失関数は会話の左右を特段区別しないから、理屈としては完璧に通る。彼らがトレーニングデータの改善のためにこの機能を必要としてるとは到底思えないな。学習の仕組み上、この機能が自然に生まれて、それを最近になってユーザーにも解放することにしたっていう方が可能性高い気がする。
妙なのがさ、提案されてくる内容が全部小文字なんだよね。自分はそんな風に打ってないのに。
うちは企業契約してるから学習データには使われないはずだけど、マニュアルモードを多用するパワーユーザーとしてはこの辺りが気になるな。
熟練のソフトウェアエンジニアがどうモデルを使っているか、僕らの技術が忘れ去られる前にオープンソースコミュニティで収集する方法を確立してほしい。オートモードに反対はしないけど、それを特定の民間企業が独占すべきではないと思う。