開発分野における生成AI導入が広がっている。生成AIツールを使うことで開発が効率化することが期待できる一方で、開発者がそれを素直に喜べない事情もある。どういうことなのか。
開発におけるAI(人工知能)技術の活用が進んでいる。AIベンダーOpenAIのAI(人工知能)チャットbot「ChatGPT」や、MicrosoftのAIアシスタント「Microsoft Copilot」などのAIツールは、開発の計画からソースコードの作成までを支援する。開発プロセスにAI技術を組み込むことで開発の効率が向上することが期待できるが、開発者がそれを素直に喜べない事情もある。
大規模言語モデル(LLM)をベースにした生成AIツールは、技術的な質問に対しても回答を返すことができる。例えばChatGPTは、プログラミング言語「Java」や「Python」を用いてAmazon Web Services(AWS)のクラウドサービスに接続する方法を説明できる。
他にも、AI技術を開発プラットフォームに組み込むことで、API(アプリケーションプログラミングインタフェース)呼び出しやオブジェクト(データとメソッドをまとめたもの)間のデータ移動に必要なソースコードを自動生成させることができる。このようにAI技術で自動化を進めることで、開発者はより創造的な業務に専念できるだけでなく、DevOps(開発と運用の融合)チームの負担軽減にも効果がある。
一方で忘れてはならないのが「AIモデルは完璧ではない」ということだ。人間が誤ったソースコードを書いてしまうことがあるのと同様に、AIモデルも不適切なコードを生成するリスクがある。そのためソースコードの作成者がAIモデルであれ人間であれ、同様のセキュリティポリシーやガバナンスを適用する必要がある。
別の言い方をするなら、ユーザーに十分な技術知識がなかったり、出力内容をユーザーが確認できなかったりする場合は、AIモデルが生成したソースコードを使わない方がよい。開発プラットフォームベンダーAirplaneの共同創設者兼CEOラヴィ・パルク氏は、「90%の確率で適切なソースコードを生成できるとしても、1回でもバグが持ち込まれると大変な事態になる」と警告する。
以下に、生成AIが出力するソースコードの具体的なリスクを3つ紹介する。
AIモデルが生成したソースコードには脆弱(ぜいじゃく)性や構成ミスの懸念が含まれるが、ユーザーはしばしばそのことを忘れる傾向にある。
LLMが生成できるソースコードの品質や規模には限界があり、必ずしも希望通りのソースコードを生成できるわけではない。そのソースコードが動いたとしても、簡潔性や効率性で手書きのソースコードに劣っている場合がある。
著作権や知的財産にまつわるリスクもある。Tabnineのソースコード補完ツール「Tabnine」は、使用許可が下りているデータのみをAIモデルの学習に使っているが、こうした措置は全てのAIモデルやLLMで実施されているわけではない。そのためAIモデルの学習や改良に使われたデータについて、確認が欠かせない。
例えば、ChatGPTの基盤となるモデル「GPT」は、書籍や記事など、インターネットからかき集めた大量のコーパス(言語情報)でトレーニングされている。その中に独占所有権の対象となるデータが含まれていた場合、法的侵害の指摘を受ける可能性がある。
通常、個人や企業同士の特許紛争は法的手段によって解決される。一方で、GitHub CopilotやChatGPTなどのAIツールが生成したソースコードによって生じる紛争の解決プロセスは、明確にはなっていない。
次回は、開発向けAIツールを選ぶ際に、重視すべき条件を解説する。
米国TechTargetの豊富な記事の中から、さまざまな業種や職種に関する動向やビジネスノウハウなどを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
なぜ料理の失敗写真がパッケージに? クノールが展開する「ジレニアル世代」向けキャンペーンの真意
調味料ブランドのKnorr(クノール)は季節限定のホリデーマーケティングキャンペーン「#E...
業界トップランナーが語る「イベントDX」 リアルもオンラインも、もっと変われる
コロナ禍を経て、イベントの在り方は大きく変わった。データを駆使してイベントの体験価...
SEOを強化するサイトの9割超が表示速度を重視 で、対策にいくら投資している?
Reproが「Webサイトの表示速度改善についての実態調査 2024」レポートを公開。表示速度改...