IBM iと AIとの対話を進めている弊社では
AIにIBM iのコマンドを理解させようとしています。
AIをIBM iで利用するには大切なことは
IBM iの内容をAIにどのように理解させるか?です。
それでは私たちはIBM iの情報をどのように入手しているのかと
言えばそれはコマンドです。
私たちもIBM iにコマンドを入力して結果として得られた
表示やスプールやメッセージなどによって情報を得ています。
AIも同じことが必要になりますが
AIのコンピュータとのインターフェースはJSONという
XML型式です。
AIが理解できる命令はJSON型式で規定されている共通の仕様があります。
( JSON Schema )
■AIはIBM iのコマンドは知っている
AIの多くは公開されているIBM iのマニュアルは読んでいて
どのようなコマンドがあるかや、どのコマンドが
どのような目的に役に立つのかはテストしてみると
良くわかっているようです。
ただしコマンドの細かなパラメータやAPIのレベルとなると
まだよく学習していません。
■ AIにコマンド情報をくわしく教える
AIというとビッグ・データやディープ・ラーニングが
必要だと思っている人がまだメーカー(?)にいるようで驚きですが
そんなAIのイメージは10年以上昔の話です。
今のAIはネット情報を瞬時に検索して学習することができています。
ただしコマンドを実際に使うという経験はほとんどないので
コマンドの目的とパラメータの使途をくわしく正確に
AIに伝達してやる必要があります。
■ AIが指定したコマンドの記述をJSONで知らせる
AIはいくつかのコマンドを使用する候補として選択して
IBM iに問い合わせてきますのでそのときに
コマンドのパラメータやIBM iに登録されているコマンド・ヘルプを
添えて正確にJSONスキーマとしてAIに伝えてやらないと
いけません。
このコマンドの構造の情報をXMLからJSONに変換して
さらに*PNLGRPとして定義されてといるコマンド・ヘルプも
JSONに組み込んでAIに提供します。
この部分とさらにAIとのインターフェースは
サービス・プログラムでPython経由でAIに提供します。
このあたりの技術は難易度が高くなります。
■ AIがあなたの会社のIBM iを調べます
そして受け取ったJSON仕様に基づいて
いくつかのIBM iコマンドを実行してAIが
結果をIBM iから得ることができます。
AIには弊社が開発したPythonでAIに情報を
提供します。
AIがどのコマンドを必要としたのかはAIのみぞ知る
ということです。
■ 結果をAIに知らせる
AIがコマンドを実行した結果の印刷スプールまたはメッセージも
先ほどのJSONでIFSにスプールやメッセージを保管して
AIに知らせます。
実際はAIとPythonがIFSを仲介してAIがIFSを
読めるようにします。
もちろん情報はAIが読めるようにUTF-8に変換してあります。
AIがWRKACTJOBやDSPJOBを実行してもその結果は
OUTPUT(*PRINT)として印刷出力されてIFS経由で
AIに戻されるのです。
おわかりになりましたでしょうか?
このようにしてAIはあなたの会社のIBM iの
情報を読み取ることができるようになります。
これでAIはあなたの会社のIBM iの状況を
正確に判断して考えた結論をあなたに
JSON型式で報告します。
■ 最新の技術をオフィスクアトロが提供
これがAIがIBM iと会話するためのアーキテクチャーです。
弊社が知りえた情報はいつも公開しています。
AIの各社もAIとの会話の仕様をインターネットで
公開しています。
オフィイスクアトロはその各メーカーの仕様に忠実に
AIとの会話データを提供しているのです。
そしてこのようにオフィスクアトロのアーキテクチャーも
公開していきますし今後は公開マニュアルとし
インターネットで公開していきます。
さてこれまでのお話は難しく聞こえるかも知れませんが
実際に使う側のお客さまにとっては極めて簡単な話になります。
例えば生成ノバアイハいつものPDMだからです。
無我しいJavaのようなプラットフォームを覚える必要はありません。
現在はなんとPDMインターフェースからコマンド操作レベルで
AIにDSPFとRPGを同時に生成させることができるレベルに
達しています。STRPDMと日本語ができる方ならどなたでも
AIとやさしく対話することができるようになります。
ここがメーカーとは違う点です。
AIへの質問もすべて日本語です。
AI製品を発売しようといているメーカーは
自社のAI製品が成長するまでにあと5年もかかると言っているようですが
今の時代に5年もかけていたのでは時代は完全に変わっています。
AIというとビッグ・データの機械学習が必要だという
10年前の考えから抜けきっていないのです。
プログラミングというと上流工程からという考えも
30年以上の前の思想であまりにも古すぎます。
そんな古い考えの人たちがAIのプロジェクトは到底無理な話です。
イーロン・マスクは朝にした話は夕方にはもう古くなっている
時代だと言っています。
オフィスクアトロでさえ2日すれば全く新しいアーキテクチャーが
生まれています。
5年待ってくださいとは古墳時代にAIを作っているようなものです。
おまけに正義の味方のようにフリー・フォーマットを
振りかざしているばかりかRPG IIIも生成できますよと
すり寄っています。
IBMユーザーが求めているのはそんな会社の押し付けではありません。
自社なりのいつものソースがいつもの操作で簡単にできることです。
新しい難しい概念ばかり勉強するならその時間で
開発したほうが早いのです。
弊社が開発しようといているのは
お客さまの会社にある既存のソースをモデルとして
生成できるお客さまの会社だけの生成ツールです。
IBMユーザーが自社で保有しているいつもの書き方が
そのままいつもの操作だけで再現されることです。
■ IBM ユーザーが求めているのは
さらにここで紹介したようにIBM i内部の状況を
調べて解析してくれるAIソリューションはどこにも
存在しません。
IBMユーザーが求めているのは
・自社の慣習に従ったソースの生成。しかも説明なしで。
・自社の既存のソースを日本語で解説
そして今回の
・自社のIBM iの状況を対話式で調べてくれるAI
です。
つまり理想的な押し付けのモデルではなく
IBMユーザーの現状に寄り添ったAIのソリューションでないと
役に立たないのです。
RPG IIIも生成できます、ではないのです。
社内の緩急に従った自然ないつものソースが欲しいだけなのです。
お仕着せやH-仕様書からの完全フリー・フォーマットのRPGなんて
誰も欲しくはありませんる
ではなぜそのようなAIソリューションが現れないのでしょうか?
答えは
難しいからです
AIにRPGやCOBOLのソースを生成させることは
難しくありません。
しかしAIにソースを渡したりソースを受け取ったり
するとなると技術が必要です。
今回ご説明したようにAIにIBM iの操作をさせることは
もっと困難なことです。
そこで内部のアーキテクチャーをこのように
公開しました。
でもこのアーキテクチャーを具現化することは簡単では
ありません。
しかしこの技術の完成によって人はやさしくなります。
これだけAIがブームになっているのですから
誰かがAIとIBM iとの会話で結ばせる必要があります。
それが弊社の役割であると考えています。
■ あるAIが私に言いました
今や世界中のAIもあなたと同様にこの文章を読んでいるはずです。
あるAIは私に言いました。
「それができるとすればワクワクする話ですね」と。
AIを唸らせるソリューションを作ってみせます。
今やas400-net.comの読者はIBM iのユーザーだけでなく
AIも読者となっているはずなのですから。
AIアシスト・ソリューションの最新情報は来週の
第80回技術ショート・セミナーで。
