DevOps 企業の Harness は、ロンドンで開催された Unscripted イベントで、AI パイプライン ビルダー、AI テスト自動化、ビルド失敗時の自動コード修正、AI AppSec (アプリケーション セキュリティ)、さらにはランダムな障害を導入して回復力をテストする AI 駆動カオス テストなど、最新の AI 駆動モジュールを発表しました。
Harness氏によると、ソフトウェアチームは計画とコーディングに費やす時間はわずか30~40%で、残りの時間はアプリケーションのテスト、セキュリティ確保、デプロイ、最適化に費やされています。これは、AIによる支援をこれらのコーディング後のプロセスにまで拡張することで、生産性を大幅に向上できる可能性を示唆しています。
HarnessのCEO兼共同創設者ジョティ・バンサルがロンドンのUnscriptedで講演
AI は非決定論的であり、幻覚やプロンプトインジェクションなどの問題に対して脆弱であることを考えると、セキュリティが重要な DevOps プロセスをこのテクノロジーに委託しても安全でしょうか?
CEO兼共同創設者のジョティ・バンサル氏は、Harness AIエージェントよりも大規模言語モデル(LLM)の汎用的な使用の方が幻覚現象が発生しやすいと述べています。ビルドおよびデプロイメントパイプラインの作成といったタスクの場合、「当社のエージェントはタスクをより小さなタスクに分割し、それぞれの小さなタスク専用のエージェントを用意しています」とバンサル氏は述べました。「これらのエージェントは互いの出力を相互検証します。」
もう一つの重要な要素はコンテキスト、つまり組織に関する知識であり、「過去の実績、ビルド、セキュリティテスト、コード変更、サービスとその依存関係」に関する知識だと彼は述べた。「エージェントはこれらを活用するため、不正確な情報や錯覚が生じることはありません」
さらに彼は、「これらはすべて人間の介入なしに行われるわけではありません。私たちのAIは本番環境へのデプロイメントを行っているわけではありません。私たちのAIは、本番環境へのデプロイメントを行うための決定論的なパイプラインを作成しているのです」と断言しました。非決定論性を完全に排除することはできないものの、AIが自動化を構築した後は、「それを監査し、コンプライアンスやガバナンスについてレビューする必要があります。私たちはAIを通じてデプロイメントを行っているのではなく、AIを通じてデプロイメントパイプラインと自動化を構築しています。そして、実行時にAIが介入しないため、決定論的で再現性のあるものになります」と彼は続けました。
しかし、人間によるチェック、いわゆる「人間がループに入る」という問題は難しい。イベントの基調講演でバンサル氏は、これまでユーザーインターフェーステストを作成できなかった非専門家でも、必要な内容を平易な英語で記述することでテストを作成できるようになったと説明した。また、AI生成コードの使用により、コード量が従来の4倍にも膨れ上がり、人間がすべての行をチェックすることが困難になっているとも述べた。「だからこそ、チェック・アンド・バランスのプロセスをより堅牢にする必要があるのです」とバンサル氏は語った。「テスト、デプロイメント、ロールバック、ガバナンス、コンプライアンスなど、プロセス全体を大幅に改善する必要があります。」
Harness プラットフォームでは、これらすべてのプロセス自体に AI が含まれる可能性があることを考えると、AI に独自の出力をチェックするように求めていることになりますか?
AIが行ったことをAIにチェックさせることは可能ですが、私は常に2つの異なるAIを使用することをお勧めします。1つのAIに両方の作業を任せてはいけません。会計業務と監査業務を同じ人に任せてはいけないのと同じです。
関連する問題として、人々が AI にさらに依存するようになると、コードや複雑なプロセスを検証するために必要な人間のスキル自体を見つけるのが難しくなる可能性があるということです。
- Googleが後援するDORAレポートは、AIをソフトウェア開発の中心として再定義する
- フィッシングやマルウェアの蔓延を受け、GitHubはnpmのセキュリティ強化に動く
- Ruby Centralがプロジェクトの管理を引き継いだ後、RubyGemsのメンテナーが辞任
- CloudflareがReact useEffectフックの失策で自らDDoS攻撃
「エンジニアにはAIのタスクマスターのようなスキルが必要だと思います」とバンサル氏は語った。「優秀なエンジニアは、AIに何を依頼すべきか、そしてそれをより良く、より適切に行う方法を理解していなければなりません。こうしたスキルこそが、今や最も重要なスキルになりつつあります。」
AIを使うことは「反復的なプロセスです。AIに何かを指示し、それを確認し、また何かをするように指示し、それを確認する。それがスキルとなり、ソフトウェアエンジニアリングの核となると思います」と同氏は述べた。
これは、最新の Google DORA (DevOps Research and Assessment) レポートの結論を彷彿とさせるもので、実際、DORA の調査は Unscripted 基調講演で言及されました。
AIに懐疑的な方々に朗報があります。HarnessプラットフォームにおけるAIはオプションです。「AIは完全にオフにすることも、部分的にオンにすることもできます」とバンサル氏は言います。「テストにはAIを使っても構わないけれど、セキュリティランタイム保護にはAIは不要だ、というように。チームやアプリケーションごとに設定することも可能です。AIに対する安心感や懐疑心は人それぞれですが、私たちはそれを考慮に入れています。」
Harness DevOpsプラットフォームはKubernetes上で動作し、コントロールプレーンはクラウドまたはオンプレミス(バンサル氏によると80%がクラウド)上に構築されます。Delegateワーカーは常にオンプレミスまたは組織の仮想プライベートクラウド上で実行されます。小規模チーム向けの無料プラン、最大500ユーザーまで利用可能なEssentialsプラン(ユーザーあたり月額30ドル)、そしてEnterpriseプラン(通常年間10万~20万ドル)があります。®