{"product_id":"sync-n8n-docs-to-qdrant-with-ollama-embeddings-workflow","title":"Sync n8n Docs to Qdrant with Ollama Embeddings (Workflow)","description":"\u003ch3\u003eKeep your n8n documentation searchable—sync GitHub docs into Qdrant using Ollama embeddings\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow automatically fetches the latest \u003cstrong\u003en8n-io\/n8n-docs\u003c\/strong\u003e Markdown pages, converts them into vector embeddings with \u003cstrong\u003eOllama\u003c\/strong\u003e, and stores sectioned chunks in a \u003cstrong\u003eQdrant\u003c\/strong\u003e collection—so your documentation can be retrieved semantically.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eRuns daily at 3:00 AM\u003c\/strong\u003e via an n8n \u003cstrong\u003eSchedule Trigger\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eDetects changes\u003c\/strong\u003e by reading the latest GitHub commit SHA from \u003cstrong\u003en8n-io\/n8n-docs\u003c\/strong\u003e and comparing it to a previously stored SHA (kept as a dedicated state point in Qdrant). If nothing changed, it can skip reprocessing.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003ePrevents duplicates\u003c\/strong\u003e by deleting existing points from the \u003cstrong\u003en8n_docs\u003c\/strong\u003e Qdrant collection before re-ingesting.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eFetches and filters docs\u003c\/strong\u003e by pulling the recursive GitHub file tree and selecting only \u003cstrong\u003edocs\/*.md\u003c\/strong\u003e files.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eDownloads raw Markdown\u003c\/strong\u003e content in batches, then splits each page into \u003cstrong\u003eheading-based sections\u003c\/strong\u003e and enriches chunk metadata, including additional \u003cstrong\u003esize-based sub-chunking\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eEmbeds and indexes\u003c\/strong\u003e each chunk using \u003cstrong\u003eOllama\u003c\/strong\u003e with the \u003cstrong\u003enomic-embed-text\u003c\/strong\u003e model, then inserts the embedded documents into Qdrant under \u003cstrong\u003en8n_docs\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003ePersists progress\u003c\/strong\u003e by writing the latest GitHub commit SHA back into Qdrant for the next run.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eBuild a \u003cstrong\u003edocumentation chatbot\u003c\/strong\u003e or RAG system that answers questions using n8n docs as the source of truth.\u003c\/li\u003e\n  \u003cli\u003eMaintain an always-up-to-date \u003cstrong\u003esemantic search\u003c\/strong\u003e index for n8n-io\/n8n-docs without manual reprocessing.\u003c\/li\u003e\n  \u003cli\u003eEnable SaaS operators to provide \u003cstrong\u003eself-serve support\u003c\/strong\u003e by retrieving the most relevant doc sections from Qdrant.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGitHub integration\u003c\/strong\u003e: reads latest commit SHA and fetches Markdown files from \u003cstrong\u003en8n-io\/n8n-docs\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eQdrant\u003c\/strong\u003e: uses\/creates a \u003cstrong\u003ecollection named n8n_docs\u003c\/strong\u003e configured for \u003cstrong\u003e768 dimensions\u003c\/strong\u003e and \u003cstrong\u003eCosine distance\u003c\/strong\u003e, with base URL defaulting to \u003cstrong\u003ehttp:\/\/qdrant:6333\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eOllama embeddings\u003c\/strong\u003e: generates vectors with \u003cstrong\u003enomic-embed-text\u003c\/strong\u003e via \u003cstrong\u003en8nn8n-nodes-langchainembeddings ollama\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eVector store\u003c\/strong\u003e: inserts embeddings using \u003cstrong\u003en8nn8n-nodes-langchainvector store qdrant\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003en8n nodes used include \u003cstrong\u003ecode\u003c\/strong\u003e, \u003cstrong\u003esticky note\u003c\/strong\u003e, \u003cstrong\u003ehttp request\u003c\/strong\u003e, \u003cstrong\u003eschedule trigger\u003c\/strong\u003e, plus the LangChain Ollama\/Qdrant nodes.\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":45891850862771,"sku":"N8N-18614","price":35.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/qS14Pq63ja5e1YN7dRTkM_FK1xDOKl.png?v=1787562572","url":"https:\/\/buyflowscripts.com\/products\/sync-n8n-docs-to-qdrant-with-ollama-embeddings-workflow","provider":"N8N Commerce","version":"1.0","type":"link"}