ファイルを読み書きするAI

Claude Codeは、ターミナルの中で動くAIツールです。ブラウザのチャットと違って、フォルダの中のファイルを読んだり、新しいファイルを書き出したりします。

試験対策に使う場合、過去問や授業資料を置いたフォルダで起動して、そこから問題や解説を作らせる、という使い方になります。作られたものはMarkdownのファイルとして残るので、あとから開き直したり、内容を足したりできます。

なぜ問題を作らせるのか

学習法の効果については、まとまった研究があります。

同じ材料を読み返した場合とテストを受けた場合を比べた実験では、5分後に測ると読み返したほうが成績が良く、2日後と1週間後では逆転してテストを受けたほうが残ります(Roediger & Karpicke, 2006)。

学習法を10種類比較したレビューでは、効用が高いと評価されたのは練習テストと分散学習の2つでした。ハイライト、読み返し、要約はいずれも評価が低いとされています(Dunlosky et al., 2013)。

説明を書かせるより問題を作らせるほうを選ぶ理由は、このあたりにあります。

渡す資料と、先に決めておくこと

渡すのは、過去問と授業資料です。加えて、その科目の出題がどう作られているかを言葉で伝えます。

過去問がほぼそのまま出るのか、授業内容から毎年作り直されるのか。試験範囲は広いのか狭いのか。この2つで、作らせるものが変わります。

試験の出題傾向を、出題の作られ方と範囲の広さの2軸で見取る図

伝え方は「過去問の類題が中心。範囲は広いが、出題は特定の章に偏っている」という程度で足ります。プロンプトの書き方を工夫する必要はありません。

作らせられる問題の種類

過去問の類題は、出た問題の数字や条件を変えたものです。元の問題を暗記してしまうことを避けられます。

過去問に出ていない範囲の予想問題は、授業資料を章ごとに渡して作らせます。

どちらも、章や単元を指定して範囲を区切れます。範囲を指定せずに全体から作らせると、問題数が多くなります。

出力の形を指示で決められます

Claude Codeでは、問題や解説をどういう形で出すかを指示で指定できます。指定できるものの例を挙げます。

出題される可能性のタグを付けられます。作った問題に「本命」「必要十分」のようなラベルが付くので、解く順番を決めるときの目印になります。

解答を折りたたんだ状態で出力させられます。問題と解答が同じファイルにあっても、解く前に答えが目に入りません。

解答の末尾に、部分点を落としやすい箇所を書かせられます。証明問題では、途中の議論を飛ばすと仮定への矛盾になっていない、といった指摘が付きます。答えが合っているかとは別に、答案として成立しているかを見る材料になります。

予想問題に本命のタグが付き、解答が折りたたまれ、末尾に減点ポイントが書かれている画面

解説に画像を差し込ませられます。該当する授業スライドのスクリーンショットを挿入するよう指示すると、そのとおりに入ります。指示は1行です。

解説には、該当する授業スライドのスクリーンショットをできるだけ挿入すること。

スクリーンショットの挿入自体も自動で行われるので、手で貼る作業は発生しません。

なお、授業スライドは担当教員の著作物です。手元の学習に使う範囲にとどめ、作った教材の配布や公開は避けてください。

作ったものはファイルとして残ります

問題を解いていて分からないところが出たら、その問題について解説を作らせます。章全体ではなく、詰まった1問についての説明が出てきます。

予想問題を解いて詰まった問題が解説になり、間違い集として貯まっていく循環を示す図

出てきた解説は、1つのファイルにまとめていけます。ブラウザのチャットの場合、生成された内容は画面の中に残るだけなので、別の場所へまとめるにはコピーと貼り付けが要ります。ファイルを直接扱える点が、この差になります。

資料を読ませる道具との違い

授業資料を読んで内容を確認する用途では、資料をアップロードして使うサービスのほうが向いた作りになっています。答えに付く引用から元の資料に戻れるので、照合が速く済みます。そちらは別の記事で扱います。

ブラウザのチャット、Gemini Notebook、Claude Codeで、材料の見え方と出せるものを並べた表

使うときの流れ

  1. 過去問と授業資料を置いたフォルダを用意します
  2. 出題のされ方と範囲の広さを、自分で確認して言葉で伝えます
  3. 範囲を区切って、予想問題を作らせます。形式を指定する場合はここで一緒に伝えます
  4. 解けなかった問題の解説を作らせ、1つのファイルにまとめます

範囲を指定せずに全体から作らせると、解ける量を超えた問題が出てきます。章や単元で区切って作らせるほうが扱いやすくなります。