{"product_id":"n8n-workflow-index-candidate-records-to-qdrant-with-ollama","title":"n8n Workflow: Index Candidate Records to Qdrant with Ollama","description":"\u003ch3\u003eIndex your candidate database into Qdrant using Ollama embeddings (n8n workflow)\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow automatically reads a local JSON file of candidate records, generates semantic embeddings with \u003cstrong\u003eOllama\u003c\/strong\u003e (using \u003cstrong\u003enomic-embed-text\u003c\/strong\u003e), and stores everything in a \u003cstrong\u003eQdrant\u003c\/strong\u003e collection for fast, metadata-aware search.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003eManually starts\u003c\/strong\u003e an indexing run via a \u003cem\u003eManual Trigger\u003c\/em\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eReads and parses\u003c\/strong\u003e a local JSON candidate database from disk (default path: \u003ccode\u003e\/data\/candidates.json\u003c\/code\u003e).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eBuilds embed-ready documents\u003c\/strong\u003e by converting each candidate record into a text block (the workflow creates a \u003cem\u003epageContent\u003c\/em\u003e representation for embedding).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eExtracts and attaches metadata\u003c\/strong\u003e per candidate, including: \u003cstrong\u003ecandidate_id\u003c\/strong\u003e, \u003cstrong\u003etitle\u003c\/strong\u003e, \u003cstrong\u003eemployer\u003c\/strong\u003e, \u003cstrong\u003eregion\u003c\/strong\u003e, \u003cstrong\u003eseniority\u003c\/strong\u003e, \u003cstrong\u003elast_activity_date\u003c\/strong\u003e, and \u003cstrong\u003econsent_withdrawn\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eGenerates embeddings\u003c\/strong\u003e using the Ollama embedding model \u003cstrong\u003enomic-embed-text\u003c\/strong\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eUpserts into Qdrant\u003c\/strong\u003e by inserting documents, embeddings, and metadata into the \u003cstrong\u003ecandidate_database\u003c\/strong\u003e collection.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eOutputs a data-quality summary\u003c\/strong\u003e, specifically listing candidates missing \u003cstrong\u003elast_activity_date\u003c\/strong\u003e so you can correct source data before downstream search excludes them.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eSemantic search over a local ATS\/candidate export using Qdrant vectors plus candidate metadata.\u003c\/li\u003e\n  \u003cli\u003eKeeping an embeddings index in sync whenever your \u003ccode\u003ecandidates.json\u003c\/code\u003e file updates.\u003c\/li\u003e\n  \u003cli\u003eQAing candidate data completeness (e.g., identifying missing \u003cstrong\u003elast_activity_date\u003c\/strong\u003e) to prevent inaccurate downstream filtering.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cstrong\u003en8n nodes\u003c\/strong\u003e used include: \u003cem\u003eCode\u003c\/em\u003e, \u003cem\u003eSticky Note\u003c\/em\u003e, \u003cem\u003eManual Trigger\u003c\/em\u003e, \u003cem\u003eRead\/Write File\u003c\/em\u003e, and \u003cem\u003eExtract from File\u003c\/em\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eEmbeddings\u003c\/strong\u003e: \u003cstrong\u003en8n-nodes-langchain\u003c\/strong\u003e \u003cem\u003eOllama embeddings\u003c\/em\u003e (model: \u003cstrong\u003enomic-embed-text\u003c\/strong\u003e).\u003c\/li\u003e\n  \u003cli\u003e\n\u003cstrong\u003eVector store\u003c\/strong\u003e: \u003cstrong\u003eQdrant\u003c\/strong\u003e (collection name: \u003cstrong\u003ecandidate_database\u003c\/strong\u003e).\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cp\u003eSet your JSON path, ensure Ollama has \u003cstrong\u003enomic-embed-text\u003c\/strong\u003e pulled, configure Qdrant credentials, and run—this workflow will index your candidate records end-to-end.\u003c\/p\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":45822098112691,"sku":"N8N-18062","price":27.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/ybdkwXwtZDEdiasMrY6l3_3YVxfZSE.png?v=1786526202","url":"https:\/\/buyflowscripts.com\/products\/n8n-workflow-index-candidate-records-to-qdrant-with-ollama","provider":"N8N Commerce","version":"1.0","type":"link"}