いつもGitHub Copilotを使ってPRのレビューを行っています。やはりGitHubが自動的に動作し、しかも無料に見えるからです。
しかし最近の数回のレビューで、それが本当に「理解」しているのか疑問に思い始めました。
例えば非常に基本的な問題ですが、1.82.0は1.91.1よりも高いと認識していることです。これは古い大規模モデルでよく見られるバージョン番号の誤判定です。
これがモデルの問題だとすれば、rust 1.91.1がまだリリースされていないと誤認識している点もあり、エージェントの検索能力や現状判断能力もあまり高くないことが露呈しています。
もう一つ大きな問題は、Copilotのレビューが明らかに単一ファイル単位で行われていることです。
コードスタイルや境界条件の確認はまあまあですが、全体的な視点に欠けています。例えばあるPRでは、エージェントが相対パスの計算ミスで同じファイルを複数コピーしてしまい、実際には一つだけが有効になっているのに、それに気付いていませんでした。こういった問題を全く見逃しているし、PRに関連する元のissueが何を求めているのかにも関心を持っていません。
私の考えでは、適格なコードレビュアーエージェントはまず全体的な判断をすべきです。
PRがissueを満たしているか、プロジェクトの目標に合っているか、ファイルの配置やアーキテクチャの選択が妥当
原文表示