Cursorは現行犯で捕まった……

Cursor
この記事は約20分で読めます。

Cursorが発表したComposer 2をめぐり、実は中国発のオープンソースモデルKimmy K2.5を土台にしていたのではないかという疑惑と、その後の説明を追う内容である。単なる盗用ではなく、Cursorが独自の強化学習や長期タスク処理の研究を積み重ねていた点も整理しつつ、オープンソースAIへの帰属表示、米中AI競争、そして今後のAI開発のあり方までを考察している。

Cursor is CAUGHT red handed...
full story:

Composer 2をめぐる大騒動

さて、Cursorがいま大きな火種を抱えています。かなりの騒ぎになっています。では、いったい何が起きたのでしょうか。

まず何よりも、Cursorが独自のAIモデルを発表しました。名前はComposer 2です。そして、これが良いんです。本当にかなり良いんです。人々は完全に度肝を抜かれていました。コーディング能力はフロンティア級なのに、価格は非常に安い。フロンティア級のモデルよりもずっと安いのです。

すべてが順調に進んでいたところで、ある人がこう言いました。ちょっと待ってくれ。なんでCursorの新しいモデルの名前がKimmy K2.5になっているんだ?

これはFinnです。彼が言っているのは、要するにComposer 2はKimmy K2.5に強化学習を施したものだった、ということです。どうやらComposer 1.5のときには、それをうまく隠していたようです。Composer 1.5ではその事実を覆い隠す、足取りを消すという意味で、もう少し上手くやっていたようですが、Composer 2ではそうはいかなかったようです。

Finnがこれを投稿したあと、今ではそれもブロックされています。そこへElon Muskが乗ってきて、ああ、それはKimmy 2.5だね、と言っています。

では、ここで何が起きたのでしょうか。まずはCursor側の人たちの話を見ます。Kimmy AI側の人たちの話も見ます。ただその前に、Cursorをよく知らない人のために言うと、これは史上最速クラスで成長しているソフトウェア企業のひとつです。

Cursorとは何か、Kimmy K2.5とは何か

CursorはAIコードエディタで、VS Codeの上に構築されています。VS Codeはオープンソースのプロジェクトです。Cursorは2025年11月、ほんの数か月前に約23億ドルを調達しました。企業価値は約300億ドル近くとされていて、年換算の収益は20億ドルを超えているとも報じられています。つまり、とてつもなく成功しているわけです。最速級のAIコーディングアプリのひとつであり、おそらく最も人気のあるAIコーディングアプリだと言っていいでしょう。

では、Kimmy K2.5とは何でしょうか。これは中国企業が公開したオープンソースモデルです。そして本当に優れたモデルで、とくにさまざまなエージェント的タスクに強いモデルです。修正MITライセンスで公開されています。

ここで重要なのはこの点です。スタートアップや小規模企業、あるいは自社利用の範囲で使っているだけなら、基本的にはKimmy K2.5を使っていると明示しなくてもよいのです。オープンソースではあるのですが、修正されているというその一点が意味するのは、大企業についてはこのモデルを使っていることを開示しなければならない、ということです。

要するに、月間アクティブユーザーが1億人を超えるか、月間売上が2000万ドルを超える企業は、一般的なオープンソースモデルのようには使えません。使っていることを宣言しなければなりません。製品のUI上で、Kimmy K2.5、あるいは何を使っているのかを目立つ形で表示しなければならないのです。つまり、ユーザーはこれがベースモデルなのだと分かる必要があります。

ですから、Kimmyはオープンソースだと言うとき、そこには但し書きがあります。厳密に言えば、完全な意味でのオープンソースではありません。オープンソースとは本来、完全にオープンであることを意味するはずだからです。これはオープンソースではあるけれど、高収益企業にはそう単純ではない、ということです。

帰属表示をしなかったことへの批判

そして案の定、CursorはこれがKimmy 2.5ベースだとは言いませんでした。つまり、このモデルの土台がKimmy K2.5であることを目立つ形では示さなかったわけです。

これはLee Robinsonです。彼はCursorで働いています。開発者を支援し、これらのツールの使い方を教えている人です。彼はこう言っています。そうです、Composer 2はオープンソースのベースから出発しました。将来的には完全な事前学習を行う予定です。

