Install
openclaw skills install notebooklm-rag-line將 NotebookLM 知識自動同步到 LINE AI 助教的 RAG 知識庫,支援自動問答、向量化與延續問題建議。適用於教學助教、客服機器人或個人知識管理。
openclaw skills install notebooklm-rag-line將 NotebookLM 知識自動同步到 LINE AI 助教的 RAG 知識庫。
NotebookLM 來源
↓(老闆新增網站)
patchright 自動提問
↓(取得答案)
bge-m3 embedding(Ollama)
↓(1024維向量)
rag_embeddings.db(SQLite)
↓
RAG Server (port 3002)
↓
line_webhook.aspx(LINE 回覆)
↓
學員收到回答 + 延續問題建議
| 檔案 | 用途 |
|---|---|
rag_enhance.py | 主腳本:向 NotebookLM 提問並存入 RAG |
rag_server.py | Python HTTP Server,處理學員問答 |
rag_embeddings.db | SQLite 向量知識庫 |
line_webhook.aspx | LINE Webhook 接收器 |
| 元件 | 版本 | 備註 |
|---|---|---|
| Python | 3.8+ | 建議 3.10+ |
| Ollama | 最新版 | 安裝 ollama serve |
| bge-m3:latest | Embedding 模型 | ollama pull bge-m3:latest |
| gemma3:4b-cloud | LLM 模型 | ollama pull gemma3:4b-cloud |
| patchright | 最新版 | pip install patchright |
pip install patchright
ollama pull bge-m3:latest
ollama pull gemma3:4b-cloud
編輯 rag_enhance.py 開頭的設定區塊:
CHROME_PROFILE = "你的 Chrome profile 路徑"
NOTEBOOK_ID = "你的 NotebookLM 筆記本 ID"
OLLAMA_HOST = "127.0.0.1"
OLLAMA_PORT = 11434
EMBEDDING_MODEL = "bge-m3:latest"
DB_PATH = r"你的\RAG\資料庫\路徑\rag_embeddings.db"
在 QUESTIONS 陣列中加入你想問的問題:
QUESTIONS = [
"Cloudflare Pages 是什麼?",
"如何部署網站到 Cloudflare Pages?",
# ... 更多問題
]
python rag_enhance.py
腳本會自動:
啟動本地 RAG Server 處理即時查詢:
python rag_server.py
Server 會監聽 http://127.0.0.1:3002/query
Request 格式:
{
"question": "Cloudflare Pages 是什麼?",
"history": "[]",
"user_id": "anonymous"
}
Response 格式:
{
"answer": "Cloudflare Pages 是...",
"suggestions": ["問題1", "問題2", "問題3"]
}
使用 Windows Task Scheduler 每天凌晨自動更新:
# 建立排程工作
$action = New-ScheduledTaskAction -Execute "python" -Argument "D:\node_app\cron\rag_enhance.py"
$trigger = New-ScheduledTaskTrigger -Daily -At "01:00"
Register-ScheduledTask -TaskName "RAG_NotebookLM_Update" -Action $action -Trigger $trigger -Description "NotebookLM RAG 自動更新"
CREATE TABLE rag_embeddings (
id INTEGER PRIMARY KEY AUTOINCREMENT,
question TEXT NOT NULL,
answer TEXT NOT NULL,
embedding BLOB NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
.env 檔案,絕對不要 commit 到公開 repoMIT License - 可自由使用、修改與發布
🦞 爪子鋒利,什麼都能搞定!