GPT-3の登場で見えてきた「AIによるコード生成」の可能性AIによるソフトウェア開発【前編】

OpenAIの「GPT-3」は自然言語処理分野に大きな驚きをもたらした。GPT-3が持つ文章生成能力は、プログラムのコーディングにも応用できるのではないか。そう考えた人々による取り組みも始まっている。

2020年10月26日 08時00分 公開
[Cliff SaranComputer Weekly]

プログラミングをデータ中心に変えるAI

 ソフトウェアを支える基本モデルはデータの重要性を反映する方向へとシフトしている。アプリケーションアーキテクチャでは、このようなデータ駆動型モデルの頂点を表すのがAIだ。AIはサンプルデータを使ってモデルをトレーニングすることで「プログラミング」される。その後、実社会のデータを使ってモデル自体の決定を下すことができる。トレーニングデータが適切であるほど、トレーニングデータに含まれていないデータセットが提示されても正しい決定を下す可能性が高くなる。

 ソフトウェア開発におけるAIの役割に目を向けると、Webで多くの話題を集めていたのがOpenAIの「GPT-3」だった。

会員登録(無料)が必要です

 GPT-3は自然言語処理の新しいAIだ。GPT-3のデザイナーによると、GPT-3は「テキストを入力して、結果をテキストで出力する」汎用(はんよう)のインタフェースを提供するため、どんな仕事でも英語を使って行うことができるという。2020年6月、OpenAIはGPT-3用のAPIをリリースした。OpenAIはそのアルゴリズムを説明するブログ投稿に次のように記載している。「任意のテキストプロンプトが与えられると、APIは利用者が指定したパターンに一致させようと試み、テキストを補完して返す。利用者は行いたいことの例をほんの少し提示することで『プログラミング』を行うことができる。成功するかどうかは、タスクの複雑さによって異なるのが一般的だ。このAPIにより、利用者が提示した例のデータセット(小規模または大規模)でトレーニングを行うか、ユーザーやラベル付けツールが提示する人間のフィードバックから学習を行うことで、特定のタスクのパフォーマンスを利用者が向上させられるようになる」

 実際には、GPT-3のプログラミングでは幾つか例を示す必要がある。その後はあらゆることをGPT-3が判断する。

 Twilioでソフトウェア開発者を務めるミゲル・グリンバーグ氏は最近、GPT-3の使用方法を示す例をアップロードした。この例では、GPT-3とPythonの「Flask」フレームワーク(訳注)を使ってTwilioのチャットbotを構築している。このアプリケーションの興味深い点は、同氏が記述するステップによって実在する中で最も強力なAIエンジンの一つが呼び出され、ランダムな質問に人間のように答えることだ。同氏が記述するステップに必要なのは幾つかのかなり基本的なPythonコードだけだ。

訳注:原文は「Flack」だが、Flaskの誤りと判断した。FlaskはPython用のWebアプリケーションフレームワーク。

 GPT-3を使ってプログラムを作成しているWebのコメンテーターもいる。CrowdboticsもGPT-3はソフトウェア開発にとって革新的なものと見ている企業だ。同社は最新のブログ投稿に次のように記載している。「高品質の自然言語処理の登場は、人間が使う多くの技術ツールに変革的な影響を与えると考えている。ユーザーインタフェースを備える製品をリリースしているあらゆるテクノロジー企業は、GPT-3が自社のビジネスにどのような影響を与えるかを考えるか、言語をよりインテリジェンスに利用するツールに置き換える戦略を考え出す必要があるだろう」

 PayPalでCTO(最高技術責任者)を務めるスリ・シバナンダ氏は、AIのトレーニングを行って作成できるアプリケーションもあると考えている。コードは複数のビルディングブロックで構成される。こうしたビルディングブロックを組み立てることで、大規模で複雑なシステムが生み出される。そのため、プログラマーは繰り返し作業の速度を上げるためにスクリプトを作成することもある。この考え方はシンプルなアプリケーションにも拡張できる。事実、決済アプリケーションはそのような構造になっている。ソフトウェアスタックの最下部にはデータベースやOSが存在する。シバナンダ氏は次のように語る。「AIはコーディングを支援できる。コードと動的なロジックで知識を生み出すことは可能だ。だが、ルールベースのコード作成が可能にするにはそこまでだ」

 AIが作成するコードもあるだろう。だが、プログラミングの複雑さのレベルはさまざまだ。AIが適しているタスクもあれば、適していないタスクもある。例えば、ワードプロセッサは文章をインテリジェントに訂正できる。「全てのドキュメントプロセッサは基本的な文法チェック機能を既に多数提供している」とシバナンダ氏は話す。ワードプロセッサは文章を読み取り、文法規則を当てはめる。プログラミングエディタや対話型開発環境でも、構文を訂正するために同じ技法が用いられる。

 こうしたルールベースのチェックは、プログラマーがコンパイラと高度なプログラミング言語を使ってアプリケーションを開発する以前から存在していた。実際、コンパイラや静的コード分析ツールは、コードが正しい形式で構築されているかどうかをチェックする。

