最近、テレビ等でも話題になっているChatGPT。
この技術が世界を大きく変えると、少し過度にも思えるような声も聞こえてきますが、程度の大小はあれど、AIが新たなフェーズに入り、それによって今までとは違う世の中になっていくことは間違いないことだと思います。
その影響は、SAPコンサルやABAP開発者にも多かれ少なかれあると思いますので、実際にChatGPTを触ってみた感想を書いてみたいと思います。
ChatGPTとは?
もしかするとChatGPTって何?という方もいらっしゃるかもしれませんので、簡単に説明しておきます。
アメリカのOpenAIという法人がGPT-3という自然言語(日本語や英語など)を扱うAIの言語予測モデルをベースにチャットの形式でやり取りが出来るようにしたWebサービスです。創設にはテスラやスペースXで有名なイーロンマスク氏も関わっています。
アカウントを登録してログインすると、チャット画面が表示され、そこに質問などを投げかけると、AIがチャットを返してきてくれるというものです。いわゆるチャットボットなのですが、返してきてくれる内容がかなり人間が返してくれる精度に近くなっていることで一気にユーザー数が増え、話題になっています。
もし、まだ使ったことがない方は使ってみると一目瞭然なので、無料でも使えますし、ぜひ一度使ってみてください。
ChatGPTでABAPのコードが書ける
ChatGPTのすごい点の1つが、プログラムが書けるということです。
『〇〇というプログラミング言語で、▲▲するプログラムを教えて』と投げかけると、サンプルのプログラムをチャットで返してきてくれるわけです。
PythonやJavaScript、PHPなど、一般的にメジャーな言語ならまだしも、なんとABAPのプログラムもちゃんとAIが生成して返してきてくれます。
試してみると分かりますが、まだ完璧とは言えないレベルではありますが、想像しているレベルは大きく上回ってくるレベルでABAPを書いてくれ、個人的にはけっこうの衝撃を受けたぐらいです。
GitHub CopilotでAIコーディング
AIを使ったコーディングというのは、GPT-3にGitHubのコード情報を学習して作った『GitHub Copilot』というものも話題になっています。
これに関しては、まだ使ったことがありませんが、コードを途中まで書くと続きを書いてくれたり、コメントを書くと、それに合わせてコードを自動提案してくれたりするというものです。
内容にもよるでしょうが、エンジニア自身が書くコード量が3割とか4割減ったという情報もあるぐらいです。AIがプログラミングをサポートする時代に実際に入っているということです。
機械学習のインプットデータが、GitHubのプログラムの情報ということなので、ABAPに関してはまだ使えないかもしれませんが、今後、Webベースのフロントエンドが主流になっていくと、フロントエンドはHTMLや XML、JavaScriptなどでの開発も増えるでしょうし、世の中の流れとしてAIが開発ツールに入ってきているというのは頭に入れておきたいところです。
SAPコンサルの仕事はどうなるか?
SAPコンサルの仕事を要件定義から設計ぐらいまでをターゲットに考えてみた時に、ChatGPTによってどんな影響があるのかを考えてみます。
まず要件定義に関しては、顧客業務のヒアリングをして、Fit&Gapの分析をして、パッケージにフィットしない部分は対応案の検討をして提案するという流れになるかと思いますが、この部分をChatGPTに置き換えるというのは、今の段階では難しいでしょう。
機械学習していけばいくほど、精度が高くなり有用性が高まっていくのがAIだと思いますが、幸か不幸かSAP関連の情報というのが、昔に比べると増えているとはいえ、絶対数として少ないというのがあります。
また、オンラインヘルプなどを見たことがある人なら分かると思いますが、公式に出してくれている情報もパッケージが複雑であるが故にけっこう難解だったりするので、色々ChatGPTにメッセージを投げてみましたが、上手く想定している内容を返してもらうことが難しく、実用するにはまだ時間が掛かるだろうというのが現時点での個人的な結論です。
ABAPerの仕事は無くなってしまうのか?
そもそもERPパッケージの思想からいうと、アドオン開発は極力少なくして、標準システムをカスタマイズで実装できる範囲まで業務をシステムに合わせていきましょうという考え方が本流ではあります。
とはいえ、それだと不便だったり、業務を変えることの影響を考えて、アドオンプログラムで解決したりということが今まで行われてきました。今後も減ってはいくかもしれませんが、アドオンプログラムが一切なくなることは無いでしょう。
ただ、今回のGPT-3のようなAIによってプログラムが生成できるようになった時に、ABAPerとしての仕事が無くなるんじゃないか?という点は気になるところですよね。
結論から言うと、まだすぐにはABAP開発者がいなくても十分なプログラムを自動生成してくれるレベルにまではなっていないので、ABAPerは必要です。
もちろん、開発のサポートツールとして活用することは現時点の精度でも可能ですし、使用出来そうなBAPIや汎用モジュールをChatGPTに提示してもらうというような、ヒントをもらうような使い方はできそうです。
ですが、まだ完璧なプログラムが返ってくるわけではないですし、ChatGPTへのメッセージの送り方によって、返ってくる内容も変わってくるので、生成してくれたプログラムが本当にやりたいことを満たしているのかの確認はやはり必要になります。
その部分の確認が出来て、想定通りになっていない部分は修正するということが必ず必要になるので、それが何年後かまでは分かりませんが、今すぐに取って代わるようなものではないということです。
とはいえ、新たな技術が仕事を変え、社会を変えていくのが、世の常なので、新技術に目を向けておくというのは大切なことだと思います。
コメント