← 기사 목록
日本語https://qiita.com/tags/llm/feed

AIに書かせたコード、人間が全部レビューする必要はもうないのでは

추출된 키워드

15
AI·5コードレビュー·5AI 生成コード·4エージェント·4検証のハーネス·4OSS·3テスト·3·3lint·3静的解析·3実行確認·3curl·2jQuery·2React·2Next.js·2

원문

1,256
AIに書かせたコード、人間が全部レビューする必要はもうないのでは

最近、SNS で「AI にコードを書かせたあと、人間はちゃんとレビューすべきか」という話をよく見ます。

以前の自分なら、かなり強く「見るべき」と思っていました。でも最近は、もう人間が差分を全部読む前提は崩れてきている気がしています。

もちろん、レビューが不要という意味ではありません。むしろ AI によるコードレビューは必須 だと思っています。ただ、人間がやるべきことは、生成されたコードを 1 行ずつ読むことではなく、レビューするエージェントと検証のハーネスをちゃんと作ることに移っているのではないか、という感覚です。

考えてみると、AI が出る前から、自分たちは全部のコードを読んでいたわけではありません。

curl のソースコードを読んでから使っているか。jQuery の中身を全部理解していたか。React や Next.js の実装を読んでからプロダクトに入れているか。

たぶん、ほとんど読んでいません。信頼している OSS は、中身を全部読まずに使ってきました。

もちろん、OSS と AI 生成コードは同じではありません。OSS には利用実績、メンテナ、issue、レビュー履歴があります。一方で、自分のプロジェクトで AI が作ったコードには、そういう外側の信頼がまだ薄い。だから「信頼できないコードは人間が見るべき」という意見はかなり正しいと思います。

ただ、その前提も少しずつ変わってきています。今の AI は、人間が急いで書くコードより、きれいな構造で出してくることが増えました。少なくとも、自分の手元では「まず人間が全部読まないと危ない」という感覚はかなり薄れています。

むしろ、人間レビューが重く必要になるときは、AI の問題というより 仕事の切り方が大きすぎる ことが多い気がします。

何でもかんでも一発で作らせる。仕様も曖昧なまま、広い範囲をドカンと変更させる。テストや型や lint の足場も弱い。その状態で「AI のコードは怖い」と言っているなら、怖いのは AI というより、任せ方の粒度です。

ちゃんと領域を分ける。小さい単位で作らせる。AI レビュー用のエージェントを別に立てる。テスト、型、静的解析、実行確認をハーネスに組み込む。

人間が見るべきなのは、生成コードそのものより、この仕組みのほうだと思っています。

「人間がコードを読めるべき」という話は、まだ正しいです。でも「AI が書いたコードを、人間が毎回すべて読むべき」は、そろそろ違う話になってきている気がします。

これから大事になるのは、コードを読む力そのものより、AI に読ませる設計、失敗を検知する仕組み、任せる粒度を決める力なのだと思います。