.svg)
IBM Bobの始め方は、無料トライアルで試すか、有償のアドオン製品を使うかで、できることと手順が変わります。
まずは無料で試してみたい、という場合は、無料トライアルを申し込み、IBM Bobをインストールして、ワークスペースにダウンロードしたソースコードをIBM Bobに読み込ませます。
ここまでは約30分で進められます。
IBM i 上のソースコードを直接参照したい場合は、有償のアドオン製品「IBM Bob Premium Package for i」をインストールし、IBM i に接続します。
この記事では、2つのパターンの手順を順番に紹介します。
※QSYSのソースコードや、IFSのソース・ストリーム・ファイルを直接参照する場合には、有償のアドオン製品「IBM Bob Premium Package for i」のインストールが必要です(無料トライアルでは利用できません)。
IBM Bobとは、IBMが提供するAIコーディングエージェントです。
既存コードの解析・説明から、改修、テスト、ドキュメント作成までを支援します。
VS Codeをベースにした開発画面(IDE)で、チャットで依頼して使います。
製品の全体像は「IBM Bobとは?IBM i ユーザーが押さえておくべきこと」(https://blog.mono-x.com/what-is-ibm-bob-for-ibm-i-users )で紹介しています。
|
比較
|
パターン1:無料トライアルで始める
|
パターン2:Premium Package for i を使う
|
|
費用
|
無料(30日間、50 Bobcoinsの範囲)
|
有料プラン(Pro 以上)+ Premium Package for i(1ユーザー月40米ドルから)
|
|
読ませるソースコード
|
PCにダウンロードしたソースコード
|
IBM i 上のソースコード(QSYS・IFS)を直接参照
|
|
できること
|
ソースコードの説明と保存、修正案の作成
|
左に加えて、IBM i 上のソースコードの直接参照、コンパイル、SQLの実行、テスト
|
|
必要なもの
|
IBMid、PC
|
左に加えて、IBM i 7.4 以降、SSH接続
|
|
目安の時間
|
約30分
|
約30分~1時間
|
出典:IBM Bob Pricing (https://bob.ibm.com/pricing) 、IBM Bob「Prerequisites」(https://bob.ibm.com/docs/ide/premium-packages/bob-for-i/prerequisites)
プランごとの料金は「IBM Bobの料金はいくら?プランと、IBM i で使うときの費用の考え方」(https://blog.mono-x.com/ibm-bob-pricing-plans-ibm-i-cost )で詳しく紹介しています。
まずは無料で使い勝手(パターン1)を確かめ、IBM i 上の資産を本格的に扱うときにパターン2へ進む、という順番がおすすめです。
STEP1 無料トライアルを申し込む
- 公式サイト(https://bob.ibm.com )を開きます。
- IBMidを用意します。持っていない場合は、メールアドレスで無料登録できます。
- 無料トライアルを申し込みます。30日間、50 Bobcoins(IBM Bobの利用量の単位)の範囲で主要機能を試せます。
STEP2 インストールする
- 公式サイト(https://bob.ibm.com/download )から、PCに合ったインストーラーを入手します。Windows・macOS・Linux 向けが用意されています。
- インストーラーを起動し、画面の案内に沿って進めます。
- IBM Bobを起動し、「Log in to Bob」を選びます。ブラウザが開くので、IBMidでサインインします。

図:ブラウザに表示されるIBM Bobのログイン画面。アカウントがない場合は「Sign up for a free trial」から無料トライアルを申し込めます
ダウンロードからログインまでは、数分で終わります。
残りのBobcoinsは、画面右上のメーターで確認できます。
参考:「IBM i のAI活用の大本命。注目のIBM Bobを早速インストールしてみた」(Qiita)https://qiita.com/sugata/items/de1527c5845acdc242b1
STEP3 ダウンロードしたソースコードを読み込ませる
- 読ませたいRPGのソースコードを、IBM i からPCのフォルダに保存します。保存の方法には、次のような例があります。
・Code for IBM i のダウンロード機能を使う
・ACS などの5250エミュレーターのデータ転送機能を使う
・画面のソースコードをコピーして貼り付け、テキストファイルとして保存する
- IBM Bobのメニューの「File」→「Open Folder」で、そのフォルダを開きます。開いたフォルダが、IBM Bobの作業場所(ワークスペース)になります。
- 画面のチャット欄に、日本語で依頼します。
このフォルダにあるRPGのソースコードについて
処理概要をフローつきで解説してください。

図:品目照会プログラム(IPL020)について返ってきた処理概要とフロー図
品目マスターを画面で照会するプログラムについて、使用しているファイルや画面の一覧が表で返ってきました。
処理の状態をどう切り替えているかの説明と、処理の流れを示すフロー図も示されました。
ほかのRPGでの検証は、「【IBM i ×AI】40年前のRPGも5分で解析?「IBM Bob」の可能性と活用法」(https://blog.mono-x.com/ibm-i-rpg-analysis-with-ibm-bob )で紹介しています。
無料トライアルでは、インストールから読み込ませるまでで、特につまずく点はありませんでした。
気をつけたいのは、依頼の仕方くらいです。
具体的に依頼するほど、欲しい答えが返ってきます(「うまくいった指示の出し方」で紹介します)。
日本語で使う場合
IBM Bobは、日本語に対応しています。
当社の検証でも、日本語での依頼がそのまま通り、回答も日本語で返ってきました。
公式ドキュメントにも日本語版があります(https://bob.ibm.com/ja/docs )。
※ダウンロードしたソースコードを読ませる方法では、関連するソースコード(CALL先や/COPY)も自分で集める必要があります。QSYSやIFSのソースコードを直接参照するには、パターン2の Premium Package for i が必要です。
有償のアドオン製品「IBM Bob Premium Package for i」を使うと、IBM i 上のソースコードやデータベースを、PCにコピーせずに扱えるようになります。
Premium Package for i を導入する手順の詳しい画面は、「【第1部】IBM Bob Premium Package for i 導入ガイド|導入編」(https://blog.mono-x.com/ibm-bob-premium-package-for-i-install-guide-1 )と「【第2部】…|動作確認編」(https://blog.mono-x.com/ibm-bob-premium-package-for-i-install-guide-2 )で紹介しています。
始める前に用意するもの
|
区分
|
必要なもの
|
補足
|
|
契約
|
IBM Bobの有料プラン(Pro以上)+ Premium Package for i
|
無料トライアルでは利用できません
|
|
PC
|
Windows(x64)または macOS(Apple Silicon)
|
Premium Package for i の前提。Linuxはサポート対象外です
|
|
IBM Bob
|
IDE 2.0.0 以降
|
Premium Package for i の拡張機能は 1.0.0 以降
|
|
IBM i
|
IBM i 7.4 以降
|
7.4 の場合は Db2 のPTFグループ SF99704 レベル13以降が必要です
|
|
接続
|
SSHで接続できること
|
SSHサーバーの起動(STRTCPSVR *SSHD)など。IBM i の管理者に確認してください
|
出典:IBM Bob「Prerequisites」https://bob.ibm.com/docs/ide/premium-packages/bob-for-i/prerequisites
Code for IBM i など、IBM i に接続するための拡張機能は、Premium Package for i と一緒に自動で入ります。
すでにVS CodeでCode for IBM i を使っている方は、その設定を引き継げます。
STEP1 有料プランと Premium Package for i を申し込む
有料プラン(Pro 以上)を申し込み、Premium Package for i を追加します。
会社で契約する場合は、購入後に管理者がユーザーへ追加パッケージを割り当てます。
割り当てられると、ユーザー側の管理画面で適用を確認できます。

図:管理画面で Premium Package for i の適用を確認
STEP2 Premium Package for i をインストールする
- IBM Bobを起動すると、Premium Package for i のインストール確認が表示されます。表示されない場合は、拡張機能の画面で「Premium Package for i」を検索します。
- 前提を満たしていない拡張機能があると、警告が表示されます。画面の案内に沿って更新してから、もう一度インストールします。
- インストールが完了したことを確認します。

図:起動時に表示される Premium Package for i のインストール確認

図:前提を満たしていない拡張機能があるときの警告(Db2 for IBM i の更新を求められた例)

図:インストールが完了した画面
STEP3 IBM i につなぐ
Premium Package for i は、Code for IBM i のSSH接続を使ってIBM i にアクセスします。
Code for IBM i を初めて使う場合は、接続先を新しく登録します。
- 左端のアクティビティバーにある IBM i のアイコンを選びます。
- 接続先のホスト名、ユーザー、認証方法を入力して保存します。
- 接続すると、OBJECT BROWSER からライブラリのソースメンバーを検索・表示できるようになります。

図:Code for IBM i で接続先を新しく登録する画面

図:OBJECT BROWSER でソースメンバーを表示
STEP4 IBM i 上のRPGのソースコードを読ませる
5250画面でメンバーを探すときと同じ感覚で、日本語で依頼します。
ライブラリ HNDLIB91 の QRPGLESRC にあるメンバーの一覧を出してください。
続けて、BPL020(得意先別受注一覧表)の処理概要を説明してください。

図:メンバー一覧と処理概要を依頼した結果
返ってきた結果は次のとおりです。
- メンバー一覧が、説明と行数付きの表で返ってきました。
- 使用ファイルや処理の流れまで説明され、5250画面を開かずに内容をつかめました。
エディタで開いたソースコードの一部だけを説明させることもできます。
範囲を選んで右クリックし、「IBM Bob」→「Explain Code」を選ぶと、処理フローの図と解説が返ってきます。
IFS上のソースコードでも、同じ操作で説明させられます。

図:Explain Code で返ってきた処理フローの図と解説
さらに、プログラムが使っている得意先マスタについて、件数・テーブル定義・コード値の分布を尋ねると、IBM BobがSQLを実行して表で答えました。
ソースコードとデータを行き来しながら調べられるため、仕様の確認が速くなります。

図:SQLで件数・テーブル定義・コード値の分布を調べた結果
Premium Package for i の導入・検証で、当社が実際につまずいた点と解決方法をまとめます。
|
つまずいた点
|
起きたこと
|
解決方法
|
|
拡張機能のバージョン
|
以前に入れた Db2 for IBM i が古く、インストール時に警告が出た
|
警告の案内から拡張機能を最新に更新して、再度インストールした
|
|
Code for IBM i が初めて
|
接続設定や操作に慣れるまで時間がかかる
|
先に接続とOBJECT BROWSERの操作だけ覚える。解説サイトも参考になる
|
|
ワークスペースの選び方
|
パスを伝えて依頼すると、ワークスペース外のファイルとして承認を求められた
|
新しいタスクを始めるときに「Library List」または「Home Directory」を選び、IBM i 上の場所をワークスペースにする
|
|
ライブラリリスト
|
必要なライブラリがライブラリリストになく、処理が進まなかった
|
Code for IBM i のライブラリリストに追加してから依頼する
|
|
文字コード
|
元のソースコードがCCSID 5026で、変換に時間がかかった
|
対象ソースコードのCCSIDを事前に確認しておく
|
ソースコードの修正やコンパイルまで試す場合は、本番ではなく検証用の環境で行うと安心です。
当社では、IBM Bobの検証に使えるサンドボックス環境「PVS One for AIエージェント」をご案内しています。
IBM Bobへの依頼は、具体的に書くほど精度が上がります。
当社の検証で効果があった書き方は、次のとおりです。
- 場所を正確に書く:フォルダ名や、「ライブラリ・ソースファイル・メンバー名」まで書くと、探す手間がなくなります。
- 何に使うかを伝える:「仕様書の処理概要に転記したい」など目的を書くと、出力の形がそろいます。
- 出力の形を指定する:「表で」「3行で要約」などと書くと、読みやすい形で返ってきます。
- 作業を分けて頼む:一覧の取得、1本の説明、という順に分けると、途中で確認しながら進められます。
-
たとえば、パターン1の依頼文に「改善点」を加えて、知りたいことを具体的に伝えてみました。
このフォルダにあるRPGについて処理概要と改善点があれば教えてください
すると、処理概要とフロー図(前掲の図)に加えて、改善点もあわせて返ってきました。
フリーフォームへの書き換えや、処理の繰り返し方の見直しなどが、書き換え例のコード付きで示されています。

図:依頼に「改善点」を加えたときに、あわせて返ってきた改善点の例
AIの提案は、そのまま採用せず、内容を確かめてから取り入れるようにします。1本ずつではなく、自社のRPG資産全体を見える化しませんか。