つまり、将来的にはゼロから自前でモデルを訓練するつもりだということです。そして、最終モデルに費やされた計算量のうち、ベース由来は4分の1程度にすぎません、とも言っています。残りは私たちの訓練によるものです。だから評価結果がこれほど違うのです、というわけです。

彼が言っているのは、おそらくKimmyモデルの訓練にどれだけの計算量が投じられたかを見積もったうえで、それが全体の4分の1だったという話です。その上にさらに大量の計算資源を使って強化学習を行った、ということです。Cursorにはかなりのデータがあります。実際、Cursorの中では多くのことが起きていますし、人々が実際に使っていますから、その利用データをモデル改善のための強化学習に活用しているのです。だからこそ、評価指標上であれほど良く見えるわけです。

ただ、ここでも彼はモデル名を言っていません。オープンソースのベースから始めました、というだけです。まだKimmyとは言っていないのです。そして、ライセンスには推論パートナーの利用規約を通じて従っています、とも言っています。

どうやら推論プロバイダーを使っていて、技術的には推論を実行しモデルを提供しているのはそのパートナーだ、という整理によって、自分たちは開示義務を回避できる、という理屈のように見えます。

Kimmy側の反応と削除された投稿

ここが少し奇妙なところです。これはYulun Duoです。彼はKimmy Moonshot側の人物で、Kimmy AIモデルを作っている会社にいます。

彼はこんな投稿をしていましたが、のちに削除されました。Harveが再投稿してくれていたので、私たちは見ることができます。つまり、これはもうXには残っていないのですが、Yulun本人の投稿です。繰り返しますが、彼はKimmy側の人です。

彼はこう言っています。待ってくれ。Composer 2モデルのAPIでテストしたところ、トークナイザーがまさに私たちのKimmyトークナイザーと同じだと分かった。

つまり、Kimmyチームの人間が、そうです、これはたしかに私たちのモデルです、少なくともベースモデルの土台はそうです、と言っているわけです。そして、これは私たちのモデルをさらに事後学習したものだと、ほぼ確認できますとも言っています。Cursor AIが私たちのライセンスを尊重せず、料金も支払わなかったことに衝撃を受けています、とも述べています。そしてMichael Truell、なぜそんなことをしたのですか、と呼びかけています。

ところが、その投稿は消えました。そしてその後、Kimmy.aiの投稿が現れます。

そこにはこうあります。Composer 2のローンチ、おめでとうございます。Kimmy K2.5がその基盤を提供できたことを誇りに思います。Cursorが継続的な事前学習と高計算量の強化学習を通じて私たちのモデルを効果的に統合したことは、私たちが支援したいオープンモデルのエコシステムそのものです。

どうやらFireworks AIが推論プロバイダーのようです。つまり、CursorはFireworks AI経由でKimmy K2.5にアクセスしているわけです。Fireworks AIは、商用に認可された提携関係の一部として提供される、ホスト型の強化学習および推論プラットフォーム、ということになります。

何が起きたのか整理する

では、何が起きたのか、整理してみましょう。

Cursorは3月18日にComposer 2を発表しました。たしかその日に出たはずです。低コストでフロンティア級の知能を実現したと説明し、基本的にはこれを自社モデルとして提示しました。中国にも、Moonshotにも、Kimmyにも、いっさい触れていませんでした。

だから、少なくとも私たちの多くには、これはゼロから構築されたのだと聞こえたのです。実際、そのように作られたかのように提示されていました。オープンソースモデルへの言及もありませんでした。

その後、あるXユーザーが、まだURLの一部でそのモデルがKimmy K2.5として参照されていることを見つけます。すると数時間のうちに、RedditでもXでもHacker Newsでも、あらゆるところで話題になります。Kimmyで働く人たちも、ちょっと待ってくれ、何が起きているんだ、なぜ私たちのモデルを使っているのにクレジットを出さないんだ、と反応し始めます。

Cursor側の社員たちも、はい、これをベースモデルとして使いました、と投稿し始めます。ただし、指摘されるまでは名前を出しません。そして呼び出されて初めて言及するわけです。

