68日目: noteを「資産」に変える!AI(NotebookLM)で過去記事を自動提案する仕組み作り
せっかく魂を込めて書いた記事が、投稿から5日もすれば誰にも読まれなくなってしまう。
そんな使い捨てコンテンツになってしまう悩みを、エンジニアの知恵で解決しませんか?
今回、私はGoogleのAIツールであるNotebookLMを活用し、読者に最適な過去記事をおすすめする仕組みを構築しました。
技術的な制限をどう乗り越え、記事をおすすめするためにレバレッジ(てこ)を利かせるのか。
SEとしての試行錯誤と、たどり着いた『資産化』の工夫を共有します。
【課題】noteの宿命「5日間の消費」を「循環する資産」へ変える挑戦
私の記事は、様々なジャンルのコアな内容を扱うことも多いので、刺さる人には刺さる、といった類のものだと思っています。
なので、過去の記事でも届きさえすれば楽しんでいただけるものも多いと考えています。

が、過去の記事ほど、目に入る機会も少ないですよね。
基本的に、クリエイターページのトップに表示されている、直近5記事くらいが一番みていただけているのではと思います。
そこで、各記事で関連記事や類似記事を紹介すれば、その記事を楽しんでいただけた人に、他の記事も届くのではないか。
そう考えて、記事と関連する類似する記事を提案してくれる仕組みを作ることにしました。
【ツール選定】なぜNotebookLMが過去記事のレコメンドに最適なのか?

今回は記事の提案がゴールなので、私の全記事を読み込んで、それを元に回答してくれるツールが必要になります。
そこで、今回はnotebooklmを利用することにしました。
notebooklmとは、基本無料で使え、ページのリンクやpdfなどをソース(情報源)として登録し、その情報を使って色々考えてくれる生成AIです。
今回は、こいつに私の記事を渡して、おすすめ記事の提案を実現させてみます。
【壁と対策】50ソースの制限と「自動更新されない壁」をどう突破するか

やってみたんですが、どうも無料プランだとソースは50までしか登録できないそうです。
しかも、ソースは登録した瞬間のものを利用するので、後から更新しても反映されないらしく。。。
つまり、私の50を超える記事をソースにするには、一つづつ登録しても数制限超えるからダメ、一覧を登録しても更新されないからダメ。
なんなら記事内のリンクは読みに行かないみたいなので、一覧ページはどのみちダメ。
つまり、最低でも2つの壁にぶつかったわけです。
1つはソース上下の壁。これは、複数記事を纏めて、1つのページなりファイルなりにすれば解決しそうです。
2つは自動更新がされない壁。何かしらの方法で、ソースの再登録が必要そう。
【効率化の試み】GASによる「手間なし」運用術
そこで思いついたのが、ビューの分析ツールを作った時のGASです。
早速確認したところ、noteの記事の取得と加工は、問題なくできました。
ところがその先で大問題。
少なくとも無料プランでは、外部からのプログラムでの操作に対応してないとのことです。
つまり、必ず手作業での操作が必要になると言うこと。
ならもう全部ローカルでPython動かせばいいのでは?
【実装】Python×手作業の最小化:最小の工数で最大の成果を得る現実解

いやまあこれを自動化するのが理想だったわけですが、今回は仕様上できなかったので、極力手作業の手間を減らす方向に舵を切りました。
具体的には、こんな手法を取ることにしました。
pythonで私の公開している記事一覧を取得
urlで取れることがわかったので、これで取得します。
ここから、記事のタイトル、タグ、公開日時、なんかも取れたので、纏めて確保します。未取得の本文の取得
1回目の実行では全記事分ですが、2回目以降の時は未取得の記事だけを選択し、本文を取得します。取得情報の登録
手順1と手順2で取得した内容を、ローカルで保存して置きます。マークダウンファイルに記事を纏める
ひとまず20記事で1つのマークダウンファイルになるようにしてみました。
これなら20×50で1,000記事分入るので、3年程度は安心です。
ここまでを、コマンド一つで出来るようにしました。
あとはこれを手作業で、更新があるはずの1番新しい1ファイルだけnotebooklmに登録すれば完了です。
登録して、試しに過去の記事を対象に、関連のおすすめの記事提案してと聞いた結果がこちらです。
なんかいい感じ!

【転換】と思いきやの衝撃!Googleドキュメント連携で見えた「真の全自動化」
作りきって暫くしてから、調べ直したら衝撃の事実が発覚しました。
なんと、Google drive上のスプシやドキュメントなら、自動でソースの中身を更新してみてくれるそうです。
なら、noteの記事のマークダウンは、全てドキュメントに集約すれば、更新作業の手間がなくなりそうです。
他の機能と統合する為にも、色々とGASで分析するプラットフォームを作ってみるのも、もしかすると効果的なのかもしれません。
【結び】技術でレバレッジをかけ、大切な言葉を一人でも多くの読者へ

こうして、私の記事を、より多くの人にお届けする仕組みが1つ出来上がりました。
このような仕組みを作ったのは、私が開発や物作りが好きだからというのは勿論です。
でもそれ以上に、noteの運営にレバレッジをかけたいと言う思いがあったからです。
私が書いた記事は、多くは5日程度でビューがほぼ0になっていることは、別の記事でお話ししたことがあったかと思います。
これは月間ビューという意味でも、私の記事をどれだけ沢山の人に楽しんで頂けるかという意味でも、とても勿体無いと感じていました。
毎日投稿している記事の一つ一つを、5日間で消費されるコンテンツにするのでなく、もっと長い間楽しんでいただける資産にするにはどうしたらいいのか。
その思いの結晶、今できる最大限が、この仕組みです。
どうかこの試みで、私の記事を楽しんでいただける方が、1人でも増えますように。
私の記事を楽しんで頂いている方が、読んで良かったなと感じる記事が1つでも増えますように。
今回も最後までご覧いただきありがとうございました٩( 'ω' )و
「小難しいことをわかりやすく面白く」をモットーに、色々な記事をマガジンに分けて投稿しています。
面白そうな記事があれば、フォローして次の記事をお待ちください('ω')
※画像はイメージです
おすすめの記事
私の記事がどうしたら楽しんでいただける人に届くのか。
分析するためにこんなツールを作って運用したりもしてます。
こういうこと考えていくと、マーケティングやブランディングに考えが及ぶんですが、ポケモンが化け物過ぎませんか???
どんなものでも生活に活かす、誰かの役に立つものにする、
この姿勢は、この本を読んでから身に着け始めたのですが、読んだことはありますか?
このツールを作った時も含め、chatGPTにはいろいろとお世話になってます。
便利な世の中になりましたね。
今の便利は、どのように紡がれてきたのか。
コンピュータってものはどのようなものだったかご存じですか?
