Google、オープンソースのメンテナの負担をAIなどで軽減する「Project Oscar」を発表
Googleは、オープンソースのプロジェクトにおいてメンテナが行っているさまざまな作業を、生成AIなどによる支援で軽減する「Project Oscar」を、インドのバンガロールで行われたイベント「Google I/O Connect Bengaluru 2024」で発表しました。
![Project Oscar](http://www.publickey1.jp/2024/google-oscar-la01.png)
オープンソースプロジェクトには、Issueやプルリクエストやフォーラムでの質問などがコントリビュータから寄せられるため、メンテナはこれらに目を通して、不足している情報があれば指摘し、関連する情報があれば補足し、質問に返答するなど、コードを書く以外のさまざまな作業をしなくてはなりません。
プロジェクトが大きくなればなるほど、こうした作業の負荷は大きくなっていきます。
これらの作業を軽減し、コードを書くという最も楽しい作業に多くの時間をメンテナが割けるように支援するのが「Project Oscar」だと説明されています。
すでにGoogleがオープンソースで開発しているGo言語のプロジェクトで試験的に採用され、開発が進められています。
Project OscarのプロトタイプがGoプロジェクトで稼働中
Project Oscarは、投稿されたIssueに対してプロジェクトの過去のIssueやドキュメントなどから関連性の高い情報へのリンクをリプライとして投稿します(関連する情報が見つからなければリプライしません)。
これにより、すでに解決済みだったり似たようなIssueがあるかどうかなどがすぐに分かるため、投稿者もメンテナもIssueをより深く理解できて、より迅速かつ正確にIssueを解決することにつながります。
こうした作業は必要に応じてメンテナによって人力で行われてきましたが、Project Oscarによりメンテナの負荷が軽減されるだけでなく、Project OscarによるリプライはIssueが投稿されてから数分で行われるため、質問者はリプライに対してすぐに反応でき、より詳しい情報を追加したり、あるいは過去のIssueと重複しているのであれば統合するなどの作業に結びつけやすくなります。
すでにProject OscarのプロトタイプがAIボットの「@gabyhelp」(GabyはGo AI botの略)としてGoプロジェクトのIssueで稼働しており、例えば「runtime/pprof: better generic type information in pprof stack traces · Issue #68196 · golang/go」のリプライを返し、建設的な議論に貢献しています。
![Project Oscarによる@gabyhelpのリプライ](http://www.publickey1.jp/2024/google-oscar-la02.png)
また、Issueがソフトウェアのパフォーマンスに関するものであれば「Performance」ラベルを付けることや、担当のメンテナをアサインすること、再現用にプレイグラウンドへのリンクを要求するなど、AIの自然言語の分析能力を用いてプロジェクトで用意されているツールを適切に用いるための支援も行えるようにするとしています。
オープンソースで公開予定
Project Oscarは現在アーリープレビューで、今後オープンソースで公開される予定です。説明によると現時点でAIボットの@gabyhelpは、GoogleのGeminiとキーバリューストレージのPebble、インメモリのベクトルデータベースを用いており、ローカルマシン上で実行しているとのことです。
今後は、例えば生成AIにOllama、キーバリューストレージとベクトルデータベースにはGoogle Cloud Firestoreなどのオプションを選択できるようにし、さまざまな環境で実行できるようにするとしています。
あわせて読みたい
Google、アプリ実行時に生成AIが適切なUIを構成し動的生成する「AI Generated UI」発表
≪前の記事
AWSがMySQLのODBCドライバを開発、オープンソースで公開。純正ドライバ互換、Amazon Auroraでの高速なフェイルオーバー、AWSのシークレットやIAMのサポートなど