この最初の投稿では、Kimmyへの言及はありませんよね。漏洩後ですら、なぜオープンソースモデルにクレジットを与えないんだ、と批判する人がいます。するとその後の返答で、皆さんがそこまで私に言わせたいなら確認しますが、使っているのはKimmyです、Kimmy K2.5です、と言うのです。はい、それが私たちの出発点となったベースです。そして、推論パートナーの条件を通じてライセンスは守っています、とも言っています。

さらに、人々がもっと説明を求め、なぜモデル名を開示しないのかと問い詰めると、Cursorはこの投稿を出します。題名はTraining Composer for Longer Horizonsです。とても興味深いブログ記事で、この件にどう取り組んだのかを明かしています。技術的にも実に面白い記事で、Kimmyの上に何を構築したのかが見えてきます。

Composer 2の技術的な中身

ここでは自己要約という概念が説明されています。要するに、モデルがタスクの途中でいったん立ち止まり、その時点までに把握している内容を約1000トークンに要約し、その圧縮された文脈を持って続きを進める、という仕組みです。彼ら自身の言葉を借りれば、自己要約をComposerの訓練の一部にすることで、モデルの最大コンテキストウィンドウよりもはるかに長い軌跡から訓練シグナルを得ることができる、というのです。

このブログ記事には、このあともう少しで戻ってきます。途中にかなり面白い点がいくつもありますし、なんと途中でDoomまで出てきます。

ただその前に、ひとつ確認しておきましょう。なぜ彼らは実際にKimmyと明言しなかったのでしょうか。何かを隠して使おうとしたのでしょうか。ライセンスを無視したり、料金を払わなかったり、あるいは盗んだのでしょうか。

結論から言うと、いいえです。少なくとも私たちに見えている範囲では、すべてはルールに沿って行われていました。問題なく、表向きには適法でした。オープンソースコミュニティの多くは、きちんと正しいモデルに帰属させてほしかっただけです。Kimmyベースですと言ってほしかったわけです。そして、それにはもっともな理由があります。

元のオープンソースコミュニティに正当な功績が与えられますし、コミュニティの上に築こうとしている他の人たちにも、素晴らしいものを作ればちゃんとクレジットされるのだというシグナルになります。逆に、何かを利用しながら何も返さず、帰属も示さないように見えると、多くの人の神経を逆なでします。Cursor側の人たちも、今後はきちんと明示する必要があると学んだ、帰属表示をしなければならないと理解した、という趣旨のことは述べています。

なぜCursorはそうしたのか

では、しっかりお叱りを受けて、教訓を学んだとしましょう。十分に責められたと仮定して、次に、なぜ彼らがそうしたのかを考えましょう。そして、彼らが実際に作ったものが、帰属表示の問題とは別に、どれほど優れていて印象的なのかについても話しましょう。

繰り返しますが、これは他人の仕事をそのまま自分のものとして偽った、という話ではありません。そこを怒りの中で見失ってはいけないと思います。帰属を示さなかったことを批判するのは構いませんが、実際に起きたことそのものは見落とすべきではありません。

まず第一に、なぜ彼らが他社モデルだと明言したくなかったのか。理由のひとつは見栄えが悪いからだと思います。自前のモデルを作っていないように見えるのは印象がよくありません。Cursorは約300億ドルに近い評価額で資金調達をしたばかりです。その評価には、単なるラッパーではなく、本物のAI研究企業であるという期待も含まれているはずです。単に他人の仕事にUIを載せただけの会社ではない、ということです。しかもVS Code自体はもともとMicrosoftです。だから、見た目としてはやはりよろしくないのです。これだけの企業なのだから、自前モデルを作れる立場にあるはずだ、という見方になります。

第二の理由は中国でしょう。中国製モデルの上に構築しているという事実は、政治的にかなり微妙です。米中AI競争という物語はあらゆる場所にあります。DeepSeekのあの瞬間を思い出してください。大量の株が下落し、シリコンバレーにパニックが起きました。

だから、Cursorのような最大級のAIコーディングツールが、自分たちのベースモデル、つまり自分たちの中核を支えているものがAlibaba系の中国モデルです、と言うのは、あまり言いやすいことではありません。これは理解できます。もし彼らが明言していたとしても、今と同じような嵐に巻き込まれていたでしょう。ただしテーマが少し違っていたはずです。オープンソースに帰属しなかったことではなく、中国企業の技術を使っていることを攻撃されていたはずです。

