教育現場の課題を解決するAIの力 – 学習レベル対応の自動問題生成
こんにちは。プログラマーのskkです。
今日は新たな教育支援サービスとして作成した、データ検索アシスタントアプリを活用したAIによる問題生成アプリの紹介となります。
アプリの流れ
アプリの流れは以下の通りです。
1. 質問を入力
2. AIによりキーワード抽出
3. キーワードからデータベース検索
4. 検索結果を元にAIがクイズ問題を生成
今回は、利用が自由な医療用語データセットを使い、質問からキーワードを絞り込み、そのデータベースの検索結果から1行をランダムで選んで、その説明文に基づいて4択のクイズ問題をAIに生成してもらうデモを作りました。
デモの主眼・狙い目
このデモの主眼は、以下の2点です。
1. 教師の問題作成の手間を大幅に削減し、授業準備の効率化を図る
2. 問題文生成の指示方法を調整することで、生徒や学生の学習レベルに合わせた柔軟な問題対応が可能
教育の現場においても、ChatGPTなどのAIを活用する試みが行われています。AIは教育支援ツールとして有用な可能性を秘めており、さまざまな教育現場で実証実験が行われているのが現状です。参考リンク(外部)
実際のデモアプリ画面
入力フォームが簡素化されたUIです。調べたい用語や文章を入力します。AIがキーワードを抽出します。
キーワードから全文検索エンジンmeilisearchでデータセットを検索します。入力とは若干異なる関連語も候補に含まれます。
検索結果の中から1行をランダムで選び、その説明文(explanation)を基に、どの用語(term_word)の説明なのかを4択で問う問題文をOpenAIに生成依頼します。
OpenAIに渡した実際のprompt
上記のjsonからランダムで一行抜き出して
term_word と これに似た3つの単語の合計4つの単語kaitouを用意して
explanationの内容と組み合わせて以下のような問題文を作成してください
4つの単語はランダムに並び替えて選択肢としてください。
問題:
以下の説明を表す用語を次の4つから答えよ
「{{explanation}}」
A. kaitou1
B. kaitou2
C. kaitou3
D. kaitou4
このようにして生成された問題文を画面に表示します。
専門的なデータセットから問題を作ることで、AIが把握していない知識を無理に作り出すリスクを回避でき、精度が高まるメリットがあります。
終わりに
モデルやプロンプトを調整すれば、さらに高度な問題文も期待できますが、一方で不適切な出力リスクも存在します。運用時には監視体制を整備する必要があります。
このようにAIを活用した問題自動生成で、授業準備における教師の負担を大幅に軽減できる可能性があります。皆さまにも、様々なユースケースでAIの導入を検討していただければと思います。それでは。
【おまけ】生成したクイズをPDF出力。実際のサービス化する時に答えの表示方法は要検討ですね。