Quick overview
This workflow rebuilds a Qdrant-based knowledge base from Google Drive documents and then answers ElevenLabs voice-assistant questions using an OpenAI-powered RAG agent with conversation memory, returning the response via webhook.
How it works
- Runs manually to (re)build the knowledge base by creating a Qdrant collection and clearing its existing points.
- Lists files in a specified Google Drive folder and downloads each document, converting Google Docs to plain text.
- Splits each document into token-based chunks, loads them as LangChain documents, and generates OpenAI embeddings.
- Inserts the embedded chunks into the Qdrant collection to create a searchable vector index.
- Receives an ElevenLabs webhook POST request containing a spoken question in
body.question.
- Uses an OpenAI chat model agent with windowed conversation memory and a Qdrant-backed vector search tool to retrieve relevant context and generate an answer.
- Returns the generated answer to ElevenLabs as the webhook response.
Setup
- Configure Qdrant by replacing
QDRANTURL and COLLECTION in the HTTP requests and Qdrant vector store nodes, and add an HTTP header auth credential for your Qdrant API key.
- Connect Google Drive credentials and set the source folder ID/name in the Google Drive “Get folder” configuration.
- Add OpenAI credentials for the embeddings nodes and chat model nodes used by the agent and retrieval tool.
- Copy the production webhook URL from the ElevenLabs listener endpoint (
test_voice_message_elevenlabs) into your ElevenLabs Conversational AI tool configuration.
- Run the manual reindex once (and whenever documents change) before enabling the webhook-based Q&A flow.