MENU

PART 4 GitHub Copilotを使ってみる ~インストールからRPGコードの生成とその自動解説  |特集 VSCode+生成AIで加速するIBM i開発

GitHub Copilotは、GitHub社とOpenAI社によって開発された、VSCodeで最も利用されている生成AIツールである。主な機能としては以下がある。

・コード補完および提案
・コードの説明の生成(文書化)
・GitHubとの連携(Pull Request の要約やコードレビューなど)
・VSCodeから直接チャット

GitHub Copilotには、Free版とPro版がある。今回はFree版を用いて解説するが、図表9のような制約があるので使用の際は注意してほしい(2025年4月29日現在)。 

図表9 GitHub Copilot Free版の制約

最初に、VSCodeでGitHub Copilot拡張機能をインストールしよう。VSCodeを起動し、拡張機能アイコンをクリックする。続いて上部の検索窓に「GitHub Copilot」と入力し、表示された「GitHub Copilot Your AI Pair programmer」をインストールする(図表10)。

図表10 GitHub Copilotのインストール

インストールが完了すると「ようこそ」タブに次のステップが表示されるので、「Copilot for free」リンクをクリックする(図表11)。

図表11 「Copilot for free」

すると、プラン選択のサイトがブラウザで表示されるので、今回はFreeを選択する。「Get started」をクリックしてGitHubにサインインしておこう。もしユーザー登録していない場合でも、ここでアカウントの登録が可能だ(図表12)。

図表12 freeを選択し、GitHubにサインイン

GitHub Copilotを使ってみる

インストールが完了したら、VSCodeで新しいフォルダを開いておこう。次に、ウインドウ上部右にGitHub Copilotのアイコンがあるのでクリックすると、ウインドウの右側にチャット画面が表示され、右側下のチャット画面で使用するLLMを選択できる。筆者の環境では、GPT-4oが選択されていた(図表13)。

図表13 Copilot利用時の画面

では、簡単なRPGコードを生成させてみよう。画面右側チャットの下の「Copilotに質問します」と表示されている箇所に、以下のプロンプトを入力する。

IBM iの ILE RPGを使用して部品展開ロジックを作成してください。

条件を箇条書きで列挙します。

– フリーフォームRPGで記述すること
– 部品情報はテーブルから取得すること
– 部品展開レベルは可変とすること

Enterキーを押すと、GPT-4oに対してプロンプトが送信され、しばらくすると結果が表示される(図表14)。

図表14 Copilotにコードの生成を依頼

生成されたコードは、コード部分のドットが3つ並んだ右上のアイコンをクリックして表示される「新しいファイルに挿入する」を選択することで、エディタ上に新しいファイルを作成してコードを挿入してくれる(図表15)。今回はtest01.sqlrpgle という名前で保存した。

図表15 「新しいファイルに挿入する」を選択

既存のファイルに生成されたコードを挿入することも可能だ。別途test02.sqlrpgleという名前のファイルを作成してVSCodeで開いておき、左から2つ目のアイコンをクリックして、カーソル位置にコードを挿入して保存も行った。

次に、Copilot生成のコードを保存したファイルをエディタで開き、プログラムの内容を解説してもらおう。作成したファイルをtest02.sqlrpgleとすると、チャット画面のプロンプト入力域は図表16のように表示される。

図表16 チャット画面のプロンプト入力域

エディタで開いているソースコードが、自動的にチャットの参照ファイルとして認識されていることを意味する。このまま、プロンプトに「このプログラムを解説して」と入力してみよう。少し長いが今回の回答のすべてを載せておく(図表17~22)。

図表17 プログラムの解説‐1
図表18 プログラムの解説‐2
図表19 プログラムの解説‐3
図表20 プログラムの解説‐4
図表21 プログラムの解説‐5
図表22 プログラムの解説‐6

いかがだろうか。GitHub Copilotに生成させたRPGコードを詳細に解説しているのがおわかりいただけると思う。今回のコードはコンパイルを実施していないし、データベース・ファイルは架空のものを使用しているので、そのままでは利用できない。ただ、GitHub Copilotは「Your AI Pair programmer」だ。まずは雛形をCopilotに作ってもらい、必要に応じてコードを修正して完成させていけばよい。

そして完成したプログラムを同様に生成AIに解説させることで、プログラム仕様書の元情報を生成させることもできる。これだけでも、生産性はかなり上がるのではないだろうか。

今回はGitHub Copilotを紹介したが、Googleが提供するGemini Code AssistもVSCodeの拡張機能として利用可能だ。こちらもぜひ試してもらいたい。

著者|
小川 誠

ティアンドトラスト株式会社
代表取締役社長 CIO  CTO

1989年、エス・イー・ラボ入社。その後、1993年にティアンドトラストに入社。システム/38 から IBM i まで、さまざまな開発プロジェクトに参加。またAS/400 、IBM i の機能拡張に伴い、他プラットフォームとの連携機能開発も手掛ける。IBM i 関連の多彩な教育コンテンツの作成や研修、セミナーなども担当。2021年6月から現職。

 [i Magazine 2025 Summer号掲載]

特集 VSCode+生成AIで加速するIBM i開発


PART 1 PDM/SEUからオープン系開発ツールへ

PART 2 VSCode + Code for IBM i復習 

PART 3 VSCodeから生成AIサービスを利用する

PART 4 GitHub Copilotを使ってみる

PART 5 Continue + Graniteを使ってみる

PART 6  SEUからVSCodeへの移行ロードマップ
 
PART 7    Code for IBM i+生成AIの次に来るもの

新着