ですから、その点は重要です。米国企業として、とくにエンタープライズ顧客は中国インフラと結びつきのあるものに非常に敏感です。これを開示すること自体がPR上の頭痛の種になりえた。だから黙ったのでしょう。私はそれが正しいとか間違っているとか、どちらかの肩を持つつもりはありません。ただ、かなり高い確率で、黙っておこうとなった理由はそこだと思います。

それでもCursorは本当に研究していた

ここで理解すべき大きなポイントがあります。Composer 2の構築に使われた計算量の4分の3、そこは本物の仕事です。本物の貢献です。多くの人はこれを、Kimmyモデルの上にシールを貼ってお金を取るだけの話、あるいは全部をOpenAIやAnthropicに通す代わりに売り物にしただけ、というふうに捉えていますが、それは文脈をかなり見落としていると思います。

実際、ここで見落とされているのは、Cursorが本当に研究をしているという点です。彼らは独自の工夫を加えています。将来的には自分たちのモデルを作るとも言っています。ですから、まずはオープンソースの土台の上で始めてみることが、すでに存在しているモデルの上でいろいろ試し、自分たちの強化学習プロトコルや強化学習パイプラインを検証するための第一歩だったのかもしれません。そして将来的には、自前で事前学習を行い、ゼロから構築するつもりなのでしょう。

オープンソースAI、そしてそのエコシステム全体にとって見れば、これはだいたい意図どおりに機能しているとも言えます。Moonshot AIは、他者がその上に構築できるようにオープンソースとして公開しました。Cursorは実際にその上に構築しました。その意味では、すべては狙いどおりに動いているわけです。まさにこうあってほしい形です。

結局のところ問題は、帰属すべき相手を明言しなかったことです。Fireworksを推論プラットフォームとして経由しているという点も、技術的には問題ないのかもしれませんが、コミュニティの多くは気分がよくないはずです。帰属表示を避けるための抜け道に見えてしまうからです。

誰の技術の上に成り立っているのか分かりにくい時代

しかも、最近は何が誰の技術の上に築かれているのか、だんだん見分けが難しくなってきています。OpenAIもAnthropicも、みんなGoogleの技術の上で動いているとも言えます。そもそもTransformerは2017年のAttention Is All You Need論文です。Googleがその研究を公開することを選んだからこそ、自分たちの競争相手を大量に生み出すことになりました。OpenAIはそのアイデアを取り入れて突き進みましたし、Anthropicもかなり早い段階でそこから分かれ、独自の方向で開発を始めました。

しかも今は、お互いが互いから蒸留している状況です。中国の多くの研究所が、西側モデルからデータを引き出し、それで訓練できるように、いわゆる蒸留攻撃を使っているという話も私たちは知っています。Anthropicはそう呼んでいましたね。

さっき誰かがこういうポストをしていました。今夜、娘がたくさん質問してくる。これは高度な蒸留攻撃の一形態だ。これ、最高のジョークだと思いました。だって本当にそのとおりなんです。子どもが大量に質問してくるのは、まさに蒸留攻撃の一種です。あなたの頭の中にある知識を引き出して、自分の人生におけるさまざまなベンチマークでの成績向上に役立てようとしているのですから。

自己要約とは何か

ではここで、Cursorの自己要約について手短に見ていきましょう。つまり、Composer 2の訓練において、多くの強化学習計算がどこに使われたのかという話です。たしかにKimmyというベースはありました。しかしその上に膨大な訓練が行われました。繰り返しますが、Cursorは非常に人気の高いAIコーディングアプリであり、大量のデータを持っています。そしてそのデータを使って、オープンソースモデルの上に積み上げているわけです。

発想としてはこうです。非常に長く大きなタスクをどう処理できるようにするか。モデルのコンテキストウィンドウに収まりきらないほど多くのデータ、情報、コードがあるとき、それをどう圧縮するか。その答えが自己要約です。

彼らの説明ではこうです。Composer、つまりCursorがオープンソースモデルの上に構築した自社モデルは、エージェント型コーディング向けに特化したモデルであり、Cursorのエージェントハーネス内で強化学習によって訓練されています。これにより、ループの中に圧縮処理を組み込んだ訓練が可能になり、何を要約して保存すべき最重要情報と判断するか、その能力が向上するというのです。

