はじめに
入社や異動の時期になりました。新人さんを含め、これからITに本格的に取り組まれる方も多いと思います。
この記事では、そんな方の登竜門として用意されている「ITパスポート」を取得するためにAIで学習アシストする策を考えます。このプロセスでは、近年の必須スキルとなるAIについても触れることができるため、一石二鳥ともいえます。
今回はAIプラットフォームとしてClaudeを使用します。
記事内にてAIで動かすためのプログラムリソースを紹介しています。
Git・Pythonの準備・実行手順、AnthropicのAPIキー取得手順は記事に含んでいませんので、実践される方はこれらの手順を別途ご確認ねがいます。
変換した過去問データはGitリポジトリにはアップしていません。IPAのサイトから取得ねがいます。
ITパスポート
IPA(情報処理推進機構)が提供する、社会人向けのIT基礎力を確認する国家試験です。近年の合格率はおおよそ5割くらいで推移しています。
ITをビジネスシーンで利用するための3分野の知識(ストラテジ、マネジメント、テクノロジ)が出題されます。
過去問題
ITパスポートの過去問題・解答は、各年度100問公開されています。
過去問題の利用規定については、FAQの記載もご確認ください。この記事では規定に反しない範囲内で利用する方針ですが、公式サイトの記載が正となります。
学習ループの構築
次の2フェーズで実現します。
- PDFで提供されている過去問題のテキストデータ化(1回だけ実施)
- AIによるパターン別の出題(反復実施)
この記事で実現したい内容などを整理します。
| 内容 | 詳細 |
|---|---|
| 機能 | 模擬試験形式とスキマ時間で少量実施の両対応、誤答分野の理解促進 |
| 制約 | 過去問題はPDFでのみの提供となっている、図表なども含まれる |
実現したい内容を列挙してAIと相談しながら固めていく、という進め方もできますが、仕様をある程度自力で検討した後にAIへバトンタッチします。
実現イメージとしては過去問からAIがランダムに抽出して反復練習し、弱点を明確化していきたいです。
ただ、過去問はPDFで提供されており内部にテキストデータを持っている構造でもなく、図表も含まれるためそのままITで利用するには使い勝手が悪いです。
そこで、
- まずはPDFデータを、出題に適したテキストデータへ変換する
- AIはテキストデータを入力として、ユーザーのニーズにあわせた出題を行う
という2ステップに分離して実現します。
AIと連携した準備作業
実現したい仕様を伝えて、プログラムはAIにて作成します。次のようなプロンプトから開始し、いくつか補足情報を与えて図表の扱いなどAIからの提案を選択して、構造をつくっていきます。
問題文と解答を抽出するスクリプトをつくってください、実行は人間が行います。
この抽出結果をSonnetにアップロードするので、次のニーズに回答できるプロンプトを生成してください。
* 通しで試験同等のバランスで100問実施したい
* 1日1答的な運用もしたい
* シラバスと過去問題から、新しい問題を生成して出題してほしい
* NGだった部分について、補足説明を収集して解説してほしい
現行世代の生成AIによるコード出力は品質が高く、文法上の問題はあまり存在しない印象です。しかし、外部とのアクセスで想定しない問題が様々発生することは避けられないため、発生した問題にあわせて修正を繰り返します。この対応でもAIにエラー内容を渡して対処方法を検討して、修正実装まで依頼します。
生成結果
最終的に次の3ファイルが出力されました。実際のファイルは次のGitリポジトリを参照ねがいます。
| ファイル名 | 内容 |
|---|---|
| extract_ip_questions.py | PDFから出題用テキストデータに変換するpythonプログラム |
| prompt_ip_study.md | AI出題用のプロンプト |
| README.md | プログラムの実行手順など |
PDFから問題を抽出するための中核処理として、AnthropicのVision APIを使用しています。ローカルで処理可能なOCRライブラリも存在しますが、表組や図解の構造を含めて精度が高いと思われるVision APIを選択しています。
同API利用には、API用の課金が必要となる点にご留意ください。実績としては、1年分の処理におおよそ1$前後のクレジットを使用しました。
PDF解析による問題・解答ファイルのデータ変換
README.mdに従い、IPAから過去問を取得し、データ変換を行います。
AIによる出題
作成された問題JSONを使用して、指定したパターンで出題するようAIに指示します。
プロンプトも先の処理で同時に出力されています。
Claudeで試した結果では、このプロンプトをもとに次のようなJSXアプリをつくってくれました。
練習しよう
一問一答
隙間時間でコツコツ実施できるように、一問だけ出題・回答して結果を確認します。
模擬試験
本番同等の分野配分で、100問連続で実施します。
新問生成
シラバスをもとに、AIがオリジナルの問題を生成します。過去問は実施し尽くしたという方向けですが、そこまで準備できていれば、おそらく十分合格圏内だろうと思います![]()
サンプル画像に丁度示されていますが、AIは稀に間違った解説を生成することがあります。そのため、最終的な正誤判断は利用者ご自身でご確認いただくことが望ましいです。
おわりに
ITパスポートの合格はひとつのマイルストーンですが、合格・不合格の結果にかかわらずIT知識が身について実務に反映されていることが大切です。
これから挑戦される方は、ぜひITパスポートの準備を通じてIT活用の世界に足を踏み入れてください![]()