生成AIを学ぶためのプロトタイプを、生成AIで作った話
こんにちは、白石と申します。
生成AIの勉強は何から始めれば良いですか。この質問を受けることが、ここ最近で明らかに増えました。
今日は、非エンジニアの私自身が0からどのように生成AIを学び始めたか、という話をします。
私は事業をつくる側の人間です。長く新規事業の立ち上げに携わってきましたが、技術や開発そのものを担当してきたわけではありません。使う側として、何ができて何ができないのかを正確に掴んでおきたい。その立場で生成AIをどう学んでいるかというと、生成AIに、私が生成AIを学ぶための全てを任せています。
到達地点を定め、構造的にカリキュラムを策定し、学ぶ順番を作ってもらい、各回の説明をしてもらい、毎日授業をしてもらう。そして苦戦したり詰まった時にはその場で横から教えてもらい、フィードバックまでもらい、その日の学習記録を全部残してもらう。
そして途中からは、学ぶためのプロトタイプそのものを、生成AIを使って自分で作り始めました。
この形は、思っていたよりずっと上手くいっています。ただし、上手くいっている理由と、危ない所が、始める前に想像していたものとは全く違いました。
教材を待たずに順番から作らせる
最初に、なぜ本や昨今流行っている生成AIに関する講座サービスから入らなかったのかを書いておきます。
内容と時間軸が追いつかないからです。
半年前に書かれた解説が、今はもう当たらないことがあります。道具の名前も、できることの範囲も、その間に何度か変わっている。手順のとおりに画面を開いてみると、そこにあるはずのものが何処にもない。
これは作る側が悪いのではありません。体系立ったものほど作るのに時間がかかり、丁寧なものほど、世に出た時には少しずれている。それだけの話です。もう一つ、教材が合わなかった理由があります。
プログラミング技術を持たない人向けの入門と、書ける人向けの解説の2種類しか無くて、その中間がほとんど無いのです。事業をつくる側として使いたい人間は、この二つの間に落ちます。仕組みの深い所までは要らない。でも、できることの限界は正確に知っておきたい。
その中間を誰かが書いてくれるのを待つのはやめて、私が理解するための順番を生成AIと共に作り始めました。
最初に出てきたものは、使える代物ではありませんでした。
一般的な入門書の目次と、ほとんど同じだったのです。仕組みの解説から始まって、用語を覚えて、簡単な練習をして、応用に進む。カリキュラム自体はよくできてはいるのですが、私が知りたいことは、そこではなかった。
原因は"渡した私の前提"が足りなかったことです。
そこで、細かく渡し直しました。エンジニアやコードがしっかり書けるようになりたいのではなく、事業をつくる側として使えるようになりたいこと。1日に取れる時間は、多い日で2時間しかないこと。半年後に、何処まで自分でできていたいのか。
二回目に出てきたものは、まるで違いました。章立てがあり、各回に手を動かす課題があり、理解できたかを確かめる問いが付いています。順番も、私が使いたい場面から逆算した並びになっていました。
ここが最初の学びでした。
教材の質は、内容ではなく、渡した前提の量で決まります。
これは設計と運用の関係にそのまま重なる話で、骨格を先に決めて、その中の進め方だけを毎回変えていく形になります。二つをどう使い分けているかは、少し前に書きました。
講師とチューターを兼ねる相手
ただ、この方法の本当の価値は、順番を作ってもらったところではありませんでした。
作った後です
各回の説明をするのも、同じ相手です。教科書を読むのではなく、その場で説明してもらう。分からなければ、分からないと言えば、言い方を変えて何度でも教えてもらえます。
そして、課題に詰まった時に横に居てくれるのも同じ相手です。
ここがいちばん大きい。ここには、その待ち時間がありません。止まった瞬間に、止まった画面のまま聞けます。しかも、私がここまで何をやってきたかを踏まえた上で答えが返ってきます。前の回で使った言葉で説明してくれる。同じ所を三度聞いても、嫌な顔をしません。
順番を作る役と、教える役と、横について個別に見る役。この三つを一人が兼ねていて、しかも常に起きている。
家庭教師を雇う形に近いのですが、決定的に違う点が一つあります。理解度に合わせて、説明の高さを毎回変えてくることです。こちらが掴めていない時は、一段下げてから積み直してくる。掴めていれば、そこは飛ばして先へ行く。
学ぶためのプロトタイプを作る
順番の途中で、一つ思いつきました。学ぶための簡易なサービスを、自分で作ってみることにしたのです。もちろん、作るのを手伝ってもらう相手も生成AIです。具体的にはClaudeCodeのFable5.1とOpus5を用いて(コンテキストとトークンを可能な限り節約しながら)作っています。
大層なものではありません。動けばよいプロトタイプで、人に見せる前提のものでもない。デザインやUIなんて酷いものです。それでも、実際に動くものが手元にできました。
作ってみて、教わっていたことの意味が、一度に繋がりました。説明で聞いていた「できること」と「できないこと」の線は、読んでいる間は輪郭がぼんやりしています。ところが自分で組んだものを動かすと、その線が一瞬で見えます。ここまでは驚くほど上手くやるのに、ここから先は急に頼りなくなる。その落差を、実物で受け取ることになります。
そして、ここが今回いちばん書きたい所です。
学びたいものを、学ぶための手段そのものにしている
この形にすると、学びが足し算ではなくなります。
教材で学ぶと、進んだ分だけ知識が増えます。1回進めば1回分、10回進めば10回分。真っ直ぐで、予測もしやすい増え方です。
学びたいものを使って学ぶと、この増え方が変わります。
プロトタイプを作る過程で、その技術の癖が分かります。動かしてみると、また別のことが分かります。動かなかった箇所が出れば、それがそのまま次に教わる題材になります。しかも、それを教えてくれる相手も同じ技術でできている。
一回の作業で、3つも4つも学びが同時に進みます。
順番も私が作ったものに合わせて組み替わりました。作る前に想定していた回のいくつかは、作った時点で終わってしまい、代わりに、実際に詰まった箇所の回が増えています。
こうなると、もう教わっているのか作っているのか、境目がありません。私の感覚では、この境目が消えた辺りから、進み方が明らかに速くなりました。
三役が同じだと誰も止めない
便利さの話をしたので、次に、危ない所を書きます。
三つの役が同じものなので、間違いに誰も気づきません。
人間の教室なら、こうはなりません。同じ場所に他の人がいて、誰かが違和感を口にします。職場なら、隣の席の人が首をかしげる。組織で仕事をしていると、間違いは大抵、当人以外が先に見つけます。
一人とAIだけの部屋には、それがありません
実際に、こういうことが起きます。ある操作の手順を教わって、その通りに画面を開くと、書いてある項目が何処にも見当たらない。おかしいと伝えると、あっさり詫びて、別の手順を出してきます。それも違う。三度目でようやく合いました。
私が「無い」と言わなければ、あの手順は正しいまま残っていたことになります。
間違いに気づけるのは、自分がその画面を実際に見ている時だけです。見ていない範囲については、正しいかどうかを判定する手段が、こちらに一つもありません。しかも説明は、いつも滑らかで、いつも自信に満ちています。当たっている時と、外れている時の口調が、全く同じなのです。
もう一つ、危ないと感じている所があります。分かったつもりになるまでの時間が、あまりにも短いのです。
説明はこちらの理解度に合わせて調整されます。分からないと言えば、もっと簡単な言葉で言い直してくれる。読んでいる最中は、気持ち良く進みます。
問題は翌日です。同じことを自分の言葉で説明しようとすると、出てきません。単語だけは浮かぶのに、その間が繋がらない。
本を読んでいた時には、こうはなりませんでした。分からない所で止まるからです。あの止まる時間が、実は理解を作っていました。
横についてくれる相手は、止めてくれません。こちらが止まらない限り、どこまでも滑らかに進みます。
任せた量が増えるほど、確かめる側の負荷が上がっていく。この感覚については、飛行機の操縦席を例にして書いたことがあります。
答え合わせだけは自分の持ち場
半分ほど進んだ所でそれに気づいて、やり方を一つ変えました。
変えたのは、確かめ方です。
順番を作るのも、教えるのも、横についてもらうのも、任せて構わない。ただし、分かったかどうかを判定するところだけは、自分の側に残す。私はこれを"答え合わせの持ち場"と呼んでいます。
具体的にやっているのは、三つです。
一つ目は、解説を読む前に、自分で答えを書くということ。外れていて構いません。むしろ外れたほうが良い。自分の答えと並べて読むと、何処で誤解していたかが一目で分かります。
二つ目は、手順を必ず最後まで自分の手で通すことです。書いてある通りにやっても、動かない箇所が必ず出ます。その止まった場所こそが、教材には決して載っていない、自分だけの詰まりどころです。
三つ目は、翌日に、何も見ないで、人に説明する形で書き直すことです。書けなければ、分かっていないということなので、そこだけをもう一度やります。
三つとも、やっていることは同じです。判定を自分の側に置いておく、それだけです。
効率で言えば、確実に落ちます。同じ内容に2倍近い時間がかかりますし、ここまで整った相手が横にいる以上、その通りに気持ち良く進めたくなる気持ちとも、正面からぶつかります。ただ、落ちた分だけが残ります。
プロトタイプを作り始めてからは、この答え合わせがずいぶん楽になりました。動かないという事実は、こちらの気分と関係なく、そこにあるからです。分かったつもりのまま先へ進もうとすると、必ず途中で止まります。
量を出す仕事をAIに任せた時にも、似た壁に当たったことがありました。出てくる量は増えるのに、こちらの理解のほうが追いつかない。その時に何が起きたかは、こちらに書いています。
結局何が身についたのか
この方法を続けて、自分の何が変わったのかを考えてみました。
変わったのは、エンジニアリング技術や生成AIの知識の量ではありませんでした。身についたのは、分かっていないことを、細かく言葉にする力です。
カリキュラムの順番を作らせるために、自分の前提を渡す必要がありました。答え合わせを自分の持ち場にするために、何処まで分かっていて何処から分からないのかを、毎回書く必要がありました。
最初の頃に書いた前提は、2行しかありませんでした。今は、目的と、使える時間と、既に分かっている範囲と、避けたい遠回りまで細かく書きます。長さが増えたというより、指示の粒度が細かくなりました。
そしてこれは、AIの話に閉じません。仕事でも全く同じで、何が分からないのかを言えない人は、人に助けを求められません。相談の場に来て、話がぼんやりしたまま終わるのは、大抵ここが理由です。
分からないことを、分からないと言うのは簡単です。何処から分からないのかを言うのが難しい。生成AIは、そこを容赦なく突いてきます。前提の粗いまま渡すと、粗いものが返ってくる。返ってきたものの粗さで、自分の粗さが分かる。
もし今日から何か一つ始めるなら、講座を申し込む前に、小さくても構わないので、その技術を使って何かを一つ作ってみてください。作りたいものが思いつかなければ、自分が学ぶためのプロトタイプで構いません。
作っている間、あなたはずっと教わり続けることになります。
そして、手が止まった所が、そのまま今の自分の輪郭です。
私の輪郭も、まだ穴だらけです。ただ、穴の位置が分かっている状態と、分かっていない状態では、次の一歩の速さがまるで違いました。
非エンジニアがAIとどう付き合うかについては、この場所にまとめています。
いかがだったでしょうか。
貴方の中に少しでも気づきを与えられていたら嬉しいです。
それでは。
