進化とイノベーションを続ける
生成AIのうねりの中で
2022年11月末にChatGPTが登場して約2年。この間、ChatGPT/生成AIが与えてきた影響の大きさについては、多くの言葉を要しないだろう。それはIT分野にとどまらず、社会、文化、ビジネスなど広範囲に影響を及ぼしている。しかもそれは進行中で、状況は刻々と変化し続けている。
なぜ今そのようなことが起きているのだろうか。これについては多くのAI専門家が解説しているが、ここでは「AI技術の進化に伴って大規模言語モデルが登場し、文章の翻訳・言い換えの精度の改善に加えて、対話・要約・生成などで従来不可能であったレベルを達成したから」という東京大学 川原圭博教授の説明を紹介しておきたい。
大規模言語モデルはこの2年間に急速に進化し、イノベーションが進んでいる。このことは「従来不可能であった」ことが可能となり、生成AIによる可能性がさらに広がりつつあることを意味している。IBM i分野における生成AIのさまざまな取り組みも、こうした変化の只中で進行していると見ることができる。
IBM iユーザーの高い関心
広がるIBM iベンダーの取り組み
生成AIに対する関心は、IBM iユーザーの間でも非常に高い。弊誌が昨年(2023年)7~8月に実施した「IBM iユーザー動向調査2023」(回答871件)では、「利用へ向けて、検討・調査を進めている」が25.6%、「興味はあるが、検討・調査は行っていない」が51.7%という結果で、「あまり興味はない」「まったく興味はない」の計22.5%を大きく上回った。また2024年になってから「生成AIを試しに使っている」「何が可能かを検証している」というIBM iユーザーの声をよく聞くようになった。
その一方、IBM iベンダーの多くも生成AIの取り組みを進めている。
福岡情報ビジネスセンターは今年(2024年)6月に「DX推進委員会」を設立し、その中で生成AI分科会をスタートさせた。取締役の江口聡氏は同分科会の目的として「業務改善」を挙げ、「ビジネス、開発、マーケティング、バックオフィスの4つの分野で生成AIを活用する業務DXについて検討を進めています」と話す。
「このうちバックオフィス業務ではMicrosoft 365 Copilot(生成AI対応のOfficeツール)の採用を決めました。会計、経理、人事、給与などの業務でCopilotをどう活用すれば業務効率化が可能か、業務改革も視野に入れながら調査中です。またフードギフト事業を展開するグループ企業のサンリッチはITによる業務の高度化が遅れているので、DX推進室とイノベーションセンターを新設し、デジタル化や生成AIによる業務改革を強力に推し進めています」と、江口氏。
同社ではこのほか、クラウド型生産管理システム「Power-PMS」への生成AIの適用も別プロジェクトで走らせているという。
またMONO-Xも取り組みを進めている。代表取締役の藤井星多氏は「生成AIによってプログラムを生成するツールを年内にリリースする予定で、製品名は『MONO-X AI』です」と話す。
今回の特集では、ミガロ.とベル・データの製品を取り上げた。ともにこの10月にリリースされる予定の製品である。
ミガロ.の「Valence AI Assistant」は、2018年から販売しているローコード開発ツールValenceの新バージョン(6.3)に組み込まれた生成AI機能である。質問と回答という生成AIの仕組みを利用して開発方法を一変させ、生産性を向上させている。
ベル・データの「生成AI連携サービス for i」は、IBM iの開発やマーケティングなどの部門業務を生成AIを使って効率化するSaaS型のクラウドサービスである。
特徴は、テンプレートやよく利用する質問などを登録しておく仕組みを設け、ユーザーの利便性や利用効率を高めていることである。生成AIという新しい技術と、IBM i開発に関する知見や業務支援の経験が融合したソリューションである。
両社の取り組みは、これから本格化するであろう「IBM iの生成AI時代」の先駆けとなるもので、特集の後半で詳しくレポートした。
一方IBMも、IBM iの開発者向けに生成AIを適用する製品の開発を進めている。
今年5月に米国で開催された「POWERUp 2024」で公表したもので、IBM i CTO兼チーフアーキテクトのスティーブ・ウィル氏は講演の中で「IBM iへの生成AIの組み込みを推進しています」と述べた。またそれ以降、米国のIBM i関係者らはWebセミナーやブログなどで開発中の製品やプロジェクトについてたびたび言及してきた。
本稿ではそれらを基に、IBMが開発中の「RPG Code Assistant」について概要をまとめてみたい。なお製品名が「RPG Code Assistant」と明記されたのは、7月に公開されたウィル氏のブログが最初である。ウィル氏はその投稿について「RPG Code Assistantプロジェクトに関する公式な出発点」と述べた。
ウィル氏によると、IBMは2年前から「IBM iのワークロードとAIをどのように組み合わせて使用するか」という話し合いをIBM iユーザーと重ねてきた。その結果、データ分析、運用支援、開発支援の3つのニーズがユーザーの間で高かったという。
「データ分析」のニーズとは、Db2 for iのトランザクションをリアルタイムで監視・分析して、トレンドや異常をすばやく検知すること。「運用支援」のニーズとは、稼働中のIBM iをモニタリングして、アラートの発報や自己修復、最適な運用支援などを実現すること。3つ目の「開発支援」は、コーディングの支援やコードの説明などに関するニーズであったという。
このうち、IBMが「最も必要性が高い」と判断したのは3つ目の開発支援で、これを受けて「2023年後半に、AIベースのRPG Code Assistantの検討をスタートした」という。
説明・生成・テストコード・変換
RPG Code Assistantの4つの目標
IBMではRPG Code Assistantの目標として、次の4つを挙げている。
①RPGコードの説明
②RPGコードの生成
③テストコードの生成
④RPG ⅢコードのFF RPG(フリーフォームRPG)への変換(*編集部注:RPG Code Assistantの目標はその後①②➂とされ、④は追加の目標に変わっている)
①の「RPGコードの説明」は、質問として投入されたRPGコードについての説明・要約である。ウィル氏は、「IBM iユーザーから示された最大のニーズは、膨大な量のRPGコードを簡単に扱えるようにすること」と述べ、「コードの内容を説明するツールがあれば、開発者が作業前に費やす分析や設計の時間を削減でき、さらに開発者がRPGの初心者であればより有益な効果をもたらす」と語った。
なお、現在のChatGPT(OpenAI社)に図表1のようなRPGコードを投入して説明を求めても何らかの回答を返してくる。しかしIBMが目指すのは「RPGの実際の使われ方に即した優れた説明機能」と、ウィル氏は強調している。
②の「RPGコードの生成」は、RPG Code Assistantに対して「従業員に対して支払われる給与を計算するFF RPGコードを生成してください」などと自然な言葉で質問すると、質問に沿った回答を返してくるというもの。IBMではこのテストに成功している、とウィル氏は述べている(図表2)。
③の「テストコードの生成」は、「次のRPGコードのユニット・テストプログラムを生成してください」などと指示すると、内容に沿ったテストコードを生成するというものである(図表3)。
④の「コード変換」については、ウィル氏は次のように説明している。
「大規模言語モデルにRPG Ⅲ以前の古いコードと新しいRPGコードを学習させてそれぞれの内容を説明できるようにすると、古いRPGコードから新しいRPGコードへの変換が無理なく行えることがわかりました。システム/36時代のRPG Ⅱコードや旧式の日付定義などの変換も可能になると見ています」
RPG Code Assistantの要素と
システム構成(推定)
ここでRPG Code Assistantのシステム構成を推定してみよう。ただしIBMは、同製品の構成や提供形態、提供時期は「まったくの未定」としていることをお断りしておく。
IBMではRPG Code Assistantで利用する大規模言語モデルとして、IBMが開発し、その後オープンソース化した「Granite」を挙げている。
Graniteは2023年9月に発表されたデコーダーのみの基盤モデル。デコーダーとは処理内容に応じて別の形式へ変換する機能のことで(英語を日本語へ、RPGⅡをFF RPGへ、という変換)、基盤モデルとは大量のデータでトレーニングされ、さまざまなタスクへの対応を可能にしたAIモデルである。
Graniteは、インターネットや学術書、法律・財務文書、プログラム・コードなどからデータを大量に収集し、トレーニングを実施している。ただしこれにはRPGコードは多くは含まれていない。
GraniteがRPG Code Assistantからリクエストを受けて前述の①~④の回答を生成できるようにするには、RPGコードとその説明文をセットにして巨大なコーパス(辞書)を作成し、Graniteでトレーニングする必要がある。
IBMが現在、RPG Code Assistantの一環としてグローバル規模で推進中の「RPGコードの収集プロジェクト」はこのコーパス作りのためのもので、RPG Code Assistantの成否はこの収集プロジェクトが鍵を握っていると言っても過言ではない。
RPG Code Assistantは、大規模言語モデルのGraniteと、GraniteやIBM i、ユーザーとやり取りする生成AIアプリケーションの「RPG Code Assistant」の4つの要素で構成されると推定される(図表4)。ただしRPG Code Assistantの実装や配置場所によって、構成自体は大きく変わる可能性がある。
IBMでは今後、大量のRPGコードとその説明文を基にRPGに特化したGraniteの開発を進め、将来的には以下を実現したい、としている。
・システム/36用のRPG Ⅱなどの古いRPGコードのFF RPGへの変換
・オープンソース言語を適用できるRPGコード内のセクションの提案
・古いデータ定義とアクセスの最新のDb2とSQLへの変換
・他の言語が出発点である場合のモダナイゼーションの支援
RPG Code Assistantは現段階では未知数だが、明るい未来を予感させてくれる取り組みと言えそうである。
*上記の記事は、i Magazine 2024 Autumnに掲載された。その後の主な動きについては、下記(1)(2)をご参照ください。また、最新のRPG Code Assistant情報については(3)をご覧ください。
(1)今年2回目となるIBM iのビッグイベント「IBM i Advantage 2024」開催 ~IBM iと生成AI、IBM iユーザーにおけるIT人材育成が話題の中心に
https://www.imagazine.co.jp/ibm-i-advantage-2024-001/
(2)日本独自に「生成AIでRPGをどのように処理できるか」、日本IBMでプロジェクト進行中 ~RPG Ⅲユーザーに情報提供を呼びかけ、「IBM i Advantage 2024」で紹介
https://www.imagazine.co.jp/ibm-i-advantage-2024-0002/
(3)S・ウィル氏が日本では語らなかったこと ~1週間後の米国セミナーでRPG Code Assistantの狙い・進捗状況を詳細に説明
https://www.imagazine.co.jp/s-will-rpg-ca2024-12-999/
[i Magazine 2024 Autumn掲載 & i Magazine・IS magazine]