docs: comprehensive documentation for NotebookLM-RAG integration
Update documentation to reflect new integration features: README.md: - Add 'Integrazione NotebookLM + RAG' section after Overview - Update DocuMente component section with new endpoints - Add notebooklm_sync.py and notebooklm_indexer.py to architecture - Add integration API examples - Add link to docs/integration.md SKILL.md: - Add RAG Integration to Capabilities table - Update Autonomy Rules with new endpoints - Add RAG Integration section to Quick Reference - Add Sprint 2 changelog with integration features - Update Skill Version to 1.2.0 docs/integration.md (NEW): - Complete integration guide with architecture diagram - API reference for all sync and query endpoints - Usage examples and workflows - Best practices and troubleshooting - Performance considerations and limitations - Roadmap for future features All documentation now accurately reflects the unified NotebookLM + RAG agent capabilities.
This commit is contained in:
84
SKILL.md
84
SKILL.md
@@ -31,6 +31,7 @@ Interfaccia agentica per Google NotebookLM tramite API REST e webhook. Automatiz
|
||||
| **Generazione** | Audio (podcast), Video, Slide, Infografiche, Quiz, Flashcard, Report, Mappe mentali, Tabelle |
|
||||
| **Artifacts** | Monitorare stato, scaricare in vari formati |
|
||||
| **Webhook** | Registrare endpoint, ricevere notifiche eventi |
|
||||
| **RAG Integration** | Sincronizzare notebook, ricerche semantiche, query multi-notebook |
|
||||
|
||||
---
|
||||
|
||||
@@ -73,6 +74,10 @@ http://localhost:8000/health
|
||||
| `GET /api/v1/notebooks/{id}/chat/history` | Read-only |
|
||||
| `GET /api/v1/notebooks/{id}/artifacts` | Read-only |
|
||||
| `GET /api/v1/notebooks/{id}/artifacts/{id}/status` | Read-only |
|
||||
| `GET /api/v1/notebooklm/indexed` | Read-only |
|
||||
| `GET /api/v1/notebooklm/sync/{id}/status` | Read-only |
|
||||
| `POST /api/v1/query` | Read-only (ricerca) |
|
||||
| `POST /api/v1/query/notebooks` | Read-only (ricerca) |
|
||||
| `GET /health` | Health check |
|
||||
| `POST /api/v1/webhooks/{id}/test` | Test non distruttivo |
|
||||
|
||||
@@ -86,6 +91,8 @@ http://localhost:8000/health
|
||||
| `POST /api/v1/notebooks/{id}/generate/*` | Lungo, può fallire |
|
||||
| `GET /api/v1/notebooks/{id}/artifacts/{id}/download` | Scrive filesystem |
|
||||
| `POST /api/v1/webhooks` | Configura endpoint |
|
||||
| `POST /api/v1/notebooklm/sync/{id}` | Indicizza dati (tempo/risorse) |
|
||||
| `DELETE /api/v1/notebooklm/sync/{id}` | Rimuove dati indicizzati |
|
||||
|
||||
---
|
||||
|
||||
@@ -242,6 +249,46 @@ curl http://localhost:8000/api/v1/notebooks/{id}/artifacts/{artifact_id}/downloa
|
||||
-o artifact.mp3
|
||||
```
|
||||
|
||||
### RAG Integration
|
||||
|
||||
```bash
|
||||
# Sincronizzare notebook nel vector store
|
||||
curl -X POST http://localhost:8000/api/v1/notebooklm/sync/{notebook_id} \
|
||||
-H "X-API-Key: your-key"
|
||||
|
||||
# Lista notebook sincronizzati
|
||||
curl http://localhost:8000/api/v1/notebooklm/indexed \
|
||||
-H "X-API-Key: your-key"
|
||||
|
||||
# Query sui notebook (solo contenuto notebook)
|
||||
curl -X POST http://localhost:8000/api/v1/query/notebooks \
|
||||
-H "X-API-Key: your-key" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"question": "Quali sono i punti chiave?",
|
||||
"notebook_ids": ["uuid-1", "uuid-2"],
|
||||
"k": 10,
|
||||
"provider": "openai"
|
||||
}'
|
||||
|
||||
# Query mista (documenti + notebook)
|
||||
curl -X POST http://localhost:8000/api/v1/query \
|
||||
-H "X-API-Key: your-key" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"question": "Confronta le informazioni tra documenti e notebook",
|
||||
"notebook_ids": ["uuid-1"],
|
||||
"include_documents": true,
|
||||
"provider": "anthropic"
|
||||
}'
|
||||
|
||||
# Rimuovere sincronizzazione
|
||||
curl -X DELETE http://localhost:8000/api/v1/notebooklm/sync/{notebook_id} \
|
||||
-H "X-API-Key: your-key"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Webhook Management
|
||||
|
||||
```bash
|
||||
@@ -555,7 +602,7 @@ curl http://localhost:8000/api/v1/notebooks -H "X-API-Key: your-key"
|
||||
|
||||
---
|
||||
|
||||
**Skill Version:** 1.1.0
|
||||
**Skill Version:** 1.2.0
|
||||
**API Version:** v1
|
||||
**Last Updated:** 2026-04-06
|
||||
|
||||
@@ -585,3 +632,38 @@ curl http://localhost:8000/api/v1/notebooks -H "X-API-Key: your-key"
|
||||
- Chat functionality
|
||||
- Content generation (audio, video, etc.)
|
||||
- Webhook system
|
||||
|
||||
---
|
||||
|
||||
## Changelog Sprint 2
|
||||
|
||||
### 2026-04-06 - NotebookLM + RAG Integration
|
||||
|
||||
**Implemented:**
|
||||
- ✅ `POST /api/v1/notebooklm/sync/{id}` - Sync notebook to RAG vector store
|
||||
- ✅ `GET /api/v1/notebooklm/indexed` - List synced notebooks
|
||||
- ✅ `DELETE /api/v1/notebooklm/sync/{id}` - Remove notebook from RAG
|
||||
- ✅ `GET /api/v1/notebooklm/sync/{id}/status` - Check sync status
|
||||
- ✅ `POST /api/v1/query/notebooks` - Query only notebook content
|
||||
- ✅ Enhanced `POST /api/v1/query` - Filter by notebook_ids
|
||||
|
||||
**Features:**
|
||||
- NotebookLMIndexerService for content extraction and indexing
|
||||
- Vector store integration with Qdrant
|
||||
- Metadata preservation (notebook_id, source_id, source_title)
|
||||
- Multi-notebook queries
|
||||
- Hybrid search (documents + notebooks)
|
||||
- Support for all LLM providers in notebook queries
|
||||
- Comprehensive test coverage (428 lines of tests)
|
||||
|
||||
**Architecture:**
|
||||
- Service layer: NotebookLMIndexerService
|
||||
- API routes: notebooklm_sync.py
|
||||
- Enhanced RAGService with notebook filtering
|
||||
- Extended VectorStoreService with filter support
|
||||
|
||||
**Documentation:**
|
||||
- ✅ Updated README.md with integration overview
|
||||
- ✅ Created docs/integration.md with full guide
|
||||
- ✅ Updated SKILL.md with new capabilities
|
||||
- ✅ API examples and best practices
|
||||
|
||||
Reference in New Issue
Block a user