Enable users to connect their Google Drive via OAuth, select multiple files, and ingest them into the system. Selected files will be processed (parse → chunk → embed) and stored in the vector store. These resources will later be used as context in the chat-based course creation flow.
File Selection
- Fetch and display user’s Google Drive files
- Allow multi-select
- Restrict to supported file types:
Ingestion Pipeline
For each selected file:
- Fetch file from Google Drive
- Parse content to text
- Chunk content
- Generate embeddings
- Store in vector DB
- Store metadata per file:
- file_name
- file_type
- source = "gdrive"
- created_at
Resources Storage
Persist each processed file as a “Resource”. Resources should be queryable for downstream usage (chat retrieval)
Resources Tab (UI dependency)
Expose API to list resources
Fields required:
Note: Status (processing, ready, failed) + retry is out of scope for this ticket, but ingestion pipeline should be designed to support status tracking later.
Chat Integration
Expose API to:
- Fetch available resources
- Pass selected resource IDs to retrieval layer
- Retrieval should use vector store based on selected resources
Acceptance Criteria
File Selection
Ingestion
Resources API
Chat Integration
Enable users to connect their Google Drive via OAuth, select multiple files, and ingest them into the system. Selected files will be processed (parse → chunk → embed) and stored in the vector store. These resources will later be used as context in the chat-based course creation flow.
File Selection
Ingestion Pipeline
For each selected file:
Resources Storage
Persist each processed file as a “Resource”. Resources should be queryable for downstream usage (chat retrieval)
Resources Tab (UI dependency)
Expose API to list resources
Fields required:
Note: Status (processing, ready, failed) + retry is out of scope for this ticket, but ingestion pipeline should be designed to support status tracking later.
Chat Integration
Expose API to:
Acceptance Criteria
File Selection
Ingestion
Resources API
Chat Integration