Composerがタスクを進めていくと、あらかじめ決めたコンテキスト長のしきい値に近づきます。たとえばコンテキストウィンドウが半分埋まったあたりです。たしか前のほうで、だいたいそのあたりだと書いてあったと思います。要は、そのしきい値に達すると、一度止まって自分のコンテキストを要約してから先に進むのです。

仕組みとしてはこうです。Composerは、固定のトークン長しきい値に達するまで、あるプロンプトから生成を続けます。たとえば、Flappy Birdのアプリを作ってほしい、しかもウェブカメラを使って手を羽ばたかせたらそれが操作になるようにしたい、と指示したとします。モデルはそれに取り組み始め、やがてある程度のトークン長、つまり所定の仕事量に達します。

そこで何かが発火し、現在のコンテキストを要約してください、という人工的な問いが挿入されます。まるで別のモデルが入ってきて、ここまでにやったこと全部を見て、要約して、凝縮して、必要な情報を全部引き出して圧縮してください、と言うようなものです。

そのモデルには、より良い要約を考えるための作業スペースが与えられます。そして凝縮されたテキストを生成し、Composerはその圧縮コンテキストで再び最初のステップに戻るのです。その圧縮コンテキストには、要約と会話状態の両方が含まれます。

ここで重要なのは、この圧縮と要約を担当するモデルが、もし下手な仕事をしたらどうなるか、ということです。当然、元のプロジェクトが良い結末にたどり着く可能性は下がります。重要な文脈を取りこぼしたり、質の悪い要約をしたりすれば、プロジェクト完成の確率は落ちます。逆に、本当にうまくやって重要な詳細をしっかり保持できれば、そのプロジェクトがうまくいく確率は上がります。つまり、検証可能な報酬が得られるのです。

この情報の凝縮方法、この要約はよかった、この別のやり方は悪かった、という判断ができます。そうすると、そのデータを使って、この要約モデルをさらにうまく要約できるように強化学習で鍛えられるわけです。彼らはここで、自己要約そのものが報酬対象の一部になる、と言っています。つまり、重要な情報を失った質の悪い要約は評価を下げられ、徐々に淘汰されていきます。一方で、うまく機能したものは生き残り、より多く使われるようになります。

そしてなぜDoomが出てくるのか

ここで皆さんが思っていることは分かります。いやいや、でもそれとDoomがどう関係あるんですか。そもそもそこが本題なんじゃないんですか、と。はい、たしかにそうです。結局なんでもDoomに行き着きますからね。

Terminal Bench 2.0という、いわば上級者向けのベンチマーク障害物レースのようなものがあります。その中のボス戦として登場する課題が、make doom for MIPSと呼ばれているものです。

MIPSは、Nintendo 64のようなものにも使われていた古いコンピュータ言語系統です。この課題で与えられるのは、1993年のゲームDoomの生ソースコード、ゲームがフレームを特定のファイルに描画する方法を指示するファイル、そしてMIPSしか理解しない仮想マシンです。つまり、あまり一般的ではないこの奇妙な言語しか理解しない環境が与えられ、その部品を渡されたうえで、とにかく動かしてください、と言われるのです。

これはプロンプトで説明するだけならとても簡単な課題です。しかし、実際にそれを最後までやり切るのは非常に難しい。かなり強力なモデルでも、公式に報告されている数字では正答できないものがあります。その理由の一部は、大量のコードを検証しなければならないからです。つまり、常にコンテキストウィンドウの限界にぶつかることになります。そして、まさにそこをCursorはComposer 2で改善しようとしているわけです。

彼らはこう言っています。Composer 2の初期研究チェックポイントをテストしたところ、この問題を正しく解けることが分かりました。この解法には、かなりの量のコードの設計とテストが必要で、さらにいくつかの代替実装も試す必要がありました。問題解決の過程で描画された画像がこちらです。

ちなみに、これは少し恥ずかしいんですが、もし皆さんがその画像を見て、元のDoomを覚えているなら、なんだか歪んで変だなと思うかもしれません。でも実はそうではないんです。私の後ろにはグリーンスクリーンがあって、その特定の緑色を抜くソフトを使っています。そうすることで、いま見ているこのサイトの上に私が重なって見えるような、いろいろな演出ができるんです。すごく凝っているわけです。ただし欠点として、その特定の緑色も一緒に消えてしまうんです。

