前回の記事:URLを貼るだけ。自分専用のYouTube要約AIを作ったら、情報収集が変わった話
前回は「作ってみたらこうなった」という体験談を書きました。今回はその具体的な作り方を、実際に詰まったポイントも含めて全部書きます。
コードは一行も書かなくていい。でも、設定作業はあります。その作業を順番通りにやれば動く、という内容にしました。
全体の構成を先に理解する
このツールは3つのステップで動きます。
① YouTube動画の音声をダウンロード(yt-dlp)
↓
② 音声をGemini AIに送って分析(Google Gemini API)
↓
③ 分析結果をMarkdownに整形してObsidianに保存それぞれに必要なツールとアカウントが違います。先に全体像を把握しておくと、詰まったときに「どのステップで詰まっているか」がわかりやすくなります。
必要なもの(事前準備リスト)
ソフトウェア(すべて無料)
アカウント・APIキー(無料枠あり)
STEP 1:Homebrewをインストールする
Macにソフトウェアを簡単に入れるためのツールです。ターミナルを開いて以下を貼り付けて実行します。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"インストール後、ターミナルに表示される「Next steps」の指示に従って brew コマンドが使えるようにPATHを設定します(コピペするだけ)。
確認:
brew --versionバージョン番号が表示されればOKです。
STEP 2:Python 3.12 と Node.js をインストールする
brew install python@3.12 node確認:
python3.12 --version
node --versionどちらもバージョン番号が出ればOKです。
STEP 3:Gemini APIキーを取得する
- Google AI Studio(aistudio.google.com)を開く
- Googleアカウントでログイン
- 「Create API key in new project」をクリック(既存プロジェクトではなく新規で作る)
- 表示されたキーをコピーして、どこかに控えておく
注意点:
・APIキーは形式に関係なく、このページで発行したものが有効です
・無料枠はある程度ありますが、長い動画を大量に処理すると課金が発生します
・課金を避けたい場合は、Google Cloud Consoleで上限設定をしておくと安心です
STEP 4:ツール一式をダウンロードする
ツールのファイル構成はこうなっています。
gemini-claude-project/
├── main.py # メインスクリプト
├── run_video.command # ダブルクリックで実行するファイル
├── setup.sh # 初回セットアップ用
├── requirements.txt # Pythonライブラリのリスト
└── .env # APIキーと設定(自分で作成)ターミナルでセットアップスクリプトを実行します:
cd ~/Desktop/gemini-claude-project
bash setup.shこれで必要なPythonライブラリが自動でインストールされます。
STEP 5:.envファイルを設定する
プロジェクトフォルダ内に .env というファイルを作り、以下の内容を書きます。
GEMINI_API_KEY=ここにSTEP3で取得したキーを貼る
OBSIDIAN_VAULT_PATH=/Users/あなたのユーザー名/obsidian/OBSIDIAN_VAULT_PATH はObsidianのVault(保管庫)があるフォルダのパスです。Obsidianの設定画面で確認できます。
STEP 6:実行する
run_video.command をダブルクリックするだけです。
初回はターミナルが開いてセットアップが走り、そのまま動画の処理が始まります。
▶ YouTube → Obsidian Digest Engine
0 / ENV CHECK
✔ Environment OK
1 / AUDIO EXTRACTION
AUDIO EXTRACTION (1/4) ━━━━━━━━━━━━ 100% 0:00:18
✔ Audio ready: xxxxxxxx.mp3 (28分23秒)
2 / GEMINI AI ANALYSIS
✔ AI ANALYSIS COMPLETE 0:00:36
3 / OBSIDIAN OUTPUT
✔ FILE WRITTEN
/obsidian/YouTube要約/2026-06-15_タイトル.md
✔ MISSION COMPLETEDObsidianを開くと、YouTube要約 フォルダにノートが追加されています。
別の動画を処理したい場合
ターミナルで直接実行します:
cd ~/Desktop/gemini-claude-project
python3.12 main.py https://youtu.be/別のURLまたは run_video.command の中のURLを書き換えて使います。
詰まりやすいポイントと解決策
❌「Requested format is not available」と出る
yt-dlpがYouTubeのボット対策に引っかかっています。--remote-components ejs:github というオプションが必要です。setup.sh経由でインストールすれば自動的に設定されますが、手動で確認したい場合:
cat ~/.config/yt-dlp/config以下の2行が書かれていればOKです:
--js-runtimes node:/path/to/node
--remote-components ejs:github❌「node: command not found」と出る
Node.jsはインストールされているのにスクリプトから見えない、という問題です。NVMというバージョン管理ツール経由でNode.jsを入れている場合に起きやすいです。確認方法:
which nodeパスが表示されない場合は、brew install node で直接インストールし直します。
❌「API_KEY_INVALID」と出る
.envファイルにキーが正しく貼り付けられているか(スペースや改行が入っていないか)確認する- Google AI Studioで新しいキーを発行し直す
❌「models/gemini-xxx is not found」と出る
Geminiのモデル名が古くなっています。.env ファイルに以下を追加して最新モデルを指定します:
GEMINI_MODEL=gemini-2.5-flashGoogleは定期的にモデルを更新するので、エラーが出たら最新のモデル名を確認します。
❌「429 RESOURCE_EXHAUSTED / limit: 0」と出る
無料枠の上限に達しているか、APIキーに紐づくプロジェクトで課金設定がされていません。Google Cloud Consoleでプロジェクトに課金を有効化します。無料枠を超えなければ請求は発生しません。
ツールの中で何が起きているか(技術的な補足)
音声ダウンロード部分(yt-dlp)
YouTubeは2026年現在、「n-challenge」と呼ばれるJavaScriptの問題を解いたクライアントにしか動画を提供しない仕組みになっています。--remote-components ejs:github オプションを使うと、GitHubからJavaScriptの問題解答用コンポーネントをダウンロードして使います。これが現時点での正攻法です。
AI分析部分(Gemini)
音声ファイルをそのままGemini APIにアップロードして、日本語で「この音声を分析して構造化JSONを返してください」と指示しています。テキストに変換してから送るのではなく、音声を直接AIが聞いて解析するのがポイントです。字幕のない動画でも対応できるのはこのためです。
Claudeに作ってもらった話
このツールは、ClaudeというAIに「こういうものを作って」と頼んで作ってもらいました。
自分がやったのは要件を伝えることと、エラーが出たらスクリーンショットを貼ること。それだけで、数百行のPythonコードが書き上がりました。
詰まったポイントの多くは、AIが最初から正解を知っていたわけではなく、一緒に試行錯誤した結果として解決しました。「AIがすべてを知っている」のではなく、「AIと一緒に考えると速く解決できる」というのが正確な表現だと思います。
プログラミングの知識がなくても、「何を作りたいか」と「エラーをそのまま見せる」この2つができれば、こういうツールは作れる時代になっています。
次にやってみたいこと
- 処理したい動画をリストにまとめて、一括で処理する機能
- Obsidianだけでなく、Notionに保存するバージョン
- 要約ノートからブログ記事の草稿を自動生成する機能
最後の「ブログ記事自動生成」は、実はこの記事もその仕組みを使いながら書いています。そのあたりも、いずれ記事にする予定です。
まとめ
合計30分もあれば動く状態になります。詰まったらこの記事のエラー解決セクションに戻っていただければ、だいたい解決できるはずです。
このシリーズの記事一覧:
第1回:URLを貼るだけ。自分専用のYouTube要約AIを作ったら、情報収集が変わった話
第2回(この記事):自分専用YouTube要約AIの作り方【完全手順】詰まりポイントも全部さらす










コメント