書き換えはどのように行われたのか
Anthropicは2025年12月にBunを買収し、そのZigコードベースをRustに置き換えることを決定しました。同社は、当時他には誰も利用できなかったLLMであるClaude Fable 5のプレリリース版を運用しました。64個のモデルが並列して動作し、合計で毎分約1,300行のコードを生成しました。
リードエンジニアのJarred Sumnerは、問題をエージェントに丸投げして立ち去ったわけではありません。彼はまず、ZigのイディオムをRustの同等表現にマッピングするガイドの作成に数時間を費やしました。3つのファイルを用いた試行運用により、リポジトリ全体に取り組む前にエージェントの出力を調整することができました。エージェントが提案するすべての変更に対して、2つの「敵対的(adversarial)」エージェントがレビューを行い、Sumnerは11日間にわたるプロセス全体をリアルタイムで監視しました。
Anthropicの内部会計では、16万5,000ドルのトークン使用量が記録されました。この数字は、コードがメインブランチにマージされる前に行われた生のAPIコールのみを反映しています。
隠れたコスト
16万5,000ドルという数字には、新しいRustコードを安定させるために必要な計算リソース(compute)が含まれていません。内部分析によると、マージ後の修正、継続的インテグレーション(CI)の実行、および追加のテストによって、総支出はさらに膨らむ可能性があります。この見積もりは公開APIの価格設定に基づいています。Claude Fable 5はプライベートプレビューであったため、実際に支払われた価格は異なる可能性があります。
スピード vs 安全性
書き換えの結果、元のZigバージョンよりも高速に動作するRustランタイムが誕生しましたが、同時にかなりの量の監査バックログも残しました。新しく生成されたRustファイルの約4%に「unsafe」ブロックが含まれています。これはRustの厳格な安全性保証をバイパスするコードです。手書きのRustプロジェクトでは通常、この割合ははるかに低いため、レビュアーはこれらのブロックがメモリ破損バグを引き起こさないことを検証しなければなりません。
Sumnerの専門知識がなければ、エージェントの出力は無意味なものとなります。毎分1,300行という速度であっても、論理的なエラーを検出し、アーキテクチャの一貫性を確保し、テストスイートが新しい実装を真にカバーしていることを確認するために、知識のある監督者が必要です。
AIが輝く時、輝かない時
Bunの移植は、包括的なテストスイートがすでに整っている状態での「ある言語から別の言語へ」という、教科書通りの翻訳作業でした。その明確な境界線により、LLMには明確なターゲットが与えられ、創造的な問題解決の必要性が限定されました。しかし、ほとんどのソフトウェア開発は、変化するビジネスルール、曖昧な要件への対応、あるいはゼロからの新機能構築を伴います。そのようなより複雑なシナリオでは、同レベルのAI支援によって、同等のスピードやコストメリットが得られる可能性は低いです。
AI拡張開発の支持者は、数分間で数千行が生成されるという生の生産性数値を、大規模言語モデルが大規模なチームに取って代われることの証拠として挙げています。Anthropicの事例はこの見方に釘を刺しています。見出しとなるトークンコストには、マージ後の検証に必要な多大な計算リソースが含まれておらず、また「unsafe」コードによって生じた「安全性の負債(safety debt)」を解決するには人間の努力が必要だからです。
次に注目すべき点
Anthropicは、同じClaude主導のワークフローを他のコードベースに適用する計画があるかどうかを明らかにしていません。もし適用する場合、同社はトークン料金だけでなく、ライフサイクル全体のコストを考慮する必要があります。観察者は以下の点に注目すべきです。
- レビュアーがコードをリファクタリングするにつれて、監査バックログがどれほど速く縮小し、「unsafe」の割合が低下するかどうか。
- 将来の実行において、一般に購入可能なより成熟したモデルが使用されるかどうか。これにより、コスト見積もりの透明性が高まる可能性があります。
- Bunの採用への影響:実行速度の向上はユーザーを惹きつける可能性がありますが、セキュリティ上の懸念があれば、その利点は相殺されてしまう可能性があります。
まとめ
AIは単純なコードの翻訳を劇的に加速させることができますが、後続の計算リソースや人間による検証コストが、トークン料金の節約分を食いつぶしてしまう可能性があります。Bunの書き換えは、大規模言語モデルが大量のコードを迅速に生成できる一方で、安全性、正確性、そしてほとんどのソフトウェアプロジェクトを推進するきめ細かな作業においては、依然として人間の専門知識が不可欠であることを示しています。