すみません、ちょっとADHDっぽい脱線でした。要するに、Composerは170ターンにわたって作業し、最終的に正確な解にたどり着きました。その過程で、人間が読めるコンパクトで構造化された形式の自己要約を作成していたのです。10万トークン以上を、自分が問題解決に最も役立つと判断した1000トークンに要約したわけです。

結局どう見るべきか

では結局、これは何を意味するのでしょうか。

第一に、理想的な世界であれば、CursorはKimmy K2.5がベースモデルですと最初から言うべきでした。いまCursorに対して怒っている人たちには、たしかに一理あります。

第二に、Cursorは人をだますためにこれをやったのか。私はそうは思いません。むしろ、米中対立という地政学的に敏感な問題をめぐるドラマを避けるためだったのだと思います。

彼らが単にKimmyを持ってきて、名前を変え、自社ラベルを貼って転売しただけだというふうには、どう見ても思えません。実際には、元のモデルの事前学習に使われた分より多くの計算資源を、その上に投じています。また、オープンソースモデルの上に構築し、さらにこのブログ記事も出しています。つまり、Composerの自己要約について、こういうものを作りましたと研究内容を公開しているわけです。

彼らは研究を公開しています。つまり、オープンソースのエコシステムの一部として動いているわけです。いろいろな点で、かなり多くのことを正しくやっています。付け加えているし、貢献しているのです。そして、オープンソースモデルと自前データを組み合わせ、自前の強化学習訓練を使うことで、良いものをかなり驚くべき、かなり素晴らしいものへと変えられることを示しています。

オープンソースAIにとっての意味

ここで登場するのがClement Delangです。彼はHugging Faceの創業者で、現在もその運営を担っています。おそらくオープンソースAIの最大級の推進者のひとりでしょう。オープンソースAIを広め、実際に使えるものにし、エコシステム全体のために多大なことをしている人物です。だってHugging Faceを率いている人ですからね。

彼はこう言っています。オープンソースは、競争を可能にする最大の推進力であり続けている。いまや世界のAIスタックを形づくる最大の力となった中国オープンソースの、またひとつの裏付けだ。そしてフロンティアとは、もはや誰がゼロから訓練するかだけではない。誰が最も速く適応し、微調整し、製品化するかにかかっている。たとえばOpenClawでも同じことが起きている。

全体として見れば、これはオープンソースにとって大きな勝利だと思います。

ただひとつ疑問は残ります。世の中にはほかにも、企業が社内で独自モデルを訓練しましたと言っていながら、実際には別の中国製オープンソースモデル由来である痕跡をうまく隠しているケースがあるのではないか、ということです。Cursorが最初にそれを思いついた企業で、しかもたまたま最初に見つかってしまっただけなのでしょうか。そこは分かりません。

総括

とはいえ、全体としては、終わりよければおおむねよし、というところだと思います。技術的に意味があるなら、Cursorには次こそ本当に自前で事前学習したモデルを作ってほしいと思います。もっと大事なのは、こういう研究を今後も続け、モデルを改善し、自分たちがやったことを公開し続けてほしいということです。

皆さんはどう思うでしょうか。賛成ですか、反対ですか。この件について、もっと怒り続けるべきだと思いますか。繰り返しますが、私もこれが素晴らしい行為だったとは言いません。ただ、この動画では、彼らもまた多くを貢献していることを指摘したかったのです。そして、そもそもの過敏さを生んだのは中国という要素だったのではないか、と私は思っています。これは単なる手抜きの盗みではなかった、その見方は正しくないと思います。

コメントで皆さんの考えを聞かせてください。ここまで見てくださって本当にありがとうございます。次の動画でまたお会いしましょう。私の名前はWes Rothです。ぜひチャンネル登録も考えてみてください。私のチャンネルって、AI系YouTube業界全体でも、たぶん再生数に対する登録者数の比率がものすごく高いほうなんですよ。

というか、なんでこれを正式な関係にできないんでしょう。私と一緒にいるところを見られるのが恥ずかしいんですか。私はただの脇役なんですか。

まだ登録していないなら、ぜひチャンネル登録をお願いします。登録してください。これを正式な関係にしましょう。それではまた次回お会いしましょう。

コメント

タイトルとURLをコピーしました