自律型AIソフトウェアエンジニア「Devin」登場。Readmeを読んで環境構築、Print文を使ってデバッグなど

2024年3月14日

AIスタートアップのCognitionが自律型のAIソフトウェアエンジニア「Devin」を発表した。Devinは人間と同様にコードエディタやコンソール、Webブラウザを用いて情報を参照し、コーディングやデバッグ作業を自律的に行える能力を持つようだ。


AIスタートアップのCognitionは、自律型のAIソフトウェアエンジニア「Devin」を発表しました

Devinは人間が課題を与えると、自律的に情報を参照し、コーディングやデバッグ、デプロイを行い、システム構築を実現するAIソフトウェアエンジニアだと説明されています。

下記はCognition AI CEOのScott Wu氏。

Devin開発元Cognition CEOのScott Wu氏

以下はデモ動画からのキャプチャです。

Devinは人間のソフトウェアエンジニアと同様に、自身のコンソール画面(右上)、コードエディタ(右下)、Webブラウザ(左下)を持っています(左上は人間とチャットでやり取りする領域)。

Devinは自分のコードエディタやコンソール画面、Webブラウザを持っている

人間がプロンプトで何らかの課題を与えると、まず課題解決のためのプランを生成します。

課題解決のためのプランを作成

今回、Devinは必要とするAPIの情報をWebブラウザで参照し、情報を利用して開発を進めます。

DevinがWebブラウザでAPIの情報を参照

作業の途中でエラーが出力されると、Devinは関連しそうなコードの場所にデバッグ用のPrint文を挿入し、出力された内容からエラーの原因を探ります。

エラーコードをDevinが参照
関連しそうなところにPrint文を挿入

Devinは出力されたPrint文によるログからエラーの原因を分析し、自律的にデバッグを行います。

最終的にDevinはビルドとデプロイを行い、課題に対応したWebサイトを生成しました(左下のグラフの画面)。

Devinがビルドとデプロイを行い、Webサイトが完成

同社によると、実世界のソフトウェアの課題に関する大規模言語モデルを評価するためのベンチマークである「Real World Software Engineering Performace(SWE-bench)」で、Devinは他を圧倒する成績を示したとしています。

SWE-benchでDevinは他を圧倒する好成績を示す

GitHubリポジトリのReadmeを読んで環境を構築

別のデモ動画では、Devinに大規模言語モデルを量子化により効率よくファインチューニングする「QLoRA」を使ってLlamaのファインチューニングを依頼。

DevinはQLoRaのGitHubリポジトリをクローンし、Redmeを読んでPythonのパッケージ管理システムであるPIPを使って環境を構築。

実行時にCUDA関連のエラーが起きると、NVIDIAの環境を再インストールするなどして問題を解決。問題なくファインチューニングを完了させる様子が示されています。

Devinを発表したブログ「Introducing Devin, the first AI software engineer」には、その他Devinによるライフゲームの機能拡張、テストコードの生成など、Devinによる自律的なシステム構築やプログラミングの様子が紹介されています。

デモ動画の通りであれば、少なくとも初級プログラマよりもずっと優れているように見えるのではないでしょうか。

現時点でDevinはアーリーアクセス版となっており、興味のある人はウェイトリストからの申し込みが必要です。

GitHub Copilot Workspaceより自律的に見える

AIによる自律的なプログラミングは、GitHubも「Copilot Workspace」を昨年(2023年)11月に発表し、デモを披露しています。Copilot WorkspaceもDevinも、課題が与えられると計画を立てるところは似ています。

しかし今回のDevinはデモを見る限り、Readmeを読んでその通りに環境を構築するなど、Copilot Workspaceのデモよりもさらに自律的になっているように見えます。

参考:GitHub、Copilotの将来像となる「Copilot Workspace」発表。人間がコードを書くことなく、Copilotが仕様作成からコード作成、デバッグまで実行。GitHub Universe 2023

あわせて読みたい

プログラミング言語 機械学習・AI 開発ツール




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本