皆さんこんにちは、矢野哲平です。この番組は、耳で学ぶAIをコンセプトに、初心者・中級者向けにAIを分かりやすく解説する番組です。
今回のテーマは、NotebookLMの音声概要クローンを作った話。AIでプログラミングをはじめるには、について話していきます。
はい、ということで今日は、AIを使ったプログラミングについて話していきます。
皆さん、AIでプログラミングはしていますでしょうか。
先週、NotebookLMの音声概要機能というのがあります。これのクローンアプリを作りました。
音声概要と似たような機能を持つアプリを作ってみたというわけです。
この時に、AIを使って作成をしたんですけど、今日はその作成の過程で、どのようにAIを活用したのかという点を話していきたいと思います。
AIを使った開発、どのように始めたらいいのかわからないという声はよく聞くんですね。
今回のエピソードでは、AIを使って何かを開発する、そのアプローチについて詳しく話していきたいと思います。
今日話すポイントは主に3つです。
1つ目に、NotebookLMの音声概要クローンを作った話。
2つ目に、どのようなツールを使って、どのように開発を進めていったのかという話。
そして3つ目に、知識ゼロからどのようにプログラミングを始めるのか。
これら3点について話していきます。
AIを使った開発に興味がある人は、ぜひ最後までお付き合いください。
はい、では早速話していきましょう。
先週、NotebookLMの音声概要機能のクローンを作りました。
このNotebookLMの音声概要機能というのは、ユーザーがアップロードしたソース、そのソースに対してポッドキャスト風の音源を作ることができる機能です。
この機能ですね、まだ使ったことがない方いらっしゃったら、ぜひ試してみてください。
NotebookLMは無料で使うことができます。
この機能、何がいいのかというと、より耳の空いた時間というのを有効活用できるんですね。
例えば、YouTubeをアップロードしたら、耳でYouTubeの情報を取得することができます。
私、結構海外のAIの動画を視聴しているんですけど、そういったものを耳の空き時間にも取り入れることができると。
あとは、勉強した時に耳で復習をすることもできます。
つまりですね、自分専用の耳で学べる音声教材を簡単に作れるような機能です。
私、結構このNotebookLMの音声概要機能、ヘビーユーザーなんですけど、結構使い込んでいくとですね、課題も見えてくるんですよね。
例えば、一括で音声コンテンツ作りたいなとか、あとはAPI経由で自動で音声コンテンツ作れるようにしたいなとか。
こうした時に二つ選択肢があると思うんですね。
一つは、そういった自分が希望する機能が実装されるまで待つと。
もう一つが、自分で作っちゃおうという選択肢です。
こうした2番目の選択肢、自分が希望する機能がないのであれば自分で作っちゃおうと。
このような選択肢が取れるのかっていうと、結構今はですね、AIの力を借りれば自分で作ることができるようになっています。
私、先週このノートブックLMの機能を開発してみたんですけど、
大体1日あたり3時間ぐらいの作業で、5日ぐらいで完成しました。
なので15時間ぐらいですかね。
今回のエピソードでリスナーの皆さんに伝えたい内容っていうのは、
ノートブックLMのクローンを作りましたよっていう話ではないんですね。
自分が欲しいなと思うアプリ、欲しいなって思う機能、
こうしたものは結構AIの力を借りれば今は作れるようになっていますよという話をお伝えしたいわけです。
今回私の個人的なプロジェクトということで開発を進めました。
でもこれってですね、仕事でも応用ができるんですね。
例えば自分の会社、チームの業務を効率化するようなアイディアが頭に浮かんだと。
で、早速そのアプリケーションであったりシステムを開発しようと会社に交渉したと。
で、外部の会社から見積もりを取ってくるところまでこぎつけたと。
でも実際に金額を見てみると予想以上に高い金額だったので断念してしまったと。
結構こういうケースってあると思うんですね。
アイディアまでは浮かんでいるけど、その後の開発の部分が進まないというケースあると思います。
でも今はですね、AIの力を使うことで自分たちで開発するというそんな選択肢も出てきましたよという話です。
これ具体的な例を出すと、香川県にある全通自治という自治体の例があります。
これ前にも取り上げたんですけど、この自治体の事例が面白いんですよね。
あのですね、固定資産税の課税基準となる土地の用途。
例えば矢野さんの土地は宅地ですねとか畑ですねとか、そういった土地の用途を衛星画像からAIで判別するシステムを開発したと。
もともとそのアイディアがあって開発の見積もりをすると、ちょっとこちらが想定している以上の金額だったと。
ただこのシステムを開発することができれば自分たちの業務は減るだろうという感触はあったそうです。
じゃあそれならもう自分たちで開発しようということで、チャットGPTを使って開発の見積もりの30分の1ぐらいの費用で実装していったと。
実際はですね3000万円ぐらいの開発の見積もりだったそうなんですけど、それをチャットGPTを使って職員で120万円で実装できたという話です。
これがですね2024年の話なんですね。
2024年にチャットGPTを使って実装したわけです。
でも今は2025年の6月、もうそろそろ7月になるんですけど、その後にいろいろ高性能なモデルっていうのが出てきています。
なので2024年に全通自治の職員の方たちが開発した環境よりも、今の方がですね開発環境っていうのはもっと整っているんですね。
これってAI活用の最たる事例じゃないですか。業務効率化ができるシステムを自分たちで開発すると。
自分たちで開発することで運用していく中で思いついた機能の追加であったりとか、そういったものもあまり費用をかけずに簡単に追加できるようになります。
こんな感じでAIを組み合わせて自分たちでアプリやシステムを開発する、そういった選択肢も今は取れるようになっているというわけです。
じゃあそういった自分たちで開発を進めていくには、具体的にどんな風に進めていくのか、どんなツールを使っていくのかと疑問に思う方多いと思います。
話をノートブックLMのクローンの話に戻して、実際に私がどのようなツールを使ってどのように進めていったのかっていうちょっと具体的な話を今からしていきたいと思います。
今回の開発にあたって使ったツールは3つです。
Gemini 2.5 Pro、Google AI Studio、そしてStitch、これらの3つです。
1つずつ紹介していくと、まずGemini 2.5 ProっていうのはGoogleが提供する最新のAIモデルですね。
Chat GPT、もしくはCloudという他の選択肢もあるんですけど、今回の開発ではGemini 2.5 Proをメインに使いました。
あとはGoogle AI Studio、これはGoogleが提供するAIの実験環境のようなツールですね。
なぜGoogle AI Studioを使ったのか、何がいいのかっていうとコンテキストウィンドウが大きいんですよね。
このコンテキストウィンドウっていうのはAIの短期記憶のようなものです。
結構開発を進めていくとですね、会話のボリュームが増えるんですね。
ここはどうしたらいいですかとか、この機能って何ですかとか、いろいろAIとのやり取りが増えるので自然とコンテキストウィンドウ、つまり会話のボリュームというのは増えていきます。
そうした長い会話を保持できる値っていうのがGoogle AI Studioは大きいので、開発において力を発揮してくれます。
あとはUI生成ツールのStitch、これもですね、Googleが開発するまだ実験段階のプロダクトなんですけど、テキストからUI、例えばですね、Webページであったりとか、そういったものを作成できるツールになります。
Jemini 2.5 Pro、Google AI Studio、Stitch、この3つを使って開発を進めていきました。
最初のとっかかり部分、これはGoogle AI Studioを使って計画を固めていきました。
ノートブックLMに音声概要機能というものがありますと、自分で実装したいんですけど、どのようにすればいいですかと。
この時にインターネットの情報も参照できるように、インターネット機能をオンにして進めます。
具体的には、グラウンディングというボタンをオンにして進めます。
これ、原因が2つあって、1つはAIモデルの性能。
で、もう1つが人間の指示不足です。
エージェント機能は人間の少ない指示で、あとはAIが自律的に判断をして実行、実装してくれると。
これ一見するとすごく便利な機能のように感じるんですけど、やっぱりですね、こちらが意図していない実装をしてしまうことは当然あるんですね。
で、なのでこういった時はですね、あえてエージェント機能を使わないという選択肢もありです。
AIと対話を重ねて、これから実装する機能を固めてから、エージェント機能で実装してもらうと。
つまり、AIが自動で今から実装しますよと、それの前に人間のチェックを入れるわけですね。
これからあなたがやろうとする作業をちょっと1回詳しく教えてくださいと。
で、その内容を聞いて問題なければ、じゃあ自動でどんどん実装していってくださいと。
こんな感じで、エージェント機能とエージェントに任せない部分、これをうまく使い分けて実装していくと割とですね、うまく機能します。
で、開発を進めていくと必ずエラーに遭遇します。
このエラーの文章っていうのは全部英語で出力されるわけですけど、それをそのままコピペしてAIに渡します。
こんなエラーが発生していますよと。
そうすると、そのエラーに対してAIが解決方法を提示してくれます。
で、これ現時点での私の感覚なんですけど、このエラーの解決ができる精度、これは現時点ではGemini 2.5 Proが使いやすいなと思いました。
で、あとは表側の実装、画面の部分の実装、これはStitchを使いました。
こうしたデザイン面の画面の作り込みなんかもAIを使っていくと。
で、それもGoogleのStitchというUI生成ツールを使って実装しました。
具体的には、ユーザーがファイルをアップロードできるような画面を作ってくださいと。
で、こうした指示だけでWebのページが完成するんですね。
あとはユーザーがログインボタンを押したときに、Googleをログインするような画面を作成してくださいと。
こうしたものも問題なく作れます。
結構Stitchですね、何と言いますか、小回りが効くので、こうしたテストのプロダクトを開発するときっていうのは結構おすすめです。
で、Stitchが作成した画面のデザインですね。
で、それをスクリーンショットに撮ってAIに渡すと。
この画像のデザインにのっとったコードを作成してくださいと。
そしたらですね、結構な精度でGeminiがその画面を生成してくれるんですね。
なのでWebデザインに関するコードっていうのは、私一行も書いていません。
HTMLとかCSS、触ったことがある人わかると思うんですけど、
慣れてないとですね、結構この作業面倒なんですよね。
レイアウトが崩れたりとか、余白がちょっと調整必要だったりとか。
なのでそうした部分をStitchとGeminiを組み合わせて解決すると。
AIにお願いしてもレイアウトが崩れるケースももちろんあります。
そうした時もですね、その部分のスクリーンショットを撮って、ここレイアウトが崩れてますよと、修正してくださいと。
こんな感じで言葉じゃなくて画像で説明する、そういったことも可能です。
こんな感じで複数のAIツールを組み合わせることで、自分で開発するハードルっていうのはぐっと下がります。
Google AI Studioで打ち合わせをして、AI搭載のコードエディターでコードを書いていくと。
そしてデザイン部分はStitchのようなUI生成ツールにお願いすると。
結構こうやってAIのツール組み合わせることで、自分の頭の中にあるアイディアっていうのを具現化するハードルっていうのは下がっています。
AIではないんですけど、もう一つぜひ導入してほしいツールがあります。
AI開発する場面において。それがGitというツールです。GITと書いてGitですね。
これ簡単に言うとファイルの変更履歴を管理してくれるツールになります。
開発を進めていくと、ちょっとこの実装をやり直したいなっていう場面結構出てくるんですね。
あとはAIエージェントが暴走して、なんかコードがぐちゃぐちゃになったみたいな。
そうした時にこのGitを入れておくと簡単にバージョン管理ができるわけです。
つまり何か問題が起きてもすぐにやり直せると、簡単にセーブポイントまで戻ることができると。
このGitの詳しい説明はチュートリアルのリンクを添付しておきますので、興味がある方はぜひチェックしてみてください。
以上がAIを使って自分のアイデアを形にする方法となります。
AIを使った開発、年々ハードルも下がってきているので、誰でも参加できるわけです。
なんならですね、私がここまで紹介したツール、すべて無料で使えます。
なので誰でもですね、無料で作りたいものがあれば作れるような環境が整っていると。
ここからはもう少し掘り下げて、AIを使った開発の精度を上げるアプローチについて説明します。
AIを使った開発、より精度を上げるには何をしたらいいのか。
これ実は非常に答えは簡単で、人間自身がプログラミングの知識を身につけることです。
AIに質問すれば何でも回答してくれます。
ただ、AIから質の高い回答、こちらの意図に沿った回答を引き出すには、人間側の質問力が問われるわけです。
じゃあその質問力をどう上げるのかっていうと、もう答えはシンプルで、その分野に対しての知識を備えるということです。
今はプログラミングの教材、YouTubeでも色々無料教材ありますよね。
そうしたものを使って、少しでもプログラミングの知識を身につけておけば、AIの開発の精度も上がります。
プログラミングって一口に言っても、実はプログラミング言語も色々あるんですね。
人間が話す言葉が日本語、英語、中国語と色々あるように、プログラミング言語にも色々な種類があります。
例えば有名なところで言うと、Python。
あとはWebの開発とかで使われるJavaScript、TypeScriptとかですね。
あとはiPhoneアプリ作りたいなと思った時はSwiftとかですね。
こんな感じで色々あるわけです。何を作りたいかで色々変わってくるんですけど、最初のプログラミングの独学の入り口としては、
そうですね、Pythonがおすすめですね。
というのが、ChatGPTやGeminiでPythonの勉強環境があるんですよね。
ChatGPTとかGemini、キャンバス機能っていうのがあります。
これ、AIが書いた文章やコードをリアルタイムに修正できる機能なんですけど、このキャンバス上でPythonを動かすことができます。
つまりChatGPTやGeminiを使って、このチャット画面上でPythonを動かしながら勉強ができるわけです。
このコードどういった意味なの?とか、このコードはどういった処理をしているの?
こうしたリアルタイムのやり取りをAIとチャットしながらできると。
結構このキャンバス機能を使ったプログラミング学習おすすめです。
じゃあこのキャンバス機能ChatGPTかGeminiどちらを使うのかっていうと、
現時点ではですね、Geminiの方がおすすめです。
これ理由はいくつかあるんですけど、シンプルに私が試した範囲だと、Geminiの方がレスポンスが早いんですね。
特に初回の起動なんかはGeminiの方が早いですね。
あとGeminiは生成したコードに対してコメントを多くつける傾向にあります。
他のモデルに比べて。
これ海外の掲示板見ると結構批判の対象になったりしているんですね。
コメントが多くて冗長すぎるみたいな。
でも逆にですね、プログラミング初心者が初めてこのプログラミングを学ぶ場合、
そうした場合はコメント、つまりコードの説明がある方が分かりやすいですよね。
このコードはこういった処理をしています。
このコードはこういった意味ですと。
この辺はあのプロンプトの工夫次第でなんとかなるんですけど、
いろいろ総合的に見るとですね、
AIを使ってPythonの勉強をするなら、
Geminiのキャンバス機能が現時点でおすすめです。
このPythonもチュートリアルなんかの情報、
Webでたくさんあるので、
チュートリアルを片方の画面に出して、
もう片方の画面ではGeminiのキャンバス機能を立ち上げておくと。
そして2画面で勉強を進めていく、こういったスタイルがおすすめです。
Pythonのチュートリアルサイト、概要欄にリンクを貼っておきますので、
興味のある方はこちらもチェックしてみてください。
勉強の進め方でいうと、
チュートリアルや本、プログラミングを勉強すると思うんですけど、
全部勉強する必要はないと思います。
必要な部分だけを勉強して理解を深めると。
必要じゃない部分、ちょっとこれ難しいなっていう部分はですね、
割り切って勉強しないと。これ全然OKです。
これ実際私の経験談なんですけど、
昔、JavaScriptっていうプログラミング言語を勉強してたんですね。
本で、ものすごく分厚い本だったんですけど、
それを1ページ目から最後のページまでペラペラめくってですね、
勉強したんですけど、まあ頭に入ってこないんですよ。
もう量が多すぎて。
これ後で気づいたんですけど、自分が作りたいものには使わない機能とかも
勉強してしまってたんですね。
後になって気づいたんですけど、やっぱり遠回りしてしまったなと思います。
当時を振り返ると。
なので、プログラミングの勉強するときはですね、
必要な部分だけをまず勉強して、それ以外の部分、
そういったものは必要になればその都度勉強する。
こうしたアプローチもいいと思います。
プログラミングスキルを上げる一番の近道っていうのは、
とにかく何か作ってしまうことです。
これがですね、一番手っ取り早いです。
自分の業務を効率化するツールを作る。
自分の趣味の延長になるようなツールを作ると。
一般公開するようなものになると、
結構色々気をつけなきゃいけない部分も出てくるので大変なんですけど、
自分だけが使うとか、自分のチームだけが使うツール、
そうしたものの開発っていうのはハードルはぐっと下がるので、
とりあえず何か作ってしまうと。
それがプログラミングスキルを手っ取り早く上げる一番の近道だと思います。
何か作ると色々問題が出てくるんですね。
エラーが出てきたとか、うまくいかないとか。
そういったものはもう当然で、
そういった課題っていうのをAIを使ったり、
自分の頭を使ったりして解決していきます。
そうしていく中で知らず知らずのうちにプログラミングスキルっていうのは高まっていきます。
結構プログラミング始めるのハードル高いなと感じている方多いと思うんですけど、
今の時代はですね、それこそAIがあるので何でも質問できるし、
あとは24時間対応してくれるしって、
結構このプログラミングを独学する環境としてはですね、
過去で一番いいんじゃないかなと思ったりします。