DEVIN|世界初の自立型AIエンジニア

世界初のAGIソフトウェア・エンジニアが業界全体に衝撃を与えた

キャプション全文翻訳

ソース:TheAIGRID/Worlds FIRST AGI SOFTWARE ENGINEER Just SHOCKED The ENTIRE INDUSTRY! (FULLY Autonomous AI AGENT

コグニション・ラボという会社から最近発表されたもので、業界全体に衝撃を与えたものがあります。ここに、『本日、初のAIソフトウェア・エンジニアであるDevinを紹介します。DevinはSWE Bench coding Benchmarkの最新鋭で、大手AI企業の実践的なエンジニアリング面接に合格し、Upworkで実際の仕事もこなしています。Devinは、独自のシェル、コードエディタ、ウェブブラウザを使用してエンジニアリングタスクを解決する自律エージェントです。実世界のオープンソースプロジェクトで発見されたGitHubの問題を解決するようAIに求めるSWEベンチマークで評価したところ、Devinはアシストなしで13.86%の問題を正しく解決し、アシストなしで1.96%、アシストで4.8%という従来の最先端モデルのパフォーマンスをはるかに上回りました。以下のスレッドでDevinの能力をチェックしてみよう。

では、彼らが見せてくれたデモ映像のいくつかを見てみよう。正直なところ、これが実際にできることは非常に印象的だ。

「私はコグニションAIのスコットです。今日は初のAIソフトウェア・エンジニアであるデヴィンを紹介できることをとても楽しみにしています。デヴィンの動作例をお見せしましょう。DevinにllamaといくつかのAPIプロバイダーのパフォーマンスをベンチマークしてもらいます。ここからはデヴォンが運転席に座る。まず、Devinは問題にどう取り組むか、ステップバイステップの計画を立てる。その後、人間のソフトウェア・エンジニアが使うのと同じツールをすべて使って、プロジェクト全体を構築する。デヴィンは独自のコマンドライン、独自のコードエディター、そして独自のブラウザーさえ持っている。この場合、デヴィンはブラウザーを使ってAPIドキュメントを引き出し、それぞれのAPIにプラグインする方法を読んで学ぶことにする。ここで、デヴィンは予期せぬエラーに遭遇する。Devinは実際にデバッグ用のprintステートメントを追加することにし、デバッグ用のprintステートメントを使ってコードを再実行し、ログのエラーを使ってバグを修正する方法を見つけ出す。最後にデヴィンは、視覚化として完全なスタイリングを持つウェブサイトを構築し、デプロイすることにした。そのウェブサイトはここで見ることができる。推論と長期計画の両方が進歩したおかげで、今日、このようなことが可能になった。これは本当に難しい問題で、私たちはまだ始めたばかりですが、これまでの進歩にとても興奮しています。その間に、もしあなたが自分の実世界のタスクでデヴィンを試してみたいなら、以下にリクエストを送ってください。

「というわけで、かなり印象的な短いデモだった。しかし、これは私たちが社会の非常に興味深い部分に移行していることを示しています。このようなAI技術が次々と生まれ、企業や投資家は、絶対に素晴らしいことができるプラットフォームを構築し続け、業界全体が揺れ動くことになるでしょう。

「デヴィンは世界初のAIソフトウェア・エンジニアであり、その進歩は控えめなものではないと思う。これは、さまざまなソフトウェア・エンジニアリングのタスクを非常に、非常に優れたレベルでこなす自律型AIエージェントであり、このペースで物事が進めば、本当に、本当に、この分野に影響を与えることになるだろう。

「この最初のデモでは、ブラウザーを立ち上げてAPIドキュメントを表示し、何が起こっているのかを理解することができました。このAIシステムがどのように問題を自力で解決し、周囲を見回し、ブラウズし、人間の支援なしにタスクを完全に完了させることができるかを直接見ることができたのは、本当に素晴らしいことでした。

「そして今現在、ベンチマークは最先端のものであり、これは現在我々が持っている最高のものであり、将来的には改善される可能性が高いということを意味している。数年後の未来はどうなっているのだろう。

このシステムがいかに優れているかを示すデモが他にもいくつかあるので、今から皆さんにお見せしましょう。

さて、Devinは、私ができると思っていなかったことの大半を行うことができるため、このシステムをとてもクールなものにしている重要なことの1つは、長期的な計画と、後ほどお話ししますが、これが本当に効果的である理由の重要な要因である推論のブレークスルーです。それではまず、デヴィンがUpworkで実際にどのようにタスクをこなせるのかを見てみよう。

「コグニションAIの開発者のウォルデンです。デヴィンがUpworkで副業を始められないか遊んでいたところ、クライアントがこのコンピュータビジョンモデルをセットアップしたいと言っているUpworkの実際の仕事がありました。セットアップがとても難しそうです。でも、デヴィンにタスクを渡して、デヴィンにそれを解決するように頼むと、物事が一気に動き出すんです。Devinはすぐに先に進み、レポのセットアップを始めるのがわかるだろう。実際にバージョン管理でいくつかの問題にぶつかっているので、Devinがそれにどう対処するか見てみると、Devinは実際にコードを更新して、これらのことがうまくいくようにしている。続けて、パッケージの読み込みとインポートを行います。実際にインターネットから画像をダウンロードしてモデルを通して実行しているのがわかります。ここで、実際にいくつかの問題が発生しているのがわかるだろう。しかし、デヴィンはこれらの問題に対処する方法を知っている。よく見ると、デヴィンはここで印刷行のデバッグを行っている。デヴィンはデータがどこに流れるかを追跡するために、これらのステートメントを追加しているのだ。そしてデヴィンは、デヴィンがすべての動作を理解するまでこれを続け、印刷行のステートメントを削除した後、修正したコードを更新する。デヴィンは、世界中のすべての道路でイメージモデルを実行するまで、コードを修正し、また実行するというこのパターンを続ける。私たちはデヴォンに報告を求めることができる。その時点でデヴォンは、損傷箇所をマークした道路のサンプル画像と、デヴォンの作業とモデルのさまざまな種類の出力について説明した素敵な.txtファイルを送ってくる。よくやった、デヴォン!」。

つまり、これはUpworkでどのように特定のタスクをこなすことができるかについての簡単なデモであったことがお分かりいただけるでしょう。これが業界を揺るがすと申し上げたのは、アップワークの様々な仕事をこなせるようになれば、多くの人がしていた仕事を将来的になくすことで、ギグ・エコノミーを揺るがす可能性があるからです。

もう一度言いますが、これは様々な異なるセクターの業界全体を揺るがすものなのです。しかし、このデモで私が本当に感心したのは、ここに小さなプランナーがあることです。そして、この人がデモを実行しているときに、このAIが何を計画しているかをライブで見ることができます。

「多くの人が、AIシステムは長期的な計画を立てないだろうと述べていました。この例では、もちろん、長期的な計画を立てることは、人間が通常行うあらゆる目標を達成するために不可欠だと思います。この例では、「提供されたGitHubのリンクからリポジトリをクローンし、ドキュメントを読み、必要な依存関係をインストールし、モデルを実行し、出力をレビューして正確さを確認し、結果を理解する」という計画になっています。

次に、慣れないタスクもこなせるというデモを紹介しよう。

みなさん、私の名前はサラです。AIソフトウェア・エンジニアのデヴィンが、ブログ記事からどのように自律学習できるかをお見せしましょう」。数分もしないうちに、Devinは私の名前入りの最高のデスクトップ背景画像を生成することに成功した。私がすべきことは、このブログ記事をDevinにメッセージで送ることだけだった。そこからは、このブログ記事を読み、コードを実行する方法を見つけ出すところから始まり、実際にデヴォンが私のためにすべての仕事をしてくれる。数分で、デヴィンは実際に多くの進歩を遂げた。ここで真ん中に飛ぶと、デヴィンがブログ記事でカバーしきれなかったエッジケースやバグを見つけて修正したことがわかる。そして最後に飛ぶと、デヴィンが最終的な結果を送ってくれる。また、こことここに2枚のボーナス画像をもらった。この中に何か隠されているものがあったら教えてね』。

「またしても、デヴォンが不慣れな仕事をこなせるという、実に印象的なデモだ。このようなAIエージェントが、さまざまなスタートアップでどのように行われているかを見るのは、本当に、本当に魅力的です」。

「デヴィンがオープンソースのリポジトリに機能を追加するデモです。

「私はコグニションのエンジニア、トニーです。私はDevinを作るのを手伝いましたが、今ではDevinも私を助けてくれています。今日仕事で、一度にたくさんのコマンドを実行し、そのステータスを1つの画面で追跡できるようにしたかったんだ。そのためにImproというオープンソースのツールを見つけた。それがこれだ。すべて終了したように見えるが、ステータスが曖昧すぎる。どれが失敗したのかわからない。本当はここのUXを改善したいのですが、私はコードにまったく詳しくないので、AIソフトウェアエンジニアのデヴィンに手伝ってもらいました。ここにいる人も同じ問題を抱えていたようなので、私はデヴィンに問題のリンクを渡して、デヴィンに修正を依頼しました。私がこの左側に依頼したのがわかるだろう。デヴィンが何をしたか見てみよう。

「右側では、デヴィンの作業を追跡し、デヴィンがツールからツールへとジャンプするのを見ることができる。まずDevinはShellを使ってリポジトリをクローンし、READMEとEditorを読んでコードのビルド方法を学ぶ。それからシェルに戻って、必要な依存関係をインストールする。Devinはまた、ウェブブラウザーを開いて問題を見てみる。そしてデヴィンはコーディングを始める。ある時点で、デヴィンはコンパイラー・エラーをデバッグするためにRのドキュメントを開く。最後に、デヴィンはタスクを終了し、行った変更の概要を報告する。変更がうまくいったかどうか見てみよう。デヴォンのコードがここにある。うまくいったようだ!つ目のコマンドは成功した。ステータスコードも見える。これがデヴィンがこの変更のために書いたすべてのコードだ。ありがとう、デヴォン!』。

コグニションで働く他の誰かによる、デヴォンが『人生ゲーム』を作っているとてもクールなデモもあります。

こんにちは、僕はアダンで、今日は『人生ゲーム』をやりたくなったので、デヴォンに実装を頼みました。Devinはまず、Shellを使って新しいReactアプリケーションを作成し、エディターを使ってコードを書き始めた。その後、Netlifyを通してアプリをデプロイした。確認してみよう。

「でも、まだまだ追加したい機能がたくさんある。初期化画面で Devin という文字をランダムでなく書いてほしい。それから、文字を少し大きくして、フレームレートを速くしてほしい。あと、3秒後に画面がフリーズするバグも直してほしい。デヴォンのこれまでの進歩を見てみよう。diffを見るとわかるが、最後のdiffでは、3秒後に画面がフリーズするバグが修正されている。私には合理的に思えるので、次に進もう。

「次は、10秒後にフレームレートを上げてほしい。また、マウスでどこかをクリックすると、新しいブロックが生成されるようにインタラクティブにしてほしい。デヴィンがこれまでに作ったものを見てみよう。私たちが要求した Devin で始まり、私が何かをクリックすると、新しいブロックも作られる。楽しいね!遊んでみよう。さて、私の夜は更けていく。

「というのも、LLMが自分たちのモデルを微調整できるという最近の研究論文を読んだとき、実際にはできなかったからだ。でも、最近のアップデートで、あることができないことがわかったと思ったら、その2日後に突然、誰かがそれを実現するんだ。

「今日はAIがAIをトレーニングしているところをお見せしましょう。ここでは、大規模な言語モデルを量子化するための微調整手法であるKoraレポを使う。このレポをエージェントのデヴィンに送り、デヴィンに7Bのラマ・モデルの微調整を依頼します。Devinはレポをクローンし、READMEを使って実行方法を調べ、pipを使ってすべての要件をセットアップし、すべてのスクリプトに目を通し、トレーニングジョブを実行し始めることができる。Devinがオープンソースのレポで予想されるCudaの問題にぶつかるというハプニングがいくつかあるが、問題ではない。デヴィンはNvidiaの環境を調べ、パッケージを再インストールして動作させる方法を見つけた。さらに数回実行し、正しいモデル名を理解した後、デヴィンはトレーニングの実行に成功した。トレーニングは順調に進んでおり、ロスは減っている。私はデヴィンにトレーニングの実行を待つように言った。約1時間後、私はデヴィンにこう尋ねた。数百ステップをこなしたが、すべて順調に進んでいる。トレーニングの準備を手伝ってくれてありがとう。

「AIシステムが自分自身のモデルを訓練できるというのは、かなり魅力的なことだと思う。つまり、ここでの意味合いは驚異的だ。さまざまな応用が山ほどある。しかし、もうひとつ、コグニション・チームから皆さんにお見せしたいことがあります。そして、デヴィンの裏側のような、本当にクールな細部に触れて、皆さんに最新情報をお伝えしたいと思います。

「Cognitionのエンジニア、アンドリューです。僕はこの大きなオープンソースのリポジトリを管理しているんだけど、そこには競技プログラミングに使われる様々なアルゴリズムがたくさん含まれているんだ。多くの人がそれを使っているんだけど、数週間前、僕の友人が、実は実装のひとつにバグがある、とメールしてきたんだ。その実装は、入力が相対的に素でない場合、まったく正しくなかったんだ。実装しているときに、そのケースをちょっと見過ごしていたんだ。それで、手っ取り早く修正したんだけど、それをテストするべきだと思ったんだ。だから、自分がやりたくないのなら、代わりにデヴォンに頼めばいいと思ったんだ。それでデヴォンにリポジトリを渡して、それをチェックして作業を始めるように頼んだんだ。それでデヴォンは、正しいリポジトリを見つけて、それをチェックして、リポジトリにあるファイルを全部見つけて、それから私はデヴォンにどんなテストケースをやってほしいかを伝えた。するとデヴィンは、それほど苦労することなくテストを書いてくれた。デヴィンは、テストがどのようなもので、どのようなインターフェイスであるべきかを理解するために、周りを見回しただけだった。コンパイラのエラーだったが、デヴィンはそれを効果的に解決することができ、それを修正するためにインクルードを追加しただけだった。

「それで、デヴォンにテストを少し拡張するように頼んだんだ。この1つの入力をテストするだけでなく、デヴォンにすべての入力に対するテストを書いてほしかった。ブルートフォース・テスト戦略のようなものだ。そこでデヴィンは、4つのネストしたforループを使うようにテスト関数を書き直した。しかし今回、デヴィンがテストを実行した後、デヴィンは実際にテストの失敗を発見した。もしコードが正しければ、テストにコンパイラーがいてもおかしくないのだが、テストは実に合理的に見えたので、おそらく失敗はないはずだった。そこでデヴォンは、私の代わりにプログラムをデバッグしてくれた。失敗したテストの出力と入力をデバッグするためにprint文を追加し、テストを再実行した。この場合、これが入力で、戻り値は実際には9だった。そこでデヴォンはこのことに気づき、テストしようとしているコードの中を探して、戻り値が実際に負でないことを確認するために、extraが0より小さい場合、extra plusはプラスに等しい、つまりプラスは何かに等しい、というコード行を実際に追加した。このコードを修正した後、デヴィンは実際にテストをやり直した。これで自分のコードが正しいことを確信できるし、それを証明するテストもできた」。

「私が見た中で本当に魅力的だったのは、もちろん資金援助だった。ファウンダーズ・ファンドが率いる2100万ドルのシリーズAを含め、私たちは潤沢な資金を得ており、こうした業界のリーダーたちからの支援に感謝している』とのことだ。

また、クレイジーなのは、彼らが『推論を解くことで、幅広い分野で新たな可能性を解き放つことができる。コードはほんの始まりに過ぎない』。

「このデヴォンという会社は、彼らが何を作ろうとしているにせよ、それが単なるソフトウェアになるとは思えない。もし彼らが、AIが効果的に推論し、このエージェントがインターネット上で自律的にこのようなタスクをこなすという問題を解決できたなら、2024年以降に活況を呈するであろう自律エージェント分野で、間違いなく大きなシェアを獲得できると思います。

というのも、このようなツールのデモを見たことがありますが、これほど優れたツールは他にないからです。

さらに、SWEベンチマークも見ることができ、最先端のモデルとして、非常に優れた結果を達成したことが語られた。もちろん、「SWE BenchmarkにおけるDevinのパフォーマンスは、特にこれまでの最先端モデルとの比較で考えると、本当に印象的だ。オープンソースプロジェクトにおける実際のGitHubの問題に対して13.86%の解決率を達成したことは、そのようなプロジェクトで起こりうる問題の複雑さと多様性を考慮すると、実際にかなり注目に値する成果である。

さて、Devinで実際に際立っているのは、以前のモデルを大幅に凌駕していることであり、それらのモデルに編集すべき正確なファイルなどの追加情報を与えた場合でさえもです。そしてこれは、Devinがコードとそれが動作するコンテキストをより強固に理解しており、明示的な指示がなくてもコードベース内の問題を自律的にナビゲートして修正できることを示唆している。

さて、さらに、本当にクールなことがあった: デヴィンのアシストなしでのパフォーマンス能力は、重要な差別化要因である。データセットのランダムな25%のサブセットで評価されたことは、AIの性能が特定のタイプの問題に合わせたものではなく、むしろ一般的に適用可能であることを示している。これは、実世界での応用を意図した自律型AIシステムにとって望ましい特徴である。

この技術レポートは、デヴィンの高度な能力を可能にする手法や技術について、より深い洞察を提供するもので、AIコミュニティやソフトウェア開発コミュニティが待ち望んでいるものだろう。そしてこれらの結果は、ソフトウェア・エンジニアリング・コミュニティにとってAIの価値がどれほど高まっていくかを示すシグナルとなるだろう。

さて、この論文では秘密のテクニックについても触れている。コグニションAIがどのようにしてこのブレークスルーを、しかもこれほど短期間に成し遂げたのかは、少なくとも部外者にとっては謎としか言いようがない。ウー氏は、彼のチームがOpenAIのGPT-4のような大規模な言語モデルと強化学習技術を組み合わせる独自の方法を見つけたということ以外、この技術の基盤について多くを語ることを避けている。この分野の人々が長い間考えてきたことです。モデルとアプローチ、そして物事をうまく整合させることに非常に依存しています』」。

そして、私たちが知っているAIの最高のテクニックのいくつかを組み合わせることで、彼らはこの特別なことで著しい進歩を遂げたようだ。もちろん、彼らは独自に開発した技術や方法論の融合をほのめかしており、それが躍進の核心である可能性もある。そして、このようなブレークスルーを達成するために、これらの技術がどのように統合され、活用されているのかの具体的な詳細は、謎めいた要素を加え、もちろん企業秘密を保護するために、伏せられている。

強化学習はAIにおける強力な手法であり、アルゴリズムが、ペットのしつけのように、取った行動に対して報酬やペナルティを受け取ることで意思決定を行うことを学習する。GPT-4のような大規模な言語モデルと組み合わせることで、人間の言語を強力に理解することができ、反復的なプロセスを通じて、前例のない速度と効率で自己改善できるAIを作り出せる可能性がある。

さて、「モデルを整列させ、物事を正しく整列させる」というアプローチは、実際には微妙なバランスと微調整のプロセスを示唆している。Cognition AIで行われている高度なAI開発の一端を垣間見ることができ、業界に革命をもたらすソフトウェア・エンジニアリング・ツールの新時代の到来を予感させる。

現在、アンドレイ・カルパシーは実際にこのことについて話しており、彼のツイートは、自律走行の進化とソフトウェアエンジニアリングの自動化の間の興味深い並列を概説している。それは、AIがタスクの完了に関与し、高度化していく段階を追跡する説得力のあるアナロジーだ。この軌跡は、AIが日々のコーディング作業の多くを処理することで、開発者がより高度な設計や問題解決に集中できるようになる未来を示している。

そしてデヴィンは、複数の開発ツールを調整し、より自律的に行動することで、実際にこの進化の飛躍を表している。このことは、人間の監視がより抽象度の高いレベルに移行することを示唆しており、特に興味深い。これは、将来のソフトウェア・エンジニアが、コードのすべての行を書くのではなく、AI戦略を導くマネージャーやアーキテクトのような役割を果たす可能性を示唆している。

そしてカルパシー氏は、AIをソフトウェア・エンジニアリングに統合するために不可欠な側面、つまりユーザー・インターフェースのデザインについても触れている。つまり、人間とAIとのインタラクションはシームレスで直感的でなければならず、開発者はAIを効率的に誘導したり修正したりすることができるようにしなければならない。単にAIを賢くするだけでなく、AIと人間が効果的に協働できる環境を設計することが重要なのです」と述べた。

また、Devinのようなツールの高性能化に伴い、ソフトウェア・エンジニアリングの分野にも大きな変化が待ち受けていることも強調された。ソフトウェア・エンジニアの役割は、従来のコーディングよりも監督や高度な概念的作業に重点を置くように変化していくだろう。これは実にエキサイティングな展望であり、生産性の向上と、これまで以上に複雑な問題に取り組む可能性が約束されている。

全体として、我々が今日ここで目にしたのは、自律型AIエージェント・ソフトウェア開発者の最初の、そしておそらく長い列であった。しかし、これは最初であり、おそらく最後ではないだろう。我々は、他の多くの企業がこれに取り組んでいることを知っており、それらはすべて非常によく似たブレークスルーを成し遂げている。コグニション社がデヴィンを発表した今、他社がどのような製品を市場に投入してくるか興味深い。特にコーディングの分野では、自律型AIエージェントに期待されるものという点で、彼らはレースをリードしているようだ。

とはいえ、あなたはこの未来がどうなると思いますか?あなたはワクワクしますか?それとも、これから起こることに対して少し悲観的な方ですか?いずれにせよ、あなたの考えや意見を聞かせてください。そして、もしあなたがこのビデオに価値を見出したなら、下にコメントを残し、今後のアップデートのために購読することをお忘れなく。

コメント

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