NEWS & EVENT
お知らせ・イベント情報
複雑な開発タスクもこなせるエージェント型AIまとめ
2024年06月20日
GitHub Copilotの登場以降、開発が半自動化されつつあります。コメントでの指定はもちろん、コーディング中に文脈に沿ったコードを提示されて驚く場面も多々あります。しかし、GitHub Copilotはあくまでコードの補完を行うものであり、開発タスクの自動化とは言えません。
そうした中、出始めたのがエージェント型のAIです。エージェント型AIでは、指定したプロンプトに沿って、コードを生成してくれます。それはUIやコード、テストなどひとまとめにして生成します。
この記事では、そうしたエージェント型AIをまとめてみました。
Devin (the Developer)
DevinはAIソフトウェアエンジニアとして登場しました。課題を与えると、自律的に情報を取得してコーディングを行います。もちろんデバッグやテストも行います。
開発用の仮想環境を持っており、その中でブラウザを動かしたり、ターミナルでコマンドを実行します。エラーが出た場合にはデバッグメッセージを出力して、その内容に合わせた修正を行います。ほぼ、人が行っているデバッグ方法と言えるでしょう。
Auto-GPT
AutoGPTはChatGPTを利用しつつ、さらに複雑なタスクを解決するためのAIエージェントです。特に開発プロセスだけでなく、任意のタスクに対して自律的に行動します。
特定のアーキテクチャを利用したWebサイト構築を依頼したり、市場調査を行うなどWeb検索と分析を繰り返して複雑なタスクを解決します。
GitHub Copilot Workspace
GitHub Copilot Workspaceは、GitHub Copilotをさらに進化させ、複雑なエンジニアリングタスクに対応するサービスです。自然言語を入力すると、そこで行うべきタスクをCopilot Workspaceが提案します。
提案を承諾すると、操作対象になるファイルをリストアップします。さらに承諾すると編集を行い、確認を出します。このようにエージェントと人が対話を重ねながら、開発を進めていくのが特徴です。
OpenDevin
OpenDevinは先述のDevinをオープンソース実装したソフトウェアです。オープンソースなので、AIモデルも複数から選択できます。ターミナル、コードエディタ、ブラウザを用意しており、複雑なタスクをこなせるようになっています。
基本的にプロンプトで開発したいものを指示し、その結果を受けてさらに指示を出すという形です。あまり複雑な場合、一度で完成させるのは難しいでしょう。
SWE-agent
SWE-agentはGitHubに送られてくるIssueを自動的に解決するAIエージェントです。ベンチマークでは、12.47%の課題を解決したそうです。イチから何かを作るのではなく、既存のリポジトリを対象にしている点が特徴です。
まとめ
MicrosoftがDevinの提供を予定するなど、エージェント型AIの波は確実に近づいています。今はまだ夢のような技術ですが、来年には当たり前になっているかも知れません。
そうした中で、エンジニアはいかに反発しようともあらがうのは難しいでしょう。そうなると、AIとの共存が問われます。いくらAIがコードを生成しても、そのコードが正しいかどうかは人間が判断・承認しなければなりません。正しい仕様理解と、AIの出力を正しく評価する能力が求められるでしょう。