A personal RAG (Retrieval-Augmented Generation) pipeline built with N8N that processes voice notes into structured context data for AI workloads.
This workflow transforms raw voice note transcripts into contextually-rich, timestamped data suitable for vector database storage and AI retrieval. The pipeline extracts specific personal context from speech-to-text transcripts, reformats them from first-person to third-person perspective, and prepares them for embedding in vector databases.
- Input: Raw voice note transcripts (potentially containing transcription errors)
- Processing: AI agent extracts meaningful personal context data
- Output: Structured facts reformatted from first-person ("I like pizza") to third-person ("Daniel likes pizza")
- System Prompt: Defines extraction rules and formatting guidelines (see
components/context-extraction-agent/system-prompt.md)
- Processing: Converts extracted context to binary format
- Enhancement: Injects creation timestamp for temporal contextualization
- Purpose: Enables AI workloads to understand when context data was created
- Default Target: Milvus vector database
- Flexibility: Can be substituted with any vector database (Pinecone, Weaviate, etc.)
- Purpose: Enables semantic search and retrieval for RAG applications
- Speech-to-Text Error Handling: Agent infers intended meaning from imperfect transcriptions
- Personal Context Extraction: Filters out casual musings, focuses on significant facts
- Perspective Transformation: Converts first-person references to user's name
- Temporal Context: Timestamps enable time-aware AI responses
- Modular Design: Vector database component can be easily swapped
{
"title": "Bold flavors and favorite foods",
"transcript": "What kind of foods do I enjoy? Well, a former co-worker who was originally from Iran said Dana enjoys foods with very strong flavors...",
"timestamp": "2025-08-15T11:28:21+00:00"
}{
"output": "FOOD PREFERENCES\nDaniel enjoys foods with very strong and bold flavors.\nDaniel enjoys Indian, Nepalese, Ethiopian, and Mexican cuisines, roughly in that order of preference.\nDaniel enjoys falafel and shawarma in Israel..."
}├── components/
│ └── context-extraction-agent/
│ └── system-prompt.md # AI agent instructions
├── payloads/
│ ├── raw-note.json # Example input data
│ └── extracted-context.json # Example output data
├── screenshots/ # Workflow visualization
└── README.md
- Personal Knowledge Management: Build a searchable database of personal preferences and experiences
- AI Assistant Enhancement: Provide context-aware responses based on personal history
- Memory Augmentation: Create a queryable external memory system
- Content Personalization: Enable AI to reference specific user preferences and experiences
Replace the Milvus node with your preferred vector database:
- Pinecone
- Weaviate
- Chroma
- Qdrant
- OpenSearch
Modify the system prompt to extract different types of context:
- Professional experiences
- Technical preferences
- Health information
- Travel history
- Learning goals
- Import the N8N workflow
- Configure your chosen vector database connection
- Set up the AI agent with your preferred LLM provider
- Customize the system prompt for your specific context needs
- Test with sample voice note data
- N8N workflow automation platform
- LLM provider (OpenAI, Anthropic, etc.) for context extraction
- Vector database (Milvus by default)
- Speech-to-text service (for voice note transcription)
This workflow provides the foundation for building sophisticated personal RAG systems that can understand and utilize personal context from voice notes and other unstructured data sources.