後編(Computer Weekly日本語版 11月4日号掲載予定)では、ソフトウェア開発におけるAIの適用分野とその可能性を紹介する。

Copyright © ITmedia, Inc. All Rights Reserved.

新着ホワイトペーパー

技術文書・技術解説 Snowflake合同会社

AIエージェント実践ガイド:基本概念からユースケース、克服すべき課題まで

意思決定や計画、行動を自律的にこなす「AIエージェント」に対する関心が高まる一方、実装に向けては、データの正確性やアクセスの制御など、多くの課題が立ちはだかる。その解決策や、代表的なユースケースなどについて、詳しく解説する。

製品資料 エス・アンド・アイ株式会社

コンタクトセンターで導入が急拡大する「生成AI」 実際に何ができるのか?

ビジネスにおける生成AI活用が広がる中、コンタクトセンターでも生成AIを使って業務改善につなげる動きが加速している。オペレーターと顧客とのやりとりに生成AIを活用することで、どのような成果が生まれるのか。本資料で解説する。

市場調査・トレンド Exabeam Japan株式会社

サイバーセキュリティ専門職1000人への調査で分かった、AI導入の現状と課題

サイバーセキュリティの領域でもAIの活用が進む中、経営層と現場には、大きなギャップが生まれているという。本資料では、サイバーセキュリティの専門職1000人を対象にした調査の結果から、AI導入の現状と課題を解説する。

製品資料 ServiceNow Japan合同会社

生成AIでカスタマーエクスペリエンスを変革するために取るべきステップとは

生成AIの登場以降、多くの企業が、生成AIの活用によって顧客と従業員の満足度を向上させる方法を模索している。本資料では、生成AIでカスタマーエクスペリエンスを変革するために取るべき重要なステップを解説する。

製品資料 DeepLジャパン合同会社

自動車業界に今、言語AIが必要な理由

自動車業界は、多数の国・地域にまたがるサプライチェーンで構成される。それだけに、正確なコミュニケーションは重要な課題の1つだ。その解決策として注目される、DeepLが提供する言語特化型AIはどのように自動車業界を支えるのか。

アイティメディアからのお知らせ

From Informa TechTarget

「テレワークでネットが遅い」の帯域幅じゃない“真犯人”はこれだ

「テレワークでネットが遅い」の帯域幅じゃない“真犯人”はこれだ
ネットワークの問題は「帯域幅を増やせば解決する」と考えてはいないだろうか。こうした誤解をしているIT担当者は珍しくない。ネットワークを快適に利用するために、持つべき視点とは。

ITmedia マーケティング新着記事

news017.png

「サイト内検索」&「ライブチャット」売れ筋TOP5(2025年5月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。

news027.png

「ECプラットフォーム」売れ筋TOP10(2025年5月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。

news023.png

「パーソナライゼーション」&「A/Bテスト」ツール売れ筋TOP5(2025年5月)
今週は、パーソナライゼーション製品と「A/Bテスト」ツールの国内売れ筋各TOP5を紹介し...